0001558370-22-012312.txt : 20220805 0001558370-22-012312.hdr.sgml : 20220805 20220804190651 ACCESSION NUMBER: 0001558370-22-012312 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 90 CONFORMED PERIOD OF REPORT: 20220701 FILED AS OF DATE: 20220805 DATE AS OF CHANGE: 20220804 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: 221138196 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-20220701x10q.htm 10-Q
06644600017708000128453000347870000001370450--12-302022Q2false43260004601000809900083670000http://fasb.org/us-gaap/2022#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortizationhttp://fasb.org/us-gaap/2022#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization00P1Yhttp://fasb.org/us-gaap/2022#QualifiedPlanMember128040001321500030000000001370450wldn:Covid19Member2022-08-032022-08-030001370450wldn: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-260001370450srt:MaximumMember2022-01-012022-07-010001370450wldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:SubsequentEventMember2022-08-020001370450wldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMember2022-07-010001370450wldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMember2021-04-300001370450wldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMember2019-06-260001370450wldn: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-07-010001370450us-gaap:NewJerseyDivisionOfTaxationMember2021-01-022021-12-310001370450us-gaap:CaliforniaFranchiseTaxBoardMember2017-12-302018-12-280001370450us-gaap:CommonStockMember2021-01-022021-04-020001370450us-gaap:RetainedEarningsMember2022-07-010001370450us-gaap:AdditionalPaidInCapitalMember2022-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-07-020001370450us-gaap:AdditionalPaidInCapitalMember2021-07-020001370450us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-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-04-022022-07-010001370450wldn:UnitBasedContractMemberwldn:EnergyMember2022-04-022022-07-010001370450wldn:PublicUtilityMemberwldn:EngineeringConsultingServicesMember2022-04-022022-07-010001370450wldn:PublicUtilityMemberwldn:EnergyMember2022-04-022022-07-010001370450wldn:GovernmentsMemberwldn:EngineeringConsultingServicesMember2022-04-022022-07-010001370450wldn:GovernmentsMemberwldn:EnergyMember2022-04-022022-07-010001370450wldn:CommercialMemberwldn:EngineeringConsultingServicesMember2022-04-022022-07-010001370450wldn:CommercialMemberwldn:EnergyMember2022-04-022022-07-010001370450us-gaap:TimeAndMaterialsContractMemberwldn:EngineeringConsultingServicesMember2022-04-022022-07-010001370450us-gaap:TimeAndMaterialsContractMemberwldn:EnergyMember2022-04-022022-07-010001370450us-gaap:FixedPriceContractMemberwldn:EngineeringConsultingServicesMember2022-04-022022-07-010001370450us-gaap:FixedPriceContractMemberwldn:EnergyMember2022-04-022022-07-010001370450country:USwldn:EngineeringConsultingServicesMember2022-04-022022-07-010001370450country:USwldn:EnergyMember2022-04-022022-07-010001370450wldn:UnitBasedContractMember2022-04-022022-07-010001370450wldn:PublicUtilityMember2022-04-022022-07-010001370450wldn:GovernmentsMember2022-04-022022-07-010001370450wldn:CommercialMember2022-04-022022-07-010001370450us-gaap:TimeAndMaterialsContractMember2022-04-022022-07-010001370450us-gaap:IntersegmentEliminationMember2022-04-022022-07-010001370450us-gaap:FixedPriceContractMember2022-04-022022-07-010001370450country:US2022-04-022022-07-010001370450wldn:UnitBasedContractMemberwldn:EngineeringConsultingServicesMember2022-01-012022-07-010001370450wldn:UnitBasedContractMemberwldn:EnergyMember2022-01-012022-07-010001370450wldn:PublicUtilityMemberwldn:EngineeringConsultingServicesMember2022-01-012022-07-010001370450wldn:PublicUtilityMemberwldn:EnergyMember2022-01-012022-07-010001370450wldn:GovernmentsMemberwldn:EngineeringConsultingServicesMember2022-01-012022-07-010001370450wldn:GovernmentsMemberwldn:EnergyMember2022-01-012022-07-010001370450wldn:CommercialMemberwldn:EngineeringConsultingServicesMember2022-01-012022-07-010001370450wldn:CommercialMemberwldn:EnergyMember2022-01-012022-07-010001370450us-gaap:TimeAndMaterialsContractMemberwldn:EngineeringConsultingServicesMember2022-01-012022-07-010001370450us-gaap:TimeAndMaterialsContractMemberwldn:EnergyMember2022-01-012022-07-010001370450us-gaap:FixedPriceContractMemberwldn:EngineeringConsultingServicesMember2022-01-012022-07-010001370450us-gaap:FixedPriceContractMemberwldn:EnergyMember2022-01-012022-07-010001370450country:USwldn:EngineeringConsultingServicesMember2022-01-012022-07-010001370450country:USwldn:EnergyMember2022-01-012022-07-010001370450wldn:UnitBasedContractMember2022-01-012022-07-010001370450wldn:PublicUtilityMember2022-01-012022-07-010001370450wldn:GovernmentsMember2022-01-012022-07-010001370450wldn:CommercialMember2022-01-012022-07-010001370450us-gaap:TimeAndMaterialsContractMember2022-01-012022-07-010001370450us-gaap:IntersegmentEliminationMember2022-01-012022-07-010001370450us-gaap:FixedPriceContractMember2022-01-012022-07-010001370450country:US2022-01-012022-07-010001370450wldn:UnitBasedContractMemberwldn:EngineeringConsultingServicesMember2021-04-032021-07-020001370450wldn:UnitBasedContractMemberwldn:EnergyMember2021-04-032021-07-020001370450wldn:PublicUtilityMemberwldn:EngineeringConsultingServicesMember2021-04-032021-07-020001370450wldn:PublicUtilityMemberwldn:EnergyMember2021-04-032021-07-020001370450wldn:GovernmentsMemberwldn:EngineeringConsultingServicesMember2021-04-032021-07-020001370450wldn:GovernmentsMemberwldn:EnergyMember2021-04-032021-07-020001370450wldn:CommercialMemberwldn:EngineeringConsultingServicesMember2021-04-032021-07-020001370450wldn:CommercialMemberwldn:EnergyMember2021-04-032021-07-020001370450us-gaap:TimeAndMaterialsContractMemberwldn:EngineeringConsultingServicesMember2021-04-032021-07-020001370450us-gaap:TimeAndMaterialsContractMemberwldn:EnergyMember2021-04-032021-07-020001370450us-gaap:FixedPriceContractMemberwldn:EngineeringConsultingServicesMember2021-04-032021-07-020001370450us-gaap:FixedPriceContractMemberwldn:EnergyMember2021-04-032021-07-020001370450country:USwldn:EngineeringConsultingServicesMember2021-04-032021-07-020001370450country:USwldn:EnergyMember2021-04-032021-07-020001370450wldn:UnitBasedContractMember2021-04-032021-07-020001370450wldn:PublicUtilityMember2021-04-032021-07-020001370450wldn:GovernmentsMember2021-04-032021-07-020001370450wldn:CommercialMember2021-04-032021-07-020001370450us-gaap:TimeAndMaterialsContractMember2021-04-032021-07-020001370450us-gaap:IntersegmentEliminationMember2021-04-032021-07-020001370450us-gaap:FixedPriceContractMember2021-04-032021-07-020001370450country:US2021-04-032021-07-020001370450wldn:UnitBasedContractMemberwldn:EngineeringConsultingServicesMember2021-01-022021-07-020001370450wldn:UnitBasedContractMemberwldn:EnergyMember2021-01-022021-07-020001370450wldn:PublicUtilityMemberwldn:EngineeringConsultingServicesMember2021-01-022021-07-020001370450wldn:PublicUtilityMemberwldn:EnergyMember2021-01-022021-07-020001370450wldn:GovernmentsMemberwldn:EngineeringConsultingServicesMember2021-01-022021-07-020001370450wldn:GovernmentsMemberwldn:EnergyMember2021-01-022021-07-020001370450wldn:CommercialMemberwldn:EngineeringConsultingServicesMember2021-01-022021-07-020001370450wldn:CommercialMemberwldn:EnergyMember2021-01-022021-07-020001370450us-gaap:TimeAndMaterialsContractMemberwldn:EngineeringConsultingServicesMember2021-01-022021-07-020001370450us-gaap:TimeAndMaterialsContractMemberwldn:EnergyMember2021-01-022021-07-020001370450us-gaap:FixedPriceContractMemberwldn:EngineeringConsultingServicesMember2021-01-022021-07-020001370450us-gaap:FixedPriceContractMemberwldn:EnergyMember2021-01-022021-07-020001370450country:USwldn:EngineeringConsultingServicesMember2021-01-022021-07-020001370450country:USwldn:EnergyMember2021-01-022021-07-020001370450wldn:UnitBasedContractMember2021-01-022021-07-020001370450wldn:PublicUtilityMember2021-01-022021-07-020001370450wldn:GovernmentsMember2021-01-022021-07-020001370450wldn:CommercialMember2021-01-022021-07-020001370450us-gaap:TimeAndMaterialsContractMember2021-01-022021-07-020001370450us-gaap:IntersegmentEliminationMember2021-01-022021-07-020001370450us-gaap:FixedPriceContractMember2021-01-022021-07-020001370450country:US2021-01-022021-07-020001370450wldn:ComputerHardwareAndSoftwareMember2022-07-010001370450wldn:AutomobilesTrucksAndFieldEquipmentMember2022-07-010001370450us-gaap:LeaseholdImprovementsMember2022-07-010001370450us-gaap:FurnitureAndFixturesMember2022-07-010001370450wldn:ComputerHardwareAndSoftwareMember2021-12-310001370450wldn:AutomobilesTrucksAndFieldEquipmentMember2021-12-310001370450us-gaap:LeaseholdImprovementsMember2021-12-310001370450us-gaap:FurnitureAndFixturesMember2021-12-310001370450us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-012022-04-010001370450us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-04-032021-07-020001370450us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-01-022021-04-020001370450us-gaap:RetainedEarningsMember2022-04-022022-07-010001370450us-gaap:RetainedEarningsMember2022-01-012022-04-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: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-07-010001370450srt:MaximumMember2022-07-010001370450us-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-04-022022-07-010001370450us-gaap:OperatingSegmentsMemberwldn:EnergyMember2022-04-022022-07-010001370450us-gaap:CorporateNonSegmentMember2022-04-022022-07-010001370450us-gaap:CorporateNonSegmentMember2022-01-012022-07-010001370450us-gaap:OperatingSegmentsMemberwldn:EngineeringConsultingServicesMember2021-04-032021-07-020001370450us-gaap:OperatingSegmentsMemberwldn:EnergyMember2021-04-032021-07-020001370450us-gaap:CorporateNonSegmentMember2021-04-032021-07-020001370450us-gaap:CorporateNonSegmentMember2021-01-022021-07-020001370450wldn:Covid19Member2022-01-012022-07-010001370450wldn:EngineeringConsultingServicesMember2021-12-310001370450wldn:EnergyMember2021-12-3100013704502022-10-012022-12-3000013704502022-07-022022-09-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-3100013704502021-07-032021-10-010001370450srt:MinimumMemberus-gaap:TradeNamesMember2022-01-012022-07-010001370450srt:MinimumMemberus-gaap:NoncompeteAgreementsMember2022-01-012022-07-010001370450srt:MinimumMemberus-gaap:CustomerRelationshipsMember2022-01-012022-07-010001370450srt:MaximumMemberus-gaap:TradeNamesMember2022-01-012022-07-010001370450srt:MaximumMemberus-gaap:NoncompeteAgreementsMember2022-01-012022-07-010001370450srt:MaximumMemberus-gaap:CustomerRelationshipsMember2022-01-012022-07-010001370450us-gaap:OrderOrProductionBacklogMember2022-01-012022-07-010001370450us-gaap:DevelopedTechnologyRightsMember2022-01-012022-07-010001370450us-gaap:DevelopedTechnologyRightsMember2022-01-012022-04-010001370450us-gaap:TradeNamesMember2022-07-010001370450us-gaap:OrderOrProductionBacklogMember2022-07-010001370450us-gaap:NoncompeteAgreementsMember2022-07-010001370450us-gaap:DevelopedTechnologyRightsMember2022-07-010001370450us-gaap:CustomerRelationshipsMember2022-07-010001370450us-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-04-022022-07-010001370450wldn:EnergyMember2022-04-022022-07-010001370450wldn:EngineeringConsultingServicesMember2022-01-012022-07-010001370450wldn:EnergyMember2022-01-012022-07-010001370450wldn:EngineeringConsultingServicesMember2021-04-032021-07-020001370450wldn:EnergyMember2021-04-032021-07-020001370450wldn:EngineeringConsultingServicesMember2021-01-022021-07-020001370450wldn:EnergyMember2021-01-022021-07-020001370450wldn:QualifiedCashOrDeferredArrangementMember2022-01-012022-07-010001370450wldn:DefinedContributionPlanMember2022-01-012022-07-010001370450wldn:DefinedContributionPlanMember2021-01-022021-07-020001370450srt:MinimumMembersrt:ScenarioForecastMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2022-12-300001370450srt:MinimumMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2022-03-080001370450srt:MinimumMemberwldn:CreditAgreement2019Memberus-gaap:NotesPayableToBanksMemberus-gaap:LondonInterbankOfferedRateLIBORMember2021-04-300001370450wldn:TermAloanMemberus-gaap:NotesPayableToBanksMember2019-06-260001370450wldn:TermAloanMemberus-gaap:NotesPayableToBanksMember2022-07-010001370450wldn:OtherDebtMemberus-gaap:NotesPayableOtherPayablesMember2022-07-010001370450wldn:DelayedDrawTermLoanFacilityMemberus-gaap:NotesPayableToBanksMember2022-07-010001370450wldn:TermAloanMemberus-gaap:NotesPayableToBanksMember2021-12-310001370450wldn:OtherDebtMemberus-gaap:NotesPayableOtherPayablesMember2021-12-310001370450wldn:DelayedDrawTermLoanFacilityMemberus-gaap:NotesPayableToBanksMember2021-12-310001370450srt: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:LosAngelesDepartmentOfWaterAndPowerMemberus-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMemberus-gaap:CustomerConcentrationRiskMemberwldn:EnergyMember2022-04-022022-07-010001370450wldn:TopTenCustomersThreeMonthsEndedJuly12022Memberus-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2022-04-022022-07-010001370450stpr:NYus-gaap:RevenueFromContractWithCustomerMemberus-gaap:GeographicConcentrationRiskMember2022-04-022022-07-010001370450stpr:CAus-gaap:RevenueFromContractWithCustomerMemberus-gaap:GeographicConcentrationRiskMember2022-04-022022-07-010001370450wldn:LosAngelesDepartmentOfWaterAndPowerMemberus-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMemberus-gaap:CustomerConcentrationRiskMemberwldn:EnergyMember2022-01-012022-07-010001370450wldn:TopTenCustomersSixMonthsEndedJuly12022Memberus-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-07-010001370450wldn:LosAngelesDepartmentOfWaterAndPowerMemberus-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-07-010001370450stpr:NYus-gaap:RevenueFromContractWithCustomerMemberus-gaap:GeographicConcentrationRiskMember2022-01-012022-07-010001370450stpr:CAus-gaap:RevenueFromContractWithCustomerMemberus-gaap:GeographicConcentrationRiskMember2022-01-012022-07-010001370450wldn:ConsolidatedEdisonOfNewYorkMemberus-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMemberus-gaap:CustomerConcentrationRiskMemberwldn:EnergyMember2021-04-032021-07-020001370450wldn:CityOfElkGroveMemberus-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMemberus-gaap:CustomerConcentrationRiskMemberwldn:EngineeringConsultingServicesMember2021-04-032021-07-020001370450wldn:TopTenCustomersThreeMonthsEndedJuly22021Memberus-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2021-04-032021-07-020001370450wldn:LosAngelesDepartmentOfWaterAndPowerMemberus-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2021-04-032021-07-020001370450stpr:NYus-gaap:RevenueFromContractWithCustomerMemberus-gaap:GeographicConcentrationRiskMember2021-04-032021-07-020001370450stpr:CAus-gaap:RevenueFromContractWithCustomerMemberus-gaap:GeographicConcentrationRiskMember2021-04-032021-07-020001370450wldn:ConsolidatedEdisonOfNewYorkMemberus-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMemberus-gaap:CustomerConcentrationRiskMemberwldn:EngineeringConsultingServicesMember2021-01-022021-07-020001370450wldn:CityOfElkGroveMemberus-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMemberus-gaap:CustomerConcentrationRiskMemberwldn:EngineeringConsultingServicesMember2021-01-022021-07-020001370450wldn:TopTenCustomersSixMonthsEndedJuly22021Memberus-gaap:RevenueFromContractWithCustomerMemberus-gaap:CustomerConcentrationRiskMember2021-01-022021-07-020001370450stpr:NYus-gaap:RevenueFromContractWithCustomerMemberus-gaap:GeographicConcentrationRiskMember2021-01-022021-07-020001370450stpr:CAus-gaap:RevenueFromContractWithCustomerMemberus-gaap:GeographicConcentrationRiskMember2021-01-022021-07-020001370450us-gaap:CommonStockMember2022-07-010001370450us-gaap:CommonStockMember2022-04-010001370450us-gaap:CommonStockMember2021-12-310001370450us-gaap:CommonStockMember2021-07-020001370450us-gaap:CommonStockMember2021-04-020001370450us-gaap:CommonStockMember2021-01-010001370450us-gaap:AccountingStandardsUpdate202101Member2022-07-0100013704502021-01-0100013704502021-01-022021-07-020001370450us-gaap:OperatingSegmentsMemberwldn:EngineeringConsultingServicesMember2022-07-010001370450us-gaap:OperatingSegmentsMemberwldn:EnergyMember2022-07-010001370450wldn:EngineeringConsultingServicesMember2022-07-010001370450wldn:EnergyMember2022-07-010001370450us-gaap:IntersegmentEliminationMember2022-07-010001370450us-gaap:CorporateNonSegmentMember2022-07-010001370450us-gaap:OperatingSegmentsMemberwldn:EngineeringConsultingServicesMember2021-07-020001370450us-gaap:OperatingSegmentsMemberwldn:EnergyMember2021-07-020001370450wldn:EngineeringConsultingServicesMember2021-07-020001370450wldn:EnergyMember2021-07-020001370450us-gaap:IntersegmentEliminationMember2021-07-020001370450us-gaap:CorporateNonSegmentMember2021-07-0200013704502021-07-020001370450us-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-07-0100013704502021-12-3100013704502022-08-0300013704502022-01-012022-07-01xbrli: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 July 1, 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 August 3, 2022, there were 13,282,133 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)

    

July 1,

    

December 31,

2022

2021

Assets

Current assets:

Cash and cash equivalents

$

5,811

$

11,221

Accounts receivable, net of allowance for doubtful accounts of $751 and $1,115 at July 1, 2022 and December 31, 2021, respectively

 

60,301

 

67,211

Contract assets

 

61,177

 

59,288

Other receivables

 

6,231

 

6,267

Prepaid expenses and other current assets

 

4,864

 

4,972

Total current assets

 

138,384

 

148,959

Equipment and leasehold improvements, net

 

19,382

 

16,757

Goodwill

130,124

130,124

Right-of-use assets

13,387

15,177

Other intangible assets, net

47,024

52,713

Other assets

 

13,891

 

13,843

Deferred income taxes, net

19,691

16,849

Total assets

$

381,883

$

394,422

Liabilities and Stockholders’ Equity

Current liabilities:

Accounts payable

$

27,813

$

36,672

Accrued liabilities

 

34,994

 

35,680

Contingent consideration payable

943

10,206

Contract liabilities

 

11,410

 

13,499

Notes payable

 

16,019

 

15,036

Finance lease obligations

891

539

Lease liability

5,435

5,575

Total current liabilities

 

97,505

 

117,207

Contingent consideration payable

832

Notes payable

97,121

85,538

Finance lease obligations, less current portion

 

1,413

 

778

Lease liability, less current portion

8,956

10,768

Other noncurrent liabilities

78

78

Total liabilities

 

205,073

 

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,215 and 12,804 shares issued and outstanding at July 1, 2022 and December 31, 2021, respectively

 

132

 

128

Additional paid-in capital

 

172,678

 

167,032

Accumulated other comprehensive loss

(38)

Retained earnings

 

4,000

 

12,099

Total stockholders’ equity

 

176,810

 

179,221

Total liabilities and stockholders’ equity

$

381,883

$

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

Six Months Ended

July 1,

July 2,

July 1,

July 2,

    

2022

    

2021

    

2022

    

2021

Contract revenue

$

102,645

$

84,154

$

194,483

$

163,240

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

Salaries and wages

 

21,284

 

16,366

 

40,094

 

32,186

Subcontractor services and other direct costs

 

49,771

 

36,902

 

91,439

 

68,036

Total direct costs of contract revenue

 

71,055

 

53,268

 

131,533

 

100,222

General and administrative expenses:

Salaries and wages, payroll taxes and employee benefits

 

20,439

 

18,712

 

39,796

 

38,156

Facilities and facility related

 

2,373

 

2,379

 

4,771

 

5,022

Stock-based compensation

 

1,714

 

5,933

 

5,019

 

10,139

Depreciation and amortization

 

4,426

 

4,224

 

8,835

 

8,411

Other

 

7,936

 

6,710

 

15,435

 

12,551

Total general and administrative expenses

 

36,888

 

37,958

 

73,856

 

74,279

Income (Loss) from operations

 

(5,298)

 

(7,072)

 

(10,906)

 

(11,261)

Other income (expense):

Interest expense, net

 

(1,030)

 

(1,099)

 

(1,781)

 

(2,163)

Other, net

 

329

 

(93)

 

526

 

(64)

Total other expense, net

 

(701)

 

(1,192)

 

(1,255)

 

(2,227)

Income (Loss) before income taxes

 

(5,999)

 

(8,264)

 

(12,161)

 

(13,488)

Income tax (benefit) expense

 

(1,673)

 

(3,663)

 

(4,062)

 

(5,121)

Net income (loss)

(4,326)

(4,601)

(8,099)

(8,367)

Other comprehensive income (loss):

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

104

38

232

Comprehensive income (loss)

$

(4,326)

$

(4,497)

$

(8,061)

$

(8,135)

Earnings (Loss) per share:

Basic

$

(0.33)

$

(0.37)

$

(0.63)

$

(0.68)

Diluted

$

(0.33)

$

(0.37)

$

(0.63)

$

(0.68)

Weighted-average shares outstanding:

Basic

 

13,016

 

12,421

 

12,901

 

12,284

Diluted

 

13,016

 

12,421

 

12,901

 

12,284

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

Other comprehensive income

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)

Other comprehensive income

104

 

104

Balance at July 2, 2021

 

12,713

$

127

$

158,793

$

(256)

$

12,149

$

170,813

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)

Other comprehensive income

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)

Other comprehensive income

 

Balance at July 1, 2022

 

13,215

$

132

$

172,678

$

$

4,000

$

176,810

See accompanying notes to Condensed Consolidated Financial Statements.

5

WILLDAN GROUP, INC. AND SUBSIDIARIES

CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS

(in thousands)

(Unaudited)

Six Months Ended

July 1,

July 2,

    

2022

    

2021

Cash flows from operating activities:

Net income (loss)

$

(8,099)

$

(8,367)

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

Depreciation and amortization

 

8,835

 

8,411

Deferred income taxes, net

 

(2,842)

 

(3,041)

(Gain) loss on sale/disposal of equipment

 

(69)

 

(25)

Provision for doubtful accounts

 

107

 

342

Stock-based compensation

 

5,019

 

10,139

Accretion and fair value adjustments of contingent consideration

111

751

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

Accounts receivable

 

6,803

 

2,946

Contract assets

 

(1,889)

 

(4,266)

Other receivables

 

36

 

984

Prepaid expenses and other current assets

 

225

 

1,525

Other assets

 

(48)

 

5,000

Accounts payable

 

(8,859)

 

(13,311)

Accrued liabilities

 

(648)

 

(2,712)

Contract liabilities

 

(2,089)

 

1,020

Right-of-use assets

 

(162)

 

(104)

Net cash (used in) provided by operating activities

 

(3,569)

 

(708)

Cash flows from investing activities:

Purchase of equipment and leasehold improvements

 

(4,344)

 

(3,100)

Proceeds from sale of equipment

73

43

Net cash (used in) provided by investing activities

 

(4,271)

 

(3,057)

Cash flows from financing activities:

Payments on contingent consideration

 

(10,206)

 

(6,616)

Payments on notes payable

(1,051)

(1,541)

Borrowings under term loan facility and line of credit

20,000

Repayments under term loan facility and line of credit

(6,500)

(6,500)

Principal payments on finance leases

 

(444)

 

(214)

Proceeds from stock option exercise

 

23

 

1,378

Proceeds from sales of common stock under employee stock purchase plan

 

1,561

 

1,385

Cash used to pay taxes on stock grants

(953)

(3,117)

Restricted Stock Award and Units

(1)

Net cash (used in) provided by financing activities

 

2,430

 

(15,226)

Net increase (decrease) in cash and cash equivalents

 

(5,410)

 

(18,991)

Cash and cash equivalents at beginning of period

 

11,221

 

28,405

Cash and cash equivalents at end of period

$

5,811

$

9,414

Supplemental disclosures of cash flow information:

Cash paid during the period for:

Interest

$

1,584

$

1,961

Income taxes

 

413

 

(1,669)

Supplemental disclosures of noncash investing and financing activities:

Equipment acquired under finance leases

1,431

575

See accompanying notes to Condensed Consolidated Financial Statements.

6

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.

7

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 August 3, 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 July 1, 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.

8

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.

9

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.

10

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.

11

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.

12

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 July 1, 2022 and December 31, 2021, contract assets included retainage of approximately $6.4 million and $4.5 million, respectively.

13

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 six months ended July 1, 2022, the Company did not sell any trade accounts receivable. During the six months ended July 2, 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

July 1,

December 31,

    

2022

    

2021

(in thousands)

Furniture and fixtures

$

4,018

$

4,070

Computer hardware and software

 

30,659

 

26,425

Leasehold improvements

 

3,011

 

3,011

Equipment under finance leases

 

4,541

 

3,286

Automobiles, trucks, and field equipment

 

3,111

 

3,099

Subtotal

 

45,340

 

39,891

Accumulated depreciation and amortization

 

(25,958)

 

(23,134)

Equipment and leasehold improvements, net

$

19,382

$

16,757

Included in accumulated depreciation and amortization is $0.5 million and $0.6 million of amortization expense related to equipment held under finance leases for the six months ended July 1, 2022 and for fiscal year 2021, respectively.

Accrued Liabilities

July 1,

December 31,

    

2022

    

2021

(in thousands)

Accrued subcontractor costs

$

22,938

$

19,727

Other

 

4,263

 

2,750

Employee withholdings

 

2,943

 

2,665

Compensation and payroll taxes

 

2,546

 

2,244

Accrued bonuses

1,733

7,767

Accrued workers’ compensation insurance

 

571

 

527

Total accrued liabilities

$

34,994

$

35,680

14

Table of Contents

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

Goodwill

December 31,

Additional

Additions /

July 1,

    

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. The Company evaluated the current economic impact caused by the Covid-19 pandemic to assess a potential impairment of goodwill and noted that it does not believe it is more likely than not that goodwill was impaired as of July 1, 2022.

Intangible Assets

July 1, 2022

December 31, 2021

Gross

Accumulated

Gross

Accumulated

Amortization

    

Amount

    

Amortization

    

Amount

    

Amortization

    

Period

(in thousands)

(in years)

Finite:

Backlog

$

7,944

$

7,655

$

7,944

$

7,222

1.0

Tradename

 

15,911

 

9,993

 

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

10,411

15,500

8,950

8.0

Customer relationships

58,149

22,731

58,149

19,939

5.0

-

8.0

Total finite intangible assets

99,234

52,210

98,924

46,521

In-process research and technology (1)

310

Total intangible assets

$

99,234

$

52,210

$

99,234

$

46,521

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

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

15

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 July 1, 2022, the Company had no derivative financial instruments in place.

16

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:

    

July 1,

    

December 31,

2022

2021

(in thousands)

Outstanding borrowings on Term A Loan

$

70,000

$

75,000

Outstanding borrowings on Revolving Credit Facility

Outstanding borrowings on Delayed Draw Term Loan

42,500

24,000

Other debt agreements

1,110

2,161

Total debt

113,610

101,161

Issuance costs and debt discounts

(470)

(587)

Subtotal

113,140

100,574

Less current portion of long-term debt

 

16,019

 

15,036

Long-term debt portion

$

97,121

$

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.

17

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

18

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 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 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 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 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 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 Leverage Ratio.

As of July 1, 2022, the Company was in compliance with all covenants contained in the Credit Agreement, as amended.

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.

19

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 2026.

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 July 1, 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.

20

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

Six Months Ended

July 1,

July 2,

July 1,

July 2,

2022

    

2021

    

2022

    

2021

(in thousands)

(in thousands)

Operating lease cost

$

1,534

$

1,653

$

3,112

$

3,345

Finance lease cost:

Amortization of assets

255

135

488

258

Interest on lease liabilities

15

7

29

13

Total net lease cost

$

1,804

$

1,795

$

3,629

$

3,616

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

July 1,

    

December 31,

2022

2021

(in thousands)

Operating leases:

Right-of-use assets

$

13,387

$

15,177

 

 

Lease liability

$

5,435

$

5,575

Lease liability, less current portion

 

8,956

 

10,768

Total lease liabilities

$

14,391

$

16,343

 

 

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

Equipment and leasehold improvements, net

$

4,541

$

3,286

Accumulated depreciation

 

(2,259)

 

(1,947)

Total equipment and leasehold improvements, net

$

2,282

$

1,339

 

Finance lease obligations

$

891

$

539

Finance lease obligations, less current portion

1,413

778

Total finance lease obligations

$

2,304

$

1,317

Weighted average remaining lease term (in years):

Operating Leases

3.55

3.79

Finance Leases

2.65

2.62

Weighted average discount rate:

Operating Leases

4.13

%

4.28

%

Finance Leases

2.57

%

2.78

%

Rent expense was $1.7 million and $3.3 million for the three and six months ended July 1, 2022, respectively, as compared to $1.8 million and $3.6 million for the three and six months ended July 2, 2021, respectively.

21

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:

Six Months Ended

July 1,

July 2,

2022

    

2021

(in thousands)

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

Operating cash flow from operating leases

$

3,273

$

3,477

Operating cash flow from finance leases

29

13

Financing cash flow from finance leases

444

214

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

Operating leases

$

1,002

$

240

The following is a summary of the maturities of lease liabilities as of July 1, 2022:

    

Operating

    

Finance

 

(in thousands)

Fiscal year:

Remainder of 2022

$

3,117

$

522

2023

 

4,543

 

947

2024

 

3,030

674

2025

2,225

157

2026

2,159

 

73

2027 and thereafter

 

453

 

7

Total lease payments

15,527

2,380

Less: Imputed interest

 

(1,136)

(76)

Total lease obligations

 

14,391

2,304

Less: Current obligations

 

5,435

891

Noncurrent lease obligations

$

8,956

$

1,413

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.

22

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 six months ended July 1, 2022 and July 2, 2021, the Company made matching contributions of $1.6 million and $1.3 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 July 1, 2022, the Company had one VIE — Genesys.

23

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 six months ended July 1, 2022 and July 2, 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 July 1, 2022

Contract revenue

$

84,675

$

17,970

$

-

$

-

$

102,645

Depreciation and amortization

4,183

243

-

-

4,426

Interest expense, net

1

-

1,029

-

1,030

Segment profit (loss) before income tax expense

(6,357)

2,531

(2,173)

-

(5,999)

Income tax expense (benefit)

(1,891)

732

(514)

-

(1,673)

Net income (loss)

(4,467)

1,798

(1,657)

-

(4,326)

Segment assets (1)

323,070

23,293

58,650

(23,130)

381,883

Fiscal Three Months Ended July 2, 2021

Contract revenue

$

66,447

$

17,707

$

-

$

-

$

84,154

Depreciation and amortization

3,973

251

-

-

4,224

Interest expense, net

1

-

1,098

-

1,099

Segment profit (loss) before income tax expense

(4,913)

2,724

(6,075)

-

(8,264)

Income tax expense (benefit)

(2,151)

1,247

(2,759)

-

(3,663)

Net income (loss)

(2,762)

1,478

(3,317)

-

(4,601)

Segment assets (1)

322,255

22,952

58,410

(23,130)

380,487

Fiscal Six Months Ended July 1, 2022

Contract revenue

$

159,561

$

34,922

$

-

$

-

$

194,483

Depreciation and amortization

8,340

495

-

-

8,835

Interest expense, net

5

-

1,776

-

1,781

Segment profit (loss) before income tax expense

(10,710)

4,638

(6,089)

-

(12,161)

Income tax expense (benefit)

(3,578)

1,549

(2,033)

-

(4,062)

Net income (loss)

(7,132)

3,088

(4,055)

-

(8,099)

Segment assets (1)

323,070

23,293

58,650

(23,130)

381,883

Fiscal Six Months Ended July 2, 2021

Contract revenue

$

128,454

$

34,786

$

-

$

-

$

163,240

Depreciation and amortization

7,911

500

-

-

8,411

Interest expense, net

5

-

2,158

-

2,163

Segment profit (loss) before income tax expense

(7,745)

4,834

(10,577)

-

(13,488)

Income tax expense (benefit)

(2,941)

1,836

(4,016)

-

(5,121)

Net income (loss)

(4,804)

2,999

(6,562)

-

(8,367)

Segment assets (1)

322,255

22,952

58,410

(23,130)

380,487

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

24

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 July 1, 2022

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

7,587

$

13,340

$

20,927

Unit-based

42,544

3,755

46,299

Fixed price

34,545

874

35,419

Total (1)

$

84,675

$

17,970

$

102,645

Client Type

Commercial

$

6,701

$

1,476

$

8,177

Government

29,861

16,338

46,199

Utilities (2)

48,114

156

48,270

Total (1)

$

84,675

$

17,970

$

102,645

Geography (3)

Domestic

$

84,675

$

17,970

$

102,645

    

Six months ended July 1, 2022

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

16,405

$

26,341

$

42,746

Unit-based

85,501

6,739

92,240

Fixed price

57,655

1,842

59,497

Total (1)

$

159,561

$

34,922

$

194,483

Client Type

Commercial

$

14,790

$

2,954

$

17,744

Government

48,220

31,791

80,011

Utilities (2)

96,551

177

96,728

Total (1)

$

159,561

$

34,922

$

194,483

Geography (3)

Domestic

$

159,561

$

34,922

$

194,483

    

Three months ended July 2, 2021

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

9,056

$

13,863

$

22,919

Unit-based

41,604

2,722

44,326

Fixed price

15,786

1,123

16,909

Total (1)

$

66,446

$

17,708

$

84,154

Client Type

Commercial

$

7,016

$

1,372

$

8,388

Government

13,675

16,281

29,956

Utilities (2)

45,756

55

45,811

Total (1)

$

66,446

$

17,708

$

84,154

Geography (3)

Domestic

$

66,446

$

17,708

$

84,154

25

Table of Contents

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

    

Six months ended July 2, 2021

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

15,956

$

27,284

$

43,240

Unit-based

81,218

5,167

86,385

Fixed price

31,279

2,336

33,615

Total (1)

$

128,453

$

34,787

$

163,240

Client Type

Commercial

$

12,944

$

2,469

$

15,413

Government

27,229

32,210

59,439

Utilities (2)

88,280

108

88,388

Total (1)

$

128,453

$

34,787

$

163,240

Geography (3)

Domestic

$

128,453

$

34,787

$

163,240

(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 six months ended July 1, 2022 and July 2, 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 six months ended July 1, 2022 nor the three and six months ended July 1, 2021.

Customer Concentration

For the three and six months ended July 1, 2022, the Company’s top 10 customers accounted for 55.4%, and 54.4%, respectively, of the Company’s consolidated contract revenue. For the three and six months ended July 2, 2021, the Company’s top 10 customers accounted for 48.4%, and 46.2%, respectively, of the Company’s consolidated contract revenue.

For the three and six months ended July 1, 2022, the Company had one customer, LADWP, that accounted for 14.6% and 15.8%, respectively, of its consolidated contract revenues. For the three and six months ended July 2, 2021, the Company did not have any individual customers that accounted for more than 10% of its consolidated contract revenues.

On a segment basis, the Company had individual customers that accounted for more than 10% of its segment contract revenues. For the three and six months ended July 1, 2022, the Company derived 17.6% and 19.2%, respectively, of its Energy segment revenues from one customer, LADWP. For the three and six months ended July 1, 2022, no single customer accounted for 10% or more of its Engineering and Consulting segment revenues. For the three and six months ended July 1, 2021, the Company derived 11.5% and 10.9%, respectively, of its Energy segment revenues from one customer, Consolidated Edison of New York, and it derived 13.9% and 15.8%, respectively, of its Engineering and Consulting segment revenues from one customer, the City of Elk Grove.

The Company’s largest clients are based in California and New York. For the three and six months ended July 1, 2022, services provided to clients in California accounted for 40.9% and 42.2%, respectively, of the Company’s

26

Table of Contents

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

contract revenue and services provided to clients in New York accounted for 19.6% and 20.2%, respectively, of the Company’s contract revenue. For the three and six months ended July 2, 2021, services provided to clients in California accounted for 34.8% and 34.5%, respectively, of the Company’s contract revenue and services provided to clients in New York accounted for 21.6% and 21.8%, respectively, of the Company’s contract revenue.

27

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 our 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 July 1, 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 July 1, 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 six months ended July 1, 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 six months ended July 1, 2022, the Company did not record a liability for uncertain tax positions.

28

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.7 million and $4.1 million for the three and six months ended July 1, 2022, respectively, as compared to an income tax benefit of $3.7 million and $5.1 million for the three and six months ended July 2, 2021, respectively. During the three and six months ended July 1, 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 six months ended July 2, 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.

29

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

Six months ended

July 1,

July 2,

July 1,

July 2,

    

2022

    

2021

    

2022

    

2021

(in thousands, except per share amounts)

Net income (loss)

$

(4,326)

$

(4,601)

$

(8,099)

$

(8,367)

Weighted-average common shares outstanding

 

13,016

 

12,421

 

12,901

 

12,284

Effect of dilutive stock options and restricted stock awards

 

 

 

 

Weighted-average common shares outstanding-diluted

 

13,016

 

12,421

 

12,901

 

12,284

Earnings (Loss) per share:

Basic

$

(0.33)

$

(0.37)

$

(0.63)

$

(0.68)

Diluted

$

(0.33)

$

(0.37)

$

(0.63)

$

(0.68)

For the three and six months ended July 1, 2022 and July 2, 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.

30

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.

31

Table of Contents

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

13. SUBSEQUENT EVENTS

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.

32

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 August 3, 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 July 1, 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-cash

33

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.

34

Results of Operations

Second Quarter and First Half Overview

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

Three Months Ended

July 1,

July 2,

     

2022

2021

$ Change

% Change

(in thousands, except percentages)

Contract revenue

$

102,645

     

100.0

%

     

$

84,154

     

100.0

%

     

$

18,491

     

22.0

%

Direct costs of contract revenue:

Salaries and wages

21,284

20.7

16,366

19.4

4,918

30.1

Subcontractor services and other direct costs

49,771

48.5

36,902

43.9

12,869

34.9

Total direct costs of contract revenue

71,055

69.2

53,268

63.3

17,787

33.4

Gross profit

31,590

30.8

30,886

36.7

704

2.3

General and administrative expenses:

Salaries and wages, payroll taxes and employee benefits

20,439

19.9

18,712

22.2

1,727

9.2

Facilities and facilities related

2,373

2.3

2,379

2.8

(6)

(0.3)

Stock-based compensation

1,714

1.7

5,933

7.1

(4,219)

(71.1)

Depreciation and amortization

4,426

4.3

4,224

5.0

202

4.8

Other

7,936

7.7

6,710

8.0

1,226

18.3

Total general and administrative expenses

36,888

35.9

37,958

45.1

(1,070)

(2.8)

Income (loss) from operations

(5,298)

(5.2)

(7,072)

(8.4)

1,774

(25.1)

Other income (expense):

Interest expense

(1,030)

(1.0)

(1,099)

(1.3)

69

(6.3)

Other, net

329

0.3

(93)

(0.1)

422

N/M

Total other income (expense)

(701)

(0.7)

(1,192)

(1.4)

491

(41.2)

Income (Loss) before income tax expense

(5,999)

(5.8)

(8,264)

(9.8)

2,265

(27.4)

Income tax expense (benefit)

(1,673)

(1.6)

(3,663)

(4.4)

1,990

(54.3)

Net income (loss)

$

(4,326)

(4.2)

$

(4,601)

(5.5)

$

275

(6.0)

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

N/M = Not meaningful

35

Six Months Ended

July 1,

July 2,

2022

2021

$ Change

% Change

(in thousands, except percentages)

Contract revenue

    

$

194,483

    

100.0

%

    

$

163,240

     

100.0

%

    

$

31,243

     

19.1

%

Direct costs of contract revenue:

Salaries and wages

40,094

20.6

32,186

19.7

7,908

24.6

Subcontractor services and other direct costs

91,439

47.0

68,036

41.7

23,403

34.4

Total direct costs of contract revenue

131,533

67.6

100,222

61.4

31,311

31.2

Gross profit

62,950

32.4

63,018

38.6

(68)

(0.1)

General and administrative expenses:

Salaries and wages, payroll taxes and employee benefits

39,796

20.5

38,156

23.4

1,640

4.3

Facilities and facilities related

4,771

2.5

5,022

3.1

(251)

(5.0)

Stock-based compensation

5,019

2.6

10,139

6.2

(5,120)

(50.5)

Depreciation and amortization

8,835

4.5

8,411

5.2

424

5.0

Other

15,435

7.9

12,551

7.7

2,884

23.0

Total general and administrative expenses

73,856

38.0

74,279

45.5

(423)

(0.6)

Income (loss) from operations

(10,906)

(5.6)

(11,261)

(6.9)

355

(3.2)

Other income (expense):

Interest expense

(1,781)

(0.9)

(2,163)

(1.3)

382

(17.7)

Other, net

526

0.3

(64)

(0.0)

590

N/M

Total other income (expense)

(1,255)

(0.6)

(2,227)

(1.4)

972

(43.6)

Income (Loss) before income tax expense

(12,161)

(6.3)

(13,488)

(8.3)

1,327

(9.8)

Income tax expense (benefit)

(4,062)

(2.1)

(5,121)

(3.1)

1,059

(20.7)

Net income (loss)

$

(8,099)

(4.2)

$

(8,367)

(5.1)

$

268

(3.2)

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

N/M = Not meaningful

36

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 July 1, 2022

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

7,587

$

13,340

$

20,927

Unit-based

42,544

3,755

46,299

Fixed price

34,545

874

35,419

Total (1)

$

84,675

$

17,970

$

102,645

Client Type

Commercial

$

6,701

$

1,476

$

8,177

Government

29,861

16,338

46,199

Utilities (2)

48,114

156

48,270

Total (1)

$

84,675

$

17,970

$

102,645

Geography (3)

Domestic

$

84,675

$

17,970

$

102,645

    

Six months ended July 1, 2022

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

16,405

$

26,341

$

42,746

Unit-based

85,501

6,739

92,240

Fixed price

57,655

1,842

59,497

Total (1)

$

159,561

$

34,922

$

194,483

Client Type

Commercial

$

14,790

$

2,954

$

17,744

Government

48,220

31,791

80,011

Utilities (2)

96,551

177

96,728

Total (1)

$

159,561

$

34,922

$

194,483

Geography (3)

Domestic

$

159,561

$

34,922

$

194,483

37

    

Three months ended July 2, 2021

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

9,056

$

13,863

$

22,919

Unit-based

41,604

2,722

44,326

Fixed price

15,786

1,123

16,909

Total (1)

$

66,446

$

17,708

$

84,154

Client Type

Commercial

$

7,016

$

1,372

$

8,388

Government

13,675

16,281

29,956

Utilities (2)

45,756

55

45,811

Total (1)

$

66,446

$

17,708

$

84,154

Geography (3)

Domestic

$

66,446

$

17,708

$

84,154

    

Six months ended July 2, 2021

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

15,956

$

27,284

$

43,240

Unit-based

81,218

5,167

86,385

Fixed price

31,279

2,336

33,615

Total (1)

$

128,453

$

34,787

$

163,240

Client Type

Commercial

$

12,944

$

2,469

$

15,413

Government

27,229

32,210

59,439

Utilities (2)

88,280

108

88,388

Total (1)

$

128,453

$

34,787

$

163,240

Geography (3)

Domestic

$

128,453

$

34,787

$

163,240

(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 six months ended July 1, 2022 and July 2, 2021.

Three Months Ended July 1, 2022 Compared to Three Months Ended July 2, 2021

Contract revenue. Consolidated contract revenue increased $18.5 million, or 22.0%, in the three months ended July 1, 2022, compared to the three months ended July 2, 2021, primarily due to incremental revenues in our Energy segment generated from new governmental construction management projects, combined with incremental revenues from the resumption of Covid-19 suspended projects for utilities.

Contract revenue in our Energy segment increased $18.3 million, or 27.6%, in the three months ended July 1, 2022, compared to the three months ended July 2, 2021, primarily as a result of incremental revenues generated from new governmental construction management projects, combined with incremental revenues from the resumption of Covid-19 suspended projects. Governmental revenues increased as a result of the start-up of newly awarded contracts. Covid-19 suspended projects resumed as a result of the lifting of business suspensions resulting from the Covid-19 pandemic and efforts to limit its spread that impacted projects during the first half of fiscal 2021.

Contract revenue in our Engineering and Consulting segment was relatively flat for the three months ended July 1, 2022, compared to the three months ended July 2, 2021.

Direct costs of contract revenue. Direct costs of consolidated contract revenue increased $17.8 million, or 33.4%, in the three months ended July 1, 2022, compared to the three months ended July 2, 2021, primarily due to

38

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 $18.4 million, or 41.6%, in the three months ended July 1, 2022, compared to the three months ended July 2, 2021. Direct costs of contract revenue for the Engineering and Consulting segment decreased $0.6 million, or 6.7%, in the three months ended July 1, 2022, compared to the three months ended July 2, 2021.

Subcontractor services and other direct costs increased by $12.9 million, or 34.9%, and salaries and wages increased by $4.9 million, or 30.1%, in the three months ended July 1, 2022, compared to the three months ended July 2, 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 increased 2.3% to $31.6 million, or 30.8% gross margin, for the three months ended July 1, 2022, compared to gross profit of $30.9 million, or 36.7% gross margin, for the three months ended July 2, 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 decreased by $1.1 million, or 2.8%, in the three months ended July 1, 2022 compared to the three months ended July 2, 2021. The decrease in G&A expenses consisted of a decrease of $3.1 million in unallocated corporate expense, partially offset by an increase of $1.0 million in the Energy segment and an increase of $1.0 million in the Engineering and Consulting segment. The decrease in G&A expenses was primarily attributed to lower stock-based compensation expenses, partially offset by higher salaries and wages, payroll taxes and employee benefits combined with higher computer-related expenses and professional service fees.

Within G&A expenses, the decrease of $4.2 million in stock-based compensation was partially offset by an increase of $1.7 million in salaries and wages, payroll taxes and employee benefits, combined with an increase of $1.2 million in other general and administrative expenses, and an increase of $0.2 million in depreciation and amortization. Facilities and facility related expenses were relatively flat for the three months ended July 1, 2022, compared to the three months ended July 2, 2021. The decrease in stock-based compensation expenses was primarily related to previously awarded stock grants reaching the end of their corresponding vesting periods. The increase in salaries and wages, payroll taxes and employee benefits was primarily due to increases in personnel. The increase in other general and administrative expenses was primarily due to higher computer-related expenses and professional service fees. The increase in depreciation and amortization was primarily related to higher depreciation of internally-developed computer software.

Income (loss) from operations. Operating loss was $5.3 million for the three months ended July 1, 2022 as a result of the factors noted above. As a percentage of contract revenue, operating loss decreased from 8.4% to 5.2% for the three months ended July 1, 2022, compared to the three months ended July 2, 2021.

Total other expense, net. Total other expense, net, decreased $0.5 million, or 41.2%, for the three months ended July 1, 2022, compared to the three months ended July 2, 2021, as a result of income from indemnification agreements and lower interest expense related to principal reductions in term loans.

Income tax expense (benefit). We recorded an income tax benefit of $1.7 million for the three months ended July 1, 2022, compared to a tax benefit of $3.7 million for the three months ended July 2, 2021. The decrease in the tax rate is primarily attributable to a one-time benefit derived from the CARES Act that was realized in the three months ended July 2, 2021, and that did not recur in the three months ended July 1, 2022.

Net income (loss). Our net loss was $4.3 million for the three months ended July 1, 2022, as compared to a net loss of $4.6 million for the three months ended July 2, 2021. The improvement in net loss was primarily attributable to

39

the increase in gross profit combined with lower G&A and lower total other expense, net, partially offset by lower income tax benefits.

Six Months Ended July 1, 2022 Compared to Six Months Ended July 2, 2021

Contract revenue. Consolidated contract revenue increased $31.2 million, or 19.1%, in the six months ended July 1, 2022, compared to the six months ended July 2, 2021, primarily due to incremental revenues in our Energy segment generated from new governmental construction management projects, combined with incremental revenues from the resumption of Covid-19 suspended projects for utilities.

Contract revenue in our Energy segment increased $31.2 million, or 24.3%, in the six months ended July 1, 2022, compared to the six months ended July 2, 2021, primarily as a result of incremental revenues generated from new government projects, combined with incremental revenues from the resumption of Covid-19 suspended projects, as described above.

Contract revenue in our Engineering and Consulting segment was relatively flat for the six months ended July 1, 2022, compared to the six months ended July 2, 2021.

Direct costs of contract revenue.  Direct costs of consolidated contract revenue increased $31.3 million, or 31.2%, in the six months ended July 1, 2022, compared to the six months ended July 2, 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 $32.5 million, or 39.6%, in the six months ended July 1, 2022, compared to the six months ended July 2, 2021. Direct costs of contract revenue for the Engineering and Consulting segment decreased $1.2 million, or 6.9%, in the six months ended July 1, 2022, compared to the six months ended July 2, 2021.

Subcontractor services and other direct costs increased by $23.4 million, or 34.4%, and salaries and wages increased by $7.9 million, or 24.6%, in the six months ended July 1, 2022, compared to the six months ended July 2, 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 was relatively flat for the six months ended July 1, 2022, compared to the six months ended July 2, 2021 for the reasons noted above.

General and administrative expenses.  G&A expenses were relatively flat for the six months ended July 1, 2022, compared to the six months ended July 2, 2021. G&A expenses consisted of a decrease of $3.5 million in unallocated corporate expense, partially offset by an increase of $1.7 million in the Energy segment combined with an increase of $1.4 million in the Engineering and Consulting segment. The decrease in G&A expenses was primarily attributed to lower stock-based compensation expenses, partially offset by higher computer-related expenses and higher professional service fee, combined with higher salaries and wages, payroll taxes and employee benefits.

Within G&A expenses, the decrease of $5.1 million in stock-based compensation combined with the decrease of $0.3 million in facilities and facility related expense was partially offset by an increase of $2.9 million in other general and administrative expenses, combined with an increase of $1.6 million in salaries and wages, payroll taxes and employee benefits, and an increase of $0.4 million in depreciation and amortization. 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 expense was primarily attributed to satisfied facility leases that were not renewed. The increase in salaries and wages, payroll taxes and employee benefits was primarily due to increases in personnel. The increase in other general and administrative expenses was primarily due to higher computer-

40

related expenses and professional service fees. The increase in depreciation and amortization was primarily related to higher depreciation of internally-developed computer software.

Income (loss) from operations. Operating loss was $10.9 million for the six months ended July 1, 2022, as a result of the factors noted above. As a percentage of contract revenue, operating loss decreased from 6.9% to 5.6% for the six months ended July 1, 2022, compared to the six months ended July 2, 2021.

Total other expense, net.  Total other expense, net, decreased $1.0 million, or 43.6%, for the six months ended July 1, 2022, compared to the six months ended July 2, 2021, as a result of income from an indemnification agreement and lower interest expense related to principal reductions in term loans.

Income tax expense (benefit). We recorded an income tax benefit of $4.1 million for the six months ended July 1, 2022 compared to a tax benefit of $5.1 million for the six months ended July 2, 2021. The decrease in the tax rate is primarily attributable to a one-time benefit derived from the CARES Act that was realized in the six months ended July 2, 2021, and that did not recur in the three months ended July 1, 2022.

Net income (loss). Our net loss was $8.1 million for the six months ended July 1, 2022, as compared to a net loss of $8.4 million for the six months July 2, 2021. The improvement in our net loss was primarily attributable to lower G&A combined with lower total other expense, net, partially offset by lower income tax benefit.

Liquidity and Capital Resources

Six Months Ended

July 1,

July 2,

2022

2021

(in thousands)

Net cash provided by (used in):

    

Operating activities

    

$

(3,569)

    

$

(708)

Investing activities

(4,271)

(3,057)

Financing activities

2,430

(15,226)

Net increase (decrease) in cash and cash equivalents

$

(5,410)

$

(18,991)

Sources of Cash

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. As a result of forecasted increased working capital requirements related to our California Investor-Owned Utility Contracts and other organic growth, on March 8, 2022, we amended our Credit Agreement to, among other things, adjust certain covenants to ensure an adequate margin for compliance obligations through fiscal year 2022. On August 2, 2022, we amended our Credit Agreement to increase the purchase money indebtedness and Capitalized Lease Obligations (as defined in the Credit Agreement) limit. 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 July 1, 2022, we had a fully drawn $100 million Term A Loan with $70.0 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 $42.5 million outstanding, each scheduled to mature on June 26, 2024. In addition, as of July 1, 2022, we had $5.8 million of cash and cash equivalents. Our primary source of liquidity for the next 12 months and beyond is cash generated from operations and borrowings under our Revolving Credit Facility.

As of July 1, 2022, borrowings under our Credit Facilities, exclusive of the effects of upfront fees, undrawn fees and issuance cost amortization, bore interest at 3.9%. 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

41

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 used in operating activities were $3.6 million for the six months ended July 1, 2022, as compared to cash flows used in operating activities of $0.7 million for the six months ended July 2, 2021. Cash flow from operating activities 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 used in operating activities for the six months ended July 1, 2022, resulted primarily from the changing mix of revenues, combined with the increased demand for working capital related to the resumption of our utility programs that were suspended in 2021 and start-up costs associated with certain new contract awards. Changes in cash flows used in operating activities for the six months ended July 2, 2021, resulted primarily due to the changing mix of revenues and start-up costs associated with certain new contract awards.

Cash Flows from Investing Activities

Cash flows used in investing activities were $4.3 million for the six months ended July 1, 2022, as compared to cash flows used in investing activities of $3.1 million for the six months ended July 2, 2021. Cash flows used in investing activities for the six months ended July 1, 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 six months ended July 2, 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 provided by financing activities were $2.4 million for the six months ended July 1, 2022, as compared to cash flows used in financing activities of $15.2 million for the six months ended July 2, 2021. Cash flows provided by financing activities for the six months ended July 1, 2022, were primarily attributable to borrowings of $20.0 million under our Delayed Draw Term Loan, partially offset by payments of $10.2 million for contingent consideration related to prior acquisitions combined with repayments of $6.5 million under our term loan facility and revolving line of credit. Cash flows used in financing activities for the six months ended July 2, 2021, were primarily attributable to payments of $6.6 million for contingent consideration related to prior acquisitions, repayments of $6.5 million under our term loan facility and revolving line of credit, payments of taxes on stock grants of $3.1 million, payments on notes payable of $1.5 million, partially offset by $1.4 million in proceeds from sales of common stock under our employee stock purchase plan and $1.4 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.

42

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 July 1, 2022:

    

    

Less than

    

    

    

More than

 

Contractual Obligations

Total

1 Year

1 - 3 Years

3 - 5 Years

5 Years

 

( in thousands)

Long term debt (1)

$

113,140

$

16,019

$

97,121

$

$

Interest payments on debt outstanding (2)

7,631

4,005

3,626

Operating leases

 

14,391

 

5,435

 

5,667

 

2,890

 

399

Finance leases

 

2,304

 

891

 

1,251

 

155

 

7

Total contractual cash obligations

$

137,466

$

26,350

$

107,665

$

3,045

$

406

(1)Long-term debt includes $70.0 million outstanding on our Term A Loan and $42.5 million outstanding on our Delayed Draw Term Loan as of July 1, 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 July 1, 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 July 1, 2022, we had estimated remaining contingent consideration payable of $0.9 million related to this acquisition. For the six months ended July 1, 2022, our statement of operations includes $0.1 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.

43

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 July 1, 2022, 22% of our contracts are time-and-materials contracts, 47% of our contracts are unit-based contracts, and 31% are fixed price contracts, compared to 26% for time-and-materials contracts, 53% for unit-based contracts, and 21% for fixed price contracts, as of July 2, 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.

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,

44

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.

45

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 July 1, 2022, we had cash and cash equivalents of $5.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 July 1, 2022, $70.0 million was outstanding under our Term A Loan, $42.5 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 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 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 Leverage Ratio. Based upon the amount of our outstanding indebtedness as of July 1, 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.

46

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 July 1, 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 July 1, 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.

47

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.

48

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 July 1, 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

April 2, 2022 – April 29, 2022

April 30, 2022 – May 27, 2022

2,412

$29.58

May 28, 2022 – July 1, 2022

1,691

$26.60

TOTAL

4,103

$28.35

ITEM 3. Defaults upon Senior Securities

None.

ITEM 4. Mine Safety Disclosures

Not applicable.

ITEM 5. Other Information

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.

The foregoing description of the Sixth Amendment is qualified in its entirety by reference to the full text of the Sixth Amendment, which is attached as Exhibit 10.2 to this Quarterly Report on Form 10-Q and is incorporated herein by reference.

49

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*

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

10.2†

Willdan Group, Inc. Amended and Restated 2008 Performance Incentive Plan (incorporated by reference to Exhibit 10.1 to Willdan Group, Inc.’s Current Report on Form 8-K, filed with the SEC on June 10, 2022).

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

50

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)

August 4, 2022

51

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

EXECUTION VERSION

Exhibit 10.1

Sixth Amendment to Amended and Restated Credit Agreement

This Sixth Amendment to Amended and Restated Credit Agreement (herein, the “Amendment”) is entered into as of August 2, 2022 (the “Sixth 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 date hereof, 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.

Amendments.

Subject to the satisfaction of the conditions precedent set forth in Section 2 below, effective as of June 30, 2022, Section 8.7(b) of the Credit Agreement is hereby amended and restated in its entirety and as so amended and restated shall read as follows:

(b)purchase money indebtedness and Capitalized Lease Obligations of the Loan Parties and their Subsidiaries in an amount not to exceed $4,000,000 in the aggregate at any one time outstanding;

Section 2.

Conditions Precedent.

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

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

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

Sixth Amendment to A&R Credit Agreement (Willdan 2021) 4896-1068-0361 v6.doc

4135869


Section 3.

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

Section 4.

Miscellaneous.

4.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.

4.2.Except as specifically amended 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 hereby.  

4.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.

-2-


4.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.

[Signature Pages to Follow]

-3-


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

PUBLIC AGENCY RESOURCES

“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 Sixth Amendment to Amended and Restated Credit Agreement]


G

“GUARANTORS”

GENESYS ENGINEERING, P.C.

By

/s/ Vanessa Munoz

Name: Vanessa Munoz

Title: Vice President

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


G

“ADMINISTRATIVE AGENT” and “LENDERS”

BMO HARRIS BANK N.A., as a Lender and as

Administrative Agent

By

/s/ James Stephens

Name: James Stephens

Title: Vice President

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


G

“LENDERS”

BANK OF AMERICA, N.A., as a Lender

By

/s/ Mary Beatty

Name: Mary Beatty

Title: Senior Vice President

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


G

“LENDERS”

U.S. BANK NATIONAL ASSOCIATION, as a

Lender

By

/s/ Gina Ge

Name: Gina Ge

Title: Assistant Vice President

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


G

“LENDERS”

MUFG UNION BANK, N.A., as a Lender

By

/s/ Lance Zediker

Name: Lance Zediker

Title: Director

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


EX-31.1 3 wldn-20220701xex31d1.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: August 4, 2022

(Prin

By:

/s/ THOMAS D. BRISBIN

Thomas D. Brisbin

Chief Executive Officer

(Principal Executive Officer)


EX-31.2 4 wldn-20220701xex31d2.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: August 4, 2022

By:

/s/ CREIGHTON K. EARLY

Creighton K. Early

Chief Financial Officer and Vice President

(Principal Financial Officer)


EX-32.1 5 wldn-20220701xex32d1.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 July 1, 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)

August 4, 2022

By:

/s/ CREIGHTON K. EARLY

Creighton K. Early

Chief Financial Officer and Vice President

(Principal Financial Officer)

August 4, 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-20220701.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) (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 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-20220701_cal.xml EX-101.CAL EX-101.DEF 8 wldn-20220701_def.xml EX-101.DEF EX-101.LAB 9 wldn-20220701_lab.xml EX-101.LAB EX-101.PRE 10 wldn-20220701_pre.xml EX-101.PRE XML 11 R1.htm IDEA: XBRL DOCUMENT v3.22.2
Document and Entity Information - shares
6 Months Ended
Jul. 01, 2022
Aug. 03, 2022
Cover [Abstract]    
Document Type 10-Q  
Document Quarterly Report true  
Document Transition Report false  
Document Period End Date Jul. 01, 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,282,133
Current Fiscal Year End Date --12-30  
Document Fiscal Period Focus Q2  
Document Fiscal Year Focus 2022  
Entity Central Index Key 0001370450  
Amendment Flag false  
XML 12 R2.htm IDEA: XBRL DOCUMENT v3.22.2
CONDENSED CONSOLIDATED BALANCE SHEETS - USD ($)
$ in Thousands
Jul. 01, 2022
Dec. 31, 2021
Current assets:    
Cash and cash equivalents $ 5,811 $ 11,221
Accounts receivable, net of allowance for doubtful accounts of $751 and $1,115 at July 1, 2022 and December 31, 2021, respectively 60,301 67,211
Contract assets 61,177 59,288
Other receivables 6,231 6,267
Prepaid expenses and other current assets 4,864 4,972
Total current assets 138,384 148,959
Equipment and leasehold improvements, net 19,382 16,757
Goodwill 130,124 130,124
Right-of-use assets 13,387 15,177
Other intangible assets, net 47,024 52,713
Other assets 13,891 13,843
Deferred income taxes, net 19,691 16,849
Total assets 381,883 394,422
Current liabilities:    
Accounts payable 27,813 36,672
Accrued liabilities 34,994 35,680
Contingent consideration payable 943 10,206
Contract liabilities 11,410 13,499
Notes payable 16,019 15,036
Finance lease obligations 891 539
Lease liability 5,435 5,575
Total current liabilities 97,505 117,207
Contingent consideration payable   832
Notes payable 97,121 85,538
Finance lease obligations, less current portion 1,413 778
Lease liability, less current portion 8,956 10,768
Other noncurrent liabilities 78 78
Total liabilities 205,073 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,215 and 12,804 shares issued and outstanding at July 1, 2022 and December 31, 2021, respectively 132 128
Additional paid-in capital 172,678 167,032
Accumulated other comprehensive loss   (38)
Retained earnings 4,000 12,099
Total stockholders' equity 176,810 179,221
Total liabilities and stockholders' equity $ 381,883 $ 394,422
XML 13 R3.htm IDEA: XBRL DOCUMENT v3.22.2
CONDENSED CONSOLIDATED BALANCE SHEETS (Parenthetical) - USD ($)
$ in Thousands
Jul. 01, 2022
Dec. 31, 2021
Accounts receivable, allowance for doubtful accounts    
Accounts receivable, allowance for doubtful accounts $ 751 $ 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,215,000 12,804,000
Common stock, shares outstanding (in shares) 13,215,000 12,804,000
XML 14 R4.htm IDEA: XBRL DOCUMENT v3.22.2
CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2022
Jul. 02, 2021
Jul. 01, 2022
Jul. 02, 2021
CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME        
Contract revenue $ 102,645 $ 84,154 $ 194,483 $ 163,240
Direct costs of contract revenue (inclusive of directly related depreciation and amortization):        
Salaries and wages 21,284 16,366 40,094 32,186
Subcontractor services and other direct costs 49,771 36,902 91,439 68,036
Total direct costs of contract revenue 71,055 53,268 131,533 100,222
General and administrative expenses:        
Salaries and wages, payroll taxes and employee benefits 20,439 18,712 39,796 38,156
Facilities and facility related 2,373 2,379 4,771 5,022
Stock-based compensation 1,714 5,933 5,019 10,139
Depreciation and amortization 4,426 4,224 8,835 8,411
Other 7,936 6,710 15,435 12,551
Total general and administrative expenses 36,888 37,958 73,856 74,279
Income (Loss) from operations (5,298) (7,072) (10,906) (11,261)
Other income (expense):        
Interest expense, net (1,030) (1,099) (1,781) (2,163)
Other, net 329 (93) 526 (64)
Total other expense, net (701) (1,192) (1,255) (2,227)
Income (Loss) before income taxes (5,999) (8,264) (12,161) (13,488)
Income tax (benefit) expense (1,673) (3,663) (4,062) (5,121)
Net income (loss) (4,326) (4,601) (8,099) (8,367)
Other comprehensive income (loss):        
Unrealized gain (loss) on derivative contracts, net of tax   104 38 232
Comprehensive income (loss) $ (4,326) $ (4,497) $ (8,061) $ (8,135)
Earnings (loss) per share:        
Basic (in dollars per share) $ (0.33) $ (0.37) $ (0.63) $ (0.68)
Diluted (in dollars per share) $ (0.33) $ (0.37) $ (0.63) $ (0.68)
Weighted-average shares outstanding:        
Basic (in shares) 13,016 12,421 12,901 12,284
Diluted (in shares) 13,016 12,421 12,901 12,284
XML 15 R5.htm IDEA: XBRL DOCUMENT v3.22.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)
Other comprehensive income     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)         (8,367)
Balances at Jul. 02, 2021 $ 127 158,793 (256) 12,149 170,813
Balances (in shares) at Jul. 02, 2021 12,713        
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)
Other comprehensive income     104   104
Balances at Jul. 02, 2021 $ 127 158,793 (256) 12,149 170,813
Balances (in shares) at Jul. 02, 2021 12,713        
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)
Other comprehensive income     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,099)
Balances at Jul. 01, 2022 $ 132 172,678   4,000 $ 176,810
Balances (in shares) at Jul. 01, 2022 13,215       13,215
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       13,215
XML 16 R6.htm IDEA: XBRL DOCUMENT v3.22.2
CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)
$ in Thousands
6 Months Ended
Jul. 01, 2022
Jul. 02, 2021
Cash flows from operating activities:    
Net income (loss) $ (8,099) $ (8,367)
Adjustments to reconcile net income (loss) to net cash provided by (used in) operating activities:    
Depreciation and amortization 8,835 8,411
Deferred income taxes, net (2,842) (3,041)
(Gain) loss on sale/disposal of equipment (69) (25)
Provision for doubtful accounts 107 342
Stock-based compensation 5,019 10,139
Accretion and fair value adjustments of contingent consideration 111 751
Changes in operating assets and liabilities, net of effects from business acquisitions:    
Accounts receivable 6,803 2,946
Contract assets (1,889) (4,266)
Other receivables 36 984
Prepaid expenses and other current assets 225 1,525
Other assets (48) 5,000
Accounts payable (8,859) (13,311)
Accrued liabilities (648) (2,712)
Contract liabilities (2,089) 1,020
Right-of-use assets (162) (104)
Net cash provided by operating activities (3,569) (708)
Cash flows from investing activities:    
Purchase of equipment and leasehold improvements (4,344) (3,100)
Proceeds from sale of equipment 73 43
Net cash (used in) provided by investing activities (4,271) (3,057)
Cash flows from financing activities:    
Payments on contingent consideration (10,206) (6,616)
Payments on notes payable (1,051) (1,541)
Borrowings under term loan facility and line of credit 20,000  
Repayments under term loan facility and line of credit (6,500) (6,500)
Principal payments on finance leases (444) (214)
Proceeds from stock option exercise 23 1,378
Proceeds from sales of common stock under employee stock purchase plan 1,561 1,385
Cash used to pay taxes on stock grants (953) (3,117)
Restricted Stock Award and Units   (1)
Net cash (used in) provided by financing activities 2,430 (15,226)
Net increase (decrease) in cash and cash equivalents (5,410) (18,991)
Cash and cash equivalents at beginning of period 11,221 28,405
Cash and cash equivalents at end of period 5,811 9,414
Cash paid during the period for:    
Interest 1,584 1,961
Income taxes 413 (1,669)
Supplemental disclosures of noncash investing and financing activities:    
(Gain) loss on cash flow hedge valuations, net of tax 38 232
Equipment acquired under finance leases $ 1,431 $ 575
XML 17 R7.htm IDEA: XBRL DOCUMENT v3.22.2
ORGANIZATION AND OPERATIONS OF THE COMPANY
6 Months Ended
Jul. 01, 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 August 3, 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 July 1, 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
RECENT ACCOUNTING PRONOUNCEMENTS
6 Months Ended
Jul. 01, 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
REVENUES
6 Months Ended
Jul. 01, 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 July 1, 2022 and December 31, 2021, contract assets included retainage of approximately $6.4 million and $4.5 million, respectively.

XML 20 R10.htm IDEA: XBRL DOCUMENT v3.22.2
SUPPLEMENTAL FINANCIAL STATEMENT DATA
6 Months Ended
Jul. 01, 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 six months ended July 1, 2022, the Company did not sell any trade accounts receivable. During the six months ended July 2, 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

July 1,

December 31,

    

2022

    

2021

(in thousands)

Furniture and fixtures

$

4,018

$

4,070

Computer hardware and software

 

30,659

 

26,425

Leasehold improvements

 

3,011

 

3,011

Equipment under finance leases

 

4,541

 

3,286

Automobiles, trucks, and field equipment

 

3,111

 

3,099

Subtotal

 

45,340

 

39,891

Accumulated depreciation and amortization

 

(25,958)

 

(23,134)

Equipment and leasehold improvements, net

$

19,382

$

16,757

Included in accumulated depreciation and amortization is $0.5 million and $0.6 million of amortization expense related to equipment held under finance leases for the six months ended July 1, 2022 and for fiscal year 2021, respectively.

Accrued Liabilities

July 1,

December 31,

    

2022

    

2021

(in thousands)

Accrued subcontractor costs

$

22,938

$

19,727

Other

 

4,263

 

2,750

Employee withholdings

 

2,943

 

2,665

Compensation and payroll taxes

 

2,546

 

2,244

Accrued bonuses

1,733

7,767

Accrued workers’ compensation insurance

 

571

 

527

Total accrued liabilities

$

34,994

$

35,680

Goodwill

December 31,

Additional

Additions /

July 1,

    

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. The Company evaluated the current economic impact caused by the Covid-19 pandemic to assess a potential impairment of goodwill and noted that it does not believe it is more likely than not that goodwill was impaired as of July 1, 2022.

Intangible Assets

July 1, 2022

December 31, 2021

Gross

Accumulated

Gross

Accumulated

Amortization

    

Amount

    

Amortization

    

Amount

    

Amortization

    

Period

(in thousands)

(in years)

Finite:

Backlog

$

7,944

$

7,655

$

7,944

$

7,222

1.0

Tradename

 

15,911

 

9,993

 

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

10,411

15,500

8,950

8.0

Customer relationships

58,149

22,731

58,149

19,939

5.0

-

8.0

Total finite intangible assets

99,234

52,210

98,924

46,521

In-process research and technology (1)

310

Total intangible assets

$

99,234

$

52,210

$

99,234

$

46,521

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

During the six months ended July 1, 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
DERIVATIVE FINANCIAL INSTRUMENTS
6 Months Ended
Jul. 01, 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 July 1, 2022, the Company had no derivative financial instruments in place.

XML 22 R12.htm IDEA: XBRL DOCUMENT v3.22.2
DEBT OBLIGATIONS
6 Months Ended
Jul. 01, 2022
DEBT OBLIGATIONS  
DEBT OBLIGATIONS

6. DEBT OBLIGATIONS

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

    

July 1,

    

December 31,

2022

2021

(in thousands)

Outstanding borrowings on Term A Loan

$

70,000

$

75,000

Outstanding borrowings on Revolving Credit Facility

Outstanding borrowings on Delayed Draw Term Loan

42,500

24,000

Other debt agreements

1,110

2,161

Total debt

113,610

101,161

Issuance costs and debt discounts

(470)

(587)

Subtotal

113,140

100,574

Less current portion of long-term debt

 

16,019

 

15,036

Long-term debt portion

$

97,121

$

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 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 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 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 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 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 Leverage Ratio.

As of July 1, 2022, the Company was in compliance with all covenants contained in the Credit Agreement, as amended.

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
LEASES
6 Months Ended
Jul. 01, 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 2026.

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 July 1, 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

Six Months Ended

July 1,

July 2,

July 1,

July 2,

2022

    

2021

    

2022

    

2021

(in thousands)

(in thousands)

Operating lease cost

$

1,534

$

1,653

$

3,112

$

3,345

Finance lease cost:

Amortization of assets

255

135

488

258

Interest on lease liabilities

15

7

29

13

Total net lease cost

$

1,804

$

1,795

$

3,629

$

3,616

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

July 1,

    

December 31,

2022

2021

(in thousands)

Operating leases:

Right-of-use assets

$

13,387

$

15,177

 

 

Lease liability

$

5,435

$

5,575

Lease liability, less current portion

 

8,956

 

10,768

Total lease liabilities

$

14,391

$

16,343

 

 

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

Equipment and leasehold improvements, net

$

4,541

$

3,286

Accumulated depreciation

 

(2,259)

 

(1,947)

Total equipment and leasehold improvements, net

$

2,282

$

1,339

 

Finance lease obligations

$

891

$

539

Finance lease obligations, less current portion

1,413

778

Total finance lease obligations

$

2,304

$

1,317

Weighted average remaining lease term (in years):

Operating Leases

3.55

3.79

Finance Leases

2.65

2.62

Weighted average discount rate:

Operating Leases

4.13

%

4.28

%

Finance Leases

2.57

%

2.78

%

Rent expense was $1.7 million and $3.3 million for the three and six months ended July 1, 2022, respectively, as compared to $1.8 million and $3.6 million for the three and six months ended July 2, 2021, respectively.

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

Six Months Ended

July 1,

July 2,

2022

    

2021

(in thousands)

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

Operating cash flow from operating leases

$

3,273

$

3,477

Operating cash flow from finance leases

29

13

Financing cash flow from finance leases

444

214

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

Operating leases

$

1,002

$

240

The following is a summary of the maturities of lease liabilities as of July 1, 2022:

    

Operating

    

Finance

 

(in thousands)

Fiscal year:

Remainder of 2022

$

3,117

$

522

2023

 

4,543

 

947

2024

 

3,030

674

2025

2,225

157

2026

2,159

 

73

2027 and thereafter

 

453

 

7

Total lease payments

15,527

2,380

Less: Imputed interest

 

(1,136)

(76)

Total lease obligations

 

14,391

2,304

Less: Current obligations

 

5,435

891

Noncurrent lease obligations

$

8,956

$

1,413

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
COMMITMENTS AND VARIABLE INTEREST ENTITIES
6 Months Ended
Jul. 01, 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 six months ended July 1, 2022 and July 2, 2021, the Company made matching contributions of $1.6 million and $1.3 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 July 1, 2022, the Company had one VIE — Genesys.

XML 25 R15.htm IDEA: XBRL DOCUMENT v3.22.2
SEGMENT AND GEOGRAPHICAL INFORMATION
6 Months Ended
Jul. 01, 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 six months ended July 1, 2022 and July 2, 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 July 1, 2022

Contract revenue

$

84,675

$

17,970

$

-

$

-

$

102,645

Depreciation and amortization

4,183

243

-

-

4,426

Interest expense, net

1

-

1,029

-

1,030

Segment profit (loss) before income tax expense

(6,357)

2,531

(2,173)

-

(5,999)

Income tax expense (benefit)

(1,891)

732

(514)

-

(1,673)

Net income (loss)

(4,467)

1,798

(1,657)

-

(4,326)

Segment assets (1)

323,070

23,293

58,650

(23,130)

381,883

Fiscal Three Months Ended July 2, 2021

Contract revenue

$

66,447

$

17,707

$

-

$

-

$

84,154

Depreciation and amortization

3,973

251

-

-

4,224

Interest expense, net

1

-

1,098

-

1,099

Segment profit (loss) before income tax expense

(4,913)

2,724

(6,075)

-

(8,264)

Income tax expense (benefit)

(2,151)

1,247

(2,759)

-

(3,663)

Net income (loss)

(2,762)

1,478

(3,317)

-

(4,601)

Segment assets (1)

322,255

22,952

58,410

(23,130)

380,487

Fiscal Six Months Ended July 1, 2022

Contract revenue

$

159,561

$

34,922

$

-

$

-

$

194,483

Depreciation and amortization

8,340

495

-

-

8,835

Interest expense, net

5

-

1,776

-

1,781

Segment profit (loss) before income tax expense

(10,710)

4,638

(6,089)

-

(12,161)

Income tax expense (benefit)

(3,578)

1,549

(2,033)

-

(4,062)

Net income (loss)

(7,132)

3,088

(4,055)

-

(8,099)

Segment assets (1)

323,070

23,293

58,650

(23,130)

381,883

Fiscal Six Months Ended July 2, 2021

Contract revenue

$

128,454

$

34,786

$

-

$

-

$

163,240

Depreciation and amortization

7,911

500

-

-

8,411

Interest expense, net

5

-

2,158

-

2,163

Segment profit (loss) before income tax expense

(7,745)

4,834

(10,577)

-

(13,488)

Income tax expense (benefit)

(2,941)

1,836

(4,016)

-

(5,121)

Net income (loss)

(4,804)

2,999

(6,562)

-

(8,367)

Segment assets (1)

322,255

22,952

58,410

(23,130)

380,487

(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 July 1, 2022

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

7,587

$

13,340

$

20,927

Unit-based

42,544

3,755

46,299

Fixed price

34,545

874

35,419

Total (1)

$

84,675

$

17,970

$

102,645

Client Type

Commercial

$

6,701

$

1,476

$

8,177

Government

29,861

16,338

46,199

Utilities (2)

48,114

156

48,270

Total (1)

$

84,675

$

17,970

$

102,645

Geography (3)

Domestic

$

84,675

$

17,970

$

102,645

    

Six months ended July 1, 2022

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

16,405

$

26,341

$

42,746

Unit-based

85,501

6,739

92,240

Fixed price

57,655

1,842

59,497

Total (1)

$

159,561

$

34,922

$

194,483

Client Type

Commercial

$

14,790

$

2,954

$

17,744

Government

48,220

31,791

80,011

Utilities (2)

96,551

177

96,728

Total (1)

$

159,561

$

34,922

$

194,483

Geography (3)

Domestic

$

159,561

$

34,922

$

194,483

    

Three months ended July 2, 2021

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

9,056

$

13,863

$

22,919

Unit-based

41,604

2,722

44,326

Fixed price

15,786

1,123

16,909

Total (1)

$

66,446

$

17,708

$

84,154

Client Type

Commercial

$

7,016

$

1,372

$

8,388

Government

13,675

16,281

29,956

Utilities (2)

45,756

55

45,811

Total (1)

$

66,446

$

17,708

$

84,154

Geography (3)

Domestic

$

66,446

$

17,708

$

84,154

    

Six months ended July 2, 2021

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

15,956

$

27,284

$

43,240

Unit-based

81,218

5,167

86,385

Fixed price

31,279

2,336

33,615

Total (1)

$

128,453

$

34,787

$

163,240

Client Type

Commercial

$

12,944

$

2,469

$

15,413

Government

27,229

32,210

59,439

Utilities (2)

88,280

108

88,388

Total (1)

$

128,453

$

34,787

$

163,240

Geography (3)

Domestic

$

128,453

$

34,787

$

163,240

(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 six months ended July 1, 2022 and July 2, 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 six months ended July 1, 2022 nor the three and six months ended July 1, 2021.

Customer Concentration

For the three and six months ended July 1, 2022, the Company’s top 10 customers accounted for 55.4%, and 54.4%, respectively, of the Company’s consolidated contract revenue. For the three and six months ended July 2, 2021, the Company’s top 10 customers accounted for 48.4%, and 46.2%, respectively, of the Company’s consolidated contract revenue.

For the three and six months ended July 1, 2022, the Company had one customer, LADWP, that accounted for 14.6% and 15.8%, respectively, of its consolidated contract revenues. For the three and six months ended July 2, 2021, the Company did not have any individual customers that accounted for more than 10% of its consolidated contract revenues.

On a segment basis, the Company had individual customers that accounted for more than 10% of its segment contract revenues. For the three and six months ended July 1, 2022, the Company derived 17.6% and 19.2%, respectively, of its Energy segment revenues from one customer, LADWP. For the three and six months ended July 1, 2022, no single customer accounted for 10% or more of its Engineering and Consulting segment revenues. For the three and six months ended July 1, 2021, the Company derived 11.5% and 10.9%, respectively, of its Energy segment revenues from one customer, Consolidated Edison of New York, and it derived 13.9% and 15.8%, respectively, of its Engineering and Consulting segment revenues from one customer, the City of Elk Grove.

The Company’s largest clients are based in California and New York. For the three and six months ended July 1, 2022, services provided to clients in California accounted for 40.9% and 42.2%, respectively, of the Company’s

contract revenue and services provided to clients in New York accounted for 19.6% and 20.2%, respectively, of the Company’s contract revenue. For the three and six months ended July 2, 2021, services provided to clients in California accounted for 34.8% and 34.5%, respectively, of the Company’s contract revenue and services provided to clients in New York accounted for 21.6% and 21.8%, respectively, of the Company’s contract revenue.

XML 26 R16.htm IDEA: XBRL DOCUMENT v3.22.2
INCOME TAXES
6 Months Ended
Jul. 01, 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 our 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 July 1, 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 July 1, 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 six months ended July 1, 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 six months ended July 1, 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.7 million and $4.1 million for the three and six months ended July 1, 2022, respectively, as compared to an income tax benefit of $3.7 million and $5.1 million for the three and six months ended July 2, 2021, respectively. During the three and six months ended July 1, 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 six months ended July 2, 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
EARNINGS PER SHARE (EPS)
6 Months Ended
Jul. 01, 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

Six months ended

July 1,

July 2,

July 1,

July 2,

    

2022

    

2021

    

2022

    

2021

(in thousands, except per share amounts)

Net income (loss)

$

(4,326)

$

(4,601)

$

(8,099)

$

(8,367)

Weighted-average common shares outstanding

 

13,016

 

12,421

 

12,901

 

12,284

Effect of dilutive stock options and restricted stock awards

 

 

 

 

Weighted-average common shares outstanding-diluted

 

13,016

 

12,421

 

12,901

 

12,284

Earnings (Loss) per share:

Basic

$

(0.33)

$

(0.37)

$

(0.63)

$

(0.68)

Diluted

$

(0.33)

$

(0.37)

$

(0.63)

$

(0.68)

For the three and six months ended July 1, 2022 and July 2, 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
CONTINGENCIES
6 Months Ended
Jul. 01, 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
SUBSEQUENT EVENTS
6 Months Ended
Jul. 01, 2022
SUBSEQUENT EVENTS  
SUBSEQUENT EVENTS

13. SUBSEQUENT EVENTS

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.

XML 30 R20.htm IDEA: XBRL DOCUMENT v3.22.2
ORGANIZATION AND OPERATIONS OF THE COMPANY (Policies)
6 Months Ended
Jul. 01, 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 August 3, 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 July 1, 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
RECENT ACCOUNTING PRONOUNCEMENTS (Policies)
6 Months Ended
Jul. 01, 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
REVENUES (Policies)
6 Months Ended
Jul. 01, 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 July 1, 2022 and December 31, 2021, contract assets included retainage of approximately $6.4 million and $4.5 million, respectively.

XML 33 R23.htm IDEA: XBRL DOCUMENT v3.22.2
REVENUES (Tables)
6 Months Ended
Jul. 01, 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
SUPPLEMENTAL FINANCIAL STATEMENT DATA (Tables)
6 Months Ended
Jul. 01, 2022
SUPPLEMENTAL FINANCIAL STATEMENT DATA  
Schedule of equipment and leasehold improvements

July 1,

December 31,

    

2022

    

2021

(in thousands)

Furniture and fixtures

$

4,018

$

4,070

Computer hardware and software

 

30,659

 

26,425

Leasehold improvements

 

3,011

 

3,011

Equipment under finance leases

 

4,541

 

3,286

Automobiles, trucks, and field equipment

 

3,111

 

3,099

Subtotal

 

45,340

 

39,891

Accumulated depreciation and amortization

 

(25,958)

 

(23,134)

Equipment and leasehold improvements, net

$

19,382

$

16,757

Schedule of accrued liabilities

July 1,

December 31,

    

2022

    

2021

(in thousands)

Accrued subcontractor costs

$

22,938

$

19,727

Other

 

4,263

 

2,750

Employee withholdings

 

2,943

 

2,665

Compensation and payroll taxes

 

2,546

 

2,244

Accrued bonuses

1,733

7,767

Accrued workers’ compensation insurance

 

571

 

527

Total accrued liabilities

$

34,994

$

35,680

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

December 31,

Additional

Additions /

July 1,

    

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

July 1, 2022

December 31, 2021

Gross

Accumulated

Gross

Accumulated

Amortization

    

Amount

    

Amortization

    

Amount

    

Amortization

    

Period

(in thousands)

(in years)

Finite:

Backlog

$

7,944

$

7,655

$

7,944

$

7,222

1.0

Tradename

 

15,911

 

9,993

 

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

10,411

15,500

8,950

8.0

Customer relationships

58,149

22,731

58,149

19,939

5.0

-

8.0

Total finite intangible assets

99,234

52,210

98,924

46,521

In-process research and technology (1)

310

Total intangible assets

$

99,234

$

52,210

$

99,234

$

46,521

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

During the six months ended July 1, 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 35 R25.htm IDEA: XBRL DOCUMENT v3.22.2
DEBT OBLIGATIONS (Tables)
6 Months Ended
Jul. 01, 2022
DEBT OBLIGATIONS  
Schedule of debt obligations, excluding obligations under capital leases

    

July 1,

    

December 31,

2022

2021

(in thousands)

Outstanding borrowings on Term A Loan

$

70,000

$

75,000

Outstanding borrowings on Revolving Credit Facility

Outstanding borrowings on Delayed Draw Term Loan

42,500

24,000

Other debt agreements

1,110

2,161

Total debt

113,610

101,161

Issuance costs and debt discounts

(470)

(587)

Subtotal

113,140

100,574

Less current portion of long-term debt

 

16,019

 

15,036

Long-term debt portion

$

97,121

$

85,538

XML 36 R26.htm IDEA: XBRL DOCUMENT v3.22.2
LEASES (Tables)
6 Months Ended
Jul. 01, 2022
LEASES  
Summary of the Lease Expense

Three Months Ended

Six Months Ended

July 1,

July 2,

July 1,

July 2,

2022

    

2021

    

2022

    

2021

(in thousands)

(in thousands)

Operating lease cost

$

1,534

$

1,653

$

3,112

$

3,345

Finance lease cost:

Amortization of assets

255

135

488

258

Interest on lease liabilities

15

7

29

13

Total net lease cost

$

1,804

$

1,795

$

3,629

$

3,616

Summary of Lease Information Presented on the Condensed Consolidated Balance Sheet

July 1,

    

December 31,

2022

2021

(in thousands)

Operating leases:

Right-of-use assets

$

13,387

$

15,177

 

 

Lease liability

$

5,435

$

5,575

Lease liability, less current portion

 

8,956

 

10,768

Total lease liabilities

$

14,391

$

16,343

 

 

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

Equipment and leasehold improvements, net

$

4,541

$

3,286

Accumulated depreciation

 

(2,259)

 

(1,947)

Total equipment and leasehold improvements, net

$

2,282

$

1,339

 

Finance lease obligations

$

891

$

539

Finance lease obligations, less current portion

1,413

778

Total finance lease obligations

$

2,304

$

1,317

Weighted average remaining lease term (in years):

Operating Leases

3.55

3.79

Finance Leases

2.65

2.62

Weighted average discount rate:

Operating Leases

4.13

%

4.28

%

Finance Leases

2.57

%

2.78

%

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

Six Months Ended

July 1,

July 2,

2022

    

2021

(in thousands)

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

Operating cash flow from operating leases

$

3,273

$

3,477

Operating cash flow from finance leases

29

13

Financing cash flow from finance leases

444

214

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

Operating leases

$

1,002

$

240

Summary of the Maturities of Operating Lease Liabilities

The following is a summary of the maturities of lease liabilities as of July 1, 2022:

    

Operating

    

Finance

 

(in thousands)

Fiscal year:

Remainder of 2022

$

3,117

$

522

2023

 

4,543

 

947

2024

 

3,030

674

2025

2,225

157

2026

2,159

 

73

2027 and thereafter

 

453

 

7

Total lease payments

15,527

2,380

Less: Imputed interest

 

(1,136)

(76)

Total lease obligations

 

14,391

2,304

Less: Current obligations

 

5,435

891

Noncurrent lease obligations

$

8,956

$

1,413

Summary of the Maturities of Finance Lease Liabilities

    

Operating

    

Finance

 

(in thousands)

Fiscal year:

Remainder of 2022

$

3,117

$

522

2023

 

4,543

 

947

2024

 

3,030

674

2025

2,225

157

2026

2,159

 

73

2027 and thereafter

 

453

 

7

Total lease payments

15,527

2,380

Less: Imputed interest

 

(1,136)

(76)

Total lease obligations

 

14,391

2,304

Less: Current obligations

 

5,435

891

Noncurrent lease obligations

$

8,956

$

1,413

XML 37 R27.htm IDEA: XBRL DOCUMENT v3.22.2
SEGMENT AND GEOGRAPHICAL INFORMATION (Tables)
6 Months Ended
Jul. 01, 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 July 1, 2022

Contract revenue

$

84,675

$

17,970

$

-

$

-

$

102,645

Depreciation and amortization

4,183

243

-

-

4,426

Interest expense, net

1

-

1,029

-

1,030

Segment profit (loss) before income tax expense

(6,357)

2,531

(2,173)

-

(5,999)

Income tax expense (benefit)

(1,891)

732

(514)

-

(1,673)

Net income (loss)

(4,467)

1,798

(1,657)

-

(4,326)

Segment assets (1)

323,070

23,293

58,650

(23,130)

381,883

Fiscal Three Months Ended July 2, 2021

Contract revenue

$

66,447

$

17,707

$

-

$

-

$

84,154

Depreciation and amortization

3,973

251

-

-

4,224

Interest expense, net

1

-

1,098

-

1,099

Segment profit (loss) before income tax expense

(4,913)

2,724

(6,075)

-

(8,264)

Income tax expense (benefit)

(2,151)

1,247

(2,759)

-

(3,663)

Net income (loss)

(2,762)

1,478

(3,317)

-

(4,601)

Segment assets (1)

322,255

22,952

58,410

(23,130)

380,487

Fiscal Six Months Ended July 1, 2022

Contract revenue

$

159,561

$

34,922

$

-

$

-

$

194,483

Depreciation and amortization

8,340

495

-

-

8,835

Interest expense, net

5

-

1,776

-

1,781

Segment profit (loss) before income tax expense

(10,710)

4,638

(6,089)

-

(12,161)

Income tax expense (benefit)

(3,578)

1,549

(2,033)

-

(4,062)

Net income (loss)

(7,132)

3,088

(4,055)

-

(8,099)

Segment assets (1)

323,070

23,293

58,650

(23,130)

381,883

Fiscal Six Months Ended July 2, 2021

Contract revenue

$

128,454

$

34,786

$

-

$

-

$

163,240

Depreciation and amortization

7,911

500

-

-

8,411

Interest expense, net

5

-

2,158

-

2,163

Segment profit (loss) before income tax expense

(7,745)

4,834

(10,577)

-

(13,488)

Income tax expense (benefit)

(2,941)

1,836

(4,016)

-

(5,121)

Net income (loss)

(4,804)

2,999

(6,562)

-

(8,367)

Segment assets (1)

322,255

22,952

58,410

(23,130)

380,487

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

    

Three months ended July 1, 2022

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

7,587

$

13,340

$

20,927

Unit-based

42,544

3,755

46,299

Fixed price

34,545

874

35,419

Total (1)

$

84,675

$

17,970

$

102,645

Client Type

Commercial

$

6,701

$

1,476

$

8,177

Government

29,861

16,338

46,199

Utilities (2)

48,114

156

48,270

Total (1)

$

84,675

$

17,970

$

102,645

Geography (3)

Domestic

$

84,675

$

17,970

$

102,645

    

Six months ended July 1, 2022

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

16,405

$

26,341

$

42,746

Unit-based

85,501

6,739

92,240

Fixed price

57,655

1,842

59,497

Total (1)

$

159,561

$

34,922

$

194,483

Client Type

Commercial

$

14,790

$

2,954

$

17,744

Government

48,220

31,791

80,011

Utilities (2)

96,551

177

96,728

Total (1)

$

159,561

$

34,922

$

194,483

Geography (3)

Domestic

$

159,561

$

34,922

$

194,483

    

Three months ended July 2, 2021

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

9,056

$

13,863

$

22,919

Unit-based

41,604

2,722

44,326

Fixed price

15,786

1,123

16,909

Total (1)

$

66,446

$

17,708

$

84,154

Client Type

Commercial

$

7,016

$

1,372

$

8,388

Government

13,675

16,281

29,956

Utilities (2)

45,756

55

45,811

Total (1)

$

66,446

$

17,708

$

84,154

Geography (3)

Domestic

$

66,446

$

17,708

$

84,154

    

Six months ended July 2, 2021

    

Energy

    

Engineering and
Consulting

    

Total

    

(in thousands)

Contract Type

Time-and-materials

$

15,956

$

27,284

$

43,240

Unit-based

81,218

5,167

86,385

Fixed price

31,279

2,336

33,615

Total (1)

$

128,453

$

34,787

$

163,240

Client Type

Commercial

$

12,944

$

2,469

$

15,413

Government

27,229

32,210

59,439

Utilities (2)

88,280

108

88,388

Total (1)

$

128,453

$

34,787

$

163,240

Geography (3)

Domestic

$

128,453

$

34,787

$

163,240

(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 six months ended July 1, 2022 and July 2, 2021.
XML 38 R28.htm IDEA: XBRL DOCUMENT v3.22.2
EARNINGS PER SHARE (EPS) (Tables)
6 Months Ended
Jul. 01, 2022
EARNINGS PER SHARE (EPS)  
Schedule of number of weighted-average common shares outstanding used to compute basic and diluted EPS

Three months ended

Six months ended

July 1,

July 2,

July 1,

July 2,

    

2022

    

2021

    

2022

    

2021

(in thousands, except per share amounts)

Net income (loss)

$

(4,326)

$

(4,601)

$

(8,099)

$

(8,367)

Weighted-average common shares outstanding

 

13,016

 

12,421

 

12,901

 

12,284

Effect of dilutive stock options and restricted stock awards

 

 

 

 

Weighted-average common shares outstanding-diluted

 

13,016

 

12,421

 

12,901

 

12,284

Earnings (Loss) per share:

Basic

$

(0.33)

$

(0.37)

$

(0.63)

$

(0.68)

Diluted

$

(0.33)

$

(0.37)

$

(0.63)

$

(0.68)

XML 39 R29.htm IDEA: XBRL DOCUMENT v3.22.2
ORGANIZATION AND OPERATIONS OF THE COMPANY - Segment Information (Details)
6 Months Ended
Jul. 01, 2022
segment
Segment Information  
Number of reporting segments 2
XML 40 R30.htm IDEA: XBRL DOCUMENT v3.22.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
ORGANIZATION AND OPERATIONS OF THE COMPANY - Historical and Current Impact of Covid-19 (Details) - Covid-19
$ in Thousands
6 Months Ended 12 Months Ended
Aug. 03, 2022
contract
Jul. 01, 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
RECENT ACCOUNTING PRONOUNCEMENTS (Details) - Accounting Standards Update 2021-01 [Member]
Jul. 01, 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
REVENUES - Segment Information (Details)
6 Months Ended
Jul. 01, 2022
segment
Segment Information  
Number of reporting segments 2
XML 44 R34.htm IDEA: XBRL DOCUMENT v3.22.2
REVENUES - General Information (Details) - USD ($)
3 Months Ended 6 Months Ended
Jul. 01, 2022
Jul. 02, 2021
Jul. 01, 2022
Jul. 02, 2021
Dec. 31, 2021
Disaggregation of Revenue [Line Items]          
Payroll taxes, bonuses and employee benefit costs for all Company personnel $ 20,439,000 $ 18,712,000 $ 39,796,000 $ 38,156,000  
Revenue of the entity recorded in which it acts solely in the capacity of an agent     0    
Retained accounts receivable $ 6,400,000   $ 6,400,000    
Accounts receivable          
Disaggregation of Revenue [Line Items]          
Retained accounts receivable         $ 4,500,000
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
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Accounts Receivable (Details)
$ in Millions
6 Months Ended
Jul. 01, 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
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Equipment and Leasehold Improvements, Net - Tabular Disclosure (Details) - USD ($)
$ in Thousands
Jul. 01, 2022
Dec. 31, 2021
EQUIPMENT AND LEASEHOLD IMPROVEMENTS    
Equipment under finance leases $ 4,541 $ 3,286
Equipment and leasehold improvements, gross 45,340 39,891
Accumulated depreciation and amortization (25,958) (23,134)
Total equipment and leasehold improvements, net 19,382 16,757
Furniture and Fixtures [Member]    
EQUIPMENT AND LEASEHOLD IMPROVEMENTS    
Equipment and leasehold improvements 4,018 4,070
Computer Hardware and Software [Member]    
EQUIPMENT AND LEASEHOLD IMPROVEMENTS    
Equipment and leasehold improvements 30,659 26,425
Leasehold Improvements [Member]    
EQUIPMENT AND LEASEHOLD IMPROVEMENTS    
Equipment and leasehold improvements 3,011 3,011
Automobiles Trucks and Field Equipment [Member]    
EQUIPMENT AND LEASEHOLD IMPROVEMENTS    
Equipment and leasehold improvements $ 3,111 $ 3,099
XML 47 R37.htm IDEA: XBRL DOCUMENT v3.22.2
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Equipment and Leasehold Improvements, Net - Amortization Expense (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended 12 Months Ended
Jul. 01, 2022
Jul. 02, 2021
Jul. 01, 2022
Jul. 02, 2021
Dec. 31, 2021
Finance leases          
Amortization expense $ 255 $ 135 $ 488 $ 258 $ 600
XML 48 R38.htm IDEA: XBRL DOCUMENT v3.22.2
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Accrued Liabilities (Details) - USD ($)
$ in Thousands
Jul. 01, 2022
Dec. 31, 2021
SUPPLEMENTAL FINANCIAL STATEMENT DATA    
Accrued subcontractor costs $ 22,938 $ 19,727
Other 4,263 2,750
Employee withholdings 2,943 2,665
Compensation and payroll taxes 2,546 2,244
Accrued bonuses 1,733 7,767
Accrued workers' compensation insurance 571 527
Total accrued liabilities $ 34,994 $ 35,680
XML 49 R39.htm IDEA: XBRL DOCUMENT v3.22.2
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Goodwill (Details)
$ in Thousands
Jul. 01, 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
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Finite-lived Intangible Assets - Gross Amounts and Accumulated Amortization (Details) - USD ($)
$ in Thousands
Jul. 01, 2022
Dec. 31, 2021
Finite-Lived Intangible Assets [Line Items]    
Total finite intangible assets $ 99,234 $ 98,924
Accumulated Amortization 52,210 46,521
Order or Production Backlog [Member]    
Finite-Lived Intangible Assets [Line Items]    
Total finite intangible assets 7,944 7,944
Accumulated Amortization 7,655 7,222
Trade Names [Member]    
Finite-Lived Intangible Assets [Line Items]    
Total finite intangible assets 15,911 15,911
Accumulated Amortization 9,993 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 10,411 8,950
Customer Relationships [Member]    
Finite-Lived Intangible Assets [Line Items]    
Total finite intangible assets 58,149 58,149
Accumulated Amortization $ 22,731 $ 19,939
XML 51 R41.htm IDEA: XBRL DOCUMENT v3.22.2
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Finite-lived Intangible Assets - Amortization Period (Details)
6 Months Ended
Jul. 01, 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
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Intangible Assets (Details) - USD ($)
$ in Thousands
Jul. 01, 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
SUPPLEMENTAL FINANCIAL STATEMENT DATA - In-process Research and Technology Reclassified (Details)
$ in Millions
3 Months Ended
Apr. 01, 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
SUPPLEMENTAL FINANCIAL STATEMENT DATA - Developed Technology (Details)
$ in Millions
3 Months Ended
Apr. 01, 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
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
DEBT OBLIGATIONS - Composition (Details) - USD ($)
$ in Thousands
Jul. 01, 2022
Dec. 31, 2021
Debt Instrument [Line Items]    
Total debt $ 113,610 $ 101,161
Issuance costs and debt discounts (470) (587)
Subtotal 113,140 100,574
Notes Payable to Banks [Member] | Term A Loan [Member]    
Debt Instrument [Line Items]    
Total debt 70,000 75,000
Notes Payable to Banks [Member] | Delayed Draw Term Loan Facility [Member]    
Debt Instrument [Line Items]    
Total debt 42,500 24,000
Notes Payable, Other Payables [Member] | Other Debt [Member]    
Debt Instrument [Line Items]    
Total debt $ 1,110 $ 2,161
XML 57 R47.htm IDEA: XBRL DOCUMENT v3.22.2
DEBT OBLIGATIONS - Classification (Details) - USD ($)
$ in Thousands
Jul. 01, 2022
Dec. 31, 2021
Long-term Debt, Current and Noncurrent [Abstract]    
Subtotal $ 113,140 $ 100,574
Less current portion of long-term debt 16,019 15,036
Long-term debt portion $ 97,121 $ 85,538
XML 58 R48.htm IDEA: XBRL DOCUMENT v3.22.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
Jul. 01, 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
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
LEASES - General information (Details)
$ in Thousands
6 Months Ended
Jul. 01, 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
LEASES - Lease Expense (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended 12 Months Ended
Jul. 01, 2022
Jul. 02, 2021
Jul. 01, 2022
Jul. 02, 2021
Dec. 31, 2021
Lease cost          
Operating lease cost $ 1,534 $ 1,653 $ 3,112 $ 3,345  
Amortization of assets 255 135 488 258 $ 600
Interest on lease liabilities 15 7 29 13  
Total net lease cost $ 1,804 $ 1,795 $ 3,629 $ 3,616  
XML 61 R51.htm IDEA: XBRL DOCUMENT v3.22.2
LEASES - Consolidated Balance Sheet (Details) - USD ($)
$ in Thousands
Jul. 01, 2022
Dec. 31, 2021
Assets and Liabilities, Lessee [Abstract]    
Right-of-use assets $ 13,387 $ 15,177
Operating leases, lease liabilities    
Lease liability 5,435 5,575
Lease liability, less current portion 8,956 10,768
Total lease liabilities 14,391 16,343
Finance leases (included in equipment and leasehold improvements, net):    
Equipment and leasehold improvements 4,541 3,286
Accumulated depreciation (2,259) (1,947)
Total equipment and leasehold improvements, net $ 2,282 $ 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 $ 891 $ 539
Finance lease obligations, less current portion 1,413 778
Total finance lease obligations $ 2,304 $ 1,317
XML 62 R52.htm IDEA: XBRL DOCUMENT v3.22.2
LEASES - Additional Information (Details)
Jul. 01, 2022
Dec. 31, 2021
Leases    
Operating leases, weighted average remaining lease term 3 years 6 months 18 days 3 years 9 months 14 days
Finance leases, weighted average remaining lease term 2 years 7 months 24 days 2 years 7 months 13 days
Operating leases, weighted average discount rate 4.13% 4.28%
Finance leases, weighted average discount rate 2.57% 2.78%
XML 63 R53.htm IDEA: XBRL DOCUMENT v3.22.2
LEASES - Rent Expense (Details) - USD ($)
$ in Millions
3 Months Ended 6 Months Ended
Jul. 01, 2022
Jul. 02, 2021
Jul. 01, 2022
Jul. 02, 2021
LEASES        
Rent expenses $ 1.7 $ 3.3 $ 1.8 $ 3.6
XML 64 R54.htm IDEA: XBRL DOCUMENT v3.22.2
LEASES - Supplemental Cash Flow Information (Details) - USD ($)
$ in Thousands
6 Months Ended
Jul. 01, 2022
Jul. 02, 2021
Cash paid for amounts included in the measurement of lease liabilities:    
Operating cash flow from operating leases $ 3,273 $ 3,477
Operating cash flow from finance leases 29 13
Financing cash flow from finance leases 444 214
Right-of-use assets obtained in exchange for lease liabilities for operating leases $ 1,002 $ 240
XML 65 R55.htm IDEA: XBRL DOCUMENT v3.22.2
LEASES - Operating Leases - Maturities of Lease Liabilities (Details)
$ in Thousands
Jul. 01, 2022
USD ($)
Operating  
Remainder of 2022 $ 3,117
2023 4,543
2024 3,030
2025 2,225
2026 2,159
2027 and thereafter 453
Total lease payments $ 15,527
XML 66 R56.htm IDEA: XBRL DOCUMENT v3.22.2
LEASES - Operating Leases - Gross Difference (Details) - USD ($)
$ in Thousands
Jul. 01, 2022
Dec. 31, 2021
Operating    
Total lease payments $ 15,527  
Less: Imputed interest (1,136)  
Total lease liabilities 14,391 $ 16,343
Less: Current obligations 5,435 5,575
Noncurrent lease obligations $ 8,956 $ 10,768
XML 67 R57.htm IDEA: XBRL DOCUMENT v3.22.2
LEASES - Finance Leases - Maturities of Lease Liabilities (Details)
$ in Thousands
Jul. 01, 2022
USD ($)
Finance  
Remainder of 2022 $ 522
2023 947
2024 674
2025 157
2026 73
2027 and thereafter 7
Total lease payments $ 2,380
XML 68 R58.htm IDEA: XBRL DOCUMENT v3.22.2
LEASES - Finance Leases - Gross Difference (Details) - USD ($)
$ in Thousands
Jul. 01, 2022
Dec. 31, 2021
Finance    
Total lease payments $ 2,380  
Less: Imputed interest (76)  
Total finance lease obligations 2,304 $ 1,317
Less: Current obligations 891 539
Noncurrent lease obligations $ 1,413 $ 778
XML 69 R59.htm IDEA: XBRL DOCUMENT v3.22.2
COMMITMENTS AND VARIABLE INTEREST ENTITIES - Employee Benefit Plans (Details)
$ in Millions
6 Months Ended
Jul. 01, 2022
USD ($)
Y
Jul. 02, 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 | $ $ 1.6 $ 1.3
XML 70 R60.htm IDEA: XBRL DOCUMENT v3.22.2
COMMITMENTS AND VARIABLE INTEREST ENTITIES - Variable Interest Entities (Details)
6 Months Ended
Jul. 01, 2022
item
COMMITMENTS AND VARIABLE INTEREST ENTITIES  
Number of VIEs 1
XML 71 R61.htm IDEA: XBRL DOCUMENT v3.22.2
SEGMENT AND GEOGRAPHICAL INFORMATION - Segment Information (Details)
6 Months Ended
Jul. 01, 2022
segment
Segment Information  
Number of reporting segments 2
XML 72 R62.htm IDEA: XBRL DOCUMENT v3.22.2
SEGMENT AND GEOGRAPHICAL INFORMATION - Intersegment Sales (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2022
Jul. 02, 2021
Jul. 01, 2022
Jul. 02, 2021
Segment Reporting Information [Line Items]        
Contract revenue $ 102,645 $ 84,154 $ 194,483 $ 163,240
Intersegment Eliminations [Member]        
Segment Reporting Information [Line Items]        
Contract revenue $ 0 $ 0 $ 0 $ 0
XML 73 R63.htm IDEA: XBRL DOCUMENT v3.22.2
SEGMENT AND GEOGRAPHICAL INFORMATION - Statement of Operations (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2022
Apr. 01, 2022
Jul. 02, 2021
Apr. 02, 2021
Jul. 01, 2022
Jul. 02, 2021
Segment reconciliation            
Contract revenue $ 102,645   $ 84,154   $ 194,483 $ 163,240
Depreciation and amortization 4,426   4,224   8,835 8,411
Interest expense, net 1,030   1,099   1,781 2,163
Segment profit (loss) before income tax expense (5,999)   (8,264)   (12,161) (13,488)
Income tax expense (benefit) (1,673)   (3,663)   (4,062) (5,121)
Net income (loss) (4,326) $ (3,773) (4,601) $ (3,766) (8,099) (8,367)
Energy            
Segment reconciliation            
Contract revenue 84,675   66,446   159,561 128,453
Depreciation and amortization 4,183   3,973   8,340 7,911
Interest expense, net         5 5
Segment profit (loss) before income tax expense         (10,710) (7,745)
Income tax expense (benefit)         (3,578) (2,941)
Net income (loss)         (7,132) (4,804)
Engineering and Consulting            
Segment reconciliation            
Contract revenue 17,970   17,708   34,922 34,787
Depreciation and amortization 243   251   495 500
Segment profit (loss) before income tax expense         4,638 4,834
Income tax expense (benefit)         1,549 1,836
Net income (loss)         3,088 2,999
Operating Segments [Member] | Energy            
Segment reconciliation            
Interest expense, net 1   1      
Segment profit (loss) before income tax expense (6,357)   (4,913)      
Income tax expense (benefit) (1,891)   (2,151)      
Net income (loss) (4,467)   (2,762)      
Operating Segments [Member] | Engineering and Consulting            
Segment reconciliation            
Segment profit (loss) before income tax expense 2,531   2,724      
Income tax expense (benefit) 732   1,247      
Net income (loss) 1,798   1,478      
Corporate, Non-Segment [Member]            
Segment reconciliation            
Interest expense, net 1,029   1,098   1,776 2,158
Segment profit (loss) before income tax expense (2,173)   (6,075)   (6,089) (10,577)
Income tax expense (benefit) (514)   (2,759)   (2,033) (4,016)
Net income (loss) (1,657)   (3,317)   (4,055) (6,562)
Intersegment Eliminations [Member]            
Segment reconciliation            
Contract revenue $ 0   $ 0   $ 0 $ 0
XML 74 R64.htm IDEA: XBRL DOCUMENT v3.22.2
SEGMENT AND GEOGRAPHICAL INFORMATION - Segment Assets (Details) - USD ($)
$ in Thousands
Jul. 01, 2022
Dec. 31, 2021
Jul. 02, 2021
Segment Reporting, Asset Reconciling Item [Line Items]      
Segment assets $ 381,883 $ 394,422 $ 380,487
Energy      
Segment Reporting, Asset Reconciling Item [Line Items]      
Segment assets 323,070   322,255
Engineering and Consulting      
Segment Reporting, Asset Reconciling Item [Line Items]      
Segment assets 23,293   22,952
Operating Segments [Member] | Energy      
Segment Reporting, Asset Reconciling Item [Line Items]      
Segment assets 323,070   322,255
Operating Segments [Member] | Engineering and Consulting      
Segment Reporting, Asset Reconciling Item [Line Items]      
Segment assets 23,293   22,952
Corporate, Non-Segment [Member]      
Segment Reporting, Asset Reconciling Item [Line Items]      
Segment assets 58,650   58,410
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
SEGMENT AND GEOGRAPHICAL INFORMATION - Disaggregation of Revenue (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2022
Jul. 02, 2021
Jul. 01, 2022
Jul. 02, 2021
Disaggregation of Revenue [Line Items]        
Revenue $ 102,645 $ 84,154 $ 194,483 $ 163,240
Domestic        
Disaggregation of Revenue [Line Items]        
Revenue 102,645 84,154 194,483 163,240
Energy        
Disaggregation of Revenue [Line Items]        
Revenue 84,675 66,446 159,561 128,453
Energy | Domestic        
Disaggregation of Revenue [Line Items]        
Revenue 84,675 66,446 159,561 128,453
Engineering and Consulting        
Disaggregation of Revenue [Line Items]        
Revenue 17,970 17,708 34,922 34,787
Engineering and Consulting | Domestic        
Disaggregation of Revenue [Line Items]        
Revenue 17,970 17,708 34,922 34,787
Commercial        
Disaggregation of Revenue [Line Items]        
Revenue 8,177 8,388 17,744 15,413
Commercial | Energy        
Disaggregation of Revenue [Line Items]        
Revenue 6,701 7,016 14,790 12,944
Commercial | Engineering and Consulting        
Disaggregation of Revenue [Line Items]        
Revenue 1,476 1,372 2,954 2,469
Government        
Disaggregation of Revenue [Line Items]        
Revenue 46,199 29,956 80,011 59,439
Government | Energy        
Disaggregation of Revenue [Line Items]        
Revenue 29,861 13,675 48,220 27,229
Government | Engineering and Consulting        
Disaggregation of Revenue [Line Items]        
Revenue 16,338 16,281 31,791 32,210
Utilities        
Disaggregation of Revenue [Line Items]        
Revenue 48,270 45,811 96,728 88,388
Utilities | Energy        
Disaggregation of Revenue [Line Items]        
Revenue 48,114 45,756 96,551 88,280
Utilities | Engineering and Consulting        
Disaggregation of Revenue [Line Items]        
Revenue 156 55 177 108
Time-and-materials        
Disaggregation of Revenue [Line Items]        
Revenue 20,927 22,919 42,746 43,240
Time-and-materials | Energy        
Disaggregation of Revenue [Line Items]        
Revenue 7,587 9,056 16,405 15,956
Time-and-materials | Engineering and Consulting        
Disaggregation of Revenue [Line Items]        
Revenue 13,340 13,863 26,341 27,284
Unit-based        
Disaggregation of Revenue [Line Items]        
Revenue 46,299 44,326 92,240 86,385
Unit-based | Energy        
Disaggregation of Revenue [Line Items]        
Revenue 42,544 41,604 85,501 81,218
Unit-based | Engineering and Consulting        
Disaggregation of Revenue [Line Items]        
Revenue 3,755 2,722 6,739 5,167
Fixed price        
Disaggregation of Revenue [Line Items]        
Revenue 35,419 16,909 59,497 33,615
Fixed price | Energy        
Disaggregation of Revenue [Line Items]        
Revenue 34,545 15,786 57,655 31,279
Fixed price | Engineering and Consulting        
Disaggregation of Revenue [Line Items]        
Revenue $ 874 $ 1,123 $ 1,842 $ 2,336
XML 76 R66.htm IDEA: XBRL DOCUMENT v3.22.2
SEGMENT AND GEOGRAPHICAL INFORMATION - Geographical Information (Details)
Jul. 01, 2022
state
SEGMENT AND GEOGRAPHICAL INFORMATION  
Number of states in which entity operates 23
XML 77 R67.htm IDEA: XBRL DOCUMENT v3.22.2
SEGMENT AND GEOGRAPHICAL INFORMATION - Concentration Risk (Details)
3 Months Ended 6 Months Ended
Jul. 01, 2022
Jul. 02, 2021
Jul. 01, 2022
Jul. 02, 2021
Geographic Concentration Risk [Member] | Revenue from Contract with Customer Benchmark [Member] | CALIFORNIA        
Concentration Risk [Line Items]        
Concentration risk percentage 40.90% 34.80% 42.20% 34.50%
Geographic Concentration Risk [Member] | Revenue from Contract with Customer Benchmark [Member] | NEW YORK        
Concentration Risk [Line Items]        
Concentration risk percentage 19.60% 21.60% 20.20% 21.80%
Top Ten Customers, Three Months Ended July 1, 2022 | Customer Concentration Risk [Member] | Revenue from Contract with Customer Benchmark [Member]        
Concentration Risk [Line Items]        
Concentration risk percentage 55.40%      
Top Ten Customers, Six Months Ended July 1, 2022 | Customer Concentration Risk [Member] | Revenue from Contract with Customer Benchmark [Member]        
Concentration Risk [Line Items]        
Concentration risk percentage     54.40%  
Top Ten Customers, Three Months Ended July 2, 2021 | Customer Concentration Risk [Member] | Revenue from Contract with Customer Benchmark [Member]        
Concentration Risk [Line Items]        
Concentration risk percentage   48.40%    
Top Ten Customers, Six Months Ended July 2, 2021 | Customer Concentration Risk [Member] | Revenue from Contract with Customer Benchmark [Member]        
Concentration Risk [Line Items]        
Concentration risk percentage       46.20%
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   14.60% 15.80%  
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 17.60%   19.20%  
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   11.50%    
Consolidated Edison of New York | Customer Concentration Risk [Member] | Revenue from Contract with Customer, Segment Benchmark [Member] | Engineering and Consulting        
Concentration Risk [Line Items]        
Concentration risk percentage       10.90%
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   13.90%   15.80%
XML 78 R68.htm IDEA: XBRL DOCUMENT v3.22.2
INCOME TAXES - Valuation Allowance (Details) - USD ($)
$ in Thousands
6 Months Ended 12 Months Ended
Jul. 01, 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
INCOME TAXES - Uncertain Tax Positions (Details)
$ in Thousands
Jul. 01, 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
INCOME TAXES - Income Tax Expense (Benefit) (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2022
Jul. 02, 2021
Jul. 01, 2022
Jul. 02, 2021
INCOME TAXES        
Income tax expense (benefit) $ (1,673) $ (3,663) $ (4,062) $ (5,121)
XML 81 R71.htm IDEA: XBRL DOCUMENT v3.22.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
EARNINGS PER SHARE (EPS) (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2022
Apr. 01, 2022
Jul. 02, 2021
Apr. 02, 2021
Jul. 01, 2022
Jul. 02, 2021
Net Income (Loss) Available to Common Stockholders, Diluted [Abstract]            
Net income (loss) $ (4,326) $ (3,773) $ (4,601) $ (3,766) $ (8,099) $ (8,367)
Net income (loss) - basic (4,326)   (4,601)   (8,099) (8,367)
Net income (loss) - diluted $ (4,326)   $ (4,601)   $ (8,099) $ (8,367)
Weighted Average Number of Shares Outstanding, Diluted [Abstract]            
Weighted-average common shares outstanding (in shares) 13,016   12,421   12,901 12,284
Weighted-average common shares outstanding-diluted (in shares) 13,016   12,421   12,901 12,284
Earnings Per Share, Diluted [Abstract]            
Basic (in dollars per share) $ (0.33)   $ (0.37)   $ (0.63) $ (0.68)
Diluted (in dollars per share) $ (0.33)   $ (0.37)   $ (0.63) $ (0.68)
XML 83 R73.htm IDEA: XBRL DOCUMENT v3.22.2
SUBSEQUENT EVENTS (Details) - Notes Payable to Banks [Member] - Credit Agreement 2019 [Member] - USD ($)
$ in Millions
Aug. 02, 2022
Jul. 01, 2022
Subsequent Event [Line Items]    
Debt instrument, covenants, purchase money indebtedness and Capitalized Lease Obligations   $ 1.5
Subsequent Event    
Subsequent Event [Line Items]    
Debt instrument, covenants, purchase money indebtedness and Capitalized Lease Obligations $ 4.0  
XML 84 wldn-20220701x10q_htm.xml IDEA: XBRL DOCUMENT 0001370450 wldn:Covid19Member 2022-08-03 2022-08-03 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 srt:MaximumMember 2022-01-01 2022-07-01 0001370450 wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:SubsequentEventMember 2022-08-02 0001370450 wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember 2022-07-01 0001370450 wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember 2021-04-30 0001370450 wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember 2019-06-26 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-07-01 0001370450 us-gaap:NewJerseyDivisionOfTaxationMember 2021-01-02 2021-12-31 0001370450 us-gaap:CaliforniaFranchiseTaxBoardMember 2017-12-30 2018-12-28 0001370450 us-gaap:CommonStockMember 2021-01-02 2021-04-02 0001370450 us-gaap:RetainedEarningsMember 2022-07-01 0001370450 us-gaap:AdditionalPaidInCapitalMember 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-07-02 0001370450 us-gaap:AdditionalPaidInCapitalMember 2021-07-02 0001370450 us-gaap:AccumulatedOtherComprehensiveIncomeMember 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-04-02 2022-07-01 0001370450 wldn:UnitBasedContractMember wldn:EnergyMember 2022-04-02 2022-07-01 0001370450 wldn:PublicUtilityMember wldn:EngineeringConsultingServicesMember 2022-04-02 2022-07-01 0001370450 wldn:PublicUtilityMember wldn:EnergyMember 2022-04-02 2022-07-01 0001370450 wldn:GovernmentsMember wldn:EngineeringConsultingServicesMember 2022-04-02 2022-07-01 0001370450 wldn:GovernmentsMember wldn:EnergyMember 2022-04-02 2022-07-01 0001370450 wldn:CommercialMember wldn:EngineeringConsultingServicesMember 2022-04-02 2022-07-01 0001370450 wldn:CommercialMember wldn:EnergyMember 2022-04-02 2022-07-01 0001370450 us-gaap:TimeAndMaterialsContractMember wldn:EngineeringConsultingServicesMember 2022-04-02 2022-07-01 0001370450 us-gaap:TimeAndMaterialsContractMember wldn:EnergyMember 2022-04-02 2022-07-01 0001370450 us-gaap:FixedPriceContractMember wldn:EngineeringConsultingServicesMember 2022-04-02 2022-07-01 0001370450 us-gaap:FixedPriceContractMember wldn:EnergyMember 2022-04-02 2022-07-01 0001370450 country:US wldn:EngineeringConsultingServicesMember 2022-04-02 2022-07-01 0001370450 country:US wldn:EnergyMember 2022-04-02 2022-07-01 0001370450 wldn:UnitBasedContractMember 2022-04-02 2022-07-01 0001370450 wldn:PublicUtilityMember 2022-04-02 2022-07-01 0001370450 wldn:GovernmentsMember 2022-04-02 2022-07-01 0001370450 wldn:CommercialMember 2022-04-02 2022-07-01 0001370450 us-gaap:TimeAndMaterialsContractMember 2022-04-02 2022-07-01 0001370450 us-gaap:IntersegmentEliminationMember 2022-04-02 2022-07-01 0001370450 us-gaap:FixedPriceContractMember 2022-04-02 2022-07-01 0001370450 country:US 2022-04-02 2022-07-01 0001370450 wldn:UnitBasedContractMember wldn:EngineeringConsultingServicesMember 2022-01-01 2022-07-01 0001370450 wldn:UnitBasedContractMember wldn:EnergyMember 2022-01-01 2022-07-01 0001370450 wldn:PublicUtilityMember wldn:EngineeringConsultingServicesMember 2022-01-01 2022-07-01 0001370450 wldn:PublicUtilityMember wldn:EnergyMember 2022-01-01 2022-07-01 0001370450 wldn:GovernmentsMember wldn:EngineeringConsultingServicesMember 2022-01-01 2022-07-01 0001370450 wldn:GovernmentsMember wldn:EnergyMember 2022-01-01 2022-07-01 0001370450 wldn:CommercialMember wldn:EngineeringConsultingServicesMember 2022-01-01 2022-07-01 0001370450 wldn:CommercialMember wldn:EnergyMember 2022-01-01 2022-07-01 0001370450 us-gaap:TimeAndMaterialsContractMember wldn:EngineeringConsultingServicesMember 2022-01-01 2022-07-01 0001370450 us-gaap:TimeAndMaterialsContractMember wldn:EnergyMember 2022-01-01 2022-07-01 0001370450 us-gaap:FixedPriceContractMember wldn:EngineeringConsultingServicesMember 2022-01-01 2022-07-01 0001370450 us-gaap:FixedPriceContractMember wldn:EnergyMember 2022-01-01 2022-07-01 0001370450 country:US wldn:EngineeringConsultingServicesMember 2022-01-01 2022-07-01 0001370450 country:US wldn:EnergyMember 2022-01-01 2022-07-01 0001370450 wldn:UnitBasedContractMember 2022-01-01 2022-07-01 0001370450 wldn:PublicUtilityMember 2022-01-01 2022-07-01 0001370450 wldn:GovernmentsMember 2022-01-01 2022-07-01 0001370450 wldn:CommercialMember 2022-01-01 2022-07-01 0001370450 us-gaap:TimeAndMaterialsContractMember 2022-01-01 2022-07-01 0001370450 us-gaap:IntersegmentEliminationMember 2022-01-01 2022-07-01 0001370450 us-gaap:FixedPriceContractMember 2022-01-01 2022-07-01 0001370450 country:US 2022-01-01 2022-07-01 0001370450 wldn:UnitBasedContractMember wldn:EngineeringConsultingServicesMember 2021-04-03 2021-07-02 0001370450 wldn:UnitBasedContractMember wldn:EnergyMember 2021-04-03 2021-07-02 0001370450 wldn:PublicUtilityMember wldn:EngineeringConsultingServicesMember 2021-04-03 2021-07-02 0001370450 wldn:PublicUtilityMember wldn:EnergyMember 2021-04-03 2021-07-02 0001370450 wldn:GovernmentsMember wldn:EngineeringConsultingServicesMember 2021-04-03 2021-07-02 0001370450 wldn:GovernmentsMember wldn:EnergyMember 2021-04-03 2021-07-02 0001370450 wldn:CommercialMember wldn:EngineeringConsultingServicesMember 2021-04-03 2021-07-02 0001370450 wldn:CommercialMember wldn:EnergyMember 2021-04-03 2021-07-02 0001370450 us-gaap:TimeAndMaterialsContractMember wldn:EngineeringConsultingServicesMember 2021-04-03 2021-07-02 0001370450 us-gaap:TimeAndMaterialsContractMember wldn:EnergyMember 2021-04-03 2021-07-02 0001370450 us-gaap:FixedPriceContractMember wldn:EngineeringConsultingServicesMember 2021-04-03 2021-07-02 0001370450 us-gaap:FixedPriceContractMember wldn:EnergyMember 2021-04-03 2021-07-02 0001370450 country:US wldn:EngineeringConsultingServicesMember 2021-04-03 2021-07-02 0001370450 country:US wldn:EnergyMember 2021-04-03 2021-07-02 0001370450 wldn:UnitBasedContractMember 2021-04-03 2021-07-02 0001370450 wldn:PublicUtilityMember 2021-04-03 2021-07-02 0001370450 wldn:GovernmentsMember 2021-04-03 2021-07-02 0001370450 wldn:CommercialMember 2021-04-03 2021-07-02 0001370450 us-gaap:TimeAndMaterialsContractMember 2021-04-03 2021-07-02 0001370450 us-gaap:IntersegmentEliminationMember 2021-04-03 2021-07-02 0001370450 us-gaap:FixedPriceContractMember 2021-04-03 2021-07-02 0001370450 country:US 2021-04-03 2021-07-02 0001370450 wldn:UnitBasedContractMember wldn:EngineeringConsultingServicesMember 2021-01-02 2021-07-02 0001370450 wldn:UnitBasedContractMember wldn:EnergyMember 2021-01-02 2021-07-02 0001370450 wldn:PublicUtilityMember wldn:EngineeringConsultingServicesMember 2021-01-02 2021-07-02 0001370450 wldn:PublicUtilityMember wldn:EnergyMember 2021-01-02 2021-07-02 0001370450 wldn:GovernmentsMember wldn:EngineeringConsultingServicesMember 2021-01-02 2021-07-02 0001370450 wldn:GovernmentsMember wldn:EnergyMember 2021-01-02 2021-07-02 0001370450 wldn:CommercialMember wldn:EngineeringConsultingServicesMember 2021-01-02 2021-07-02 0001370450 wldn:CommercialMember wldn:EnergyMember 2021-01-02 2021-07-02 0001370450 us-gaap:TimeAndMaterialsContractMember wldn:EngineeringConsultingServicesMember 2021-01-02 2021-07-02 0001370450 us-gaap:TimeAndMaterialsContractMember wldn:EnergyMember 2021-01-02 2021-07-02 0001370450 us-gaap:FixedPriceContractMember wldn:EngineeringConsultingServicesMember 2021-01-02 2021-07-02 0001370450 us-gaap:FixedPriceContractMember wldn:EnergyMember 2021-01-02 2021-07-02 0001370450 country:US wldn:EngineeringConsultingServicesMember 2021-01-02 2021-07-02 0001370450 country:US wldn:EnergyMember 2021-01-02 2021-07-02 0001370450 wldn:UnitBasedContractMember 2021-01-02 2021-07-02 0001370450 wldn:PublicUtilityMember 2021-01-02 2021-07-02 0001370450 wldn:GovernmentsMember 2021-01-02 2021-07-02 0001370450 wldn:CommercialMember 2021-01-02 2021-07-02 0001370450 us-gaap:TimeAndMaterialsContractMember 2021-01-02 2021-07-02 0001370450 us-gaap:IntersegmentEliminationMember 2021-01-02 2021-07-02 0001370450 us-gaap:FixedPriceContractMember 2021-01-02 2021-07-02 0001370450 country:US 2021-01-02 2021-07-02 0001370450 wldn:ComputerHardwareAndSoftwareMember 2022-07-01 0001370450 wldn:AutomobilesTrucksAndFieldEquipmentMember 2022-07-01 0001370450 us-gaap:LeaseholdImprovementsMember 2022-07-01 0001370450 us-gaap:FurnitureAndFixturesMember 2022-07-01 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-04-03 2021-07-02 0001370450 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-01-02 2021-04-02 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-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: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-07-01 0001370450 srt:MaximumMember 2022-07-01 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-04-02 2022-07-01 0001370450 us-gaap:OperatingSegmentsMember wldn:EnergyMember 2022-04-02 2022-07-01 0001370450 us-gaap:CorporateNonSegmentMember 2022-04-02 2022-07-01 0001370450 us-gaap:CorporateNonSegmentMember 2022-01-01 2022-07-01 0001370450 us-gaap:OperatingSegmentsMember wldn:EngineeringConsultingServicesMember 2021-04-03 2021-07-02 0001370450 us-gaap:OperatingSegmentsMember wldn:EnergyMember 2021-04-03 2021-07-02 0001370450 us-gaap:CorporateNonSegmentMember 2021-04-03 2021-07-02 0001370450 us-gaap:CorporateNonSegmentMember 2021-01-02 2021-07-02 0001370450 wldn:Covid19Member 2022-01-01 2022-07-01 0001370450 wldn:EngineeringConsultingServicesMember 2021-12-31 0001370450 wldn:EnergyMember 2021-12-31 0001370450 2022-10-01 2022-12-30 0001370450 2022-07-02 2022-09-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 2021-07-03 2021-10-01 0001370450 srt:MinimumMember us-gaap:TradeNamesMember 2022-01-01 2022-07-01 0001370450 srt:MinimumMember us-gaap:NoncompeteAgreementsMember 2022-01-01 2022-07-01 0001370450 srt:MinimumMember us-gaap:CustomerRelationshipsMember 2022-01-01 2022-07-01 0001370450 srt:MaximumMember us-gaap:TradeNamesMember 2022-01-01 2022-07-01 0001370450 srt:MaximumMember us-gaap:NoncompeteAgreementsMember 2022-01-01 2022-07-01 0001370450 srt:MaximumMember us-gaap:CustomerRelationshipsMember 2022-01-01 2022-07-01 0001370450 us-gaap:OrderOrProductionBacklogMember 2022-01-01 2022-07-01 0001370450 us-gaap:DevelopedTechnologyRightsMember 2022-01-01 2022-07-01 0001370450 us-gaap:DevelopedTechnologyRightsMember 2022-01-01 2022-04-01 0001370450 us-gaap:TradeNamesMember 2022-07-01 0001370450 us-gaap:OrderOrProductionBacklogMember 2022-07-01 0001370450 us-gaap:NoncompeteAgreementsMember 2022-07-01 0001370450 us-gaap:DevelopedTechnologyRightsMember 2022-07-01 0001370450 us-gaap:CustomerRelationshipsMember 2022-07-01 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-04-02 2022-07-01 0001370450 wldn:EnergyMember 2022-04-02 2022-07-01 0001370450 wldn:EngineeringConsultingServicesMember 2022-01-01 2022-07-01 0001370450 wldn:EnergyMember 2022-01-01 2022-07-01 0001370450 wldn:EngineeringConsultingServicesMember 2021-04-03 2021-07-02 0001370450 wldn:EnergyMember 2021-04-03 2021-07-02 0001370450 wldn:EngineeringConsultingServicesMember 2021-01-02 2021-07-02 0001370450 wldn:EnergyMember 2021-01-02 2021-07-02 0001370450 wldn:QualifiedCashOrDeferredArrangementMember 2022-01-01 2022-07-01 0001370450 wldn:DefinedContributionPlanMember 2022-01-01 2022-07-01 0001370450 wldn:DefinedContributionPlanMember 2021-01-02 2021-07-02 0001370450 srt:MinimumMember srt:ScenarioForecastMember wldn:CreditAgreement2019Member us-gaap:NotesPayableToBanksMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2022-12-30 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-07-01 0001370450 wldn:OtherDebtMember us-gaap:NotesPayableOtherPayablesMember 2022-07-01 0001370450 wldn:DelayedDrawTermLoanFacilityMember us-gaap:NotesPayableToBanksMember 2022-07-01 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: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:LosAngelesDepartmentOfWaterAndPowerMember us-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMember us-gaap:CustomerConcentrationRiskMember wldn:EnergyMember 2022-04-02 2022-07-01 0001370450 wldn:TopTenCustomersThreeMonthsEndedJuly12022Member us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2022-04-02 2022-07-01 0001370450 stpr:NY us-gaap:RevenueFromContractWithCustomerMember us-gaap:GeographicConcentrationRiskMember 2022-04-02 2022-07-01 0001370450 stpr:CA us-gaap:RevenueFromContractWithCustomerMember us-gaap:GeographicConcentrationRiskMember 2022-04-02 2022-07-01 0001370450 wldn:LosAngelesDepartmentOfWaterAndPowerMember us-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMember us-gaap:CustomerConcentrationRiskMember wldn:EnergyMember 2022-01-01 2022-07-01 0001370450 wldn:TopTenCustomersSixMonthsEndedJuly12022Member us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-07-01 0001370450 wldn:LosAngelesDepartmentOfWaterAndPowerMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-07-01 0001370450 stpr:NY us-gaap:RevenueFromContractWithCustomerMember us-gaap:GeographicConcentrationRiskMember 2022-01-01 2022-07-01 0001370450 stpr:CA us-gaap:RevenueFromContractWithCustomerMember us-gaap:GeographicConcentrationRiskMember 2022-01-01 2022-07-01 0001370450 wldn:ConsolidatedEdisonOfNewYorkMember us-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMember us-gaap:CustomerConcentrationRiskMember wldn:EnergyMember 2021-04-03 2021-07-02 0001370450 wldn:CityOfElkGroveMember us-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMember us-gaap:CustomerConcentrationRiskMember wldn:EngineeringConsultingServicesMember 2021-04-03 2021-07-02 0001370450 wldn:TopTenCustomersThreeMonthsEndedJuly22021Member us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2021-04-03 2021-07-02 0001370450 wldn:LosAngelesDepartmentOfWaterAndPowerMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2021-04-03 2021-07-02 0001370450 stpr:NY us-gaap:RevenueFromContractWithCustomerMember us-gaap:GeographicConcentrationRiskMember 2021-04-03 2021-07-02 0001370450 stpr:CA us-gaap:RevenueFromContractWithCustomerMember us-gaap:GeographicConcentrationRiskMember 2021-04-03 2021-07-02 0001370450 wldn:ConsolidatedEdisonOfNewYorkMember us-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMember us-gaap:CustomerConcentrationRiskMember wldn:EngineeringConsultingServicesMember 2021-01-02 2021-07-02 0001370450 wldn:CityOfElkGroveMember us-gaap:RevenueFromContractWithCustomerSegmentBenchmarkMember us-gaap:CustomerConcentrationRiskMember wldn:EngineeringConsultingServicesMember 2021-01-02 2021-07-02 0001370450 wldn:TopTenCustomersSixMonthsEndedJuly22021Member us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2021-01-02 2021-07-02 0001370450 stpr:NY us-gaap:RevenueFromContractWithCustomerMember us-gaap:GeographicConcentrationRiskMember 2021-01-02 2021-07-02 0001370450 stpr:CA us-gaap:RevenueFromContractWithCustomerMember us-gaap:GeographicConcentrationRiskMember 2021-01-02 2021-07-02 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-07-02 0001370450 us-gaap:CommonStockMember 2021-04-02 0001370450 us-gaap:CommonStockMember 2021-01-01 0001370450 us-gaap:AccountingStandardsUpdate202101Member 2022-07-01 0001370450 2021-01-01 0001370450 2021-01-02 2021-07-02 0001370450 us-gaap:OperatingSegmentsMember wldn:EngineeringConsultingServicesMember 2022-07-01 0001370450 us-gaap:OperatingSegmentsMember wldn:EnergyMember 2022-07-01 0001370450 wldn:EngineeringConsultingServicesMember 2022-07-01 0001370450 wldn:EnergyMember 2022-07-01 0001370450 us-gaap:IntersegmentEliminationMember 2022-07-01 0001370450 us-gaap:CorporateNonSegmentMember 2022-07-01 0001370450 us-gaap:OperatingSegmentsMember wldn:EngineeringConsultingServicesMember 2021-07-02 0001370450 us-gaap:OperatingSegmentsMember wldn:EnergyMember 2021-07-02 0001370450 wldn:EngineeringConsultingServicesMember 2021-07-02 0001370450 wldn:EnergyMember 2021-07-02 0001370450 us-gaap:IntersegmentEliminationMember 2021-07-02 0001370450 us-gaap:CorporateNonSegmentMember 2021-07-02 0001370450 2021-07-02 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-07-01 0001370450 2021-12-31 0001370450 2022-08-03 0001370450 2022-01-01 2022-07-01 shares iso4217:USD iso4217:USD shares pure wldn:segment wldn:state wldn:Y wldn:item wldn:contract 0 66446000 17708000 128453000 34787000 0001370450 --12-30 2022 Q2 false -4326000 -4601000 -8099000 -8367000 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 13215000 300000 0 10-Q true 2022-07-01 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 13282133 5811000 11221000 751000 1115000 60301000 67211000 61177000 59288000 6231000 6267000 4864000 4972000 138384000 148959000 19382000 16757000 130124000 130124000 13387000 15177000 47024000 52713000 13891000 13843000 19691000 16849000 381883000 394422000 27813000 36672000 34994000 35680000 943000 10206000 11410000 13499000 16019000 15036000 891000 539000 5435000 5575000 97505000 117207000 832000 97121000 85538000 1413000 778000 8956000 10768000 78000 78000 205073000 215201000 0.01 0.01 10000000 10000000 0 0 0.01 0.01 40000000 40000000 13215000 12804000 132000 128000 172678000 167032000 -38000 4000000 12099000 176810000 179221000 381883000 394422000 102645000 84154000 194483000 163240000 21284000 16366000 40094000 32186000 49771000 36902000 91439000 68036000 71055000 53268000 131533000 100222000 20439000 18712000 39796000 38156000 2373000 2379000 4771000 5022000 1714000 5933000 5019000 10139000 4426000 4224000 8835000 8411000 7936000 6710000 15435000 12551000 36888000 37958000 73856000 74279000 -5298000 -7072000 -10906000 -11261000 -1030000 -1099000 -1781000 -2163000 329000 -93000 526000 -64000 -701000 -1192000 -1255000 -2227000 -5999000 -8264000 -12161000 -13488000 -1673000 -3663000 -4062000 -5121000 -4326000 -4601000 -8099000 -8367000 104000 38000 232000 -4326000 -4497000 -8061000 -8135000 -0.33 -0.37 -0.63 -0.68 -0.33 -0.37 -0.63 -0.68 13016000 12421000 12901000 12284000 13016000 12421000 12901000 12284000 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 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 -8099000 -8367000 8835000 8411000 -2842000 -3041000 69000 25000 107000 342000 5019000 10139000 111000 751000 -6803000 -2946000 1889000 4266000 -36000 -984000 -225000 -1525000 48000 -5000000 -8859000 -13311000 -648000 -2712000 -2089000 1020000 162000 104000 -3569000 -708000 4344000 3100000 73000 43000 -4271000 -3057000 10206000 6616000 1051000 1541000 20000000 6500000 6500000 444000 214000 23000 1378000 1561000 1385000 953000 3117000 1000 2430000 -15226000 -5410000 -18991000 11221000 28405000 5811000 9414000 1584000 1961000 413000 -1669000 1431000 575000 <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 August 3, 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 July 1, 2022, the Company did <span style="-sec-ix-hidden:Hidden_j9fN0nG83EuwGhqJTQc0Sg;"><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_aXfZBOjI1EyL9z1uNhH0UQ;"><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 August 3, 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 July 1, 2022, the Company did <span style="-sec-ix-hidden:Hidden_j9fN0nG83EuwGhqJTQc0Sg;"><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_aXfZBOjI1EyL9z1uNhH0UQ;"><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 July 1, 2022 and December 31, 2021, contract assets included retainage of approximately $6.4 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 July 1, 2022 and December 31, 2021, contract assets included retainage of approximately $6.4 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 6400000 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 six months ended July 1, 2022, the Company did not sell any trade accounts receivable. During the six months ended July 2, 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.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:3.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','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.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:3.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','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.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></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;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.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;">July 1,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;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.5%;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.19%;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.78%;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.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;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;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.5%;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.19%;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.78%;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.19%;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.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,018</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,070</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30,659</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 26,425</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,011</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,011</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,541</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,286</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;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 3pt 0pt 0pt;"> 3,111</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;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 3pt 0pt 0pt;"> 3,099</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 45,340</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 39,891</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;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;"> (25,958)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;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.19%;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.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;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 3pt 0pt 0pt;"> 19,382</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;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 3pt 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.5 million and $0.6 million of amortization expense related to equipment held under finance leases for the six months ended July 1, 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.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:3.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','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.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:3.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','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.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></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;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.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;">July 1,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;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.5%;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.19%;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.78%;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.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;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;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.5%;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.19%;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.78%;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.19%;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.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,938</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 19,727</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,263</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,750</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,943</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,665</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,546</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,244</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;background:#cceeff;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.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,733</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,767</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.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 3pt 0pt 0pt;"> 571</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;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 3pt 0pt 0pt;"> 527</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.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 3pt 0pt 0pt;"> 34,994</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;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 3pt 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.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.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','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.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;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','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.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;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','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.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;white-space:nowrap;width:9.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></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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','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.95%;margin:0pt;padding:0pt;"><p 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.95%;margin:0pt;padding:0pt;"><p 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.95%;margin:0pt;padding:0pt;"><p 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.11%;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;">July 1,</b></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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','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.95%;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.95%;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.95%;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.11%;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.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;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p 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.2%;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.82%;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.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.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></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;">Energy</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.22%;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.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 129,375</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;margin:0pt;"><span style="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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 129,375</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:10pt;margin:0pt;">Engineering and Consulting</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.22%;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.51%;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 3pt 0pt 0pt;"> 749</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:1.21%;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.51%;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 3pt 0pt 0pt;"> —</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:1.21%;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.51%;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 3pt 0pt 0pt;"> —</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:1.21%;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.9%;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 3pt 0pt 0pt;"> 749</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;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.51%;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 3pt 0pt 0pt;"> 130,124</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;margin:0pt;"><span style="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:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.51%;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 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="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:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.51%;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 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="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:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.9%;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 3pt 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. The Company evaluated the current economic impact caused by the Covid-19 pandemic to assess a potential impairment of goodwill and noted that it does not believe it is more likely than not that goodwill was impaired as of July 1, 2022.</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.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.66%;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.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: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.39%;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: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.39%;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.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: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.41%;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.67%;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.21%;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.99%;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.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.33%;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:24.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;">July 1, 2022</b></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 colspan="5" style="vertical-align:bottom;white-space:nowrap;width:22.52%;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.67%;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.21%;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.99%;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.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.33%;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.14%;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.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 colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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.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 colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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.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 colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.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;">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.58%;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.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.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;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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.95%;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.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;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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.58%;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.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.33%;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.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)</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.58%;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.17%;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.33%;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.66%;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.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: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.39%;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: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.39%;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.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: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.41%;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.67%;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.21%;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.99%;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.17%;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.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,944</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,655</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;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.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,944</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 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.58%;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.17%;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.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,911</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,993</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: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.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,911</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 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.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2.5</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;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.99%;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.17%;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.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,420</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,420</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;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.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,420</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 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.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4.0</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;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.99%;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.17%;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.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,810</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,411</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: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.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 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.58%;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.17%;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.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.66%;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 3pt 0pt 0pt;"> 58,149</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.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 3pt 0pt 0pt;"> 22,731</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;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.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 3pt 0pt 0pt;"> 58,149</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.41%;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 3pt 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.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.0</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;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.99%;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.17%;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.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 99,234</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 52,210</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: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.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 98,924</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 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.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.99%;background:#cceeff;margin: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.17%;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.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.66%;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 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.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 3pt 0pt 0pt;"> —</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;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.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 3pt 0pt 0pt;"> 310</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.41%;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 3pt 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.67%;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.21%;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.99%;margin: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.17%;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.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.66%;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 3pt 0pt 0pt;"> 99,234</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.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 3pt 0pt 0pt;"> 52,210</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: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.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 3pt 0pt 0pt;"> 99,234</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.41%;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 3pt 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.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.99%;background:#cceeff;margin: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 six months ended July 1, 2022, the Company reclassified $0.3 million of in-process research and technology to <span style="-sec-ix-hidden:Hidden_OdzkndQ1HEmaQGZS3LcD3Q;"><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.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:3.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','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.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:3.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','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.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></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;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.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;">July 1,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;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.5%;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.19%;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.78%;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.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;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;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.5%;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.19%;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.78%;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.19%;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.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,018</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,070</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 30,659</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 26,425</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,011</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,011</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,541</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 3,286</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;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 3pt 0pt 0pt;"> 3,111</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;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 3pt 0pt 0pt;"> 3,099</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 45,340</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 39,891</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;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;"> (25,958)</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;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.19%;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.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;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 3pt 0pt 0pt;"> 19,382</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;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 3pt 0pt 0pt;"> 16,757</p></td></tr></table> 4018000 4070000 30659000 26425000 3011000 3011000 4541000 3286000 3111000 3099000 45340000 39891000 25958000 23134000 19382000 16757000 500000 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.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:3.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','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.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:3.78%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','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.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></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;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.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;">July 1,</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;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.5%;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.19%;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.78%;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.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;">2022</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;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.5%;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.19%;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.78%;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.19%;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.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 22,938</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 19,727</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4,263</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,750</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,943</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,665</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.34%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,546</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2,244</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;background:#cceeff;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.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:16.34%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,733</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:19.1%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,767</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.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 3pt 0pt 0pt;"> 571</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;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 3pt 0pt 0pt;"> 527</p></td></tr><tr><td style="vertical-align:bottom;width:52.19%;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.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.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 3pt 0pt 0pt;"> 34,994</p></td><td style="vertical-align:bottom;white-space:nowrap;width:3.78%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.1%;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 3pt 0pt 0pt;"> 35,680</p></td></tr></table> 22938000 19727000 4263000 2750000 2943000 2665000 2546000 2244000 1733000 7767000 571000 527000 34994000 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.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.96%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','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.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;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','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.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;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:1.95%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','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.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;white-space:nowrap;width:9.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></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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','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.95%;margin:0pt;padding:0pt;"><p 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.95%;margin:0pt;padding:0pt;"><p 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.95%;margin:0pt;padding:0pt;"><p 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.11%;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;">July 1,</b></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;font-weight:bold;visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','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.95%;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.95%;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.95%;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.11%;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.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;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p 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.2%;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.82%;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.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.22%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.51%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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:1.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.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></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;">Energy</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.22%;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.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 129,375</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;margin:0pt;"><span style="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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.51%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="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;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.9%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 129,375</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:10pt;margin:0pt;">Engineering and Consulting</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.22%;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.51%;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 3pt 0pt 0pt;"> 749</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:1.21%;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.51%;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 3pt 0pt 0pt;"> —</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:1.21%;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.51%;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 3pt 0pt 0pt;"> —</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:1.21%;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.9%;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 3pt 0pt 0pt;"> 749</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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.96%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.22%;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.51%;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 3pt 0pt 0pt;"> 130,124</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;margin:0pt;"><span style="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:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.51%;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 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="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:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.51%;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 3pt 0pt 0pt;"> —</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;margin:0pt;"><span style="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:10pt;margin:0pt;">$</p></td><td style="vertical-align:bottom;white-space:nowrap;width:9.9%;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 3pt 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.17%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td><td style="vertical-align:bottom;white-space:nowrap;width:2.33%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.66%;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.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: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.39%;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: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.39%;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.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: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.41%;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.67%;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.21%;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.99%;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.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.33%;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:24.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;">July 1, 2022</b></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 colspan="5" style="vertical-align:bottom;white-space:nowrap;width:22.52%;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.67%;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.21%;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.99%;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.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.33%;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.14%;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.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 colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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.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 colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.87%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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.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 colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.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;">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.58%;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.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:12.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;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:10.87%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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.95%;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.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;">Amount</b></p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.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;">    </b></p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:9.9%;border-bottom:1px solid #000000;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size: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.58%;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.17%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.33%;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.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)</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.58%;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.17%;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.33%;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.66%;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.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: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.39%;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: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.39%;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.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: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.41%;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.67%;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.21%;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.99%;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.17%;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.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,944</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,655</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;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.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 7,944</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 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.58%;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.17%;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.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,911</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 9,993</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: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.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,911</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 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.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 2.5</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;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.99%;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.17%;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.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.66%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,420</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,420</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;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.39%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 1,420</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.41%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 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.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 4.0</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;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.99%;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.17%;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.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,810</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 10,411</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: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.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 15,500</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 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.58%;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.17%;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.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.66%;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 3pt 0pt 0pt;"> 58,149</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.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 3pt 0pt 0pt;"> 22,731</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;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.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 3pt 0pt 0pt;"> 58,149</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.41%;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 3pt 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.67%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 5.0</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;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.99%;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.17%;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.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.66%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 99,234</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 52,210</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: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.39%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 98,924</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.41%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 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.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.99%;background:#cceeff;margin: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.17%;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.33%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.66%;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 3pt 0pt 0pt;"> —</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.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 3pt 0pt 0pt;"> —</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;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.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 3pt 0pt 0pt;"> 310</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.41%;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 3pt 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.67%;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.21%;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.99%;margin: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.17%;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.33%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.66%;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 3pt 0pt 0pt;"> 99,234</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.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 3pt 0pt 0pt;"> 52,210</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: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.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 3pt 0pt 0pt;"> 99,234</p></td><td style="vertical-align:bottom;white-space:nowrap;width:1.74%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.41%;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 3pt 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.67%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.21%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.99%;background:#cceeff;margin: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 six months ended July 1, 2022, the Company reclassified $0.3 million of in-process research and technology to <span style="-sec-ix-hidden:Hidden_OdzkndQ1HEmaQGZS3LcD3Q;"><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> 7944000 7655000 7944000 7222000 P1Y 15911000 9993000 15911000 8997000 P2Y6M P6Y 1420000 1420000 1420000 1413000 P4Y P5Y 15810000 10411000 15500000 8950000 P8Y 58149000 22731000 58149000 19939000 P5Y P8Y 99234000 52210000 98924000 46521000 310000 99234000 52210000 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_EMhP3BKm7Eeyy5TOAxKBgQ;"><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 July 1, 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:71.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.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:11.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','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.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></tr><tr><td style="vertical-align:bottom;width:71.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;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:12.23%;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;">July 1,</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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.97%;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:71.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;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:12.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;">2022</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: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.97%;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:71.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;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="5" style="vertical-align:middle;white-space:nowrap;width:26.12%;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:71.94%;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.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.19%;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.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 70,000</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;">$</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:0pt 3pt 0pt 0pt;"> 75,000</p></td></tr><tr><td style="vertical-align:bottom;width:71.94%;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.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.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 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;"><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:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:71.94%;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.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.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:11.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 42,500</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.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 24,000</p></td></tr><tr><td style="vertical-align:bottom;width:71.94%;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.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.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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.04%;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 3pt 0pt 0pt;"> 1,110</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: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.77%;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 3pt 0pt 0pt;"> 2,161</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.94%;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.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.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:11.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 113,610</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.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 101,161</p></td></tr><tr><td style="vertical-align:bottom;width:71.94%;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.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.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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.04%;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;"> (470)</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: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.77%;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:71.94%;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.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.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:11.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 113,140</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.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 100,574</p></td></tr><tr><td style="vertical-align:bottom;width:71.94%;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.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.19%;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.04%;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 3pt 0pt 0pt;"> 16,019</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: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.77%;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 3pt 0pt 0pt;"> 15,036</p></td></tr><tr><td style="vertical-align:bottom;width:71.94%;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.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.19%;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.04%;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 3pt 0pt 0pt;"> 97,121</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: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 3pt 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 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 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 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 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 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 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;text-indent:36pt;margin:0pt 0pt 12pt 0pt;">As of July 1, 2022, the Company was in compliance with all covenants contained in the Credit Agreement, as amended.</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:71.94%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.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:11.04%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','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.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></tr><tr><td style="vertical-align:bottom;width:71.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;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:12.23%;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;">July 1,</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:8pt;margin:0pt;">    </p></td><td colspan="2" style="vertical-align:bottom;white-space:nowrap;width:11.97%;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:71.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;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:12.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;">2022</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: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.97%;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:71.94%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:8pt;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="5" style="vertical-align:middle;white-space:nowrap;width:26.12%;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:71.94%;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.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.19%;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.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 70,000</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;">$</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:0pt 3pt 0pt 0pt;"> 75,000</p></td></tr><tr><td style="vertical-align:bottom;width:71.94%;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.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.19%;margin:0pt;padding:0pt;"><p style="font-family:'Times New 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.04%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 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;"><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:0pt 3pt 0pt 0pt;"> —</p></td></tr><tr><td style="vertical-align:bottom;width:71.94%;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.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.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:11.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 42,500</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.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 24,000</p></td></tr><tr><td style="vertical-align:bottom;width:71.94%;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.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.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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.04%;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 3pt 0pt 0pt;"> 1,110</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: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.77%;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 3pt 0pt 0pt;"> 2,161</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:71.94%;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.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.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:11.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 113,610</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.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 101,161</p></td></tr><tr><td style="vertical-align:bottom;width:71.94%;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.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.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="visibility:hidden;">​</span></p></td><td style="vertical-align:bottom;white-space:nowrap;width:11.04%;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;"> (470)</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: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.77%;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:71.94%;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.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.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:11.04%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 113,140</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.77%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;text-align:right;margin:0pt 3pt 0pt 0pt;"> 100,574</p></td></tr><tr><td style="vertical-align:bottom;width:71.94%;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.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.19%;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.04%;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 3pt 0pt 0pt;"> 16,019</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: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.77%;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 3pt 0pt 0pt;"> 15,036</p></td></tr><tr><td style="vertical-align:bottom;width:71.94%;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.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.19%;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.04%;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 3pt 0pt 0pt;"> 97,121</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: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 3pt 0pt 0pt;"> 85,538</p></td></tr></table> 70000000 75000000 42500000 24000000 1110000 2161000 113610000 101161000 470000 587000 113140000 100574000 16019000 15036000 97121000 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 <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 2026.</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_jNigzIIkk0ObqLeKMpwF5w;"><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 July 1, 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;">Six 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;">July 1,</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;">July 2,</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;">July 1,</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;">July 2,</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,534</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,653</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;"> 3,112</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;"> 3,345</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;">255</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;"> 135</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;"> 488</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;"> 258</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;">15</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;"> 7</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;"> 29</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;"> 13</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,804</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,795</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;"> 3,629</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;"> 3,616</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;">July 1,</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;"> 13,387</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;"> 5,435</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,956</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;"> 14,391</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;"> 4,541</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,259)</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_66DFDGr_-USpSD4wcg8Izw;"><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,282</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;"> 891</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,413</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,304</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.55</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.65</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.13</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;">2.57</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.7 million and $3.3 million for the three and six months ended July 1, 2022, respectively, as compared to $1.8 million and $3.6 million for the three and six months ended July 2, 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;">Six 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;">July 1,</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;">July 2,</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;"> 3,273</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;"> 3,477</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;"> 29</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;"> 13</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;"> 444</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;"> 214</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,002</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;"> 240</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 July 1, 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;"> 3,117</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;"> 522</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,543</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;"> 947</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,030</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;"> 674</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,225</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;"> 157</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,159</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;"> 73</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;"> 7</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;"> 15,527</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,380</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,136)</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;"> (76)</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;"> 14,391</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,304</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;"> 5,435</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;"> 891</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,956</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,413</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;">Six 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;">July 1,</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;">July 2,</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;">July 1,</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;">July 2,</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,534</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,653</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;"> 3,112</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;"> 3,345</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;">255</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;"> 135</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;"> 488</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;"> 258</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;">15</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;"> 7</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;"> 29</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;"> 13</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,804</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,795</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;"> 3,629</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;"> 3,616</p></td></tr></table> 1534000 1653000 3112000 3345000 255000 135000 488000 258000 15000 7000 29000 13000 1804000 1795000 3629000 3616000 <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;">July 1,</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;"> 13,387</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;"> 5,435</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,956</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;"> 14,391</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;"> 4,541</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,259)</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_66DFDGr_-USpSD4wcg8Izw;"><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,282</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;"> 891</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,413</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,304</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.55</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.65</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.13</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;">2.57</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> 13387000 15177000 5435000 5575000 8956000 10768000 14391000 16343000 4541000 3286000 2259000 1947000 2282000 1339000 891000 539000 1413000 778000 2304000 1317000 P3Y6M18D P3Y9M14D P2Y7M24D P2Y7M13D 0.0413 0.0428 0.0257 0.0278 1700000 3300000 1800000 3600000 <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;">Six 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;">July 1,</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;">July 2,</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;"> 3,273</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;"> 3,477</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;"> 29</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;"> 13</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;"> 444</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;"> 214</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,002</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;"> 240</p></td></tr></table> 3273000 3477000 29000 13000 444000 214000 1002000 240000 <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 July 1, 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;"> 3,117</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;"> 522</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,543</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;"> 947</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,030</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;"> 674</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,225</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;"> 157</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,159</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;"> 73</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;"> 7</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;"> 15,527</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,380</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,136)</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;"> (76)</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;"> 14,391</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,304</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;"> 5,435</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;"> 891</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,956</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,413</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;"> 3,117</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;"> 522</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,543</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;"> 947</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,030</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;"> 674</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,225</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;"> 157</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,159</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;"> 73</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;"> 7</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;"> 15,527</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,380</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,136)</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;"> (76)</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;"> 14,391</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,304</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;"> 5,435</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;"> 891</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,956</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,413</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> 3117000 522000 4543000 947000 3030000 674000 2225000 157000 2159000 73000 453000 7000 15527000 2380000 1136000 76000 14391000 2304000 5435000 891000 8956000 1413000 <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_TwhwK8XY9EmAGRbpdc4uEg;"><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 six months ended July 1, 2022 and July 2, 2021, the Company made matching contributions of $1.6 million and $1.3 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 July 1, 2022, the Company had one VIE — Genesys.</p> P3M 21 0.50 0.50 0.06 1600000 1300000 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 six months ended July 1, 2022 and July 2, 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 July 1, 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;"> 84,675</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;"> 17,970</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;"> 102,645</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,183</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;"> 243</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,426</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;"> 1</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,029</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,030</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;"> (6,357)</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,531</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,173)</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;"> (5,999)</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,891)</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;"> 732</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;"> (514)</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,673)</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;"> (4,467)</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,798</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,657)</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;"> (4,326)</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;"> 323,070</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,293</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;"> 58,650</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;"> 381,883</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 July 2, 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_POcji91xSUG4vNyB3U42jA;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;"> 66,447</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_rXHlimh_Zke4yZKnoeJw2Q;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;"> 17,707</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;"> 84,154</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;"> 3,973</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;"> 251</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,224</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;"> 1</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;"> 1,098</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;"> 1,099</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;"> (4,913)</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,724</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;"> (6,075)</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,264)</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,151)</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,247</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,759)</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;"> (3,663)</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,762)</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,478</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,317)</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;"> (4,601)</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;"> 322,255</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,952</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;"> 58,410</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;"> 380,487</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 Six Months Ended July 1, 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;"> 159,561</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;"> 34,922</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;"> 194,483</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;"> 8,340</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;"> 495</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;"> 8,835</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;"> 1,776</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;"> 1,781</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;"> (10,710)</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,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;"> (6,089)</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,161)</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;"> (3,578)</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,549</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,033)</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;"> (4,062)</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,132)</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,088</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,055)</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,099)</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;"> 323,070</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,293</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;"> 58,650</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;"> 381,883</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 Six Months Ended July 2, 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_JTo5Zn5sl0KZzILK5LAv6A;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;"> 128,454</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_h7LEG6xfr0OPewULeK40Bw;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;"> 34,786</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;"> 163,240</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;"> 7,911</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;"> 500</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;"> 8,411</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;"> 2,158</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;"> 2,163</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;"> (7,745)</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,834</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;"> (10,577)</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,488)</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,941)</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,836</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;"> (4,016)</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,121)</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;"> (4,804)</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,999</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;"> (6,562)</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,367)</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;"> 322,255</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,952</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;"> 58,410</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;"> 380,487</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.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.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: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:14.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:48.71%;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.25%;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 July 1, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.71%;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.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.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.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;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.71%;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.25%;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.71%;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.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: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:14.09%;background:#cceeff;margin:0pt;padding:0pt;"><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.71%;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,587</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: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,340</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:14.09%;margin: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,927</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">42,544</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: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,755</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:14.09%;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,299</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">34,545</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: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;">874</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:14.09%;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;">35,419</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">84,675</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: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;">17,970</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:14.09%;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,645</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.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: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:14.09%;margin:0pt;padding:0pt;"><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.71%;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.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: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:14.09%;background:#cceeff;margin:0pt;padding:0pt;"><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.71%;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,701</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: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,476</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:14.09%;margin: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,177</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">29,861</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: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;">16,338</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:14.09%;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,199</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">48,114</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: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;">156</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:14.09%;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;">48,270</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">84,675</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: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;">17,970</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:14.09%;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,645</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.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: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:14.09%;margin:0pt;padding:0pt;"><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.71%;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.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: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:14.09%;background:#cceeff;margin:0pt;padding:0pt;"><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.71%;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;"> 84,675</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: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;"> 17,970</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:14.09%;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,645</p></td></tr><tr><td style="vertical-align:middle;width:48.71%;margin:0pt;padding:0pt;"><p style="font-family:'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.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: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:14.09%;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.71%;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.25%;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;">Six months ended July 1, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.71%;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.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.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.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;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.71%;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.25%;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.71%;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.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: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:14.09%;background:#cceeff;margin:0pt;padding:0pt;"><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.71%;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;">16,405</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: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;">26,341</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:14.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">42,746</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">85,501</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: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;">6,739</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:14.09%;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;">92,240</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">57,655</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: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,842</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:14.09%;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;">59,497</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">159,561</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: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;">34,922</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:14.09%;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;">194,483</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.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: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:14.09%;margin:0pt;padding:0pt;"><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.71%;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.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: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:14.09%;background:#cceeff;margin:0pt;padding:0pt;"><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.71%;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;">14,790</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: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;">2,954</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:14.09%;margin: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,744</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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,220</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: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;">31,791</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:14.09%;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;">80,011</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">96,551</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: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;">177</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:14.09%;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;">96,728</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">159,561</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: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;">34,922</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:14.09%;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;">194,483</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.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: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:14.09%;margin:0pt;padding:0pt;"><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.71%;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.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: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:14.09%;background:#cceeff;margin:0pt;padding:0pt;"><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.71%;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;"> 159,561</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: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;"> 34,922</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:14.09%;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;"> 194,483</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.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;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;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.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: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:14.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></tr><tr><td style="vertical-align:bottom;width:48.72%;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.01%;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.25%;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 July 2, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.72%;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.01%;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.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.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.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;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.72%;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.01%;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.25%;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.72%;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.01%;background:#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.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: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:14.1%;background:#cceeff;margin:0pt;padding:0pt;"><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.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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,056</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: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,863</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:14.1%;margin: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,919</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">41,604</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: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,722</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:14.1%;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;">44,326</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">15,786</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: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,123</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:14.1%;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;">16,909</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">66,446</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: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;">17,708</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:14.1%;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;">84,154</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.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:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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: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:14.1%;margin:0pt;padding:0pt;"><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.72%;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.01%;background:#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.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: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:14.1%;background:#cceeff;margin:0pt;padding:0pt;"><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.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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,016</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: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,372</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:14.1%;margin: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,388</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">13,675</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: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;">16,281</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:14.1%;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;">29,956</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">45,756</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: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</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:14.1%;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;">45,811</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">66,446</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: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;">17,708</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:14.1%;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;">84,154</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.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:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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: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:14.1%;margin:0pt;padding:0pt;"><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.72%;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.01%;background:#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.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: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:14.1%;background:#cceeff;margin:0pt;padding:0pt;"><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.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;"> 66,446</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: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;"> 17,708</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:14.1%;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;"> 84,154</p></td></tr><tr><td style="vertical-align:middle;width:48.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:middle;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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: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:14.1%;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></table><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr><td style="vertical-align:middle;width:48.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:middle;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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: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:14.1%;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.72%;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.01%;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.25%;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;">Six months ended July 2, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.72%;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.01%;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.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.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.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;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.72%;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.01%;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.25%;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.72%;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.01%;background:#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.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: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:14.1%;background:#cceeff;margin:0pt;padding:0pt;"><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.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">15,956</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: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;">27,284</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:14.1%;margin: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,240</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">81,218</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: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;">5,167</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:14.1%;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;">86,385</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">31,279</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: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,336</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:14.1%;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;">33,615</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">128,453</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: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;">34,787</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:14.1%;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;">163,240</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.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:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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: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:14.1%;margin:0pt;padding:0pt;"><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.72%;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.01%;background:#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.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: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:14.1%;background:#cceeff;margin:0pt;padding:0pt;"><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.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">12,944</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: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;">2,469</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:14.1%;margin: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,413</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">27,229</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: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;">32,210</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:14.1%;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;">59,439</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">88,280</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: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;">108</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:14.1%;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;">88,388</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">128,453</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: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;">34,787</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:14.1%;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;">163,240</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.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:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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: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:14.1%;margin:0pt;padding:0pt;"><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.72%;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.01%;background:#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.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: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:14.1%;background:#cceeff;margin:0pt;padding:0pt;"><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.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;"> 128,453</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: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;"> 34,787</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:14.1%;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;"> 163,240</p></td></tr><tr><td style="vertical-align:middle;width:48.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:middle;width:14.11%;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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;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:middle;width:14.11%;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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;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:middle;width:14.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="font-size:8pt;visibility:hidden;">​</span></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 six months ended July 1, 2022 and July 2, 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 six months ended July 1, 2022 nor the three and six months ended July 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 six months ended July 1, 2022, the Company’s top 10 customers accounted for 55.4%, and 54.4%, respectively, of the Company’s consolidated contract revenue. For the three and six months ended July 2, 2021, the Company’s top 10 customers accounted for 48.4%, and 46.2%, 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:12pt 0pt 12pt 0pt;">For the three and six months ended July 1, 2022, the Company had one customer, LADWP, that accounted for 14.6% and 15.8%, respectively, of its consolidated contract revenues<span style="background:#ffffff;">.</span> For the three and six months ended July 2, 2021, the Company did not have any individual customers that accounted for more than 10% of its consolidated contract revenues. </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 and six months ended July 1, 2022, the Company derived 17.6% and 19.2%, respectively, of its Energy segment revenues from one customer, LADWP. <span style="background:#ffffff;">For the three and six months ended July 1, 2022, no single customer accounted for 10% or more of </span>its Engineering and Consulting segment revenues<span style="background:#ffffff;">. For the three and six months ended July 1, 2021, the Company derived </span><span style="background:#ffffff;">11.5%</span><span style="background:#ffffff;"> and </span><span style="background:#ffffff;">10.9%</span><span style="background:#ffffff;">, respectively, of its Energy segment revenues from one customer, Consolidated Edison of New York, and it derived </span><span style="background:#ffffff;">13.9%</span><span style="background:#ffffff;"> and </span><span style="background:#ffffff;">15.8%</span><span style="background:#ffffff;">, respectively, 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;">The Company’s largest clients are based in California and New York. For the three and six months ended July 1, 2022, services provided to clients in California accounted for 40.9% and 42.2%, respectively, of the Company’s </p><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;background:#ffffff;margin:0pt;">contract revenue and services provided to clients in New York accounted for 19.6% and 20.2%, respectively, of the Company’s contract revenue. For the three and six months ended July 2, 2021, services provided to clients in California accounted for 34.8% and 34.5%, respectively, of the Company’s contract revenue and services provided to clients in New York accounted for 21.6% and 21.8%, respectively, of the Company’s 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 July 1, 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;"> 84,675</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;"> 17,970</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;"> 102,645</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,183</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;"> 243</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,426</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;"> 1</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,029</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,030</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;"> (6,357)</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,531</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,173)</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;"> (5,999)</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,891)</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;"> 732</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;"> (514)</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,673)</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;"> (4,467)</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,798</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,657)</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;"> (4,326)</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;"> 323,070</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,293</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;"> 58,650</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;"> 381,883</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 July 2, 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_POcji91xSUG4vNyB3U42jA;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;"> 66,447</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_rXHlimh_Zke4yZKnoeJw2Q;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;"> 17,707</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;"> 84,154</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;"> 3,973</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;"> 251</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,224</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;"> 1</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;"> 1,098</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;"> 1,099</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;"> (4,913)</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,724</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;"> (6,075)</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,264)</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,151)</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,247</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,759)</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;"> (3,663)</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,762)</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,478</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,317)</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;"> (4,601)</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;"> 322,255</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,952</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;"> 58,410</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;"> 380,487</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 Six Months Ended July 1, 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;"> 159,561</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;"> 34,922</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;"> 194,483</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;"> 8,340</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;"> 495</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;"> 8,835</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;"> 1,776</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;"> 1,781</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;"> (10,710)</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,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;"> (6,089)</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,161)</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;"> (3,578)</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,549</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,033)</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;"> (4,062)</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,132)</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,088</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,055)</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,099)</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;"> 323,070</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,293</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;"> 58,650</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;"> 381,883</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 Six Months Ended July 2, 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_JTo5Zn5sl0KZzILK5LAv6A;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;"> 128,454</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_h7LEG6xfr0OPewULeK40Bw;"><span style="font-family:'Times New Roman','Times','serif';font-size:8pt;font-style:normal;font-weight:normal;"> 34,786</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;"> 163,240</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;"> 7,911</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;"> 500</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;"> 8,411</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;"> 2,158</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;"> 2,163</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;"> (7,745)</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,834</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;"> (10,577)</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,488)</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,941)</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,836</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;"> (4,016)</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,121)</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;"> (4,804)</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,999</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;"> (6,562)</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,367)</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;"> 322,255</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,952</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;"> 58,410</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;"> 380,487</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;"/> 84675000 17970000 102645000 4183000 243000 4426000 -1000 -1029000 -1030000 -6357000 2531000 -2173000 -5999000 -1891000 732000 -514000 -1673000 -4467000 1798000 -1657000 -4326000 323070000 23293000 58650000 -23130000 381883000 84154000 3973000 251000 4224000 -1000 -1098000 -1099000 -4913000 2724000 -6075000 -8264000 -2151000 1247000 -2759000 -3663000 -2762000 1478000 -3317000 -4601000 322255000 22952000 58410000 -23130000 380487000 159561000 34922000 194483000 8340000 495000 8835000 -5000 -1776000 -1781000 -10710000 4638000 -6089000 -12161000 -3578000 1549000 -2033000 -4062000 -7132000 3088000 -4055000 -8099000 323070000 23293000 58650000 -23130000 381883000 163240000 7911000 500000 8411000 -5000 -2158000 -2163000 -7745000 4834000 -10577000 -13488000 -2941000 1836000 -4016000 -5121000 -4804000 2999000 -6562000 -8367000 322255000 22952000 58410000 -23130000 380487000 <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.71%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;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.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: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:14.09%;margin:0pt;padding:0pt;"><div style="height:1pt;overflow:hidden;overflow-wrap:break-word;position:relative;"><div style="bottom:0pt;position:absolute;width:100%;"><p style="font-family:'Times New Roman','Times','serif';font-size:10pt;margin:0pt;"><span style="font-size:1pt;visibility:hidden;">​</span></p></div></div></td></tr><tr><td style="vertical-align:bottom;width:48.71%;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.25%;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 July 1, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.71%;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.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.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.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;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.71%;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.25%;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.71%;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.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: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:14.09%;background:#cceeff;margin:0pt;padding:0pt;"><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.71%;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,587</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: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,340</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:14.09%;margin: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,927</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">42,544</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: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,755</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:14.09%;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,299</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">34,545</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: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;">874</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:14.09%;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;">35,419</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">84,675</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: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;">17,970</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:14.09%;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,645</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.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: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:14.09%;margin:0pt;padding:0pt;"><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.71%;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.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: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:14.09%;background:#cceeff;margin:0pt;padding:0pt;"><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.71%;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,701</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: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,476</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:14.09%;margin: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,177</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">29,861</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: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;">16,338</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:14.09%;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,199</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">48,114</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: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;">156</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:14.09%;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;">48,270</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">84,675</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: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;">17,970</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:14.09%;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,645</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.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: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:14.09%;margin:0pt;padding:0pt;"><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.71%;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.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: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:14.09%;background:#cceeff;margin:0pt;padding:0pt;"><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.71%;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;"> 84,675</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: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;"> 17,970</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:14.09%;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,645</p></td></tr><tr><td style="vertical-align:middle;width:48.71%;margin:0pt;padding:0pt;"><p style="font-family:'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.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: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:14.09%;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.71%;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.25%;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;">Six months ended July 1, 2022</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.71%;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.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.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.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;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.71%;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.25%;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.71%;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.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: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:14.09%;background:#cceeff;margin:0pt;padding:0pt;"><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.71%;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;">16,405</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: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;">26,341</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:14.09%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-size:8pt;text-align:right;margin:0pt 2.4pt 0pt 0pt;">42,746</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">85,501</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: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;">6,739</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:14.09%;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;">92,240</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">57,655</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: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,842</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:14.09%;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;">59,497</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">159,561</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: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;">34,922</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:14.09%;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;">194,483</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.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: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:14.09%;margin:0pt;padding:0pt;"><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.71%;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.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: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:14.09%;background:#cceeff;margin:0pt;padding:0pt;"><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.71%;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;">14,790</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: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;">2,954</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:14.09%;margin: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,744</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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,220</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: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;">31,791</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:14.09%;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;">80,011</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">96,551</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: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;">177</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:14.09%;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;">96,728</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;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;">159,561</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: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;">34,922</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:14.09%;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;">194,483</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.71%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';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.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: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:14.09%;margin:0pt;padding:0pt;"><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.71%;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.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: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:14.09%;background:#cceeff;margin:0pt;padding:0pt;"><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.71%;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;"> 159,561</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: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;"> 34,922</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:14.09%;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;"> 194,483</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.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;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;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.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: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:14.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></tr><tr><td style="vertical-align:bottom;width:48.72%;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.01%;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.25%;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 July 2, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.72%;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.01%;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.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.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.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;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.72%;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.01%;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.25%;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.72%;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.01%;background:#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.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: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:14.1%;background:#cceeff;margin:0pt;padding:0pt;"><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.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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,056</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: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,863</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:14.1%;margin: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,919</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">41,604</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: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,722</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:14.1%;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;">44,326</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">15,786</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: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,123</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:14.1%;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;">16,909</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">66,446</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: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;">17,708</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:14.1%;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;">84,154</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.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:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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: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:14.1%;margin:0pt;padding:0pt;"><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.72%;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.01%;background:#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.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: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:14.1%;background:#cceeff;margin:0pt;padding:0pt;"><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.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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,016</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: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,372</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:14.1%;margin: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,388</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">13,675</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: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;">16,281</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:14.1%;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;">29,956</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">45,756</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: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</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:14.1%;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;">45,811</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">66,446</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: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;">17,708</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:14.1%;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;">84,154</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.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:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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: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:14.1%;margin:0pt;padding:0pt;"><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.72%;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.01%;background:#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.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: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:14.1%;background:#cceeff;margin:0pt;padding:0pt;"><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.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;"> 66,446</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: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;"> 17,708</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:14.1%;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;"> 84,154</p></td></tr><tr><td style="vertical-align:middle;width:48.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:middle;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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: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:14.1%;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></table><table style="border-collapse:collapse;font-size:16pt;height:max-content;padding-left:0pt;padding-right:0pt;width:100%;"><tr><td style="vertical-align:middle;width:48.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:middle;width:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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: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:14.1%;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.72%;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.01%;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.25%;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;">Six months ended July 2, 2021</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.72%;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.01%;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.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.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.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;">Total</b></p></td></tr><tr><td style="vertical-align:bottom;width:48.72%;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.01%;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.25%;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.72%;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.01%;background:#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.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: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:14.1%;background:#cceeff;margin:0pt;padding:0pt;"><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.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">15,956</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: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;">27,284</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:14.1%;margin: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,240</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">81,218</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: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;">5,167</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:14.1%;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;">86,385</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">31,279</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: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,336</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:14.1%;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;">33,615</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">128,453</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: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;">34,787</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:14.1%;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;">163,240</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.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:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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: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:14.1%;margin:0pt;padding:0pt;"><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.72%;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.01%;background:#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.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: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:14.1%;background:#cceeff;margin:0pt;padding:0pt;"><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.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">12,944</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: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;">2,469</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:14.1%;margin: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,413</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">27,229</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: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;">32,210</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:14.1%;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;">59,439</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">88,280</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: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;">108</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:14.1%;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;">88,388</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.72%;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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;">128,453</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: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;">34,787</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:14.1%;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;">163,240</p></td></tr><tr><td style="vertical-align:bottom;white-space:nowrap;width:48.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:2.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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.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: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:14.1%;margin:0pt;padding:0pt;"><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.72%;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.01%;background:#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.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: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:14.1%;background:#cceeff;margin:0pt;padding:0pt;"><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.72%;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.01%;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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;"> 128,453</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: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;"> 34,787</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:14.1%;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;"> 163,240</p></td></tr><tr><td style="vertical-align:middle;width:48.72%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'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.01%;background:#cceeff;margin:0pt;padding:0pt;"><p style="font-family:'Times New Roman','Times','serif';font-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:middle;width:14.11%;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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;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:middle;width:14.11%;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="font-size:8pt;visibility:hidden;">​</span></p></td><td style="vertical-align:middle;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:middle;width:14.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="font-size:8pt;visibility:hidden;">​</span></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 six months ended July 1, 2022 and July 2, 2021. </i></td></tr></table> 7587000 13340000 20927000 42544000 3755000 46299000 34545000 874000 35419000 84675000 17970000 102645000 6701000 1476000 8177000 29861000 16338000 46199000 48114000 156000 48270000 84675000 17970000 102645000 84675000 17970000 102645000 16405000 26341000 42746000 85501000 6739000 92240000 57655000 1842000 59497000 159561000 34922000 194483000 14790000 2954000 17744000 48220000 31791000 80011000 96551000 177000 96728000 159561000 34922000 194483000 159561000 34922000 194483000 9056000 13863000 22919000 41604000 2722000 44326000 15786000 1123000 16909000 66446000 17708000 84154000 7016000 1372000 8388000 13675000 16281000 29956000 45756000 55000 45811000 66446000 17708000 84154000 66446000 17708000 84154000 15956000 27284000 43240000 81218000 5167000 86385000 31279000 2336000 33615000 128453000 34787000 163240000 12944000 2469000 15413000 27229000 32210000 59439000 88280000 108000 88388000 128453000 34787000 163240000 128453000 34787000 163240000 23 0.554 0.544 0.484 0.462 0.146 0.158 0.176 0.192 0.115 0.109 0.139 0.158 0.409 0.422 0.196 0.202 0.348 0.345 0.216 0.218 <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 our 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 July 1, 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 July 1, 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 six months ended July 1, 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 six months ended July 1, 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.7 million and $4.1 million for the three and six months ended July 1, 2022, respectively, as compared to an income tax benefit of $3.7 million and $5.1 million for the three and six months ended July 2, 2021, respectively. During the three and six months ended July 1, 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 six months ended July 2, 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 -1700000 -4100000 -3700000 -5100000 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;">Six 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;">July 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;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;">July 2,</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;">July 1,</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;">July 2,</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;"> (4,326)</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;"> (4,601)</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,099)</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;"> (8,367)</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,016</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,421</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,901</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,284</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;"> —</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;"> —</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,016</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;"> 12,421</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,901</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,284</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;"> (0.33)</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;"> (0.37)</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.63)</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.68)</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;"> (0.33)</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;"> (0.37)</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.63)</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.68)</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 and six months ended July 1, 2022 and July 2, 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;">Six 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;">July 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;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;">July 2,</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;">July 1,</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;">July 2,</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;"> (4,326)</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;"> (4,601)</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,099)</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;"> (8,367)</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,016</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,421</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,901</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,284</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;"> —</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;"> —</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,016</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;"> 12,421</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,901</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,284</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;"> (0.33)</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;"> (0.37)</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.63)</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.68)</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;"> (0.33)</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;"> (0.37)</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.63)</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.68)</p></td></tr></table> -4326000 -4601000 -8099000 -8367000 13016000 12421000 12901000 12284000 13016000 12421000 12901000 12284000 -0.33 -0.37 -0.63 -0.68 -0.33 -0.37 -0.63 -0.68 <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;min-height:11.0pt;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;min-height:11.0pt;text-indent:18pt;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;">On August 2, 2022, the Company entered into the Sixth Amendment to the Credit Agreement (the “Sixth Amendment”). T<span style="background:#ffffff;">he Sixth Amendment increased the purchase money indebtedness and Capitalized Lease Obligations (as defined in the Credit Agreement) permissible limit from </span><span style="background:#ffffff;">$1.5</span><span style="background:#ffffff;"> million to </span><span style="background:#ffffff;">$4.0</span><span style="background:#ffffff;"> million.</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> 1500000 4000000.0 EXCEL 85 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( -:8!%4'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 " #6F 1522V5-^X K @ $0 &1O8U!R;W!S+V-O&ULS9+! M:L,P#(9?9?B>R'%&*2;-9:6G#08K;.QF;+4UBV-C:R1]^R5>FS*V!]C1TN]/ MGT"-#E+[B,_1!XQD,=V-KNN3U&'#3D1! B1]0J=2.27ZJ7GPT2F:GO$(0>D/ M=400G*_ (2FC2,$,+,)"9&UCM-01%?EXP1N]X,-G[#+,:, .'?:4H"HK8.T\ M,9S'KH$;8(811I>^"V@68J[^BHU3K^2E70.N&'7R:_UPW:_8ZW@0A1\7?#[O:@E7TFQ?I]=?_C=A)TW]F#_ ML?%5L&W@UUVT7U!+ P04 " #6F 15F5R<(Q & "<)P $P 'AL+W1H M96UE+W1H96UE,2YX;6SM6EMSVC@4?N^OT'AG]FT+QC:!MK03621A'^_1S80RY8-[9)-NIL\!"SI^\Y%1^?H.'GS[BYBZ(:(E/)X M8-DOV]:[MR_>X%#BVR]*+ M41B1%G\@M MNN01.+5)#3(3/PB=AIAJ4!P"I DQEJ&&^+3&K!'@$WVWO@C(WXV(]ZMOFCU7 MH5A)VH3X$$8:XIQSYG/1;/L'I4;1]E6\W*.76!4!EQC?-*HU+,76>)7 \:V< M/!T3$LV4"P9!AI@S M&L%&KQMUAVC2/'K^!?F<-0HACA*FNVB<5@$_9Y>PTG!Z(++9OVX?H;5,VPLCO='U!=*Y \FIS_I,C0' MHYI9";V$5FJ?JH,@H%\;D>/N5Z> HWEL:\4*Z">P'_T=HWPJOX@L Y M?RY]SZ7ON?0]H=*W-R-]9\'3BUO>1FY;Q/NN,=K7-"XH8U=RSTS0LS0[=R2^JVE+ZU)CA* M]+',<$X>RPP[9SR2';9WH!TU^_9==N0CI3!3ET.X&D*^ VVZG=PZ.)Z8D;D* MTU*0;\/YZ<5X&N(YV02Y?9A7;>?8T='[Y\%1L*/O/)8=QXCRHB'NH8:8S\-# MAWE[7YAGE<90-!1M;*PD+$:W8+C7\2P4X&1@+: '@Z]1 O)256 Q6\8#*Y"B M?$R,1>APYY=<7^/1DN/;IF6U;J\I=QEM(E(YPFF8$V>KRMYEL<%5'<]56_*P MOFH]M!5.S_Y9KF4Q9Z;RWRT,"2Q;B%D2XDU=[=7GFYRN>B)V^I=W MP6#R_7#)1P_E.^=?]%U#KG[VW>/Z;I,[2$R<><41 71% B.5' 86%S+D4.Z2 MD 83 >LX=SFWJXPD6L_UC6'ODRWSEPVSK> U[F M$RQ#I'[!?8J*@!&K8KZZKT_Y)9P[M'OQ@2";_-;;I/;=X Q\U*M:I60K$3]+ M!WP?D@9CC%OT-%^/%&*MIK&MQMHQ#'F 6/,,H68XWX=%FAHSU8NL.8T*;T'5 M0.4_V]0-:/8--!R1!5XQF;8VH^1."CS<_N\-L,+$CN'MB[\!4$L#!!0 ( M -:8!%7SR-%X^04 -@? 8 >&PO=V]R:W-H965T&UL MM9EK<^(V%(;_BH9V.NU,B"V9W+:$&4*2+=ULE@W9[K2=?A"V ,_:%I5E2/Y] MCVRPDXQ\<#W+%["-SXL>78Y>2?V-5-_2I1":/,51DEYVEEJOWCE.ZB]%S--C MN1()_#*7*N8:;M7"25=*\" /BB.'N>ZI$_,PZ0SZ^;.)&O1EIJ,P$1-%TBR. MN7J^$I'<7'9H9_?@(5PLM7G@#/HKOA!3H;^L)@KNG%(E"&.1I*%,B!+SR\Z0 MOAMYG@G(W_@C%)OTQ34Q*#,IOYF;<7#9<4V)1"1\;20X?*W%2$2148)R_+L5 M[93_:0)?7N_4;W-X@)GQ5(QD]#4,]/*R<]XA@9CS+-(/A_A9JF6\#882Q&%2?/.G;46\#'!K M@V@+T)H'7_X&T#\IISBI+E M6-=<\T%?R0U1YFU0,Q=YW>310!,FIAFG6L&O(<3IP;7T,V@537@2D)M$A_J9 MC).B>YAJ[I)TR95(^XZ&?S,QCK]5OBJ468WR*?DH$[U,0340P>MX!TI9%I7M MBGK%4,'?L^B8N/2(,)/@P6T"X9PM_51ROK#DOU_-J]$9R+13Y>SA+ MM8+.^(^MA@J%GEW!C-!WZ8K[XK(#0S 5:BTZ@Y]^H*?NKS:\[R3V"K97PO8P M]:J;/#ZOA(T4#Z=N][,-"8UJB712(ITT0_J<<:6%BI[)@UA)I6UXN)16F:U2 M1FA42[S3$N^T88LI#DDW'\SU?+C6G$>I%1 -:PEX5@*>-0.<"!5*D[P" BG0 MVCMQI3RQY)FE-K6@ BU!STO0<[1XVZQ\&T:"W&?Q3"@;(J[ANK3K>>[9J0T. M#6T)=U'"732!>Q"+T.11:,Y['EO;$-?Y.KZ[NQ[>D_]'QS9> M5*DE+W6K"==M0CQ.?*E@..;3[!&9:NBZ1"HRDEFBU3-\!]9JV*-^?6,CQH/: M(K_P&+0)\B-_(N, AFPX#_W"7M3WYSV2M->E%R>44NMPQ8/;\K**ES7A'08! MJ*='NPMR!^^13XF]77%)UG,IN>&I)A^@HT01)\.U2.S3#B[5EK[R111U(CC] MXT9:Z7'):19J4131@C/1"O31'&K\Q9T(E/-(_)7N*K/6+CB!3MWK=,2'M>6M/)/%#<];TG+##U1 MM;$!JS7O:"]GI7O$+Z)5L:)XH[G,=1@".6<4/;S[!(W0_ MG%X/K4MO/+ M86616".+-,J4,FNX8F6:-R6DVUY:O[[*=0&[#U-B]/P6X%VPG<(]&S-/7OD/EOW3?"@MHR5[?%PM_*6,6_->D)W);SQ>D8;E.&T)!!T9@1M^:8 M/0*U616/^[]@SHNS4S/AY4?**?'--FQQC%H^+8^MA_EAK5.]7IQY?^1FODQ) M).80ZAZ?0<)3Q3%R<:/E*C^)G4FM99Q?+@4/A#(OP.]S*?7NQOQ!>9@_^ ]0 M2P,$% @ UI@$5=7S"&,7!P BA\ !@ !X;"]W;W)KWKP);_;:/-@L3S=\CMQ(_2W[74-=XM>RRHO M1:5R6:%:K,]FY^3=!4O-@E;BSUP\J+UK9$RYE?*[N?FP.IMA@T@4(M-&!8=_ M]^)"%(71!#C^ZI3.^G>:A?O73]I_:8T'8VZY$A>R^%^^TINS63)#*['F3:&_ MR(??1&=0:/1ELE#M7_30R>(9RAJE9=DM!@1E7NW^\Q^=(_86D&!B >T6T)Z!I^S6&=7EY\_G1Y M]>GFZA+!U?+J[0S6]75U]OT#'Z=G.)_G/T7W2$\@I] MW' MRQ=@>6\^[G(' K,%'V3FUY)LYF$$9*U/=B MMOSI7R3"/[NL>R-E![:RWE;FT[Z\X&J#8-=09B[$7TU^SPLPWKF+.U51J\JD M@OMEF!#P^/V^-;80(90.4@43FA(2(:P1G[A%U1Z[]"4Z1*&]% MW9^D.;Q,;46;4HI'ES]VF,,]4R/,\-@A#JF8D@F'A+U#0O^^R4K7D.ZZ0^I" M%]KO)22.1^ALJ3"E2>)&%_7H(B^ZSWH#CASVRHDOLO%1-G:>2RB*W>CB'EWL M17==BRW/5TC\ -Y30K7;+UO(V4'HNU#'%J @B8(1:H=0&E,WZJ1'G7A1?Y6: M%R\ F%CO)BQAR1BB0RQ(TC!U@TQ[D*D7Y!4DD&W9 @2?%@*X=".+%,&UA=2Q7!\W2GBVOM-R^'Z6C$/>)1;N9X9#E -M$B]3=5&?5YI7 M=SE$?8=T#Z_$F,1/>9=B+2#6(7:J3)8":?Y#>'QILPQ)(QNL0RQ*@HFH)P,;$3\=[9*3QY6]F]E;9#HP>> M(WZBZZNF+7\T-.PTV.8J&B?$VAA;C$71%*>1@=2(G]4 8MW (=_;%R=*FZY8 MD*96JG"(A5&")U .K$;\M&:JK;RZ,PSJI@ZHB3-(Q M/A>C83;EQKU&T,]HO^15VUBTA0R2MT5^U^Z[VYWZW)FT.2J-0VQ!=5 9B2F> M*&/HP&7T^=;JM<'N5_GJ@8#-@@F;2+5TH$#J;\J>#S:[V4IC0JTC;(LE8<@F M6D8ZL!7UL]5DL,WAD5+]\=G*VCQV6F"S%&2S<=)U2,7Q%/R!R:B?R48Q^ K0 M-FE!(Q:-03L:-AQ'4[ ':J-^:MM5P96L7AJ=-F/M^:[#ZI4YG%,-E,;\E+;+ M(<^@8S9141SB>'P$7'(DI'AB*L,&1F-^1KN099GKML_=C=6>DDDVA=BKSYTY MD"MIO(&B0YL'EF3^>>F-EMEWT^:+6OV[G2'J1V=QS=YT;/I6V@ZMWAN<^CGW MNGYJT)2Q?XZ.\ DFD%]K=,^+1LP1P7.,,5(;7ILA4Z,WLL[_+U;0Q,FGI[E2 MIOQM)U"-5M ZK^"X.)WGA?.:@_+/%1VZ;"@#F+\,,,$!/#KEKV#"7S\CPN;4 MC&W!2X3.$QSXW?=6\UWF*#'8>![E$J)3V6XH0IB_"#E?K7)#&)#RS*SR.*]0 MQK M/="B5.[L]Z;M-K,KD^.INH0-=0GSUR5?A.;P:(4$KRLX76Y#'"-?.,QC_SOJ M$XJG^B@VU![L);-AY?WY=]02P,$% @ UI@$5?MMX\-D P M$@T !@ !X;"]W;W)K1T+%+-60PK250:153^>P]<'":6:ST/?&.[4)L!>SI. MZ [6H+\G*XD]NT0)6 2Q8B(F$K83:^;>S=VN<<@L_F)P4)4V,5(V0CR9SN=@ M8CF&$7#PM8&@^-C#'#@W2,CCGP+4*F,:QVK[&?UC)A[%;*B"N>!_LT"'$VMD MD0"V-.7ZFSA\@D)0W^#Y@JOLGQQRV^&M1?Q4:1$5SL@@8G'^I#^*1%0;LG%DF:T$UG8ZE.!!IK!'--++<9-ZHAL5F&M=:XEN&?GHZ M__JP6#ZLEPN"K?77+Y\7LT?LW,^^S![F2[+^M%P^KLG5BDJ(=0B:^91?D]_( M]_6"7'VX)A\(B\EC*%)%XT"-;8V<#++M%_'O\_C>D?A_I+Q#'/>&>([G-;C/ MV]T7X'=(-W=WZ^XV9J),AU>FP\OPND?P9KXOTE@K7*$^L#W=<+@AE.-BI[$/ M!,N&!"+=Z&W*<07FMDVB\RB]YBBF-.]40GV86%A["N0>K.FOO[@#Y_>F%%P( MK):0;IF0;AOZQ1*21QED4D(1*LJ<\!7*%51H(SJE4) '< MQD,LZ.NF;.0AAI5)<#K.ZYDZ851C/RC9#][&/N.H"$UU*"3[#U\8%?EH(_4< MOU]=/T[^>T7_#,.:A&$I8?@N"4RI]#3]X4^L7O-NLZ@1'I6$1^\BC.>]TKBA MLWAWBO7H).LVBQKKVY+U;6M-ST44X0W@:$'?7K*@+P16$^HZ+Z>STSI!5:GO MJ^B.G=YS_RP'NMI_@C?S?4. %_#DB&BR;1=B5"ZOY6OB3RAV+ M%>&P15>G,T0,F5_ \XX627:'W0B--^*L&>)'"TAC@.^W0NCGCKD6EY]!T_\! M4$L#!!0 ( -:8!%7G_LG+O < +(G 8 >&PO=V]R:W-H965T&ULK5K;)KN65,H&^[+"^O9ELA]A?S M>;G:LEU?BL4E M/X@LS=FG I6'W2XNOE^SC#]=S?#L^.!SNMF*ZL%\<;F/-^R.B2_[3X6\FW=6 MDG3'\C+E.2K8^FKV%E]$E%0-:L2?*7LJ3ZY11>6!\Z_5S4UR-;.J$;&,K41E M(I;_'MF295EE28[C[];HK.NS:GAZ?;3^KB8OR3S$)5OR[*\T$=NKF3]#"5O' MATQ\YD_O64O(J>RM>%;6?]%3B[5F:'4H!=^UC>4(=FG>_(^_M8XX:2#MP U( MVX"H#>R1!K1M0)_;@]TVL)_;@],VJ*G/&^ZUX\)8Q(O+@C^AHD)+:]5%[?VZ MM?17FE>!HW,8%*U&:H_LM/Y1QGI1GZ.?! M_>5U=0_NY=%+G*7+TU#4Q M&OS]D+U!%CY#Q"($&,_R.Q8P]1(6 LL&V? M#F$1 ',IL:T.-F#K=&P=8W2&:2'K$%KQ4I2(K^7%D#UZE>:K[%#*$E6]3FIX M]EV^SF+!$EEHY!2LTK@I97F"XATO1/JC?O#Z G*>,V4,3VDLG-)8-)&QP:RZ MW:RZQAB^B[.X2&6AJ6;D2:H8L*HT-IR3B"*8^$IX+G64C#O758)81]F6%2BV M(AU%"?9=.(2]CJQG)GMX.$8ME[I.NC)=M=2YV+*B#=HFQB$_>/K8 \_#BA]T M%'4#BRA^T%$!MFF@^$%'N;Y%1_S@=W[PC7ZXYR+.!F2A!0TYP->&XV'+4;.9 MCG(H<7W% 3H*4^Q0-9L!,$N6:P*[(.A<$!BSV6\L9X5T0IV($JD!TU*2K_0U M8M_DAJ%D)9B2@BE3TI3&PBF-11,9&TP-MGKY;+TP*9VA??R]X%F&1/RM?<%V M^XQ_9PP]R+E.S'' MA."KK^?5]C61F6I7+=%:.8"DB3Z;'E;+%8!R C7]A!#*PFJ:AGJT\$F8#5GW M.P)L%+"+T"2:0.I4GR.;N"IU $6(*C&-QWJM0;):A-[EY8-*N.*[",Y0S A, [4- /"B+I]BB"8W/!X M([Q[^4C,\G&89!_8FA?LF'-J60TZ0)=SYTZ@1NT2@OG$524%!,,R;-7H!G'4 M/JEN0Q_T,I*89>1-1Q>]:O<-KX]! -+7A=TY=C4!#<&HZZI!#\%LRR4J>P#F M8#)294BO)HE93=XRT=68K H"D+&NY\YMJDE($.:J*R.$8+Z6]"(01MVQD.]5 M)+&?45>K_4+!MM67N$'T] *8F 7PE[Q@ M<9;^D'NZ39SF[9P@N==)6)$^-B+X^+M462?IZI^&MLZAM"1_3#I%3,Q*^;E>$R#OG&UCP+@JH9@=N"IM &8;^E9'(+AD^W5 MD'NOEHE9+4=QD:?YICS&B]PI--]+X=4\J6">U%HXJ;5H*FO#:>D%,S$+YNNX M3%?59R"4\"R+B[*?&#@F&W/>:7A8;]1?8)8C,"TF09A:@J,1V)BPZ'4S,>OF M,,T.U6>N%] /GD]IJ:6<4G^51\>8)L9@8,2:K+;DPM MK%8)"$9LHFH_$!:H$C$"8:=?%X>,>ZE/S5+_=$6:. ,_W4*< 1C$&8(!G"&8 MSGE^<@9IQXI-??BKE(KHD(OF7$GWM#M@]K8^5J4\O\872PP\#_%%U!P?Z\TW MI]D^Q,4FS4N4L;7LRGKCR;$6S0&QYD;P?7T"ZH$+P7?UY9;%4K=5 /E^S;DX MWE0==,?T%O\ 4$L#!!0 ( -:8!%6U@L#AT@L %YR 8 >&PO=V]R M:W-H965T&ULO5UAB_%RM MT[1VOFXW>74]6M?U[L5D4BW7Z3:IGA>[-.?_>2C*;5+SM^6G2;4KTV1UJ+3= M3(CKAI-MDN6CFZO#W]Z5-U?%OMYD>?JN=*K]=IN4WUZEF^+Q>N2-OO_A??9I M73=_F-Q<[9)/Z5U:?]B]*_F[R0EEE6W3O,J*W"G3A^O12^\%"V=-A4.)_V3I M8W7VVFDNY6-1?&[>O%Y=C]RF1^DF7=8-1,)_?4D7Z6;3(/%^_-6"CDYM-A7/ M7W]'9X>+YQ?S,:G21;'Y;[:JU]>CV?;.X?1O%;^_BR.&O[F[?O(Y>WO,W=_?\UY_QV_L[YY;Q M=[>+?_U^^R:*W]_]PXG__>'U_?^694ZV3,JV<+'?NU\6^2O)5 M]9OSB_3^:E+SSC9-3I9MQUX=.T:Z.E9LMWSFW=7%\C-0>V&N_7*URIJ9FVR< M=TFV&O.^+))=5B<; "OJP5HN]]O])JG3E7-;K]/2X7WCRWC=K*\OJ?,Z7Q;; MU/GU35%5SP#XV S_/JWY!L"QXZ3,L_P3-%;,#'%?:!H)K]Z\N-1\C5Y,LY24 9?^YZ MOEPLTHN-_=E,+A3KA8@;>*%5%M4N6Z?6(S[HJ+;^DHYN__XW#_!.:S)A@,2880P*3 M&/1/#/H'=-K!(%^D_,9;\64:I<=7SYH-ZK"]K(O-*BTKOK/]M<_J;Q"//N(X M+##!(DRP&!.,(8%)= 411WH2Y_.U)W/>!6V[&&" M,;#[ ;R-AB=6PI_'ROE>##$4:A<0*C>+A;&WM@L1$RS&!&-(8!+ETQ/E4US* M,WZ?S1NU\9WSC@5H;-9V1YYJT*Q02+,<$8$IA$]?Q$]7P(U?N*$UL7SB[YYM3)UX;\[ZQ_*I.\ M!B6<$=EV$K:V><9S$\++XDF986U1:2.4V74S;VT'794- ;UW^L8]S-3 MQ$,;][Y=KFU*VN:"0&7!V!_;C0X5+49%8UAH,K/"X?#,%L=!\(T;+W+5W-IV M:5XEA[M8^K5YG8(,&B%MM[D6[7P^^,0-U26'V6:,BL;ZKD"F1G@LGMED>9O6 MS6/$P4O;='AIK\P8UER@.B^H:+&G>T=C.E4U#.LM)K,A_!+/J,]OCD[G4G(Z MC^R M* :)*AH48LFFW"JNXC:).MI4J9$>!J>V=0XMV=?[LKGCDNZG4*JK&@'EQE2U,6,(+9P&KCIC@6)3+Z1==VWA+GAF>Z'+I>T?*]TK MX&/ESM310O4+4-%B5#2&A283*3P#SVP:6,4A6BQS(,+3-3(8B0#* :$(H!04 MBX :-00C/"'./;,ZOS@F2&XI'F)NWGNBHNAL5C6&AR40*Z>W-GS(JX:'J M;U2T"!4M1D5C6&ARD%6H>F)6]8,>=,T8MMRBHD6H:#$J&B. 'S"C88[1B?L]2!@;D#ZCVI=ZQT-H:!$J6HR*QK#09-:%24"0"BF',++66+:@M-]SG&U'.UO%-49P(5C75<0D<&%A&6 \$) M]_>N)R#@/9VK/*!:"JAH,2H:PT*3TY.%I4"?-E& ]B<*4$!8J^D9YEY:)Q^C M&@-8:#)#PC^@/R^E@ (I!:YZ,S/WQSJK'#6E !6-8:')S KG@^*G%)@A;<4# MU2V48$Y5'PFUS1@5C?5=@4S-V;$-A)0",X8U%[B'.7!/

G%/0ZM11**=!N.U!* M >!J ^4 5QM" UQMJ)C!U:;"+:"7I13TCQ644J"[VN;FK:VH:*QW0&2&A&ZG3YHJ0%%3!5#1 M(E2T&!6-8:')AU:%KO?-NO[)SS'ZNO!7S31?%_Y>H(;E(O.%6!]$197^T$4& M8<>FZ0M)[YLE_4\]SNCKFC]0+1IS?ZU/%J-*?E0TAH4F,R\DO]\C^9\JB&1N MU_J@N:ZJB?H@&_V!'Y*M,G7);3Z2&3NIO5B134*4-$8 M%II,^-DG/YAMAQ\)-IFAK=>CKN'',ZH>-$9M,T9%8WU7(%,D; A_T,N&AIEJ@HC$L-)E589[X9O/D1X-2OIY1H?HGOFZS:*=7S;VT M9@C5%<%"DQD2KHAO=D4P@U*^;F'0J<87:H8%*EJ,BL:PT&1FA:'C]V187!"4 M,D-:W^QT(X12-U 7)ZJ5@XK&^JY ID8X.;XY V-04,J,84,H/9TH**%@6Z3Z/YS*@M,G.+,B'"50F&'[0X MYE0?[6<"\@$8S^(07.8U#M PH6YN:MYRZJ"X&*QK#09"*%7Q$,/X_1&XX)H/,8:N0J $]0 MZ)$K $R/7$%@0.0*ZI@AP&)#5,23F?JO095R@.M^JZK M'A&$+F :SCRW8QB%^ XN_'R&WB$%D@;FK2=N) MCHH6HZ(Q+#292"&Z0^\IG]%"3.6\0$6+4-%B5#2&A2:S+CR"<% :PT6143.T M->6ZZ3#6/R M!6;8+014N^IAF+MC32RJAX&*QK#09&*%U1'VY#%<$'4S0UIO MI."'*ZH'GU';C%'16-\5R-23/O!Z[O,I!RB/7V9X?%,7N\.7[WTL MZKK8'EZNTX3KJ:8 __]#4=3?WS3?YW?Z2LF;_P-02P,$% @ UI@$58J? M;?R*" ]24 !@ !X;"]W;W)KQ+E3[GAO$+/>5;(\\FFJK:GLYF,-SQG\J/8\@*^68LR M9Q5\+!]F38CGA?.]*).L\9^7+)<_$ MT_D$3UYO?$L?-I6Z,5N>;=D#7_'JQ_:NA$^SG98DS7DA4U&@DJ_/)Q?X],H/ MU0(M\:^4/\G>-5*FW OQ4WWXG)Q//(6(9SRNE H&_Q[Y%<\RI0EP_-4JG>Q^ M4RWL7[]J_Z2-!V/NF>17(OLS3:K-^22:H(2O69U5W\33[[PU*%#Z8I%)_1<] MM;+>!,6UK$3>+@8$>5HT_]ESZXC> M!C7T#:!62XP!]90-L%5!O:(--F7;.* M+<]*\81*)0W:U(7VC5X-UJ2%"N.J*N';%-95RZO;K];K]]7Z/83NKI8_8X^_7'[YPI-T8_5-3KYY0/Z!:4%^KX1M61% M(L]F%:!1.F=Q^\N7S2^3D5\.T1=15!N);HJ$)_OK9V#%SA3R:LHE<2K\9YU] M1![^%1&/$ N>J[9;)#5I#FDBT+D6.(/-*5J7%0[-U MTRKE\M3FMD:M;U>KTOI4;EG,SR>0MY*7CWRR_/O?<.C]PV;SD93M><#?>'M[@F.$]DK(]]X4[]X7.\%YS4!JGK"G'18)8+LHJ_8^^8;.\41?T@AA% M-!A$VB+D8VP/]'R'='X Z9J7I0Z4#FK%GKG\5474!G-N()B2R"<#G!8IZODC M0*,=T,@)].0WIO:2VG,(G"I9QF=)*K<"KI!8(_Y7G6[5AK7ACDQ$X3"/+#(D ML&->[# OG)CO5#IH5H>F B6BOJ_6=099$(L:,LN&=&&@P-Y\@-24H;T8["'% M7D=VGA/KJA+QSZFB_03!3H!>2([NUE95'T'@X:%#+5+8PW0Q@K1'R]B)]"*. M2[[+K#5+2_3(LIHCUBM:L".@9*FB Q_5I82Z5(Y;A$VLO=1J#3*%YL'(ML:D M,X>XR7## *14+4.O4$K)P0IE8):R^S3315/GI=[LZS7T>BU[WM<25$):L!AR M0*;*1GM];9$2]N^W[H> CL)6FT#G46*G'CZR.XS;K69&D$+(X\.0VM* MD84?CL2V8WGLIODKV((ED%X;3RL^WZP[.(J,9+*(^20<0]CQ/';RX/*VVO"R MYT([QL"L..$0H"FSB/P1>!V/8C>1WI5\R]($\6=5D'B3$4)CCFO@K<+I6I,P M"1F2JD4(!V.%'W>TBMV\VOC5@5 M\D;RG'0D2)QDH>.3R+=,. M.>HT>RQM^U[HF(ZXF>ZN+N,--(][K7C3OW"XO1$9C!BYBB[7#9K5(3:.H[X_ MC*-%C.*QLD@Z*B1N*H1N/>8\:<.H!HR#-K$Z->,'+&0#J2)/-WIVIFE>-?,0FS<"WPQ[,QLOREK#Q>=>/['/44[SJ<'.!_:YC8Z_Z^]%L(/ ]/> M0V+[AG2- 74W!G=E"A5ARS*T[6VWIE#PAENLE8U:R-XWJ,0F1?!(-T-[Q]ON MT73 ).ID!9H9?63!GWD9I]*:(]0RA [9Q"*#Z7RDB:$=?=,#]&UP7WN$DN?J ML$U;T&PDGF\S\<)Y>W/[ROO;C%FK%#79&@?A,.]M4C0:F<)H1^G43>F:8#1# M5D)MH.9X$^U,>BC92"]"3=:>+@(C&A8I&'Y&B)%V]$[=]/X-V+M,XPJ ZW,Y M=/'$RD1G[(\B'4'L5/GNAR,6RA^KPAW?4_=0?*!KL=&_U5)S+"8^-2J29<*& MR9Z,\![M^)JZ^;I]=E.JVH-.$MY-HX%25]H5K'1TBEL2UFX66@.L,. M&\U'B\58-#K^IF[^OAH#BUB%[OE#6A0J%E &8 Y+16*UP7)>C0DQTML4(Y'O MC>2WW]&Z?V =YG U5&1"[QO.<:.C%-?B]3"'^,(OV-H'Q_N??795E*7RL_5 MAK=8U=,":]OK.TG_O2E^+&W[#NB8W7A*H/"^'721!N> M/'#]P$@/5MTS%8BWU2N6L^_A^:)%AM"1TT6_:P)\=Q-PTQVCJ <[ZB%MTX(= M[GY;S?V7 K!/C]5Z@R7GYH-\KDDB?(#-G^T']P.Y-K^5_ 5!+ P04 " #6F 15>2HA,/(* ";' M& 'AL+W=O7Q[:274NI&V:"=%5Y5ST>+V9,7#VD]+_BG5MLP^"S( MDJ5SG^C+1?E\-"6%E%%%) D2_S;J7!E#@J#&YRQSU!])&X>?.^FOV7;8LI1! MG3OS09>Q?CYZ/!*EJF1KXCNW_55E>QZ1O,*9P'_%-JU]>#H211NB:_)F:-!H MF_[++]D/@PV/IW=LF.<-<]8['<1:OI11GCWS;BL\K88T^L"F\FXHIRT%Y3IZ MO-78%\\NW_VR>'OQK\7[B\NW8O'VI;B\>O6.OUV+R]?B_:^OQ/GEFZO%VX_/ M3B+.HUTG19;](LF>WR'[)_'&V5@'\V7GG;(OYE\5^%MK)F(Z M&XOY=#[_BKS3WOA3EG?Z?S$^R7YX7#8ETY.PEH5Z/D*V!.4W:G3V_7>SGZ9/ MOZ+YPU[SAU^3_E]J_E79QS6?3<2]SQ0?Q0=M3"FM^,6[=CT6%[:8B!^^_^[Q M?#Y]FM_QM]E3X;R(M1+YY;EKUM+N\LL?A0Y"BK5W&UTJ+UQ%GRL5B!.D&8NH MBMKJ0AHA;2D*9P.R4=N5(+5UH8*(3K11&QVU"F/LUAL9E="V1&[YW9CWK=NE MT84 "=D"RX2,0AHCC-HH$^C0E=LH;\%%<2(6 6047.M).NW6MO(2PMHBMG@C M6J#=KQQI U5:UP91U-*NU)@-S1:*6IDUA/N5M/HO2125Q&&-]MC<-*UEK87: M.+-1^24,4&*YRSXA4R51AA*>CB!E]S[IG0#R%LI"JYT(SK3[P_:&W3!C(M[7 MB-VJQKX5 *(\CB+_N967#1C(PENT#\\Q*-BR24A8P>QG7MN!Y0\T6M+N)S]_#2(I7<2QSL? M*YCOR.^]MU$Q/4 6$)=80W3<.E'A,( +0?&*=B6,KL@=X8GX8?8C2+)7X(W=SL_.>VPGA;2-RE>R V'8T79"RU+%K8)/X..@^C,$Q0*>P=$2P4953(\) M+T?,@_6P .K GRE P_C\Y^$A(&H/F6C9%&XUK)S&%6:L6O0 M.:B20#_$#1D4T+5 9*PI@E?21W%Q ;:)JA&/Q^*M0Z:C6EP.OXT")UUZ7LU M8B^7!KF7 [)#0+CJC\6VU@6Q$GP(<7L-IN-N >H+LB!A4[/=%06!] EC3DJF M]^ROP&5#!T8=5D)_7BF4+.I;"LP&"B2/#GPP[E;(\#\Z?6$HAI7RH*Y4S'8, M39T<:5U,3TD($@9$BP/WX0?)Q9SH0 H5<^1^M;<(Z?='X*+Q"AHT#"O"&I:N M94H1>OEMZ= 'BVA&(#IE(_^87$_$+XO%%8[^W&JJC/L20#HW\A-(NC^7\",# MAH-U9O*:RG!5H7UG6Q/4H8!LB",X=;%>Q;35Z$3F.HLJ827P!0+/%I"'Z>2[ M]J13R,:.%+YI]F3@-FF"^Y:Z'@V%;5--5%\P5P'^HFR9X_=[F/TX;1!_E*!! M&H,=#9F&8[RHO&NP#3FT]^)$_ HL.=^W1.>M]V3U!<@#FD&)<^H;'LS^P8$N MG$KB]OR;K2$>($)O)$+=QM)MD56^I.3?*BK+0+VBMB/3(!L_+'OKFNG; MJP-3[WC^OGCYX:K')BG?).>1./1;ONRXE:3DX)-B+(NH^1@DC1PH MA^YPG?B]1+8"6IU/&#JR+#6!=]S;?Q2YJ1189]5=319AVP/0&08%^$49<^S4 MKD?J_B^(PPXH;"JD,X5>M\O.#.?3HTL^^IT.GPY;*)3#1GJ-E.$K)X; 8#2C<:?0:SG@\&3$ MC>EL(JYKID%ZJ:C0RP&$\=$P7P_\-T8#VG11 %OVS6?F4Z)BKWDW=;H:8P/U MR,NV7,'+H:8F'ZD>>M 6F50YX*3H4NTY[,&^%569 MQ/B]XHIKQZ CS6DX9-\3*- 5D8%>MQ*Z; NX0"$RCG?2U1N<.H$B7 M#8#=:W H( >D8O>=ONMRPW-WQG.\CAF0ZQ;T#E85E Z-MKIIF]P?# =(;H(/ M1IV55UG7SI:&3^C;>MG=G_1'<($9W+'D]PUX#CF5C]I+[E8B>,KP)4>'* X+ MU$6)H9XJU^.4N7_Q&,O)Y;FKO6N<[$9C5A\9'@UOL8ZWB'5O/!*:4 8C MPVVNZ6"'=S0T\-6!X][;J$C,0)6+)EY:P\U5XCU"TY;KO0+5%PFX0!0]SX-X MGIRAV1TV#:CB?IJ%EONVX<8^16OIF[0/Y)0[*SBH4!S+P;Q*>0/G$=27TG[R M[3K2Y&*5]0[X'RH63A6@&Q:[('=R:[E)Q-A5-1R0KO!3GWDO):G?J1W!F[QTD-IW M1_->DKNL_ENVCZ'Z+>J2!S#0MO <:9ZC0MR7FLY!0U1'GM#'AOR#'_3@?M. FY(>9QO M*-+H A$#&/.,7BKJLIB^]M11Y0C0:(N*NG3I7JDP;;I!X):@6\1=\#$<#?'I MO"JHN^.E&IMT [ZY5KD"HT_)\CJ.S%W+D?HK:KB2!GCJB66E -"^P-.%'/>, M!%FDVG P8EC+DJXV:3A*8R+=GR6<[?HQA^>8&^O&PK5(]C9HBUHTOL.C).E( M#";BV*\-)X,?C- (K?AG,:ZO-J;?COJG_2]OB_2#TWYY^MD.(\M*XWRC*FR= M3GY^-()/^:>P]"6Z-?_\M'0171=_A!>!/%J ]Y5#I/,7.J#_/?+LWU!+ P04 M " #6F 15E\OR1L\$ "G"P & 'AL+W=O[8W)/_^ M9KP+@1[AJNJ^P/IEGGGFU3/8&/O#)8@>GK-4NV&4>)]?-AI.)I@)5S2,32D>C0=B;V=' %#Y5&F<67)%EPKY,,#6; M8=2*MAMSM4X\;S1&@URL<8'^,9]96C5V*+'*4#ME-%A<#:-QZW+2Y?OAPA\* M-V[O&]B2I3$_>'$3#Z,F$\(4I6<$07]/.,4T92"B\7>%&>U4LN#^]Q;].MA. MMBR%PZE)_U2Q3X91+X(85Z)(_=QLOF)ESR?&DR9UX10*_YAD"[$F@'WJ6BP/*S\&(TL&8#EF\3&G\$4X,TD5.:@[+P MEDX5R?G1_&IZ=?< X^GT_O'NX>;N"\SF]W?T/;VZI8/%H.%)"]]MR IQ4B*V MWT \AUNC?>+@2L<8'\HWB-V.8GM+<=(^"?BM2.O0;-6@W6RW3^!U=B9W E[G M?S2Y1.P>1^3"N72YD#B,J#(,1N_?M+1[@S]7!ZUNS6X/V[7KO=[,]QA18)%N;"TP]RBX$/#R97$GK=WL=+ M6 FI4N5%*&"S"M!7JQ55M./E<02Z>JVTT%*)E/9R8]F*H+35AP^5=F95,:J. M/M9A;Q-R:YY4C*0H9_6$A<\YQBKX0.B8EA+#D0/2"R+/TQ=VUV-]48T>6;69.DH- NI8(L7*L46EV_!*E*!RRIWZ2LL%3Q^VM@<@,T2K5^80HTMZZ M4+%@^<#OT!C"WYKIJ'VQ2(@44KN'7&W?A7JQC.8,&.?Z, &>Q?!/^4,0>I[2!D1=#$I5UIEL(EL**!RM7A@62F)LN%YG(I.S)9 MZQE:I$2UD\%^B5L4J^K6 M?9[[4%[=V_Z+VVL]% ]-W;K7%_MAZ+Z[NG+E7C?*K6VG6WRSM7VC!GSL=U>N MZ[6J>%%37]U>7[^X:I1I+]Z\XF>_]&]>V7&H3:M_Z0LW-HWJ#^]T;>]?7]Q< MA _>N+:R)(U[H<: >%?^[T>UW7M!'(^,/O>1&/I(7Y MWV'W'_CNN,M&.?W>UO\VU;!_??'M15'IK1KKX:.]_V_M[_,-[5?:VO%_BWMY M]^;915&.;K"-7PP*&M/*O^K!\R%;\.WUPH);O^"6Z9:#F,KOU:#>O.KM?='3 MV]B-_N"K\FH09UH2RJ>AQ[<&ZX8W'S_\]N'GSQ\^O;H:L!L]NRK]RG>R\G9A MY8OB)]L.>U=\:"M=3==?@8I(RFT@Y=WMV0W_-=;KXOIF5=Q>W]Z>V>]9O-HS MWN_97[B:K'Q^>B49PG>N4Z5^?0%-=[J_TQ=O_O&WFQ?7+\_0]3S2]?S<[F?I M.K_RV;H(BXM?][IX;YM.M8="MX/N76':P18EA-)#UQT4:=@7!G^4M<$;KACV M:N#O8:O%G>J-'?'PT&E7V&W1]:8T[0[_VCM#-N=6V+&LQXJ>;LV#KO@=O2H& MF.6E:JM+6(7NC:KQ*CX68VN&2[*1*MME/2&UUZ7=M>9_<6:O[W0[:J(;QEG: MOE)MJ87LMY\^0PUNGE]>_]>J^"@O%MO>-MAHF>/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&+;$=+/+NW M>*&SO;SK]$X$%608U37I.:LUW[2QCA2\:6Q;3ZT"Q(4;%3O=ZA[T@2"."6; M'=8L_.MG+XM/IU44.0K=.GWODA663QB^[QWH H>FFWE^! 5VLF\<_2MH/"X0.Q M!@P'"QRB&WT\3^^?HB6PTHH"WBD(K5&_V]X,!Y+L*;5(TC8N:6E5V#O=LSLJ M-KI4(SCE-Z %IAW9PY%E;/%>T!H$6:@$O^7-=)T3E;FZY7/;8,VG[]J(:@B7 M1.%JJ*1?1MIGB9S*8$]264P-P]' M3MTL..&^BD*1 M;\3YDL6'1Z [6'J?&:MW=W/%,FT%'>@/Z^(GXMN"^BVH1'MGZSNZP![8#QY[ MUVM60#=NPEM8EB_V3"'C(O,6GG'L<7OZ E16(ZN',*#7FT,![RDVR;ICW!=V M@*T=B''@$/DZT9/PDF=;Y/%$OX^C]SQX+VF]$IUBM< W23-.1'!ZT76Z1.@K M2>&U]^$(:BXW4CKG<8A _OL$W8E0(7SLO(7AV0ASV=NQ3X9%K&77YB,,HQWL M9*O" Z->UH&ABF3I-Q3J\2;O)\*KG?7H2 !,4#DLQM^FV>!@CF!3VUXF85V\ M]Y:UH(-GKT_*!*TC*R+;0H)@FK%)P?U.U:-(8.4EA9/KPTJB>R >,M4/D)GX M&_Q=$@^(F-,;LHHZ/:,CN;M,=48D"?W7F#0!.:1\;B#]94TZ:7SK DG929V= MHK1,F29H1[8#JVD+5DA%.@1=A4U58\!1_"?I?6 1\XNO%+^88J!Q VG[35A,1^/)4/,"2?RM;[']H& MU\5)CH$;9,EH,%X?W/ H_' .@V>8FU\C;$'F?(RLV1M-T'K XLM0_.S!$^SM M^Z 02I MVK8$P.M:LD*ZQ^8@.J;;="D!)L=WKB$/V0U^P_LTNR'1"[)?.(-MT5+H*W;6 M5OC8)WT!Y8UQ$G". \A<\W+30-Y@RKE38D S!3+,[X 230*/WJKX4$ZG5X%Y M;)VF3>'QQ(9I65%"60FGDL@W\)1;<)_MAI&7$+YPG8E_V6BH0\IIDTGU6I+O MBBAJV7ULQY8EHVJV)@O_$MY?(<21M>,/4FI=[EOB$X3647PBMR4'G#9@'P*) M3:8-:8-?F[_EF756N?AZW@ #=*:Z'6&W#B0W6KFQ9Z<]B^LD&-;"!)?E#7__ M4PD#+NXDU$F@Y TK'K*1X/LOFX^[[;(?X1MK]Y(9+&?V_ MR1W#F70>:IS-UE;D6T@ I)4<[!K*)[OZD6MRSJ["I9:+"P18A)E2(^;L CL: M" .X4\'>?A\KR>=#!:$")G4^3_$'XJA=;\=N6E=@Q],I0G^)EL@^)C'>9LD[ MEWRUHKCZ>+'2R]3>AP@K$8(U7:*S\CB$?859AM MT%QRH2RZD!C38IX.BY(@X2E] C=O!S95)S2NJK,'!Y47=Z/:*+HP-=:VY6@4(XS$(?Y=]Q9S4.SL8 M[[4C0Z._XY@:_3#4&9ZL9)#EEY$R.%"I$I$QY M@TE0P"H/)98]J:AN8[N&T0EYB*'W&1+N8M$2K+R)4^O>V*IP8\L,%E2YS_)N.))2L,]<(I1$,K&CE6J M=>PR_1G>N+74J/.MX_%/BWOH"(>#4(C@C*T4BZ22U41FE=4NU*K(!7FK7N D MZ6HN"$K)O1) %M0V#OAJ=+Y($:1X#E>R*8?*!E5DBJX>*B3#U9R5U]F)TWR9>/L@.56!3#88[ELHU@G "(QNT][;K%'J66-B#-2X@0 MCVHAG3HPD[A:O"X^,V]B#8A:U[ZV*C(5<\KSB!C*.#B%W"VX_^/(08>F&DC: MJ5%5*O1GL/P\%BT<8YR/Z8I2)!]-SY>, M,_"]1#MY'88IC.$;[J$'^_(82)2'?%K E(+>>"R 5HTM.ZX['3,=ECXCF*C? M9:T,R?*WQ=O-?<]B&4T_<'%84DLR M #>HR$W8LAS[5+096\]B^%((SI:"VV.'8UE6!-SKNWE)+NG8LJ %S8O&RA-R M4R&7CVV'#)N&885[X; M4N-LF1"C0Y\@,1]L3PX$0)1J-!YYA"BJJZ<^F2)&*6=;\ $<:>N=!9VAI2;\%_B?Y^P,(R8M6#%13DA7 MTVX,2 C"=K[8>Z94P0,G4TWV=D6FWNI8*I)K.9VIE:17"BD1G2TI0Y8+/>XH MILV3.YJ"D_:@E G/+K\,UR+GTL:0BG:(T-Y X5[6*S9[:-$;R3+(I2&H<&-*0E_VB#RG4 M8@N::UFE:P_VGH!/3NU\Y(G?54 *Y5Y7H\=T^0NB8,SKB8^*Z7E0><>=\G"Y M9N3AC2^:05S3)59.5$!QOQ'.9V/[V#F[(X5D]R%FGWD<;T69QK*=S\P[O.N& MHVUH63:<=M1 F?3H;>]A!Q?H\EWX(00#VK%D.XHX8KD^37G! ],[[**CI2^V MM57U.U8VOCJ5.7)?![1MENZESFD6PDH:U@ H]ME0@$BLA*&/RE4]G%U&8)+. M+:1M.2DZ@KL\=C(MF)O8?J(^^6P7BMIAOBUK<68E34IA1G;8(1?.:JP3F4R/ M3;FZ')F>Z MR-N1H%RLY";Y\4Y3CIDC+DTKN78+,..!E^_<"N"6#D(RRU2X/\Z"?#CQQ<=< MZP*TR+K!1R /A@83BI@G_[[0AG6Z1)0FSK5PRQZX@[KJ8RI)3C5DSFVRD*1E7E7!%'FYCD5G,1)II694' M"'3>)(I9\E&^)+75@]1-4KB@,&Z0XF=511&=EN#--;23UX_0Z?B*$];'Q781 M%WJG-^=ZUFJ+46:;:EJGBAG@8NPF2U Y,3U$AI>\QV CH'KB]4S>P7T(%0K> MZ7E8)LQ:I)#T5(I%IYPB5XVF]<:YUA,'4Q%ZUACQ7=9SVO4U; _6(ET"VTOC,I\J6Q?O3- +LN\P!["C%>V).\]B= MS=!-]Z>9L;V!V87YFL: ],&VTJ7H>GWIY^4"OG21)!>J@JTF: QL5%-4ZL5' M2"9](B%/\?^Q$=#3\YY(&?-1V1P5A+?]G)DO+!-9+ @8N"^C\>?8B2/QM^3[ MXXB$0F)C/#2^5SL=Y[F6>_! C$"MH^1@KKXI-X1.>-._>KOM4B[JJB0B.5 MZ3@F!3XC5XQ>FN8N.W7H+0V7J0>2U\:V8QB5T]!P>] ZC@?)H8PFL"*;?G,D MIOJOD+,T!IB&_^ QA]1\Y&ZFWM./\>[X,*I_PT1+XFOHRZ6DV\6Y5RH\J04&63Q*"(>XY.Q_S&0]KTB)V]AYFT&0Y8_-\ M6FL+/;Q78;[:WY[MB2*@X4Y0&&A@M_MS G4,O]P08""'PJU_.!L*2QB$9@]L MS2,F'F\KI+ ^J!-^W(5B(M$-Y9.!^'EQUD5KA>4%8),C"QJB47UOY%81BM-, M/R-C06"UE)52>AD; I4=-P,2P02;LO"I0@F+:(8L\F)."//\VA\C\@&>X/>8 M-:NM9+\ ([.X)\3M%LX.Q;78"0H)9S*F<.ZTS[_A&K?_$5Q$.990BJ%Q01KS M0-S=4KU)6J9PU)?QF$@8TR7>-AR4M(T-*6W*67*,DMG,GZ_O!(P5!S?R$G)' M/QBQE(%:^DK*=L@!NG'PGD6Z*%F4$C>8JYSP95D?B=E4# "[0]]*-SP[GPEH MS3]!HQ:^%.C4BC0VYD=7#AR^23F4J69; M@S^02U)]/P36AS+B(/WJ(9N?B87Z0>:IZ-*BI:8E0^7!6-)?'G!!YK6CT38I M8''5%XS_UPCV^E\K,Y7?@YG-!B\^DZA MCOOWY^MOPH-5&+WD'PW%'RV>^E7R5?:C\$9#B^FG[]P@: ?Y?7A\&G]=_U9^ M5)Y>EY_F_\2S" [><(NEU^M_?G,AM9SP8; =_\1\8X?!-OSG7L-3]O0"OM]: M&+__0 ?$_^? F_\#4$L#!!0 ( -:8!%4G9007 @< '\7 9 >&PO M=V]R:W-H965T1GE3*FR4.> M%>ILE&I=OIE,5)RRG*JQ*%D!?Y9"YE3#4JXFJI2,)@8ISR:N;8>3G/)B='YJ M8+?R_%14.N,%NY5$57E.Y>:"96)]-G)&6\!'ODHU B;GIR5=L3NF/Y6W$E:3 MEDK"7/BXWVSX@[.UZLT):K(0XC,N;I*SD8T"L8S%&BE0 M&+ZP2Y9E2 C$^+NA.6I9(F)_OJ7^UN@.NBRH8I+3)DO6==[/=@<5TJ+O$$&"7)>U"-]:.S00YC93R"X#8)KY*X9 M&2FOJ*;GIU*LB<3=0 TG1E6##<+Q @_E3DOXRP%/G]]]NKU]=_W^^L/]_!UY M>_-A_N'R!F9W]_-[ R57\_OYZ40#*T28Q W9BYJL^P39D+P7A4X5N2X2ENSB M3T#$5DYW*^>%>Y#@;U4V)K9C$==VW0/TO%9OS]#SOK?>-5E_F"R&T!M5TIB= MC2!&%)-?V.C\YY^1R+JM"*?&0QXU_H M(F/DK10YT1"G1 LS6H07)!9%T<3=FNN4+"'ZA.3%BM"59 RB6BN+Z)212Y&7 MM-@0"-1,$2UIPB!4&SZRXX-D(*D@2%12U>Q2+A-24JDWI*QDG$)X2H7\V0,L MBA4CD+9(3%4Z)E>5X8\\%7\@>>V?#/V3@'=M2.-AQM843 [[@& O^ L 5 >.\@-$$%85F3 MAP38F3E%JP^>(F; KR:]^N@$(JL8#F3#J&QR%3ANR4SOE&W&>!:R N1WG,+A M<\W9_ST6MQ*K:@')![(A5B+(0TKW Q+R?N3-=@]]ZDZ)27:]2'!#KQ,!O, F MUWF9B0VK*Q3Z$M0 U=L3^7V,, Q,F,-)=GY1THT44%\T?6!]U, />RO7]UME M%J*HU(#I'6OJ>7O0J34-IRTNMLE0)O&G,ST!2_2DX86JI/&>+6XP[2P<@$'N M3<#2AE8VX 9'Q/.M*/+[@, *9UU<_R)$L@8O_^Z>\])QT+/F2<+1&+V\M 4I M,GG22XTOWC9=")RQTH#V%W3P=1XV_OH55_W(2HQWZ"$^0?EX\\/5ORZ87&WZ M3N]"JIL&/8CQ$O?D(&2+=5VLH+-D=9L';GT)!H/+$2[W/-*/!J7J$_X:?(@& M" /5T7']EZKP".NFT- ^B"YDC M2-^1[^^LPR X^-_MG;D#-X1[O ,4-._2N@,-4J\?BR!A>T_]G,'/*7'''<_7 M[2P$ZA]$\=I4$OOFF/1.\I5S/(C^DN+A#2ARB,:AL;;N MTV8]>FS0H\>F'-CQC>9#VSS#A*;[PG>-!=M>,AC>'S3/"%Q!41E!H,,<=Z7C MFYY/X/Z3@34XW K-[<;KWV[XU^4$*9)G!//0V]JD]R@*\;@R3[^*F&>0^GVT MA;:OR_/Z4;7;7C]-OZ<2.AL%-ZHEH-KC:3 BLG[NK1=:E.:)=2$T!+^9I@Q2 MKL0-\'\IA-XND$'[YG[^+U!+ P04 " #6F 15ED7$B%L$ !/"P &0 M 'AL+W=O3U I!B(:_W:8T7I)=NR/G]#/0^P4RU(X/#'J'YGY5-USL2@DKI]BX=.AY[#P? -AZ1S2 +O=J' M\E1X,9M8LP++UH3&@Q!J\"9R4O.FW'A+?R7Y^=GIV?7B;GZ[N#N#\\7E_/)D M,?\"B\N;V^MO%V>7MS>3V-,J;!NG'>)QBYB\@;@/%T;[TL&9SC#;](^)W9IB M\D3Q.-D*^+E1 QB.=B 9)LD6O/$ZY'' &__!D%O$W=<1N7 .72U2G$94&0[M M/4:S]^]&^\.C+7QWUWQWMZ'_+[[;$?<&\"M0.+>F D_U!]Z$]P[X$N'$5+70 MC] X=)"B]53W(+5'BMN#%1ZI)JR\%UQLD%(F6"H\QR E9@6^L,6'VKB&YD 5 M*LGN7E@IE@J?H)9^ +?/Z[Y_=Y",/AVY "9U ;4UA1452 ?:>')PLM#DF@$U M+*#%,[:BH:LQ;51+JVXL+8MN YI:3&H*+7\0F5X(4CMO&VI#1$XX0$DJ6!HY MI ^$JXBN5-++-@;62*1I"\E+DP3.*)D%3DNAA$X10KT2GH=<2$M!JP9_)F,S MDK@4NB!HV4(_F\,'.<#!#A2T 2T10YS<1S!YL'P.@<0O::524#1+1-T7B2)* MA2LAI^;<;E!8BG=B*W''0385"TI_3="$@[98A&SIR8!RZR.BO MS5S&D)),D+)4O$QGMQ(UB,)B8-=JV??>JB;G?2X?@L,ZM3?Q^6B"VMAP2'6; M]S+;;]%6,(KV"\D044%N49^_7R@9.G MA=6I:K*P4YQ_MJ%AO_ZZ"-[ WLCAP6M*L#/F.:9ME]B^)UM5V$P*\5-:K.CK M'Q5I)Z@DE )1F895"XI1&U'4JV0NV8];^F_6+3%:!T@2,0N2+-0FG<>/T!W' MFX54BHRZ<+][/E/M]U':IUK1<=GFZW!\]/+]VJD9]RXY%=HB7.58(XJVO>^L MOZYOB_/VDO1LWEXU+X0MN&LJS,EU./BT%X%MKV_MQ)LZ7)F6QM,%+ Q+NO&B M90/ZGQNJMV[""ZSOT+/_ %!+ P04 " #6F 15HP%%[\8- L,P &0 M 'AL+W=O2];JA1W9IE)I,57,S_)ET;) MB#O7R[E7#TH^^OR@\&WDYI*I!.5YCI+A5&S5P>3P<^7(UK/"_ZEU2KW M/@N29)IEG^C+;?3JH$\,J5B%EBA(_'M45RJ.B1#8^*VD>5 ?21O]SQ7U&Y8= MLDQEKJZR^-\ZLHM7!Q<'(E(S6<3V/EO]HDIYQD0OS.*<_XJ56SLX/Q!AD=LL M*3>#@T2G[K_\7.K!VW#1W[)A6&X8,M_N(.;R6EKY^J7)5L+0:E"C#RPJ[P9S M.B6C/%B#NQK[[.OK-YWKU_>'EB097NG80EA4M'8;B%PIEX MEZ5VD8LW::2B]OX3<%.S-*Q8NASN)/C/(NZ)_B 0P_YPN(/>:2WB*=,[_081 M'851-P4*C)_SI0S5JP-X?J[,HSIX_<-W@[/^BQW\C6K^1KNH[\7?;@IG/;%. M1%RKJ179--9S2>Z?!T)]#N,BTNGR?OOCF_[#ODX!YKU6HDBD./QUL$B?;^U\&&RN.="KL(BMR MF4;YL;@K;&[QD>2;9@8VP*=<(/ _*I.(B7B;R;3>?"C.^T&_W_/]Z\.KXX/Q8/Q=0R+UUL#$9= M;/2#\?D(3IOGP$]C(+M89H930#83<9;.?[2DV)9T@[.@/_BI^0I?.#V#[EN+ M*S*-S_QT'@P\USP4%^-@?'I17V@[BD9DW:7P_U2)X1GAV^"G #ZLQ%66+&7Z MQ-H*E;%(IL2LAK;R8IKK2$M#NR&, DFA4YMAL9C M !=WG>OX%,67\I#)Y7I MQ9&$'9(/*0$C\4'%68X9CK-K;:%@TOP'I,FC7/M MRW=WXA=IC,[%I4P_!>)];](31^6!N%N=$=!.&2&#Z]P:2:4(@A-,]* EM6FS MI=023H^X"U!V#O4/X=J^/(B".R0MS!?>&O.R?,:'$D2>K!WH-"T<:A(JE M@/,H1)Z(D&>#=MXBWHU2GJC0#,YR7(^[F#8UEH9.\EF%I?XY6Q&W M/(H."@ T,==XCPIYA4W)ON>A?N4QW7QW^4@3L8U42L*O4 <6AG-H*Y"'H]*. M+I 9Z,]?Y!V9UG996QHEYH4T$O'M@I1"GVL-N@OV9P7.52+*$H2Y#ENP$#BI M8YUH"@#D>;7D(WOB@]'P']B[*\"JZ^OLK*%!*_Q:]EDGV.BJ4TJC?BLTNY4' M>> AQ,?*=!7Z->$7 EKPV4),G585C"-%G^Q"VA9!ZD28A.2X<>DC5H_*(-X$ MA5[6$N)M=>N>;C4BH+1'F<5:H-5N(_3A",X*AE/."Q!A$OT'D(D+;RYO/UY/ M&'(K ERG;*H#1X#:60\)&P0&_']ALF*^:#D6]'[>.Q]OK'F C1WD#L?-PG$' M,9G"L[CB=C5U?V^AEFW04PEP*]I6=HB+\JE)M.]^8R.%J9 M/.5[&8HDO&%FKYC9_7:Q>=/,.C[@IBG4-*RU2M[L("5$>0VD9=9_@ZF@I/@I M*,-81$7IYDHL%:(94&"RQ,^> !8+V_G6:3GX;0H@@]Q792"A4HBUFHD/3*[1 MZVJAG"AH+W52 !Q;D2%6$!H1:*@=B&I,K<*3Y/)"CQ(=T6@,R/N-6L:2C%&F MW&=V[Q%6:S7&<4_<@D($6P ! U]]N_40P%;M).@E/U2N,6!9E=4Z5FR N5?C M5:JI$(D$1SY?Z"GC,]M/I7,Y)\X@1KX@_(=J"E0NW'\!LQ/YB6[3?C (9.=2 M* 3LY=KEDWVX41U% [@Q&#\^;:B#82U.>(I0TZ8]9@>I(/KFF1L] A&%EKKE04+,9 M:@%RI[Q ;*WO:)7;=9:.-=0:4?6QJ@S=!.WAV*M?,K-3+YL,=BEE;R.4['2H M#IF],-1HV6W)/=B+/O2M/EO7&K"V6RC"34;DI5TB"1E!PI#(E%]=XBBG-0VX MT\I8HHN( %24-?%]AA80O)081SZ[6NAPT=8-^'MTU;70ALK$4$YCG%J-\4A< MBH>4M-\"(.-$FW,5U70ZZT6/#XUE4[,E!+PJ$\?.%;?5=8&Y3_R4QU1MVFX$ M=A7D!K\RSI$/)\<>]NX Z8UHJK'#1UA\'G76"E1X-)W6N"N]-X5'L["36&N^ M4ZWK(.@:MG+1<$=AX7,W7"LKT-Q<'@MJ@5%QYXM*25OR""BJ?)'%42>*KJ<4 M[L&XU%"DP<@Y/UW8;5CP='5,FW#7\8.*_E%G10-RY-'[PT&6=L*7G+K6B2W\ M26W)8MZD"8Q=_QF,?4,B*X-05#DR /L1[A$B9^0&*XTJ2H;<870R@RXCH0[4 M9N&G=O$54#?UGS)M5 T( 8,N)Z>,:F^V16"3 C;A_YEP)&,U2M[M30Z?_23 M??R@E5#+L4&TT19MS764F]OY;N W[%^27'<4&U\<.;]+]9$@]_BUQV#L9]!J M2$?U8AAF)N*Q98WOFPG5&]7NZ.6Q2M& #LB$]"41D:3T8PT2V=]2.-G\0=#$0--J^H>JBWMY=W]VMCC.O:K=7"+.."T[9<+F/MLG:"=DFG09GG-VZ@=TOG5>71[PV&X^\=Z-,' M-@1TN"Q=KA'=LP,Q,:@W#CLWLOPM](L4.XZ;XI",[23ZH@ZCP,61HQ!VQPNB MI?]]:_KC4C:/WAUFP0TEXX^V["(SI>J<4J0% 8HWHJ:KVY\U5"6S!_(SZZ%\ M-4BKE+ZF8J>H?F_4_Y[ ".32(GE.(<[8X#JO[N.45E1"Z%@!UPR/C,J97N8] MYF@"9JMHW1Q?C$J?.+NX\%A>1_"6!.AD.5X8I1Q?'EL:;D.$^(DVA7QFO''3 MQO)*X6V5-/#1.;YU);/*RT>X-'_!=LH((%P^-&;*["K(-91S*H!H]A"$&,VS MS68.YM7C5(#7:RB5EN;!"G[T$?(H6]:H+ B#IT@_*;DOG]_< ^@X"O!^J(<, MPJ7\^@%-#I-^%B=JCG^=/F*+2X#-*)C'D[*F(O-<69'+F.:7B3+S:J3N$^V) M&P)A*N\ZL99IYITP5>8D'N67LU--,9U&Y4,IFL/K:=$PO]F&M]-)CYY&K9<) MS;!UW_Q A[#5O:(#?AA)F\'B*,0JSCD CN0Q1Y:TR:Y 6J=E(54S>6$X /BQ$Y*)2E(V$'D 94R49A'9 MOQQ$NWNT>"4-=5E/'HUZ"]HP618XWMT,R$^S$9+#)1TWK/6UZT1 MK-ON?2N_=INT5V_>=&#]OVY_OJ:7UD,L;L2^JCO?I[XL3WE36>*Y]MQ'_'6V MZRZ]>M"ZJ_WL:'C6Z!W[+>K6]O,9SEU/W-VTN"?\:\.#_8;AGC?HK0.&LF7O M<*LF3:\/"(:N82X?K=C6,".H4EM4/I\-8\!:.@\\S1#9P^':!^J\A_N+NY;SQU_S[L_]I_^;;IF&!N M/,]O^'[6T_]U^C?^L]FNKY-NYKENPB_/Q7[(%F_"0ZF^<^ -QXG>=R/R-$WOC MQ)\VIOD6G/BKCFHF+';U_O%F%^C><'#O(^EF&LPU3SU]*8M$ETD])RBN9UG,[OB48/'%DU77($) MOW13)C)2,YJ@!32]3A*<9TC'[2J\YO6*I@5ISD";YFCNW1MC-[5M'NA=5):@ MM_Z.;M+QAX&$2_T^#W+E+K?LQ07ZU_"C)QOX!HEKO?D;QC,*/7-&?8 MVN^=CP^$<;_-<%]LMN3?0TPS"P7PQX5"]6IH >[/LLQ67^B ^@&PO=V]R:W-H965T$@>V_$7422 1J/[=?<#R!>W2O]I#D)8=E?DI7DY.UA[?'9Y M:9*#*+B9JZ,HH253NN 6;O7^TARUX"D-*O++:+%87Q9+#RZO7ASY7GP2]M_'#QKN+ELIJ2Q$ M::0JF1;9R]EU^.S5$OM3A_](<6N\_PQ7LE/J3[QYE[Z<+5 AD8O$H@0.EQOQ M6N0Y"@(U_JIESMHI<:#_OY'^EM8.:]EQ(UZK_ ^9VL/+V7;&4I'Q*KVO MHE[/"N4E*C?TRVY=WS">L:0R5A7U8-"@D*6[\KO:#MZ [>+$@*@>$)'>;B+2 M\A=N^=4+K6Z9QMX@#?_04FDT*"=+=,HGJZ%5PCA[]?[-]:MPK-RXZ,6[-?E.E/1CVIDQ%VA]_"3JTBD2-(J^BLP+_6>5SM@@#%BVBZ(R\ MN%U83/+BKUZ8&[><'H=!\,P<>2)>S@#E1N@;,;OZ^:=PO7A^1JMEJ]7RG/0S M6IT?MYDS-Y1]/@CV6A5'7MZS7 >#4N$MA!^3&693 3+>")S:26T5. )+Q,( KX+A<,@EMS*\M](\L>N&7B[BBU8/#OAFNI*L-2;JE1 MJVI_@*M@]X)K]!5H]@Z"*TTE1EE ;8U^TC"UR^4>!J>U+IDL80D8+]>L_6D8J=;*41JYN@;TP[E.22\WG0P2Z)*@A1+N#FPW3T[\GNT M/F<%AE->^Q3276EYSC(A2 644AG2PO-N7P?PXT%@5UZR8Z63 S>"@#J+#@(ARCV,R-)LJR6J4ULBFA@6M+6X/,CE '@(?ETE> MI8@D]+^A(7=6@&JHM&?&ZHAM&>3@5AHNX$$243T CA6^T%MI#XCZLG;YG+VN M-!HNOP_0^BC5GEXWN,+!3MX!.L$/#F5HB)Z]2*=4)#(E>SB,,'1*JQ2OO;83 ML%"GHR ($V9:@5]ZPN%?V( M/O 4IO,1 D8S,JT@F&YX7@FVKSC W J!7F[,/A1BF@CJ4*B;%7E#/J&!L(8$>- MB1-Z0%/524^9;A:>9:!F+18>&B.AEG RCD0B MF"B=4A4B@" &H\7SZT^OZ5_XG'U6@ NV7487X>(B6D'M[4(!1U>EK3T#2.E* MJ&K*6U=/ U 6^'-*S64;H680HCCQ(G[.WK;#ZQF;AC-5?X#(D0H.B ),KPI8 M%3C16%J\KX(AO'AC 3FEX8XYTT(3F,90'L&!W:3H=A)Q4#FXM4!$.#="M)*E M05P38>,H-TUR\PHG6'F8+G8\)YV)Z&+%?I &P'ZZ/:=XEL161ELTVJ%)9(J82R*5-@#!I"5S]E+FI[T5D8K^>,$ MRNKB"!#\I-%50QI0 <#>D[5B&-R+Z ]H9@@ODQUM%#&?H$BI8IJ M-R7Y%&DY1E4*!U=>W7U#;A(U$71HW&(@$>%@6SH-36H K-2D- M-6(' :INL2<-YM9;Y\3Z/D\F&U=+:H08UB;3SH(%3T6-=? 0S)O"=B-!$QI* M.P2'%*>?F)KX^%TMW+7#"&B!BFG._(HVWZ).^F&QJ6VKN/@@>W([O%G]#[U[0] M)N?"_ACQ(D(1B]@CF7,7+=@S>KU>Q=Q\'81CU[N/EJN8FPA/UX]QP M[2H;;U)NG41;RZQ6HR%A/'ZVW&Y'SZ+5EKUKR@M('R?E5N)8X&8L[NF$)D @ M,637BRYXEX&#*$;U_75$WW' DALMWX M#U9!N!FCY:'7]P,RT@E>![^,V#=Q3=DI?!:NF; M( ZB;6?2ZQ/;C@ZV41"MGGKY.PR>+C=/!DYX^%:G4P0$;_T<'@9Q/$Y5W^6B M'H'O9MKV,+'R9CTY^@LX;1$:+,,QO#:;(6BS!V@9!?$@%<3Q3*>;\9N.2$@FJ_' N!A]..L ME4J3N!TXA,X/M,UR#GCZAW<;;>'VB_98;;Q!T7RS]6X_(H ;-GT+.\-'X7P# ME#K/Z1TDQ.^C>!ZW#YJ374O\DL[#@4X6CDX*HI/]PTX\I7!G<+G;>298U+4[ M&(.YML.YUE\]5T1SA?VYQAR^C;FSM$31^9Q/2VCBZGC,FZT=O0K)\&6)WZTY MH:1W!LXA]%KH;ZOHIZXG^7QS_1)O;Y$Q8NUMFN^SE==H@".7]9$B'3Z9T1%8 M >NMW'YX? HAO\4277QT+G"O?H8'*[T"M^GO%9; +/WN$R4UB":>AJO>+.N)8>&J MBR(O-O'=?/..2 N> >7H5N+M]SOY/N5OCWW&"@6K:&(?#!N@;M'O@;]9#[GN9P@^V'IXA'[)PB]7OA23']#55S]4GL M[]TI\%G>V]M-/3K!5NF$?&B73.DSI%6+>B=O*)C;45CY55F7@T%JI",^.O7; M]4Z8N1F=K3/Z](*.E2%$I:H_9/".Z[N)4-%!<3BGJG OXD"]AM$U1[U#(2W< MW(MOJ?O'R2W[F/H$Y]+[^JD0>D_?>"$Q@OGUGB:6,&0Q?SS6KFCI&;&ZN.]"W53EFK"OI[$!SR"G: ]DPIV]S@!.W'=5?_ M!U!+ P04 " #6F 15,WJ)!#T' #!$0 &0 'AL+W=O5$*9T=E)/+MQ9R>V M"5H9>>/(-U4EW.Y":KL]' M64-.KD]'Y[,W%T=,'PD^*;GU@]_$GJRL_<(/E\7I:,H&22WSP!($ON[E.ZDU M"X(97UN9HUXE,PY_=])_B[[#EY7P\IW5GU41RM/1ZQ$556^_A)VT1[=#BBO/'!5BTS+*B42=_BH8W#@.'U]!F&>WRUN%\L[PJO+N\O%\F02H(^Y)GDK^R+)GC\C^YBNK FEIX4I9+'/ M/X&=O;'SSMB+^8L"_VAT1M/9F.;3^?P%>8>]\X=1WN'_Q?DD^^AIV=Q,;WPM M[EZ.RG'V;'T[9T)?"*;.A&@Q4-\XWP@0* M%GR%I&7;MD?3V8'XF80I!A(&TG_ZX?5\]NM;SZT(1PK*47-.K9K('64?!) S MW7SZEJV+/V=O?P;IO72>9.N"IVUI8>V]Q!NC:7<4P8A=[(V4U-1\\&KZ#^:!I57GFJL07."!"7G*TA^&!ZQS3 M??U4"Q=4KB E^#:ZWW"UIG LQZW]QSV[,H6Z5P7+'4CJTS3T;1RCZ)O5O]JP M"(8V5345"_OQ<#R=3JF6KL]01A\!)6Z@/3Q1"<_X"OF=' R#G,.(NG22"N5S M)YD(8RFC]TTL2Y;LU4.7>LD81D"@';4 %(V/!_-X,-NS!E84SX:=O9MEQP!T MK>-L@B0<''8'8\P[7\LXL31,^H1.$2LMZ=($B57=,1& MS([WC6#!3X4(E:OU[A>[Y:)% KPJ%)P?T^?%$EG)OS;*M6\"LJ=0;CNNN2[) MPGL9HA\?T/9^YZ,FG#85MZ!TW _$+J2&U3!?Z63Q@.D XTMW;B;+NSYMX!.F M;=^K0X! 3Y^S =111>U7TFU0&^<;-"S6AC"F0G#CB*CR-[ER#5RD^7$*U!XL M]$R=OC%W5O0)^=_09^2E@-H/SC;U&&G(LS96^/BPN*8#\8A *UYU(&$8FEL4 MER[H,CZUE$R(<-F-A \.*T,HD]R] M&';ZEP!:B82CL<(^DI&C#L@9E@$=(!8 M:3"#HEN-43S%8F\]&LUXHTPC(^RMP!FGKO2\3 .9ASG"1B^,^C><:WIPY7G2 M97X9D%9^N,:._4_LV.-]^$"C6 ,"!ZB$C1K3T7B<=R& 53>#RNJDL(Y]L"HL MS#4V$.1RT%2 I=B \R\#S,B^6RUDQ,0"44O0(+I*?2R;00<,X6=8\-M2Y=\3 M;]'W'#X$KU2K.(?7SE;8 H#39@/[';:=M70QT9;SGC?52O839""LKQ .F_.E MJMGD!.>HB[[<8#1N3T_6%K+JX5A&US8P'8-ST:GZEMCQA83+?2-<3]39.PA# MSQ!#_4Q*VJT(0PQ7%%Z;TJHPK*D"8!_O:E@X8C2^US#LBG:1^CL)+7#Q46@[ MP8.B9_PVT<]G%>B3,@E[L9K(O5BC>#FC'AXILZ!+YQX]D(10QV>V[[ MID8KA8$_O2$"'ZQ;]%OC6LIQ:Q3G$MK2JO@X67/+9T" QKG47"P!KG2VQ_'[ M3$1 UBO7#9Z!4? BYQCQ[MI$O5 P9NS;HHCYF^.>G$O*0RD"RD9SVR?% V]; M1]AKS=.<(P,5WAHC=1*083K#9Q0VKL;]QO#?DOC-XK+RUJT2/C/BY=QZVF+J M[RT0V,YMLRE)A3A^T8="/UG:C_'G_DM CL!F<89,#Y^\DTT&U^HXL/C/ VY" M;([IAMV?]O]/G*=K^2-Y^G,#DQ:5[TG+-5BGV:^O1JD_NX=@ZWA)7]F *W_\ MB0$!U& "O%];&[H'5M#_:W/V'U!+ P04 " #6F 15AWCZ;]H+ -.@ M&0 'AL+W=O^\>&;&/I4OGA6K.M6Y^E2R:I5ELKQXJ=+B[/F.V.D& M/NOYHJ:!_1?/EG*NCE3]=?FIQ+?]-969SE1>Z2)GI3IYOG,@GKST:;Z9\&^M MSJK>9T:2'!?%-_KR;O9\QR&&5*JF-5&0^'>J#E6:$B&P\=^6YLYZ2UK8_]Q1 M?V-DARS'LE*'1?JWGM6+YSOQ#INI$[E*Z\_%V9^JE2<@>M,BKMY:;,_0\^Y8[(:J;Z=* ?2D6LJI>KZ#"*E4 M>:IV7OSQFPB=IUMX]M<\^]NHWYKGK53M/+-DPL9LQX[4'!%:LW=Y@P\4:%\6 MBAT6V5+F%W_\%KLB>EJQ^JQ@53.W8K)4< Q5SB^8S&?X. =/JM3YW'P_+/(* M,86OW'RO+?2F"ZU.&*"IE#01<3C5!B@01U!-'0.- M1'VV=+:DB7HJCU-%?#4\-L[25P9);=0_+XO5DHQ1Z4RGLNQVADK?6%WO3-<+ MD*V6R&JT XG:[&+V7,<8-I2DW119MWK"R&$<[^F]_]_'@F[L:RXAQ522K;^W MGK"C2/5L8W*+-7_(;/FTAR[X6$)QF IGZ(7LEZ*&TJ]2WC5!7ZPJ!&;U&-:I MIICUQ41S/]EM1O&OTN/A59_M?OB=Q3X/HZ W("*>1$YO8.^:S\)Q>>@'[)5" M2,(SF[(*."4S^)_^7S-PE16?B]@;C+K^<&QOQ(C/?3=L[*6JNL&22G&6 VZN MSA4CZ GNN,FX>9ZS3G?+LCA!R.\20#X>(F+'UM")0NX%T>.A-GC@#;G==;F( MO.'L(7>[ 4^2Y#'T,F!A]UCE"LP.R>P*'B=B.!YY0[_=#80_BA$!YP++'PSZ M&V9:)0UFPI*A116"1TELI6M3G(4#GWMN^'AMJC:C[%H$]5R/.SW/7UO#XVXR M=,\@!@_#V;N8+CS'0CZ&@N'ZWX&*-K_?1Z@(0^[[T2941$Y_X#JH ,B(P+\A M4GC (0M2!&/BV(84KNO?+5)8'-,^+_EQI/!Y(BRQ[_((4EEPQ8F"4>$1+R)!@B)M#"%S=""X?[<=2AQ1$.!P^JK!!!PH-0]$8\N'"/URUU18)< M *"\&5K$W/.'^O63H87&H$7,8R\8B19C=D :B\)Q\V+QXV@A'!X)BU?!O3U+ M? NXG$1*A#ZH;@I7G@\B&);M ;^L-A";#O>N#+'YPZAP B\B!!E%KQ PH\M M^@#=8"Q\.E1HW;OJPHX7][BV$"X ,O![(\"+* Y[ ]?B10@5(O9OAA.&#VMWA!678,=4%A:/WXWB!.LZW.+P/%+14%T"7(!J73X4'*(]O M7E\DOK6^B+TAB%*TBG#DL4BX8N1I)'8L)QR7SE4V_ QLU8@5+SPZY=R?^F)W M6.U0/_:RR48>7)PT7Z/48:HF:XK4CVP:3*:W:7XECSRE#EJ_9R6/ MBU7-9KJ2\WFIYJ8WTP'"\<5E?ZV^6"*"IJDFWNB+">JY*N:E7"XTP1R6@^(_ MW\]J#FO7=V>[>6UKZ?H6]I5NTI4NTAH?OY"T=\:\SM0>-MB#_L&33*L>>$8\ MB#>.=-Y&'?4[Y$/9%K&ON:[WFJ[P "5'W2*K4?16/Z6EW_ZLZS7..Q=VK#PR++$'^ZYSLXC^/T MW:^PZ?333Y@Q%U'$WA:GJLQ-@ ^P).%Q.$R"(N2>I4R$Z01,][76J:XU@GO7 M@GD^-A5#0XE@"-R8ZL(@]\MX;UMXN4#5.I3NMO]?(==4M9[>"Q&[_T=;'S@] M7$B#^_I.7[,N_-GO!PH0*_+#;9@6!SQPAI&!B/.&^3]Q3?VY#=."".7\T)2H M:'Q++D^XGT36P!AQK.Z.SP\6U@0*_V0C!:'BZ9\,J.V(A+,%V A:W&$UY%$W M>6A5E$(.JO?MP):@R+.T'@EA+5,C-[YO]OMIR/8+91S@Q#5UV]6#\,,#N80[ M03_7HVZ+0Z\W0.<$E$;;ZC;!0V>8JJFE/,0DWSQ'V8IQ(M@XL%]BG'"'E@9( M)XZ]W3=$'BY&"FH!]<[G<#Y/^!#K[>UN/M["XY3:'AW+=TBJC MJMO[WO$V1F$9#]<*9^@E<8/B]\Q^/Z\*_'4RKD$(2C_(BA5=@,ODA;FE)V>S M[IY<39:ARYC-W3S,H_N($V/W=\UEOO:B)#U&*')J@W9]RE*ELKUL6&4R3=GQ MJ@(R5J;C"05G^"#U^O8AD)6M*E7N-U>XZ<(AJ?]S2\WB&W?_&N4]J9 MA+;!,]WL-"+3!=R>:"9G*/9U$7^FJ!BZ;?O9AD:ZR8RV;.\6',ID,4EUO$3-3 MRSLV27ZC^;#88>M'E%FGBI*KL=.;F^W+K2+6Q1* QCI7K:#2*04160WT@V#B M/VK4%OCF8WO_%'9-+_@HC[AZAW8RFO/69V_%N1^O.??#B?N3.;?IG"W@L05= M*FY9YNRO@U=_?Z))LK["OO GX2.S@0@FL8U[*G=\];5T.6 M-*#P5,]6<.5+95I8RN@!(\9SJ/U1QT%'>[#Y#^JJ@PX1K?60V*U(7+05:\=, MN1'9%I7?@KDTAE.:?G[LW#PN819E/2(Z<&PO=V]R:W-H965T M\9VTFDZDS9C=[N[ M'R$2DI"0 . EM5?O^=>@!1ITX[CVZSWR@5Q$U9&'\R MVH10O9E.?;91I?036RF#-ROK2AEPZ]937SDE<]Y4%M/%;/9J6DIM1J?'_.RC M.SVV=2BT41^=\'592K<[5X7=GHSFH^;!I5YO CV8GAY7NSL5CA:#6ITP:KR;@BG#3GE*CB\U=@73M__=O'[AW?BC[-_O[LZ MG@90I.?3+.T^C[L7]^Q^)3Y8$S9>O#.YROO[IY"D%6?1B'.^>)#@KW4Q$;/Y M6"QFB\4#] Y:]0Z8WL$3U8N[#X=W4T"\\97,U,D(B/?*7:O1Z0_?S5_-?GI MML-6ML.'J']5MH=WSV<3T:4@WIO,EDH$>:.\D$X!\)FM35"Y0.R*&AYR(FSP MW'L$NS2Y*+1$O@A52?*KS-=)) !-: M[SW=-!1)H6OE&GO@:7[7%(^W3ZFDKVE=[4D599!]TBXG Q:IFTK%1Q"MJHH= M7>"U7!9*Z.A*'6VS4])YNMEN=+;!(^O5/28EUEW*RU8QW,-/D#<4"G[^ W05 M]L$V2(T#JM[1"A:1(MM(LXZ"M9K *QTTX%5?^DHY;4%Y(P.]*>H<>^@%VX1= MD(/.1)R):UG4,N;J L4"@% -=8?T OV!%AWH66FA::$_*S(2?JI#& MT H?"%AK@ Z.V=BZR'O(R[3+ZM*':.@"C4@,[_V*UH-RB3:$[5,'X/BO5JLA M8&!C4I8#;MQ--&@M6 SV3LH7A20_#7I_ /IT?Y\.-H-3P5 6,!+J?]B0.A8" M^LJ:G+UM,O*LM"=8D0Y]%2)\$QSEM=0%.ZNR M7E-CQ XQ:BWY1ET#!11_X)*@"\%77XV^^Z)NJXNB'W)G(66!G&&VEQJE?W[4 M%SU703DT/ZK)(T%L913C113C!8GQHB<& * AY@48(IB,EM .$5(QN&$M"K@H M5TH'$2/@4<%MCC6_J70,A7Z*J+1*EE9K#%7FP#RP9(54P!7FEO@?%#B MB*XH82P,E"G8\Y;.1,=&OI$M]'9K6HG59ZDR,ZLM#[#13D!Z0X3E<%'5P2+;"R1 M=!\2*H]YB'&T<2JZRNL;)!F>G!5-SCT%)^)G*"*S+[4FH=M.C@I:'&MT;PH2 MY*B -(!XC/)X1E]#X*[ZPUT+F'8;_HY?:]-$$S=J##K8I*M;&G@8$:GO2;WI M+E$B0@8QJDT\2F* +(DJP9H[M57;+?8;I C(&QUS0AO+K&&4A6>(<9J-&B/0 M--0TM)Q3AX3DEHZ>C-MFNE^F8I*RJQ49#CJLK!0$=.]*RL-:5(QG:V74"K5OY6QY/Z?'=7_]34W? MYV'DZ&EHK&YDF482FAR:7;*&^UR">"\U!95M#$]+)70,+0 :/E'!KB8D9C." M]T@5U#O[T"YDN3>J[KGU[3?GEEOMC\[9>1&\,,'^ M0"@>&0TB82+.NQ:]G6W39)G@W%2=MB# MG&FI4K5G"*TJ?ONV+)OB7HV:/P7 M6Z+730%FGM\?[GNDEO*C#4135Q2/LKWT_9)^KQ 'MX5X^00A%N/4=G2%>+J? M]T=#O<.V ?LWJ6^E:/@ON+VK>3[AUU3M4"A+#!7@(4-P>EF'IK/@7C >/([Y ME +2U&# 9P'!9I_9A( L@X"7=%:H&Y75+$U_%1VX2H>Y)L((EK 59VX^880_ M$!C[G(V]R U\@KBL=9''4S?EUCM25V<:5J!^G]E2QO@&F[9>^7_95-UDU #T M(&?^=M,^P:S1'S+/=9HAV@R&3HL:RKQ)^!?68<&U=K479QIST"52K5I% N]0 MM6VI,W%%QUV4CIY=G%V^NWHNSK(@GOTRN41C=O1\(GXW\! ZVOEL/##=T5$8 ME.<I+B(A(E>QV8EO,YJ_%F(\G1)03ES_N M/05^:&JIZ%&#&,_;.Z4N';IV:A\A@ Z^8T'I-%-W)B+M4#>^U-)1?=K/*13I M#^*O])\1$S<9P>#'SJFG>]-@,>:OZI1HL2P M%C\]M4_;#W=G\7O5?GG\ZOML\OKE2+CX)2W>!%OQUZNE#<&6 M?+E14,S1 KQ?61N:&V+0?LX\_2]02P,$% @ UI@$54RKD;XD! #@P M !D !X;"]W;W)K&ULQ5=M;]LX#/XKA#<,#9#& M+\G2M$T"M%UVV^%6!,GN]EFQF5BH;'F2W#3__BCYI6F6%AVVPWV)+8I\1(KD M8V:\E>I.IX@&'C*1ZXF7&E-<^+Z.4\R8[LD"<]I92Y4Q0TNU\76AD"7.*!-^ M% 1#/V,\]Z9C)YNKZ5B61O (:YYC('A>N)=Q5>7 ^LOE/XA^-6[[V#C60EY9U=?$XF7F = M0H&QL0B,'O=X@T)8('+C>XWIM4=:P_WW!OVCBYUB63&--U)\XXE))][(@P37 MK!1F(;>?L([GO<6+I=#N%[:5;O3>@[C41F:U,7F0\;QZLH?Z'O8,1L$S!E%M M$#F_JX.9FU3#+$\P>6KODU>M:U'C MVG7T(N"?I>A!$'8A"J+H!;Q^&VK?X?5_0Z@5TN XDFV4"UVP&"<>=8)&=8_> M]-V;+Z!G!B"Y[2%P.X9%VPE$(RTRAFU%U5J?)=*D:#2ULZD M"%O7$YB%,'!@0\[D3"E1<)CV8/Z-'_H@RP>/>M*?@>DV$I*U?^YZXZP-9 M6*K2SB^"-(K'-O)JDVV92C24VNK;0PRQL"[5KM[/T*36OZ^TM9:"Z-8INCQI M-"X0DSK+Q[OYP='G+ZO4Y$J5<)L02X94,NT55AF[ %M20?_R?WM^314B9!47 MH>6B=FO)'XYO-$^BG!T0XSQ91]U7[UNFLC_AWMOA&2<\IQS(4M/-Z2[@0XR% ML<55W3FP3):YT1VX?:SQ$R$U21J(MW RZ/:CX8%D&(1/)*-N<'Y^(.D/SSKP M[?5);XS#?C<(AX_+J#O8BXV6Y\&3930:P,R5NJVRMOI?7^;[UQ9&ES^]?GV, MITWY_E*L3.6$I>'D+Y>J-I__?4-4U+V7Y:#7[W<.!&<'@N&AQG#4:9GW=V U M@H\U>QK7EC;C^K +FZYR/6,UFK:R_=-UUC?$.2S?4;441&)DP]PGP+9%UYFP M.);*9E/L2"#$DR+&[R4WNZ:R4JH(6"'FMOP5C*CN31.:Y*G+QC&C BO M)O6:<3,:,4N1["$P^A"<-M7=:X(^-@3X>S-:AFKC)E'[=:-FK\:U5MH.NU?5 MC/>H7DW*7YC:<&H?@6LR#7IG-%NJ:OJL%D86;N);24/SHWM-:6!'915H?RWI M$U8O[ 'M7X#IOU!+ P04 " #6F 1504*$AK@% !/#@ &0 'AL+W=O M'O;V] WBUL^[>5T1!/-3: M^.M)%4+S>C[W>46U]#/;D,%*:5TM Q[=9NX;1[*(3K6>KQ:+E_-:*C-97\5W MG]SZRK9!*T.?G/!M74NWOR%M=]>3Y>3PXK/:5(%?S-=7C=S0%PI_-I\8.W+)I*=;J[^I(E37DU<345 I6QT^V]U[ MZO)YP?%RJWW\*W;)=GDY$7GK@ZT[9R"HE4F_\J'C8>3P:O&(PZIS6$7<::.( M\F<9Y/K*V9UP;(UH_$],-7H#G#)[CK^\^WMZ]^W(U M#PC)"_.\<[])[JM'W%^*#]:$RHMWIJ#BV'\.*#V>U0'/S>K)@+^U>B86RZE8 M+5:K)^)=]/E=Q'@7/YI?8)<)<] MN,NGHO\WN*?=EZN9. HA;K54M1?2%.)WN?.M"EY\K4CN\ ML$[86L67'O8R".D4G)3!$V$9@=#\(K>MPVM;BJSUR,L#QP8SQ =1*E=WOI@] M3H;>FPSV)7*\.:/.L0FZ[QB+GQVEG$OG%/ECL%K)3&D5P @B.&ERY#EFAEP M&+1WT6)L9)H238W5*M_#O0974X&9"*^\ZIEDV+3O4F:'6NY/*17D@\RT\I7H M-.5C* !2&QF'5

U>(,54&."DX@@U?D3 IM/1*]X[&6@U3. ),C5/&Y-9$3 M[&(*Z0J/;3;2Q1*R'T=E S(YF)E&:@]TP=VU,5O1FD+Y& R[#XPQTB2$HS!B M5P%FC 7!M,X10^JQ,T$*$Y>*:;1E' A" M?NR5D!;1 $.+G%+)#**UF!_KF$'!+8/.0L.EJ?QH/LN?/7JV6/[U!":%L4 %Y@?A .+G03\9&02$]=(7&J0G"C@5:6$IF"4#/ M=,=I4KY6]Z1596V1I)'>'4I207@9P;1COCAB.VO#O]CFW1XE'-F-MNW[A'?0 MBK8(GO*Q1I]G&0$N---DBSAC)EP\ K$AN%7[MH+5D@9AMW80T>NXZ38WV M4>BCG)49*W?:@.D]&DT742N<"'^D^C /CMF6+% MZ!CN,_&M4CJAXB%*WUL>2$D,W71O#<8O:Z4XDM% ((9SU&9! M* DN7XF@6/-A4SI-83SG'IU#W"82Q$0MGPRFU*R^GW+]43-&.I2IED5$)F2Q MI7BPIC9+A\^I8Q1;);? . CNX$MER>>@->>[4#H3@P OJV"#6S6W2&-=.HD1 MS!8S\=[NT$9NVA_]C3)=ZYX+.[0B\D CN_'I'L62&IX/)%SJ4QF"O.=E9;A7 MTL$WG.@PQ?X(FJ8)AXI5&H8:^IJE'4_\>&(%YBT>FQSVW/VHDQP]-* HN?X8 MC>=Z=R9X>7%Q]FXY'UWR:W*;^"D32VE"NN_W;_NOI;?I(V$P3Y]:'Z3#1&ULI57;3MM $/V5D8L02"B^)%!$+E*2IFJK4B@!^KRQ)_:*O;B[ M:P+]^L[:B9NV(:+J0^R=RSE[9KTS&:RT>; %HH,G*90=!H5SY448VK1 R6Q' MEZ@HLM1&,D>FR4-;&F19#9(B3*+H+)2,JV TJ'W79C30E1-#DN4X1W=77ANRPI8EXQ*5Y5J!P>4P&,<7DY[/KQ/N M.:[LUAI\)0NM'[SQ,1L&D1>$ E/G&1B]'G&*0G@BDO%]S1FT6WK@]GK#_KZN MG6I9,(M3+;[QS!7#X#R #)>L$NY&KS[@NIY3SY=J8>LGK)K3^>SKW>S++(,+K5RA869RC#[ M'1^2G%93LM$T2?82?JI$!Z+X!)(H2?;P==L:NS5?]W]J;"AZNRE\:US8DJ4X M#.CN6S2/&(P.W\1G47^/P%XKL+>/_74"]U/$W0[\10.';\Z3J-N'.7]R!8RI MF3+Z.7 :7($P-9AQ!^/<(-;^3?Z5@G&5T^V#I/D*)TV^EB53ST"I2%#@:DWT M6OXC[_6;)%'_#TSMC?O'';B%'8QWS^^=UVA<*NG)9J\GEP64ETIU[1WZVV' MX[B9";_2F\EZR4S.J6Z!2X)&G;>G 9AF6C6&TV4](1;:T;RIEP4->#0^@>)+ MK=W&\!NT?QFCGU!+ P04 " #6F 15= *(ZZ$) #0&0 &0 'AL+W=O ML?>-EBB+&XE422JI^^OOF2$ERXGCIKC[DNB%G-=GGAG*1[?67?M2 MJ2"^U97QQZ,RA.;E9.*S4M72[]E&&;PIK*MEP*U;3GSCE,QY4UU-9M/ILTDM MM1F='/&S2W=R9-M0::,NG?!M74NW>JTJ>WL\VA]U#S[J91GHP>3DJ)%+=:7" MY^;2X6[22\EUK8S7U@BGBN/1?/_EZ^>TGA?\6ZM;/[@6Y,G"VFNZ.V^J+S4!Z/7HQ$ MK@K95N&CO7VODC^')"^SE>>_XC:N/7PZ$EGK@ZW39EA0:Q/_RV\I#H,-+Z8/ M;)BE#3.V.RIB*]_(($^.G+T5CE9#&EVPJ[P;QFE#2;D*#F\U]H63BX]_S,_/ M_C/_='9Q+N;G;\3%Y=N/?'VTIE6_O>C28!J M$C#)DIK74.5NU&CDU]_V7\V?;7# M\J>]Y4]W23]Y+;WVPA;BDF2;( GMVXS<+>93J5 BF6U-T&8IFI1K4=@*A:MR ML5B)@#6GMFZD60GIE/ @#?!"*(4VXE*Z(,[.QN(LJ%J\&(MS&Y1 AB[<4AK] M7<8J-+FX:)3C.S9[('1'- [[:!SN=..=]IFLQ-]*.K\M"(_?+3X-O+5L,L)! M]CO5P&DO=*![TV)'H8TTF<85D@!"\$P5N8#'AS-AG3@\>'*KU+6 '&US+Y3) M*W)1J3V1 M$K)"0KC2Q^*VU%@*@9[$K2V8CKL%NJK$0HD, 7.:_2XH"62/I]> J\22%"^/ MA6@QGE&/E;"?5PHEL_*> ?L# V)$!S$8=RND_S]IGU>4PT(Y93*D')%:,31U M#*2Q(3XE(2C8',#(!^GW( .%#@H$ "F1'O"Z]\CO[:BX9WW%/=M9,Y^](LO? MPH>:@+FMZGY. N,=YC8RT@2]_+&'B D6T9BBPRH&^O/>U9[X8SZ_A/M?6XT MH'4:S!JT@^)6RVLE5*^7,"P]YI,FLE,H91"R*#!!<+QCN<$ 61-/,GUAO0IQ M:Z7E0EH;1CN4H,A;1_A;[^$.P*4+#&:A'5 ).D1%KD&-$X6S-;:ACM=1W(6IYSVF MGN]$Q'M4A'6:<$J&GK;.4=S.0('P#6ZO%;[_^\F(VF[[J%O#M_JO?!<@Z5[7.8J2+@GD:D*LT\,F$':=H8=12 MTF0*XM:L3^7#GD@"]Y^_\HGX&9&PTI3<])QZ0B<8^)3J>8%XF[AOQ;O&F]M2@Z:*;5V0NHKT M0HTI%4&L(]3U,M+R$!\9E/K8'7V[\* = M*F$3UM27DFH0(=L MG%TZ6=.LQ6']RWHQ!Y4@=>@_H,G A 8[OB 'CJ5>PB'7P_.O^9LOESTVR?@Z M!H_$A5*[O.M()"4EGPQC6=30MD&RD@/C?.N;V!5S\ N@U<6$H2/S7!-XQ[W_ M6Y$;&ZBQ1MT9#7N=A&T'0"<89&!$'.FV::4MTX-7_?\YL>X&Z:[$C:S:]6!J MH= -^D'K8Y#N]**M[0>]6%36+)]4$=B1XCL&0>U4.N((>J[:1>>&=?'1!:O^ MJ/WUYN")(0*'98V2X7,Z0Z -J6.@2%J#,;V1@ZX3G6C:147D0Q#%FSUQ53)Q MTTM%XY$<0!B7%7>80?S&PMNZRP+X/9Y%X\1"@JAY.,V[O5X:7:"R@<%%FR\1 M95^"[PJ4NN]!FR52Y823H0NULMQP-PJ+EM9*4M<$Z-"?#3=J^+>DOAA[5&^X MXFXW.$>D,ARR[P0&=&UO8->]@L[;#"%0R(SEG?2] !BA*0PMCB#[2%S2Z+&T M-\H9@@9@8N_E(X*74.8T$V)MT5(UP_AA;H>]XL=$T&NM#@PA$O",,!OR_WD!.@MYY9@$K MTE<;P.X=.!20 U*Q^\'8=;7A>*:EX1D)3X!L6M [6%50.=3:Z+JMTT1#\JB# M0ZOGH\/& 77I5+*U\Z5F#?UA2(K$CKT*;C"))LFA]+X&SZ&FDJJUY&XEDJ-8N=\IT+&X')\%'HA*YUDT'Q4>*MYB+ 4);^X1Z]IY M%#2A#$[Z^US3P0[OZ*A%-^YZ<&@ID C<6E,T\G+TYO,)+GAF[B'HZ% MZ";A%/P=MP-,2G=2JCZ8Z7:FS2-?CF2J4.C#DER>LX,DTM6_JO*!%* M^NQ!,[$L% #:-WAM0IP9";(HM>'!B&$M<_113X>C>+!5^3CA;-4?<_@<O M].OE\;<.'%F6&OHK56#K=._YX0@QY=\/XDVP#7^S7]B J8LO$44@CQ;@?6&1 MZ71#"OH?<4[^"U!+ P04 " #6F 15#3;J.]D$ "D"P &0 'AL+W=O MPG\^YNQ-R%P 575?4F\MF?F>>;-,U@;^]-EB!Z>BER[ M89)Y7YZU6DYF6 C7-"5J.ED:6PA/GW;5U MHX&I?*XT3BVXJBB$?;[ W*R'22?9;,S4*O.\T1H-2K'".?J'M8@Z.\1)YCG MK(A@_%/K3+8F67!WO=%^%;@3EX5P.#'Y7RKUV3#I)Y#B4E2YGYGU'UCS^<+Z MI,E=^(5UO'MRG("LG#=%+4P("J7COWBJ_; CT&^_(]"M!;H!=S044'X57HP& MUJS!\FW2QHM -4@3.*4Y*'-OZ521G!_-+B>7M_4-'LC\.^HY_D_T^RE%C;[]&KJ$S5PJ)PX2* MQ*%]Q&3T^5/GI'W^ =[>%F_O(^VCL92FTE[I%4RMT;262!7B'%&6)EQ:-H-\!G"U7A^ 2J8AO'\ 6Y-,YP> MM7L-^/RIW^VVSV>X1(ND%F;"TP]RGX&#>U,J"?U>__ ,ED*J7'D1JM@L@^K+ MY9+*VO'G?@UT]4IIH:42.>V5QC*+8+1S#@>U=495(ZJ/#INPLPFE-8\J13)4 MLGG2A4\EIBKX@%V,3Q+#D0.R"Z(L\V=VUT-SWH1OX_$4O %)56"I_T!A4K54 M4D0!EL\P7?%]BWG^2D-\4A'8QM0Y M![4!,A-Z15E3VY16>0*6 ^$M K2]82$1A M4RO]"I_2SMN**[:Q"6T*$JVGUSJ@0JL$"(M0H&]R#7\71-$^'^;@D1RL*/#$G MU[^7SU0N83S8NN07JGR=H=ZD!T>0\R,E-SZ*D),O.<=R&[W[JUR$3([Q?I,Q MKU+;0G!-#DX5F[]#* MT:22"J;^TOKG]&[$)ZNY[_UM[4Q.!=I5F ^)$/LX#E';W>T(.HZ3U\OU.+^2 M6RG&#G)?HE 1MGPOCA31GFL(7Q--6%949C-%J^0.=+8_SF@PUL!_/1 MOU!+ P04 " #6F 15A4%+$[X4 ",0 &0 'AL+W=OFMKLSQU=63*__@IW*W[^G!S>N7K=KIC[K_ MU'[H\.DF[%*4M6YL:9JLT]M75V^>?//V&:WG!;^4^FB3OS.ZR<:8S_3A^^+5 MU2T1I"N=][2#PC\'_4Y7%6T$,GYS>UZ%(^G%]&^_^W=\=]QEHZQ^9ZI_E$6_ M?W7U]556Z*T:JOXG<_RK=O?YBO;+367YO]E1UM[=7F7Y8'M3NY=!05TV\J^Z M=WQ(7OAZZ84[]\(=TRT',97?JEZ]?MF98];1:NQ&?_!5^6T05S8DE(]]AV]+ MO->__NG]+^]__/3^8_;H@ZG*O-3V\YV^2M;'*WL,GS[ ?3]'N; MO6\*78S?OP%!@:H[3]7;NXL;_FVHUMGMDU5V=WMW=V&_I^&63WF_ITNWU ?= M#-IF_WRSL7T'5?C7W"UEDV?SFY!Y?&-;E>M75]!_J[N#OGK]IS\\>7[[X@*) MSP*)SR[M[DG,?M*YV34EJ>PF;E5SRG33Z\YF9=.;+(=XZ-86 MVM7OLQ)_Y%6)%3;K]ZKG[V' V4%UI1GP\-2"66:;M1UTHMGA7W,HR1#M"COF MU5#0TVUYKPM>HU=9#UN]5DUQ#5/17:DJ+,7';,!EKLEPBF27=9:2VLF=_XTS M.R^IDBPV-UVAFEP+V6\^?H)"/'EV??N75>;YM>U,C8U&]WO'=J.[%2Y6E-L2 M1RN+U]]E/YNVS+/GM\^9M!XT=+H"O5@ 3U/4S))',"KV&@==G;(__>'KN[O; M%_0VWN-/3UX\7F=O+#Q9OE_Q+OXF98$=Z$2;JLUKS36MC2<'KVC35V"I G+]1MM.-[D ? M".) 0/4T%(BX?;IB^RC'!D4+?L91V8S-IO]H/N]*<*+/Y]9Q=RC]SA\=\H^ M15-)_@PTF&U_5)W.X*<1%?7@P-MI9G$WTO;#@J' M#\0:,!PLL AY]/$RO;^+%L]*(PIX4!!:K7XU7=F?2+)S:A&E7=JHI45F#KIC M=Y1M=*X&<,IM0"^4S< >CBQCBW5>:Q!YH1*\RIGI.B4J<77+YS;>FN?O6HMJ M")=$X2JHI'N-M,\0.46)/4EE+9W0Y$/7Z>*Z-]<%9,(&;'$Y=EJ]Z54U?H&] MN3]R[&;!"?M%%.*,C>ZA !!!#Q.B=RKPHB+R"&5YTR:_V9-GTQW'C]; L-B) M$/?+1KPK[>QXJ[=XK1?K/)95A7.PYKCVEMXEQNK-7X77TI<=4\BXR+R%9QQ[[)Z^ )7%P.HA#.CTYI3!>XI-LNZ4 M]C,[P,;TQ#APB'R=Z(E?Y-@6>#S2[_/H/0W>2UJO1*=8+?!-U(R9"$X+;:MS MA+Z<%%X['XZ@9E,CI7,>A@CDOV?HCH0*X4/K+ S/!IC+W@Q=-"QB+;LV%V$8 M[6 G4V0.&'7R'ABJ2)9N0Z$>*WD_$5YEC4-' F"\RN%E_%W6&QS,$6QLV\LD MK+-WSK(6=/#B]4F9H'5D161;R!K*>JAC<#^H:A )K)RD<')U6DET]\1#IOH> M,A-_@[]SX@$1,[\AJZC5$SJBNTM49T"ZT'V)21.00QYH>])?UJ19XUMGR-1F M=7:,TA)E&J$=V0ZLIBU8(17I$'05-E4,'D?QGZ3WGD7,+[[&^3*PK] 5S'DD M:"_>@&()2M5F"(A\KPX4OK#O!FX2KVZ&GJU;JZ[1A6R+^(5=!683%@V/4N%U M_AF$IZ)Z $4H;,TXQ_M!4@+F$!&)A07!#.:B17)8<,C9J(KMF5/."8YG X!( M<=O(' ;H=H)=Q.[!HZVVE!# +"FAPI?R#943(&P^::L)B7T_EP\P)!_+UOD? MV@;7Q4F6@1MDR6@P7!_<<"C\= F#)YB;EQ&V(',^1];LC49HW6/Q92A^\> 1 M]G:YRE3?%A('MGR'Q(L)".@A=*_Y2&/+@GRB:B$+X@\BRW%?YI0C!IPA:VT/ M@E1E&@+@5259(=UC M>>:Q=99-#(\S&\;7LAS*2CB51+Z!I]R"^VPWC+R$\(7KC/S+1D,=8DX;3:K3 MDGP71%'#[F,[-"P95;$U&?@7OWZ%$$?6CC](J76^;XA/$%I+\8G[==)5CUD7EXNLY _30F8IYA-U:D%QK98>.G?8DKI-@6 LC7)85 M[OYS"0,N;B74!SF*!+9Z!IZ8B6\0X#4+-!T,)1^Q$),T!4\V-B@':SIEO5A? MDT1C, 4D'"J2-.&XC:@880_X1D0/+6= Z9B5%,\GV7S8?9_L$%;$W6<38WJ.1*@\2(0X][O@,P$2SXXJ5K_8E[/_$I_MMC\K:-G$7U+$ MQQ8^8Q^%=/%@((;816-CY\HU+<.ZQ@'G:*TJ.B*/T!=2XZ>U4F237 MI.OEJA5<=!K'S5JYXM&THLH:[%U>T(UVK^C"V%!7FJM5@# .@_!WR5?,2;TS M?>F\=F!H\'<<4X,?ACK#D^4,LESNC.O=. !"GI:2%5RXT#7]XZ%)$-U&AZ)N M00!RWA&58X^7&J4KP1&XP*U\^I]W)6:O)^\>SUYW\Q2)P+9A.DCAY M0H'C(/<8;(MRRWBC#\PE;CJ6,S2,*R1/XU(VF9.3[9BS/N.6!"9@12\>OW]X+ GLW5JF)"A@Y:<$S)V";MB8=.&.OK_UCQ'JROCVP@UR!;S]Q%8.*5I$!6"NOOV4&F M,CA#H]^9D.N6Y$NYB41*LG(E3Z=[8JG>CRPP65+GW\FX[%%,PQUP"E$0RL:. M5:IU[#+=&2"G%4O M<))T-14$I>1."2 +ZB5[?#585Z3P4KR$*]F4?66#*C)96PT49+#CCH*MRXE6 MCA$1K?IK$-C&%1>Z%J.]V5HE)3N%$L"7^^Q+%Q MY KA\S?$<5=.IVH=CK;[LLV03L!HN Y @U4):=6(F<;5XG7UBWH0:$+6N76U59"KFE.81(91Q5*B+%YV>P_#06+1Q36A?3%:5(+II> M+ADGX'N)=O(Z#%,8P]?<0_?VY3"0* _Y-(\I!;WQ6 "]-33LN XZ9#HL?48P M0;_S2I4DRU\6;S?U/8ME-'W/Q6%)+7'PAO<3'S9*&PBD=7!A[%<&A$R!?I.L MGS:I5XAA7 MKAM2X6P9&Z-#'R$Q[TU'#@1 E&HT#GGX**J+QRZ9(D8I:QKP 1P^J+(288X* M"^OLVR$\ T]<%2CTHM*VXD8G?2DJQUQHZUT$G;ZE)OP7^)_F[ PC1BU8,5%. M2%?C;@Q(\,*VKMA[H53! R=C379V1:;>Z% JDFM9G:B5I%<**1&=+2E#D@L] M["C&S9,#C<9)>U#*A!=?O_;5R$A/IW]?_-N-!CD\YU^+\Z(*%[-49H:2)BK6H5F3U76I>299%.0U- SI"$O^UF? M8JC%%C37LHK7[LV1@$]*[73DB=>'CCLV805[>1E2,54-QOA//9F"YTS@ZDD.P^Q.P3C^.L*-%8MO.)>?NU MMC_;AEY+AM/.&BBC'KWI'.S@ EVZ"S^$8$ [7MD.(HY0KH]37O# M(9==+#T MQ;:V*G[%F[6K3B6.W-4!39.D>[%SFH2PG(8U (I=-N0A$BNA[Z-R50]GYP&8 MQ',S:5N.BH[@+H^=C OF96@_49]\L@M%;3_?EK0XDY(FI3 #.VR?"R(D!'DA]]AKE?&6E\?BBV] M"UWD[4!0+E1RH_QXIS''RC,NC2NY9@LPXX"7Z]P*X)8.0C3+6+@_SX)<.''% MQU3K/+1(NL%G( ^&!A,*F"?]/M,EZW2.*$V<:^"6'7 '=:G[3(@5C,8)ZVX. M\H_?A#\A"WX@,DVH)LX1?\Y+U2&5):<:LF8VV4!3-*XBXHHTW(8BLYB)--.2 M*@\0Z+1)%++DLWQ):JLGJ9O$<$%AO$2*GU05171:@C?7T&:O'Z#3^15'K \O MFT5E.M)JRU$F6VL:N3T3-;@/H0* M!>]T/"SC9RUB2'HLQ:(YI\A5HW&]<:KUQ,%8A)XT1ER7]9)V?0G;/7?3ZX2* MXDAWRLA>J^K0)5(/M..#6Y=:RGSK9I)5I7R85%=%<844GC%9,K[9&L#8[X39 M*,G[B*N06L&A=AQZI0) TG<[0V5T*4,";%.)]+E?$!1*BFWLM\9I2^ OGE,L= M[$YFZ,;[T\S8OH39^?F:N@3IO6FD2]%V^MK-RWE\:0-)UE<%&TW0&-BHHJC4 MB8^03'HF(8_Q_Z$1T/EY3Z2,Z:ALB@K\:C=GY@K+1!8+ @;NRFC\.73B2/P- M^?XP(J&0V)0.&A_53H=Y+BOC7&$^0:)WXWZ=-+JR@&'7HB,IV"^@/)T^3 ?1 M2%T:KDF.3&P\;R4@U2\=E7[_/]3J>STSKA3O^I:+>*N"BHT M4IF.8Y+G,W+%X*5I[K)5I\[0<)FZ)WEM3#/X43D-#3,P^-A^YFZGW] N] Q]&]6^8:$Y\]7VYF'3;,/=JI81* M0?4!/5EG/TYWVJK8KQ+G4>U0"^+!PGA$!>=_?>)K*<5*5'.A2ED4J'SUM;>P0R:+&=L MGDYK;:&'1^7GJ]WMV9XH I;<"?(##>QV?XR@CN&7[3T,Y%"X=0\G0V$1@]#L M@:EXQ,3A;844U@5UPH\[7TPDNJ%\,A _+<[:8*VP/ ]L4F1!0S2JZTJY58#B M--//R%@06"5EI9A>AH9 889-CT0PPJ8D?"I?PB*:(8NTF./#/"_[;4 ^P!/\ M#K,FM97D%V!D%D="W';A;%]<"YT@GW!&8_+GCOO\&ZYQNQ_!!91C"*64-"Y( M8QZ(NUNJ-TG+%([Z.AP3"&.ZQ-OZ@Z*VL2'%33E+#E$RF?ES]1V/L<+@1EI" M;NGG0F0Z$%TSZ7^&_"76GRESA=_E,[5-9JW).FLW$.F $G&=2^"]^!PZCNOE M63L />8R4$M?2=D..4 [],ZS2!2JZM&AIV9"A\F LZ2\/N"#SVM%H MFQ2PN.H+QO]M 'O=[Y:9RF_!S'J#A4_EZ9/5E'V1M9UG-XMP-!OTQ^?K9P2P M*U_'_>.S]5?^P&ULE51A;]HP$/TKEBM5FS2:$"A%+40J'=4Z MJ1."TGTVR26QZMB9[33EW^_L0$8ERK8OL<^^]_S.\;M)H_2+*0 L>2N%-%-: M6%M=!X%)"BB9N5 52-S)E"Z9Q5#G@:DTL-2#2A%$83@*2L8EC2=^;:'CB:JM MX!(6FIBZ+)G>SD"H9DK[=+^PY'EAW4(03RJ6PPKLNEIHC(*.)>4E2,.5)!JR M*;WM7\^&+M\G/'-HS,&X R$<$.D MW9$.>#C?L]_[VK&6#3-PI\1/GMIB2L>4I)"Q6MBE:K[!KIY+QYY%5^99;%$ZT:HETVLKF) M+]6C41R7[J>LK,9=CC@;+^?/\Q_K^8I\>F(; >;S)+!(ZS:#9$CJKE7L(K MR-J-BLXTZ>&TTZ R MVS -1/ $;0['"D8R-S?*EZ! M00^[\+3>?]%R[%D$!_8L\5Y\$S(D4;6TK5.[U:[/W;;V_I/>-LE'IE&\(0(R MA(875Y>4Z+;QM(%5E3?[1EEL'7Y:8*\&[1)P/U/*[@-W0-?]X]]02P,$% M @ UI@$5;+&ULS5CK7C&29PVG;LT<\FUGV60C1I G"3BN']] M5\(&'!,NN<>T7PQ:]BW]=M(8E+/ER) I.<*R%LG1DFZ8_RC#-!Y,33;OADQ-6RI3FY(8C4689YNLS MDK+5Z< :; F?Z#*1BC":G!1X26Z)_%S<<%B-:BTQS4@N*,L1)XO3P=0Z.@L4 MOV;XDY*5:+TC%U2278 M?M]JO]2Q0RQS+,@Y2_^BL4Q.!^,!BLD"EZG\Q%:_D4T\GM(7L53H7[3:\)H# M%)5"LFPC#!YD-*^>^'&3AY<(V!L!6_M=&=)>7F"))R>A0M30X M1W.U*;>2PU<*_N M\#PEXO!D),&FDAQ%&_UGE7[[&?T^^LARF0@TRV,2[\J/P-?:87OK\)G=J_#W M,ATBTS*0;=IVCSZG3H"C]3G?DX"NN"NU;K=:A:4C4>"(G X +(+P!S*8O'UC M^>9QC]-N[;3;IWUR"]B,RY0@MD#D2TD+@(E$.(]12N"()BR-$RY$3'O*"/ZEW4W ?(-4QKO+L.3'3.LJ*48#3!/%[AC;A@"ZD76W;' M-'PO;+SR#=?VT(?.S#9"8-%ZLIK56U/"Z>?@:([SB%2;U(BZAN>V1>VQCZ8E M()_-*:#.0)*7T3T\JV )N-!L>B-F[=H/0W1;SB63.&TL>8;CF@U7:(Q#"TVC MJ,S*%$L20T&#XQI17)5,L(#5.O!?C!$<1+R'"E&)(*Y64=,*B7^'_&Q;338BB MG$=0=3FT/,91Q(1L8\.VC= 9[^8_L /TATS <',H;=]I7( -,=$L*U*V)@1Z ME$S4MM)\*5H\H=N6\'U/(PXZ>'.<"KSF+$V1Q(^D+>JY?FMENVX=S)SE91LM MVZ=E!(ZS1PV,P ]J6341$"[41RLXADRTO*&Y*+F&XU;6"YH,>Y"0.XV=CG/3 MRIWC&F'HM@F>X8_-GK/KUV?7?_'9C1*<+\&NWFZ"(LSY&G*/'G!::H8E8_&* M0E[G:QB5"@59^%Q"D>PZX_V&?_09?^VS$P/3.*9JVUK%;$L2:/0LGC1J;DH. M"10$3J.0(/8WC%55\=;(^@JH/M7I_ SI//KIX<]RPI?K-CQMJ(^!UZ+H\VP? M]U*V4K-\"?M+N I ? <$@83JUKN8<<-.[UJ*_X:O4L'. ,MU;+=UX902?5@ M*:BQ%+P82TO.A%!MK50G0+>X5O_;:7? K>"FBAC.U[\ =P3MC0,;C>'\T 55 M8S&@4@(\J7K%0A#0JNJCZO94$@3%:U&F4#X>NAM.O^?_-1B_M:'M(&L'T9V- M[+7/7_4FUI6@M8$OYYAV3393?2YVOW71;@!1+-[SZTGM:)/7!',UNNI3\?/+ MR&N?9SBZ3UE3% Z@E8:NN[/V/:_WN]W:5^898ZO#A@E&]G$!W)ZYSPVI\1KJ&&R?ZZL"@!@G MJ3ZA(J'%?C*\L6%U5&@8"0-GW_HSW# OADZX$_I^0I13U0"UJ8/[5?*IWC T M;,?=]P+FP8Z,A9 $>Y_;]0WO&PK,5?X>_J!$!&J&^KN.86+0O:&UD^^LPT[Q MU[1'IR.0/AU]SRJ[SZ?UX&E"#YZFLH/C&].GW43 M^A%SF-D$_'M>@*@Y#. _*:]N%ZN%9(6^T9LS":#7KPF!4LL5 WQ?,":W"V6@ MON*=_ M02P,$% @ UI@$53"V#0@\ P Z0< !D !X;"]W;W)K&ULI55M;^,V#/XKA.]P: &O?HGSNN;C!@7RR1)A\]I$AJOI?JI\X1#3P5HM0+)S>F MNO0\G>18,'TA*RSISTZJ@AD25>;I2B%+&Z=">*'O3[R"\=)9SAO=O5K.96T$ M+_%>@:Z+@JGG%0JY7SB!D>1U*"DOL-1UTY$!2:R.+@S,Q*'C9KNSID(>>P\Q_QR$\.(0-[_:@AN6:&;:<*[D'9:T) MS6Z:4!MO(L=+>RD;H^@O)S^S7']=;>%N=7OS_6I[<_?[!LZV+!:HS^>>(7AK MY"4'J%4+%;X#-8$?LC2YAJ]EBNEK?X]H==S"([=5>!+PMUI<@!^X$/IA> )O MU,4Z:O!&_S'6H1!;A&@8P7;(I:Y8@@N'6D"C>D1G^>E#,/&_G. 7=?RB4^C+ M#75<6@L$N:/"B@W(6/",V>K5+N!3(NJ4EUE?#37E6D'"*FZ8 (%4H'HHKM,G M?_HP"_W1%_B_*]W8,]"%K3'!(B9B(Q+^;61OLR\$;RS.> DFE[5F9:K/X:XV MVM#6QAY+15FEG0;JZ2VJ J[@5K*R<_X(4]_U?;^O&#>*]W$>\%&*1ZN_5IAR M ]]8P@4WSX.1!N%P!JS^_3/6*-@SIK!6;-\2?T7[N$:A.^Z1[_(4M2&8G++: M% ?+%"*-1Z/?& =N$ Q N,$D@*VTA=(@O'$+1NYDP#&@'K2N-UK7K$P0$JGI M5(JRQ4FY3F0]1.0LFOKG;[7CV?0<-G5L&BY#-()HB(;OCJ<1W*+6-!J5HMBA MDJJ9[M0R0I;9+\8F]E5TP<3U@\\O(M7":$*Y?V5\A'FIF<]3-^B5YD>8C=WQ M:#;4YEYO_!:HLN:1(8HV)^TD[K3=.W;5CN\7\_81_,%4QJFM!>[(U;^8CAU0 M[E.0KV@.YU7_X#4$L#!!0 ( -:8 M!%5#^-\F*P8 ((; 9 >&PO=V]R:W-H965T*9)$UGLY-N,W5V^RR#;#,%1)'(97_]'@D#PF#B MILT^]<5"MZ-S^\XYLD[N:?&-K0GAZ"%-,G:JK3G/CZ=3%JY)BMF$YB2#F24M M4LRA6ZRF+"\(CN2F-)E:AN%-4QQGVNQ$CMT4LQ-:\B3.R$V!6)FFN'@\)PF] M/]5,K1[X$J_67 Q,9RA2X? M &N,#/$Z3NWMJ\ R[/?H_VIOUP4A'<,W4_/X87@"[/J(P*R=OJ7O/2_<0?R8 MRE<]=Q!GH$9:,IQ%['#7\.><%)C'V0HE4MTA91R]AC-=VVGVB+[GVDK?UDW3 MZO1MQT4?XPQG(5%(';^8NL]26O#X7RSC&'@,9HQPUFK&=7M;3+L_Y@1!;\QR M W25<0(>SA%0K\1)8KR(DYC'I#W%[!/T^^2.!CA!MY3C!&608K84'QA=Q?M' M;D?1GD)/]DUO!'MN@SUW7^Q5N+O*JNPFU'LCL X*B80V!#0O*+@QH#(27XPF M<83%[#E.I/WG(O0.(7: K ;>T>6[$NRQY=_@&8"YP%<'7-WT^^ZW;WO=\?)'A;"K.[;;Z;N^NVN? M#F(S!FFZ*,!E4"Y0"EY3KP[T(]=K<6#HOM<"L,+$;KB!C(YN'YGJ@ >1QWZV MT)V(Q81)PZ04$1IL2[Z7<9X*(<# U8HU36 JS0MZ1\0,TP6"#Y]OXLM]SU!$ M=G37455@ZU;0JO0L#,NT3"0>(P)9.HQQQP('EFZY1TI",/4CQS_<,L+>PBN, M .% 30JF;MO]V/=3)D)TD<0K*9#J%D'')USEU)V[G_#3QD-UQ^R[E^]O.^UR M#RXMW=Z*[;;Y?+QNMU]EL0U6QW<0@%8$K@?B M*F=DAHJ0Q:CP07[">NGOQYVQU7TH.%@*DRT+FB*Z59MTLXC? MK? =*"9V4EIV$V=/18,U;^4?/T[-<9S^"69_;-]VJ+"B"P[1GGQ?-*M+U-$"N'.M>MTM6T<"2M $E.#Y :53O#P5 M3L;/^0W\W\#_#?R7!/Y4>1=)2;&2KS]P#Q:U:?5$THPV#TQGU;M*N[QZG?J$ MBU4,W"1D"5N-B>]JJ*A>?*H.I[E\95E0SFDJ/]<$ Q[$ IA?4LKKCCB@>7:; M_0=02P,$% @ UI@$5&ULW5IM;]LX$OXKA'=1N 3BV\2U28!TC3-YG!-BR3=_:Q8 MM"VL7GPBG9?[]3>4;*\<,JZR[;;.?8EL9C@:/C/FP5U5_ZEG2AET7^2E M/AS,C)F_&8WT>*:*1.]7JL*E&M)H>#8_+FG;#RC<#OF;K3G<_(KN2FJOZT7\[3PT%@ M#5*Y&ANK(8''K3I1>6X5@1G_6>HA M,T$&3TR@RPFTL;M]46/E^\0D1P=U=8=J*PW:[(=FJ M.;HZ/?MX>G&-CB_>H[/33V>7QY]_.S\Y_CW*OS7(M]' M <&(!I1NT-/O8-Z_0*EK5MVIP].H7$@9O MM]C,US;S;=J/KB STT6N4#5!DZQ,RG&6Y"@KVQ2UL7Z7F1FDC)Y#["-3(3-3 M\'5>U<8Z$FDUA;PRVK>P[:]^]8ND 7N+=OUY6D[!ZBZ\J 6QYK M'F8EN*-:Z*1,]6OT(=-CD+J>U4IMY J"2'] RT#_:?L(JS0U("=$SZTJ%VK] MCU^1Y#B,1&> 1#B.@L[ WA.?24!QR 5ZKR Y('9;>"Y3E!00H=E_VX''IG!, M)'-&*7?']GJ,<,QIV/I+:8/4/9QR6F%4PCGX6);TT$=P0.-^NRK16AD-"MS)C#(<=")_[0V&:>R&IY!@@RL] M!''" H]Z"1L,H?\5J* -5+C>WP&H"$/,>;0)%5'0'7@**@!DB.#/1 H&..1! M"M$GCWU(02G_ODCA"4R_7/SM2,%Q3#RY3W$$J_+@2A")7NDA,0WYM@KMD"W([8/UH#L>!18$>>!%!EGGP @Y\Z=D/T"OZPF=@B=;. ML0L_7NPPMR 4 %+PS@C@123#SL"3>!'"%D+N/P\OH,HA[DZ(P-WS?GC!0=OW MPPM[PO9A%S8=V;?C!? X[@EX#BCH81> +B+J=YX2!E NG\\O8N[E%Y*Y(&JS ME80]RR)"2<]J1 :>"H?:NLJ'G\+'1KQXP6R5LSO\8NBRG02"IFEWE;9K8B.X MFL!^06C#ELV3\@'2=ZRRVZ:9N+^E$2;6C3#1NQ&69CJ93FLU;;,61I98X6MR M;57[5/?NGX6XMJPK6NA53U.U91.JV^"RD-5I1VWVG1[UF]9(>OTP=_/Y;QN? M%6H/7K!7).#M+,EU!V8C+.1&\<OL#X@>!'Z4F9FSW;8W?8=PC(CWBYJ=U\Z],!6W6ZOOMY MF&=-A_%[^O"D*@K(U*P3.U"Y0YW>Y>*V3NH>K1*3*$)GU:VJRP8*'-2)L0S= MXY*$F'D();B.@.N^F"S/3*8 X#SHR.&EQ'44$2[$@R@%A^R6\\Y4-:V3^>P! M^*V[NK_[? ^GDC;9>">6N'I:-OG_"&D0OCSH[BR%>.;=1 '$BGBX#=.DP")P M,P,RCKE,(:8-4]V&:2("XN^Z$K@/]YSZ,>9QY$V,'@7XJM!^L;!&H$2(-XX@ MX$;=&L(V*.' V0)L%EJHRYN8[3N[7@72% #/WPYL,=!!3Y/2(JQ'-*)RU_SW MPY#M)Z[1P8DG>-OCDOGE@5R, ]$]ZX&WR9!U!FQ% =1H&V\C. S8 EPN5.N^V'@ M]M-6^$\]_2SPY0,DH%&\@9 T@N3HT@C>-ABWL4""*7$+(8%)Z)[Z$EBF%-LK M6] 7N?R10KGE9AZ#'"?"SR*:MFH7[9NVZD8=OVR?OEB,)+9=V'47Q3R,NP*V M]F=;RUOPN.?>!P.Z[FFJ6=;-OE;>2B"6TIU+ C=*9(OB.^:_'\<"?]X:UR $ MFWY<5(O2:%0D#ZBL#$K2='7GSEC/:)0N[$=4@UP*0+;?^/V\'.>+%(+ "MJK M>9MM2WCFS>TSF*B+),_1S4(#,FIMN_6PP05\2+(4W3PT&@!9T4*K>M1>&E7U M?K/]ETMMD[HJ&KF3MA5K%T"BMQK95G\VA3?/5=VT3C6Z4[5J5K("/2O4KJ7=__/6ZOO?XEWEX> M_IC4<&QHE*L)3 WV(S% =7LAM_UBJGES"?:F,K [S<>92E)56P'X_Z2JS.J+ M?<'Z5O31_P!02P,$% @ UI@$5>T$_8XH P \P@ !D !X;"]W;W)K M&ULQ59MC]HX$/XKH[2J0&(W;VR6W06DI:7=GMH5 M@M[ULTD&8FUBYVQGV?[[&SN0 N+05M7IOL2>M\ M>;DQU:WOZS3'DNE+6:$@RTJJDAD2U=K7E4*6N:"R\*,@2/R2<>&-ATXW4^.A MK$W!!BL$"4 MQM];3*]=T@;NSW?H'UWM5,N2:7POB^\\,_G(&WB0X8K5A9G+S0-NZ[FR>*DL MM/O"9NL;>)#6VLAR&TP9E%PT(WO9[L-K J)M0.3R;A9R67Y@AHV'2FY 66]" MLQ-7JHNFY+BPA[(PBJRC]__/SX:0&SZ1P6#_?S*72FLT47.M_8LD#= M'?J&EK'.?KJ%G#20T;] )O!5"I-KF(H,L\-XG])K93I39(_=-(]L;H[&SCB(;9!7M&1?<&4EF6Q&^=,TH!Z.)IPT3& MQ1IJC1D8:3VJVJ"E+T^!C)#Q@A094-FGJCZ?U[LW@RB([^#_&K_E"A'*AF1H M2=::%OSEM&$W$I=^ %'I0(YZK[9;"MI/N#<[7J/#!9A72[H=! ZA=2DV4&\A4Z_%T?)D28)P@/-H!?5Z 7*WT"6=DW M5SNNT8)&\=32K3&R#5.9/MBV,+K[9?GU-5[LZ/Y;M3(E"$M#YXL[JO8\;_]S MPD_ RCKM'BNLC17+LD0RZ\.%H(WX#Z]0#Y^\UHA+5VK5;30=#?&]Z M4JMM._I]T\A^NC>_ U^96G-B4($K"@TNKZ\\4$V+;00C*]?6EM)0DW33G/Y* M4%D'LJ^D-#O!+M#^YXS_ 5!+ P04 " #6F 15;B;"IC4" "_! &0 M 'AL+W=OT"@CWQI0Y':OB0>>\Z9N3[,BNAPK+#:V#Z9,]%A94.1>'+6@#.+:BB?A@$0[_"A'E)9/?6 M(HEXHRAAL!9(-E6%Q9\Q4'Z,O:YWWMB0HE1FPT^B&A>P!?6M7@L=^2U+3BI@ MDG"&!.QC+^V.QGV3;Q.^$SC*BS4R3G:8 0!A4P9!JQ?!Y@ I89( MR_A]XO3:D@9XN3ZS/UCOVLL.2YAP^H/DJHR]SQ[*88\;JC;\^ @G/P/#EW$J M[1,=7>ZG@8>R1BI>G^/7TSU< ,+P!B \ 4*KVQ6R*J=8X202_(B$ MR=9L9F&M6K061YCY*%LE]"G1.)6L-E_3Y?Q7^CQ?+5&ZG*+5>K:QT1:M'M#S MXPQ-5HMUNOR)/J(M%/I[*#1GKAO,M;Z;@L*$RO>1K[0>P^IGI]IC5SN\47N( M%IRI4J(9RR'_'^]K'ZV9\&QF'-XE?&IH!P7=#R@,PA!)I_8.;Z^]I)[E[=W@ MO>+[FEM'TK].8J9K)&N<0>SI\9$@#N E;]]TA\&7.Q+[K<3^/?9DV50[$(CO M]:347"C"BO,%R&M:'=O LIG!/21AY!\N!?@7356!*.SH2)3QABG77^UN.YVI M:\I_Z6ZT%U@4A$E$8:^A0<<,@W#CX@+%:]NB.ZYTP]MEJ?\P($R"/M]SKLZ! M*=#^LY*_4$L#!!0 ( -:8!%7!U)/1)P0 -0A 9 >&PO=V]R:W-H M965TY &Z@$2;.T-![BW++-CCV&=7),5)]LN6T-CG69+N9)92[&\**(YD35%T.?;#1)I-BKPU MG4W(@4=A@M<4L4,<^_3Y!D?D.)54Z91Q'^[V/,^09Y/4W^$'S#^G:YJEY-JR M"6.W)T<-6A0>X+2,2*3W0LR^I9X># .(DK.&M!'";EM_]4#<0+(/,T UH%:*^! M?@O0JX!>5Z!? ?VNP* "!ET!O0+TKL"P H9=@5$%C+H"XPH8OP;TMA>GG-Z< MTK4.M7[9Y:0K9TDQQ0R?^[,))4=$\_*9+W\HYFG!9S,K3/*0>N T^S7,.#Y; MW=OS._>?^2=W=8?F=P9:K=:07"<'5:4W9:5:2Z4]M"0)WS-D)AN\:> ],:]J H&4J%N-6E M[R6N-N"V&%\%O*Z]"7>Z]%UKQ=TN?6_'O?_WWA<7#]W9-.S5T=@K?+T6GYGP MD#\C-RG7RGS-^?HQ*X-7/IED.*3,@92:DS(*4V9 R!U+F0LH\2-D"2'868_TZQOHB^^PC3G9\C\@6 M;"GACLZ?TV M38K!_6L' A5RS )XT.,OBYQ_(AIXU^]T/#>OWI(F0$I,R%E%J3,AI0Y MD#(74N9!RA9 LK.@TNN@TJ&W4SIDC$'*#$B9"2FS(&4VI,R!E+F0,@]2M@"2 MG<78L(ZQ(=1V2BAZ;VQ!R@Q(F2D>+\%6#+(5-J3,@92YD#)//-BBK1U0,\Z" M9E0'S4B\V_.?WMSM"0WOC19(F0$I,R%E%J3,AI0YD#(74N9!RA9 LK.@&M=! M-8;>[8TA8PQ29D#*3$B9!2FS(64.I,R%E'F0L@60["S&5.7G>9$"M=\3F]X; M7J V ]1FOC%FXU'KG@^T'3:HS0&UN: V[XT1[PU;M]D+J(:4 22_.'N-,=T5 MUP,8"L@AX>7!3YU;7T&8%P?OK_)OU&M7;&ULK99M;]LV$,>_RD$KAA9H(EE^6)?9 FQ+;5PTMI&'#=NP%XQ$ M6T0ITB4INP/VX7>D9-4I;#4!_,86*?Y_=_SS)-UP)]5GG5-JX&O!A1YYN3&; M*]_7:4X+HB_EA@J\LY*J( :':NWKC:(DW5-%0EH8S M09<*=%D41/T[H5SN1E['VT_^H>=@L%8[\AI*Q@@K-I !% M5R-OW+E*!G:]6_ [HSM]< UV)X]2?K:#63;R IL0Y30UED#P;TNGE',+PC2^ MU$RO"6F%A]=[^GNW=]S+(]%T*OD?+#/YR'OG0497I.3F5NZN:;V?ON6EDFOW M"[MZ;>!!6FHCBUJ,&11,5/_D:^W#@2#LGA"$M2#\7A">$'1K0?>Y$7JUH/=< M0;\6N*W[U=Z=<3$Q)!HJN0-E5R/-7CCWG1K]8L+6R9U1>)>ASD2+VP_C^>RO M\?UL,8?Q/(;%,KEUHSM8O(?[ZP2FBYOE>/XG7, UPWP42PD'(C*8EDI186!6 M;/"\0:Y@*K0B(QF1_1QN[X3M@!\-*YQ+]R[-PE;B>-R?0E!]RV$01A"BG"% M3AS;63OG8\F1TZDY#WDDS^<$)SA/_.HVU=9U MX.X)\(,H=8G5(Q7,Q$K1+Z6K'T.+MW9N(DT.?W]"D9O3_QQ)?5)%Z!V/8%^K M5QK+D8X\?&]JJK;4BW[^J3,(?CMV+.>$Q>>$)6>"/3FF7G-,O39Z-"^+1ZKL M [T_>PTI$2F^SFD&_[55UJ0B]QW9?J2V43#TMX>>M\9^J><_#)>TK7CB3K]Q MI]_JS@V#MH[!VTVOM) MBO4%Q^XA Z(UQ=)K][F5]E*?!S_T^9SADC/!*I_]@RZ@H&KMVB]\<&4I3/5) M:V:;#F_L&IOOYF/L_*I&[1NF:AMOB%HSH8'3%2*#RU^P4%35BE4#(S>NUWB4 M!CL7=YEC]TJ578#W5U*:_< &:/KAZ']02P,$% @ UI@$53A5+WY+ @ M?04 !D !X;"]W;W)K&ULM53O3]LP$/U73IXT M;1(T/R@,L382!+9U&J5J8?N ]L%-KHV%8V>V0]E_OW,:HB*U^;8OR9U][]U[ MB<^CC39/MD!T\%)*9<>L<*ZZ" *;%5AR.] 5*MI9:5-R1ZE9![8RR/,&5,H@ M#L.SH.1"L634K,U,,M*UDT+AS("MRY*;OUB*2\:?E9%U+#]R-7]F_--[)RY);3+7\)7)7C-DY@QQ7O)9N MKC??L/5SZODR+6WSA$U;&S+(:NMTV8))02G4]LU?VN^P XC.#@#B%A WNK>- M&I77W/%D9/0&C*\F-A\T5ALTB1/*_Y2%,[0K".>2^4UZ,[V'RS2]>YC>3Z9? M83:_FU*(9C1M-BT3PC2]Z_B\["SSW>3CIO)WWL2;_TH[X_19NYKASF^SSU=W6F MQA[QPT[\\#^+]_-,QQWW6>CO?? M3AF8[;!O$Z>K9L"6VM&X-F%!]R,:7T#[*ZW=:^)GMKMQDW]02P,$% @ MUI@$53*\&8H7 @ G00 !D !X;"]W;W)K&UL M?51M;YLP$/XK%I.F3=IB0M)LR@"I:3.MDUI%B=I]=N JWYAM@G=OY]?",ND M)%^PS[[GN>>..Z>]5*^Z 3#HC3.ALZ@QIEUBK(L&.-$3V8*P-Y54G!AKJAKK M5@$I/8@SG,3Q G-"192G_FRC\E1VAE$!&X5TQSE1?U; 9)]%T^AXL*5U8]P! MSM.6U+ #\]QNE+7PR%)2#D)3*9""*HMNI\O5W/E[AQ<*O3[9(Y?)7LI79SR4 M610[0<"@,(Z!V.4 =\"8([(R?@^;RYYHN)/L%RU-DT5? M(U1"13IFMK+_ 4,^-XZOD$S[+^J#[]Q&+#IM)!_ UN94A)6\#74X 23)!4 R M !*O.P3R*N^)(7FJ9(^4\[9L;N-3]6@KC@KW4W9&V5MJ<2;?KE_63\_K'?J, M=E#;:AOT(,*_=D7[< ^&4*8_IMC8: Z#BX%Y%9B3"\P+]"B%:31:BQ+*__'8 MJARE)D>IJ^0JX<^.35 \_822.$F0#FJO\,[&$LP\[^P"[YF\SV4;2.;G2=SL M+'5+"L@B.QP:U &B_/V[Z2+^=D7B?)0XO\:>/W5\#PK)RLY!*Y6AHCX60)_3 M&MAN/)L;RT.>I/AP*@"?M P'5?O!T*B0G3"A>\;33ZXJ8OA%G <[)$ M)0'AVU>R'8/!\<'=Y@W8LO:WEO[2"BT:;H7\JI8 FKPDC*M18ZGUZKK95-$2 M$JJNQ JX>3(7,J':W,I%4ZTDT%EJE+"FYSC=9D)CWA@/T[('.1Z*M68QAP=) MU#I)J-S= A/;4<-MO!8\QHNEM@7-\7!%%_ $^GGU(,U=LZ#,X@2XB@4G$N:C MQHU[';H#:Y#6^!S#5AU<$]N4J1!?[I@VWC1F2A5,!/LGGNGEJ-%OD!G,Z9KI1['] _(&=2PO$DRE MGV2;UW4:)%HK+9+.KE!YUR#;F[03?L^ZZRTIWVJZ7@HQ99(6]O0[$4J5VIM.CCF=F0]:6F> MQL9.CQ^#S\'?S\$3^97\#APD9>2.9P/6"O_!!TUCICZ:Y\]//OGP\\=A4QN_ MUKH9Y3YN,Q_>&SY:Y%YPO50DX#.85=C[]?;=&ONF:6_1:.^UT;=>+?#/-;LB MCON)>([G5;S/Y!QS+S5WJYKS8]Z#'_,>UIO[$%V1EEME7NK+5C& 6BFO]18O M5G2QD+#(!HR8DT?8 %\#^?*7J4KN-"3JWZI!DW';U5P;4:_5BD8P:IB0J4!N MH#'^Y2>WZ_Q6I1@FS,>$!9BP$ E64KI=*-VNHX\?Z$X*QHBF+Z ^D:G@:P6* M4#XCD*R8V &0J8DA\UB32"BMB(DCA!J+B4A6E._("J02G .K&@Z9\V[JW*Z' MF['GM%L#QW&&SH'M2,:BHV'<[IQ7#V@[ZSN[O M%-W?J>W^UVEE9IA> @&N8[TSBWLDI(F*).9DNXRC)3&];Y9K191@P':VW%:/ MJ'DQ:V#,J5G0%\:^2H7:=[AT4F+"_ S6.1#I6$9,=R$2K"1UMY"Z^PVIS:++ MC:@TBL2:&S&-S!!OZ)1!E6C=D_';;3O.Z MK2HWYXE1"[ET!F'"?$Q8@ D+D6 E6?N%K/UW^@'3QU0:$^9CP@),6(@$*RD] M*)0>H(;56MJE^F+"?$Q8@ D+!R>K0KM37A5*TKG.?I_JU(IW3U_B9)V0+_>0 M3$%63LAZQ*6*H=)\5%J 2@NQ:&5I#U(0[CM%X!R,)3@FS4>E!:BT$(M6%MS; M"^[5[R1!1F;_8966N=(?J-E)V@VB?5"=8\J8_<,-P)73.OJ)6^_Y8@W/\1F@ M^@RQ:&5M]ND1W-KDQ7O_/U+O_>)1@9IORFF'V_[C-#"JPQ"+5I9ZGTARZS-) M-XR)J)C7"L514TPH=)\]S21P4 !D !X;"]W;W)K&ULI91=;]HP%(;_RE%63:VTD1 HZUB(%*!5F4J%"MVN M37)"K#IV9AOH_OUL)Z1LHMSL)OXZY_5S[+R.]D*^J )1PVO)N!IYA=;5T/=5 M6F!)5$=4R,U*+F1)M!G*C:\JB21S227SPR 8^"6AW(LC-[>0<22VFE&."PEJ M6Y9$_AXC$_N1U_4.$T]T4V@[X<=113:X1/U<+:09^:U*1DODB@H.$O.1EW2' MXVL;[P)^4-RKHS[82M9"O-C!+!MY@05"AJFV"L0T.YP@8U;(8/QJ-+UV2YMX MW#^HW[G:32UKHG BV$^:Z6+DW7B084ZV3#^)_3TV]3C 5##EOK!O8@,/TJW2 MHFR2#4%)>=V2U^8]D:.<$DWB2(H]2!MMU&S'E>JR#1SE M]E*66II5:O)TO'Q>+!YNY[>/J^0![F:/R>-D9GK+5;)RLS!-5@E\AB1-Q99K M!4^8(MV1-4.XG*(FE*DKN #*84X9,P>M(E\;,"OOIPW$N(8(WX$8P%QP72BX MY1EF?^?[IJ"VJO!0U3@\*_A]RSH0=#]!&(0A/"^G<'EQ=4:WUYY6S^GV_N>T M3M5?R_9/RUKC#55%4AQYQED*Y0Z]^..'[B#X=@:ZWT+WSZG'$Z(*J*1($3,% MN10E*&*N3^2@).MPI2?OKE8?.'7K\5U\$_F[$T#7+=#U6: I5>YG N/* MFH <_JXW%%""9:=P:NVO1SA!YU\@_\@0)"Z$/ [M!^][& M?P!02P,$% @ UI@$5&ULM5A=<]HX%/TK&F]GIYUI8LL?@+/ # 4RH4,H#:3[L+,/ MPA9!$]MR)1FR^^LK&!*&B/WS!0=TU].@]GSCCCQLA+JA][LQ>L ++.[C.9,C/4?Q28@C M3F@$&%[WM &\&L*.2D@C?A"\XP?70)6RHO11#29^3S,4(QQ@3R@()+^V>(B# M0"%)'C\S4"W_395X>/V,?IT6+XM9(8Z'-/B3^&+3TSH:\/$:)8&XH[L;G!7D M*#R/!CS]!+LLUM" EW!!PRQ9,@A)M/]&3YD0!PG0?B'!S!+,UR9868*5%KIG MEI8U0@+UNXSN %/1$DU=I-JDV;(:$JEI7 @FGQ*9)_J+^_E\.KX=SY:#*;B> MS :SX41>+9:#97H7C ;+ ;@ XY\)B>7T"8 B'TRQ5&Y# Q],PIC1+59/^&

G#^O01]BZ!M4^'Y71=BI@K:>9* MFBF>]0+>^/O]9)Y*-IB-P'0\6(QOODU'8'([O_OV(Q5S457D'M6N1E6K^(K' MR,,]32Y3CMD6:_W??X,MXX^JDAL"*PE@Y0)8=>C]PB))Y&,&UB1"D8=!H,Q2 M.;][O%:*I_:;;=]V;#D7V\.23H,LL]/*@TI4[9RJ_4JJRLU![F92$%6="RJYFWT:^(:K6==C7[=LZ^7A,8.U[_\W^S6!+KS"CY;A'#JX(,UNVZ;S@X:*?@/4-17676>_=6L2S MIZTAM'+]19,"[??Q;FWS<[8(#:&512CZ'5C?\+S9NZ==C&7 X^;ROZ+*I(M6 M!];W.H-$_F^C*Q+(%F')$N^19VT#ELR+BFJ=7/L+9T]B0VAE/8KF";;?Q\F- M]E!-H95%*+HH6-NCO-W)G=-_0/#4R151ANL>.5D_."E0QS2WB#V0B$LV:YEF M7+;E2F#[DX_]0- X/3Q842$MG5YN,))_[U2 ?+ZF5#P/U'E$?O[4_P502P,$ M% @ UI@$54?8^\KF @ (@D !D !X;"]W;W)K&ULK59M;YLP$/XK%JNF3FK#:UB5)4@T@):IC:(FW3Z[X 2K@*EMDFZ_ M?K8A+$E)5JGY O;YGN?.=V>?AQM"GUF*$ >O>5:PD99R7@YTG<4IRB'KD1(5 M8F5): ZYF-*5SDJ*8*) >:9;AN'J.<2%Y@V5;$:](:EXA@LTHX!5>0[I[UN4 MD&DXM=:D!.Z.M^R1 MVKO8RQ-D:$RR7SCAZ4B[T4""EK#*^ /9?$?-?OJ2+R894U^P:70-#<05XR1O MP,*#'!?U'[XV<=@!")YN@-4 K$. X1@-L M7!7[.E@JT@'DT!M2L@%4:@LV.5#I4F@18%S(PIIS*E:QP'%O_CB;W87WX73A MWX%H,O6GXXD8S1?^0DE!X"]\< W"EPJ7HJ X@$4"[I!(9DJR!$SRDI(UDBOL M"DS%2;@&?DXHQW^@*IWP59P!AL!E@#C$&?LB%![G ;B\^ (N "[ (B45$Z1L MJ'.Q(>F6'C?.W];.6T>N*7@9E<\/F8]_)CUZ#0\0'$/V&87?"^6 M=EO:MN*SC_!%N(!%C$ FB[6SNFJ\TXV75_J E3!&(TW<4N[=WL:#Z8NG*:\WB*A;96=>>U>\/]?5N MNM[JF/:!3O!6Q[FYV=<)NVP=Z$1O=5S#:'7J4.@[=WB.Z$IU6P9B4A6\KOE6 MVC9T7_6Q _FM.1B;'?+ '(1UO_Y'7[\>[B%=X8*)@[(4IHS>5]&3:-V1ZPDG MI>H@3X2+?J2&J7C$("H5Q/J2$+Z=2 /ML\C["U!+ P04 " #6F 151$0D M# \# ,"0 &0 'AL+W=O25F)D%5+6Y[8ML@)*+,Y8#97:63%>8JFF?&V+F@/. M6U%);<]Q(KO$I++28;LVX^F0-9*2"F82DA$H05B$.JY$U=L\GB;9O#7X0V(B=,=*1+!G[I2?7 M^*_"W K\-M"-KPYIBB=,A9QO$M;7RI@=M;EJUBH94^BG.)5>[1.ED M.K^;S6XNOU[>+L8WZ.KZ=GP[N5:C^6*\:%?1=+P8HX]HG&6\@1S=$+PDE$@" M IU,06)"Q:G:OYM/TP,^9WKS6G_\OZ3%%V;D-S&YU:9Z+ M&F#W8*7OWKB1\\D4\W]R]BP#?I\!_YCW].G!BV:9L4IR57>,HXP) M:7RZG;.H=::_(/>IYR7^8&C?[P9T:.4FL1?W5L](@YXT.$KZ31; 34R=+-PY M+? B?P_IT,B+0\=,%/9$X5&BR[*F[!% U;0L"D9S4JV-60L/#T^"?4*#412% M9L*H)XR.$DY8J?J!P-TGMQ:9;%G#Q7M7'3EY))1J.JPQ, MS(,#G#!V]Y --B\52](3)T>)%TQBJIIHQTW_?M5-C,E!N?I!D@1[E :K,!KL MEY"]TZOT?\)7S-VTTDJ]OVM612-<-V6*C?%>#:0.VO M&)-/$]T1^Q^@] ]02P,$% @ UI@$5:,O937! @ E0D !D !X;"]W M;W)K&ULM99M3]LP$,>_BI6A":2-/+1-6M9&*BTP M)D 5+=MKM[DF%HZ=V4X+WWYV$D*GA0Q0>9/8CN]_O_-=; ^W7-S+!$"AAY0R M.;(2I;(3VY:K!%(LCWD&3']9%44IMSW%\.\6$6>&P&)N) M<,AS10F#F4 R3U,L'D^!\NW(N1-79/3EW/&!0S?A+8RITV,J$L.;\WG&PO=V]R:W-H M965T3V?'^*M8 4CT-0PB MT3564JYO35-X*PBIN&%KB-23!>,AE6K)EZ98]UV$8&?@03CL0F#"G_=@/*7*QG?,'N=-5W"%.3S>L+5RLQ0 MYGX(D?!9A#@LND8?WPZ('3LD%O_XL!,'UR@.Y86QUW@QFG<-*V8$ 7@RAJ#J M:PL#"((82?'XDH(:V6_&CH?7;^CW2? JF!!X+1/*)=JFM92!O(R0+4V?%(/2C_3?]F@IQX(#M,PXD=2 _Z]!( M'1I)H'MF25A#*FFOP]D.\=A:H<47B3:)MXK&C^*_<2JY>NHK/]F;/D\F#Y\> M/XUG_0=T/QKWQX.1NIK.^K/D+AKV9WWT$=W[D2_A8Z TGZ-1)&FT]%\"0'TA M0 IE\ =G0J!^R#:16M-HCOJ>MPDW 97*0]WGTO].D[_N_1 D]0/Q0;D]3X?H M_;L/Z!WR(S1;L8U0KJ)C2A5;S-#TTCCN]G&0,W'\M0END(5_0\0BI,1]H'#&GMW7'0WE:*9K"23E21XC3-XJ5P/9^3Z_*#LT4A"*/XKBW4/;I>#QY5] M*];4@ZZA2E< WX+1^_47W+1^+XN\)K""#HU,AX8.O3=CD@9HD:BA_N%,!YKH M4!;Z'J^9X,7OH&W/=4G#[IC;PYA*K-HNR:T*9.V,K*TE>RYARVCND9P# @XA MV#JB>6IE-YTXP2Q<@]*UO^0 ZA@@]26F!ZR<6#6A%*F*J&?R&DD/YA4+3PE9.KIK0BB+D M309N7[70M#U,92UJ0BMJD?@;A4$REE%GL"<($HIBY:_U9:9'K'RBKPFM M&/_!;..ZPXUZIQO7&&^0O+4A=0\X4L#"Z*"-;?,R;=%/ O-9M^]'U!+ P04 " #6F 15]F@\M<@# M !O% &0 'AL+W=ON*Z,$&)$G/(=,/UESP8C25;%Q M92Z Q":(I2[VO,!EA&;.>&C:%F(\Y%N5T@P6 LDM8T0\3R#ENY'C.R\-=W23 MJ*+!'0]SLH%[4%_RA= UMT:)*8-,4IXA >N1$_H7$QP4 :;'/Q1VLPC<+[^@WYC)Z\FLB(1+ MGGZEL4I&SIF#8EB3;:KN^.XS5!/J%W@13Z7Y1;NJK^>@:"L59U6P9L!H5OZ3 MIRH1>P'^X$ K@*PX5T.9%A>$47&0\%W2!2]-5I1,%,UT9HSZ_DRO$4WTWDXOYSJTOTR7)I6=!4N0_01W=",*OB8ZA3&:)HI MDFWH*@442@E*Z@XAXT+1_XC)]0($Y3'ZXPH4H:G\,'25YEJ,Z$85KTG)"Q_@ M%: 9SU0BT7460_S_>%?/L9XH?IGH!%L!_]JF)\CS_T38P]B"=UHG[M3@]0[@ M_2UB$(@+M! \WI82FY#H(>4;]&T&; 7BW]>F;44MWL$+F9,(1HY^R22(1W#& MO__F!]XG"^=>S;EGT$\/<*X6\?; (GZ[U?W15 &3KU+O=4"]7U/O6]/]JKQH MAIZ!B-?U96@AT/EY$H0,QL.1:*YS7%\U:B($]'16$%;IE9WVO1A!^P?ET?C>;[=I*[@49^@(.CV =I MF^'&%7&_4WUTX8>X\4-L/QNVT(<=T+)_N'MW0'K5-^:F2Z*(;S-57@?5K?5M M6EC>(37=RZNX&1$;FDF4PEJ'>B<#G451WFZ5%<5S4730 MS]>+"=66208YECQ? ],Z*BQPK/15K5Q8"<&I!.75]SSMU*$@8S@629YU@\7P+EU:8#;XQ?V:^M=>UEB"6-.OY)492/GS$$IK'!)U0.O/D'CQPI, M.)7V%U5-K>>@I)2*YPU8*\@)JY_XJI=HG(KFC[/9[=7=U?TBOD77T_OX?CS5 MH_DB7MA5-(D7,3I!4Z8P6Y,E!11+"4JBPPDH3*@\TKN/\PDZ/#A"!X@PM,AX M*3%+9>@JK="\P?>'Z6-T([C4WJ^>$EJFA*W1#>=I12@]0M_BI51"_R^_=QFO M3QITGV3>U0M9X 1&CGX9)8@-.-'[=_U3[V-7#/^)[%4H01M*L(L]6G"%*5H1 M1A3HZVX3PC:A+NLUWZGE,UUE$YV?^\$@=#?;GCJJSL[]WU6OQ Y:L8.=8J?L MI! \ 7UG)@DLD@SIOR92D&2,4[Y^[A*\D_-?[ZHF&V[Y"OI>MZMAZVJXQQ7L ME?UPK^S_5E6K=+?:C&GQ=UBL"9.(PDKCO-X'32/JMEE/%"]LYUERI?N8'6;Z M2P/"%.C]%>?J96*:6?OMBGX!4$L#!!0 ( -:8!%7E?EA&60( ",% 9 M >&PO=V]R:W-H965TOFEII)2'0 M;NM"I%!:#:D@!'1[=I.#6'7LS#;0_OO93D@SJ>5E+\G=^>Z[[WR^BP]2/>L" MTD<*8ZB8(=%9@275/5BCLR4:JDAJKJFV@*X4T]T$E#Z(PO Y*R@1) M8F];J"26.\.9P(4"O2M+JE['R.5A1/KD:%BR;6&<(4CBBFYQA>:Q6BBK!2U* MSDH4FDD!"CU^[K>6):KR5_#?+33$BWPCDN*$[;I;R\!.;>JX< M7B:Y]E\X-+XA@6RGC2R;8,N@9*+^TY?F'CH!4?1!0-0$1)YWGSP?5@WE#>ZHAF. MB)TZC6J/)/G\J7\=_CA!>MB2'IY"3SIM5=VVFK>VJFY;C;1/?F]'N<*NTWME MU8F_^\1N->R3L#>(@WV7;=!YN"6JK1]/#9G<"5._X=;:;H"T?OAO[O7ZF%&U M94(#QXT-#7M?KPBH>B1KQ&ULM511;]HP$/XKIZR:6FDE(=!NZT*D4(J&!!4J='N8]F"2(['J MV)EMH/WWLYV0,@EXVTOLL^^^^[YS[J*=D"^J0-3P6C*N!EZA=77G^RHML"2J M(RKDYF8M9$FT,67NJTHBR5Q0R?PP"&[]DE#NQ9$[F\LX$AO-*,>Y!+4I2R+? MALC$;N!UO?W!$\T+;0_\.*I(C@O4S]5<&LMO43):(E=4<)"X'GA)]VYX8_V= MPP^*.W6P!ZMD)<2+-2;9P LL(628:HM S++%>V3, AD:?QI,KTUI P_W>_2Q MTVZTK(C">\%^TDP7 ^^+!QFNR8;I)['[CHT>1S 53+DO[!K?P(-TH[0HFV## MH*2\7LEK4X>#@# \$1 V :'C72=R+$=$DSB28@?2>ALTNW%27;0A1[E]E(66 MYI::.!TOGN?SZ4P>[R=FMU@F2W<*HV29P#6,<&L>L,(,EI@6 M7#"1O\'E"#6A3%W!!5 .,\J8J;2*?&V867P_;5@,:Q;A"18]F FN"P4//,/L MWWC?*&IEA7M9P_ L8%+)#@3=3Q &80C/BQ%<7ER=P>VUY>HYW/X)W*-E<'^R M@E\S+%8,J(475.C3@O3D?L7>G=7N1O#]GZ M!WU5HLS=]%"0B@W7=8NUI^V 2NJ^?'>OI]N,R)QR!0S7)C3H?#;Y93TQ:D.+ MRG7I2FC3\VY;F"&+TCJ8^[40>F_8!.W8CO\"4$L#!!0 ( -:8!%7Q#V!1 M>@( /L% 9 >&PO=V]R:W-H965TTJ@K9J:KOQ@'CPDMO&FF,'VVW&O\=.TM!!-PV)E\0? M]QR?<^U[HTK(!Y4C:G@L&%=#)]>Z/'==E>98$-43)7*SLQ*R(-I,Y=I5I422 MU:""N8'G#=R"4.[$4;UV(^-(;#2C'&\DJ$U1$/GS IFHAH[O[!;F=)UKN^#& M44G6N$!]6]Y(,W,[EHP6R!45'"2NAL[(/Q_W;7P=<$>Q4GMCL$[NA7BPDR0; M.IX5A Q3;1F(^6UQC(Q9(B/C1\OI=$=:X/YXQSZMO1LO]T3A6+"O--/YT/G@ M0(8KLF%Z+JK/V/HYM7RI8*K^0M7&>@ZD&Z5%T8*-@H+RYD\>VSSL ?S^,X"@ M!02O!80M(*R--LIJ6Q.B21Q)48&TT8;-#NK[:2OPHA$8 M/"/P"^$]"/UW$'A!< ^?C7<__@4[II4=?D*NGP%-5_X7+Y0TBVQ3P^^79D] M2#06ZOLA7PU1_S"1KL_Z*R*7W$ M#"31",=$ 8$296I>Y,DAC2]2_>M]-&2^M^^XYP7]LS\,N7NE:=OB-9%KRA4P M7!F@USL[=4 VK::9:%'6U7HOM*G]>IB;[HS2!IC]E1!Z-[$-H.OW\2]02P,$ M% @ UI@$58&ULM5?1;IM*$/V5$:VJ5FH#B\%V4QLIMIO65VD3U6[[4/5AC<!0]&+)-QE.(% M!Y$E">4W$XS9?FP1ZW;C2W2YE7K##D8[>HD+E%]W%URM[ IE'268BHBEP'$S MMD[(\91X.B&/^!;A7M2N04M9,7:E%_/UV'(T(XPQE!J"JH]KG&(<:R3%XU<) M:E5GZL3Z]2WZ:2Y>B5E1@5,6?X_63Y?S\\P+>P)0E M.R:BO,HO9RAI%(M7:O_K8@8OG[^"YQ"EL-RR3-!T+4:V5#0TF!V61TZ*(]T' MCOPGBX_ (:_!=5S7D#YM3Y]A> 2](ITTTVTEOJJ 6U7 S?%Z#^*M),Q3(7FF M["GAQYD*@+G$1/PTB2O0/#.:?NN.Q8Z&.+;4:R607Z,5O'A&^LX[D]2.P!K" M>Y7P7AMZL&22QLKR*VF26>3V\US]77 =$-+K$V=D7]<%&,(<0OJD"FM0\RIJ M7BNUN1 934.$D DI0/DLYPGK2(0L2Z71=06D7Z/RQAO#')TQ6R'_"O[!$GL )G#&:5MLF&:WG/-;T'8$U2C*H2C+H]&T?="F\(["& M\&$E?/B$MWUXX+^!H_[NN=00Y=>C&L3>5L3>/M&D,XSI#:YAQNF^<&SNUU,: M1G$D;UJ-VWKV8Y]?1V"-,A'G[I?:Z=2Z)5Q'VKM":XJOM2GD"?8MD^O.]%S_ MP+^&,-=[T,#DKH,@K;_330N_AG.Y17Z[;#BYN),_R#;3MA_WZ"?W-YH,PP[)K,X >P#Y1?AFE M F+&PO=V]R:W-H965TVT[)_/]M)HQ9"M8>])+[V/&Z,BV@ MQ'+ *V!Z)>>BQ$J'8NG*2@#.+*BD;N!Y([?$A#E);.?N1!+S6E'"X$X@69+ ME)MPDKO 2YJ >JSNA([=CR4@)3!+.D(!\[%SZ%]/( MY-N$[P36 ML'^RWK67!98PY?0'R50Q=LX2.SAV4UE+Q ML@5K!25AS1L_MW78 OC#-P!!"PC^%1"V@- :;9196S.LT.WD^NKSYV.+]/'UR>[X8VV]8P\__R%ZIZLR M'_:*C M3G2T7_2.N(WL/I'1JZ*=G_KF?N^(?)UU%D7AV0N1[E9',-WX&Q9+PB2BD&N< M-SC5-*+I<$V@>&6;Q((KW7+LL- _!1 F0:_GG*M-8/I.]YM)_@)02P,$% M @ UI@$56MC\>?+#P ;-T !D !X;"]W;W)K&ULS9U=;]O(&4;_RL MBET@&TO4]]8Q$'L^ZD72!'':7A2]8*21340BM11E M)T!_?$F9]G@D>23&)]GNQ<:6.6>&YN-YR<,1=7*;Y9^7U]86XLM\EBY?'5T7 MQ>+7X^/E^-K.X^7+;&'3\B?3+)_'1?EM?G6\7.0VGJP;S6?'4:O5/Y['27IT M>K)^[7U^>I*MBEF2VO>Y6*[F\SC_>F9GV>VKH_;1_0L?DJOKHGKA^/1D$5_9 M2UO\8_$^+[\[?J!,DKE-ETF6BMQ.7QV];O]J1J.JP7J+?R;V=OGH:U'MRJV]FL(I7C^+V&'CWT635\_/4]7:]WOMR9 M3_'2GF>S?R63XOK5T?!(3.PT7LV*#]GMWVR]0[V*-\YFR_7_Q6V];>M(C%?+ M(IO7C-2@W7VB050WB#8:1-$3#3IU@\ZA#;IU@^ZA#7IU M@][F/O2?:-"O&_0/[6%0-QBL#];=;W=]:&178K\FKKDE9]L3Z^Z];E M$4G2*HJ715[^-"G;%:=2G7T4[\[>7)C7'R_>_?U2_"+.;_T?\622I>)O, M9F70EB?'13G&JJ?C<3T>?3>>Z(GQM"/Q-DN+ZZ50Z<1.?,!QN7,/>QC=[^%9 M%"2^C?.7HC5\(:)6%.T8T'FX^>M%V;S36C=OBW]<2O'3GW_>@9$'8*+17HP* M8WY;I26F7V':HP!&AS'2CA]V:M?OQ.P;Q:S\E;;OFN\>A7>H.@]A[*RYW2>X M=?)>7^76EM-=<;>7]]':,7[D-LPY(\A.6%&&V/S\O1+Y'%YEO2BJK+)?#47"YO/DZ*PDZK:56=W92U,RT;7>;:ZNA;EE&SK M*3EJ[8I=<%Q-8T?") E3=[#>&E:= -^<]D^.;QYGB>S.0# O2_V'+/5_;)8N M[:)8%SD1]9X.4G!038-$PB0)4W>P=OM1D@8O![V-,)%=&@CFA6GP$*;!CPW3 M;W&Z*J\JQ=WY67M7DH(C:IHD$B9)F!KL2M)FD,@>#03S@C1\"-+PQP:IO&9) M9B)Z.D;!\32-$0F3)$P-MV/4?QEMYHCLTD P+T>CAQR-?O"$M)I]#<4H.)RF M,2)ADH2IT=8)4GI$BT3X72-$HS%,V/5>1B%?TQL7*7>,%L!4?7.%O1=K9Z6_."1#M5 M*$VC-$/1_' YO=T.^^WO%BYIQP=D"Y7E-6W?O(5J<)2F49JA:'ZTG IO!^7I M]XO6VS@?7XM.^\E[16?AD37.57=7KK;G+%29HS2-T@Q%\X/EM'G[C_3F]_<@ M#SF=1SUZ3=MSRBS13A5*TRC-4#0_9LZHM\-*_6V2KD,S3;Z4@1E?QWD9J"IJ M+ED[0X$Z<90F49IJ[]#B[9?1YB4>JL4IFI\))\;;83/^MIY(QO$BJ28:^V5A MTTE2K'+[0DRJ>>E^+MH9#51RU[3^X]_^UF2!RNL=/0XVCS;JKBF:?[2=O6Z' M]?7]##!+?E\EY5'^NO.@HLJYICU6KM!#95-@X3W_)5H58Q%^K4XNEF*SR)+T2'^PLL5/Q MWN9)-MF9 M08US3O3WNPF8+M;38V4>UMO[OU]XH*7HKFKZISAC<*&][7-W$R M6R\"G*[2R5),\VQ>G<*5%Z.S^&M9Q&4>WXJ/Y4F@>)/%Z:[C&.ZAZ7%$:1*E M*92F49JI:8^S';E9T$^'T[-16,\&:O?A?^?A/AKG@Z1)E*90FD9IIJ8=E _G M6:.P9PTO]13_%?>G Z'5G^$^&N>#I$F4IE":1FF&HOE)5*L\S*U5OP4+T5<":MQ^MEJ;%X'GAVXHPR-L?*Q1@XG2#$7SC[4SF%'88#8N->5+.LOM.%X6 MX?*#&DF4)E&:0FD:I1F*YJ?+BSQ^@VKUD' M7UBA[A>E292F4)I&:8:B^?ER@K@S9.L8ZH)1FD1I"J5IE&8HFA\:YX([X=6W MWZ6.H;X8I4F4IE":KFG[ZK^A>O6?J.=,<'>/"?ZF.G;(8KUPQTV#@](D2E,H M3:,T0]'\>#G[W&VC9:R+2F64)E&:0FD:I1F*YH?&2>5N>*WPOC)V0-6J>VA' MF[/OYCL^SP_>4H9'W?CXHWX8I1F*YA]_YX>[SWDL\*$UZ=#+K?!@&D\YJ%Q& M:0JE:91F*)H?N4=/%NZR=0IUS2A-HC2%TC1*,Q3-#XUSS=WP0F.B3J'Z&:5) ME*90FJYI^ZNVH?KU,^+4LEK^QEAVP^B_<<>/HH!H:I2F4IE&:H6A^O)R& M[@[8NH6Z990F49I":1JE&8KFA\:YY6YX\3%1MX8[[=;6NZ.>VF[[X@IUQ"A- MHS1#T?R#[QQQ-^R(F8)T\,45:H]1FD1I"J5IE&8HFO]!',XQ]UIHD>JAYABE M292F4)I&:8:B^:%QYK@77K<,%*EP#XUSA,IDE*90FJYI>XNVH;KU(^(\<>^9 MSY1XDZ63,D 756X^Q>EG\6XZ+1,TN2MO/[VY.'OWX>>F][7"@VJ<*G0),TI3 M*$VC-$/1_.@Y1=UC'T+10R4S2I,H3:$TC=(,1?-#XR1S+^@CD9*&>N>:MFG1 MVMN79VB_"J5IE&8HFI^11Y]:%W;*%TT#P7[:W!UM^#@/FTE@/T0.M<(HS5 T M/PG.'/>>:8Z;G]T<8)7#@VJ<)]0JHS2%TC1*,Q3-CYZSRCW6*O=0JXS2)$I3 M*$VC-$/1_- XJ]S[[E8YW$/C'.UVS]'VR0WJGE&:1FF&HOD1<>ZY]TSW?&G' MJZJ"O;NQ>9I<71=")VF@^*Z/[J(Q&:1*E*92F49JA:'YHG(SN/T]&?\L; M*_J[+>OV/=3PV!IG!A7/*$VC-$/1_,PX.]U_IIWFBMVA=V/#(VX\EZ'J&J4I ME*91FJ%H?BZ=NNZSZKJ/JFN4)E&:0FD:I1F*YH?&J>O^\]3U-Q5 U&6C-(G2 M%$K3-6W_,RZI;OW,.)7=?^9SF-$">,BMV_" &R<.76V-TA1*TRC-4#0_ELZK M]]D'./=1(X[2)$I3*$VC-$/1_- X(]X//^X#D)MU#_MOMIZ'Q](X(Z@ 1VD: MI1F*YF?$"?!^6( WO75;XP(W6\_#/39. NJY49I&:8:B^4EPGKO_?^.YG_'& MU_!.-"YLJ Y':0JE:91F*)H7U8'3X0-6AP]0'8[2)$I3*$VC-$/1_- X'3[X M[FNSPSTTSA&JR%&:0FFZINT_BS14OWY&G/X>A/5WT[.A,*YQ(% WC=(42M,U M+7 6::@._20XX3QXYN,\V+.A Q:YA0?<.&NHTD9I"J5IE&8HFA]+I[0'7?;, M!]75*$VB-(72-$HS%,T/C7/:@^_^R(^ZAZUE:9L6*#R2Q@E!]3)*TRC-4#0_ M(4XO#YZY;/N[5KM#K_W#.]%X,D.E-DI3*$VC-$/1_*@ZJ3U@EWD/T&7>*$VB M-(72-$HS%,T/C;/<@^^^S#O<0^,; MS\5K\2:+TW 10@4T2I,H3:$TC=(,1?/",G0">L@*Z"$JH%&:1&D*I6F49BB: M'QHGH(=A 7V1)D42ST2V*I9%G$ZJ*K3(D_(D>A'/=J8&UY/-;JH(U-=>.AXGLZ3X&BP^86CC1*"^&:4I ME*91FJ%H?G2!AWCZ;US^93E9=MJ MWAG'97?EA+,S,J@V1FD2I:F:]KCR]+8*#RJ#*9H?!">#AV$9_,86Y86OR*;W MA:?A?QOWH+ZMF0R/OG$.4!F+T@Q%\W/@9.PP+&.; M5*!#;PV%NVP\P:!V%J4IE*91FJ%H?K"T]2@-(G2%$K3-:UA63;4(/QX.&D["DO;8+$Z8-5>&-\X M+:C#16D*I6F49BB:'R(G>T<16IA&J.9%:1*E*92F49JA:'YHG.8=[5F!W+@P MW?&V5MD/!YNK])[:LC\<;EP4A3L*RUMI9_%7.Q$RCV_%>JW<>J7<0:L6 MPNC&X4"7X*(TA=(T2C,4S0^0L[ZC(5N'4*.+TB1*4RA-HS1#T?S0.*,["B_* M;;9J(0QK'!G4YZ(T5=/ZH54+:(^&HMT%X7AY;6TAXR(^/9G;_,J>V]EL*<;9 M*BWQE9Q[>%7D=EH&I?WKZ^CHN&SI-C\]6<17]FV<7R7I4LSLM&S:>EF]DRJO MWH%T_TV1+2IDF:&BR.;K+Z]M/+%YM4'Y\VF6%???5!W<9OGG]?!._P=02P,$ M% @ UI@$50H0JNGQ @ P@H !D !X;"]W;W)K&ULM99M;]HP$,>_BI554R=US4.!T@XBE;9[TM"JLFXOIKTPY"!6'3NS M':#??K8#AFG!J&A]D]B.[W\_^YSS]19BCOA.Z%3B4C!3!).$,"IOW@*KXO%C+&$:TY_D$SE_: ;H RFN*+JGB\^PFI!;:,WX53:)UK4<]NM $TJ MJ7BQ,M8$!6'U&R]7&[%ED"0[#)*506*Y:T>6\@8KG/8$7R!A9FLUT[!+M=8: MCC 3E9$2^BO1=BK]*GJ(H M/D%)E"3H872#CH_>>'3/W'Z<6=VS7?L!.L2-"ZSM6LUVYN>YE"6>0#_0?X<$ M,8<@??TJ[D3O/%0M1]7RJ:=?2QT;1=@,4<-W@GAI Z0X@J4"EC4!^R65J,!# MUG9D[4/)% A]8+&")CB_ZAZXCH/K>&7N09*LTH=ZCFD%:%9A@9F"1J!:J6.5 M3"J;IU$OG#+&["GJ@G:+QNC)\#"PQ='FX09^>.*EWOCZI'QC: ME>%_!DLV8,G+1'>/;M>&5_H8-Q= [,WD_S+:#&NKD)UT?L7V?KK-11 _\R9P M678WG5]Q]Z\1;I45!8B9+9XDFO"*J;K"<*.N0+NJRY+-]+JZ&V(Q(TQJZ*DV MC4[/=?X7=<%4=Q0O;9$RYDJ7/+:9ZR(3A)F@OT\Y5^N.<>#*UO0/4$L#!!0 M ( -:8!%5HOF5020, '8, 9 >&PO=V]R:W-H965T] &41J"=$ZM5I5VNW9!0-6$YO9!KK]^ME. MR" Q6=?VA<3V.>?Z'M\DE\&6LD>^1$B ISPC?&@MA5CU;9M/ERB'O$-7B,B5 M.64Y%'+(%C9?,01GFI1GMNI:54A%7'_?J>> MZMQE+@^0HQ'-?N"96 ZMG@5F: [7F;BEVR^HS"=4>E.:,;@%3:*FF;O1Q:;8T&!-56!/!Y"J6/!%?C<\GXPGX!*Z0 M/!\P?I(5*Z^G"1(09_R#7+F?).#TY ,X 9B NR5=SKP+KU7QZSKK ,?] M"#S'\PP;&CV'[FFZ:_+C==''KXN>MM,3-.T WS71#[STJT+TM9Y_K!!U_4TI M%Z;**KB!F:M>OGV^@E,TM.3;E2.V05;\_IT;.9]-I_*68LE;BHW?4BQ]([&# MTPRJTPS:U.-O*\2@P&0!LM9S+50BK:*^@9O8#?U@8&_VS\L BD+_$)0T0;[K M>H>@L0'D!^$A*&W-[(6^A95O8:MOYSEE O^&^JM+YP!RCH3Q75OHA'NI>&$M MDU$3X_HU3-+$!+U>S393K!HF#1O61HY380[,B"HSHE8S+HE TF(!I!=%&648 M/N ,"XR,GD3-?.N6-"'=FB%-A'=6\\,0IU:.:6MF+RRB;N5;M]6W.RI@!HCL M2ML?OF[SN>HY]8?/ .J>U8NH"?*CAFLFD!O5?&O-[']]L_?ZHARQA>Y@N?1C M343Q9:IFJR;Y7/>&M?D+MS]R#?.)VQ\7/?!?^:(COX9L@0F7)S"7H9Q.5U8+ M*[K<8B#H2G=E#U3('D_?+N4? \040*[/*16[@0I0_=6(_P!02P,$% @ MUI@$5>"#_[((! H0\ !D !X;"]W;W)K&UL MM5?;;N,V$/T50ET4"9!$HNY.;0..DT5;9+'!>M,^%'V@9=HFEA*U)&7O_GU) MRI$OH@0'<%]L29PY/&>&G"&'6\:_B37&$OS(:2%&SEK*\MYU1;;&.1)WK,2% M&EDRGB.I7OG*%27':&&<[.2*%,QZ:;R]\/&25I*3 +QR(*L\1__F M*=N.'.B\??A"5FNI/[CC88E6>(;E:_G"U9O;H"Q(C@M!6 $X7HZ<";R?PE@[ M&(N_"-Z*@V>@I\$Q1IO(Q187[!MK9-? =D ME9 LWSDK!CDIZG_T8Q>( X>PR\'?.?CG.@0[A\ (K9D968](HO&0LRW@VEJA MZ0<3&^.MU)!"IW$FN1HERD^.GY\FLZ<9N 535@A&R0))O /B*(BPV!F5M+5 M(Y:(4'&MS%YGC^#JPS7X $@!OJY9)5"Q$$-7*BX:T[YO<9_VNS_B[ X$M3L\=G=5!)HP^$T8?(,7=.!-A,!2 *4%/!,T)Y1( M@L4->,9J (-_)G,AN5IR_]J4UM"A'5KOPWM1H@R/'+71!.8;[(Q__07&WF\V MW1<".XI"T$0AZ$,?FTU\RY:WE< F9#8]-8@L0'196(SAD&0)D-W?I<8HXD*5: 8K5Y58;,/Z#[I-D8AY?,T(7 CO1'C?ZH-T// M1VI_VK36 -%!W*,PB$Z28S&*DLB>F[CA%K^'FTZ-$*J&<8X+"4K&==VV,8Y; M9-)!%)\P;AM!+XE3.^6DH9ST4O[*)*+G+:&D/7\8#. )2XM5'(2!G67:L$Q[ M%_U'4IAJ7"]Y<$6*C%8+5:95"<;?*U+F.L"Z=AF+-:-J*"\YVV ]HC9)@>7U MO4U5>LF-<2&PHQ@-FA@->C/Y=$8<; $8M!(61N%I5MM&@9_&]J1";]]YO5[* MDRRK\HJ:AKO *B8905U;9 =U2.'6]Z/!"5&;&1R$'447'AP2X!G[Y.RU9E4 M6_W ]U/_5$#;2O6600?_?7>'O6VSV4&F1-V IL^]JGUO6O\-F$F5""..+4%M M3Y3F%R9(9U+Z)SUG27:%:_K_8!^';W\L@,'Y!0BP.24KLU+MY[[>,\9[:\JE MT(Z5[X\;L+>;OU-YV%J\::M#6(RBS@6^/Q; _G-!)\_SNS!LGPE@"(-3^FVK M).GHPG!_ZOBS?%>RX74\"+SREV[:" 3RMA^[!_4E?7C\AOB*%4$26 MRLV[2Y1<7M\'ZQ?)2G.EFC.I+FCF<:WNT)AK S6^9$R^O>A;6G,K'_\'4$L# M!!0 ( -:8!%7"-!E&PO=V]R:W-H965TR7A'(O3=S8O4P3L=*,FI[?L>2T!*ZHX$C"8NI=A)-9;.-=P"\* MM=II(ZOD48@GV[G+IUY@"P(&F;8,Q/S6, /&+)$IXT_+Z74I+7"WO66_<=J- MED>B8";8;YKK8NJ=>RB'!5DQ_2#J6VCUC"Q?)IAR7U0WL:/80]E*:5&V8%-! M27GS)\^M#SL /#H P"T OQ40M8#("6TJ<[*NB"9I(D6-I(TV;+;AO'%HHX9R MNXIS+?4&DL8NN/-[K V?[@"32A3'Q-?FW06Y&Q*B3&!UC3W]4(,VR M\25B3NP9JMTVAAR1M9E:@CEX]FAW(4B#+/L\.9XH0AL@4J$8E8+K0J'P'.5D MT^?N[&U,GSNF80_3GAO#SHWA4>H;R@G/X'0OCJ?!K8+Q5@'N4]!X\8],8?2: M%Z/.B]&I.R.G*A,KKI$)A#X;F@QAX%+8UV&=!H-@&$:)O]X5>2 .GW=Q>Q+B M3D)\VG*^*B#N+0R/QB\$'(@;OQ3@[UR[]LG[3N22YUURS,RPO2!ICYA1!ZV[&7>_>6IW\!4$L#!!0 ( -:8!%42 M:Q0( )T' 9 >&PO=V]R:W-H965T M,[RRY:+#22['R92L M5Q;44#\*@K'?8,*\++6V&Y&E?*TH87 CD%PW#1:_9D#Y=NJ%WLYP2U:U,@8_ M2UN\@@6HN_9&Z)7?LU2D 28)9TC M84#4 :*G@.090-P!XI:G">0>PH?LN=INX'"NFLU,;/8M M6N>+,'-/%DKH7:)Q*OM67"V*!7J/;H$I5#SJ^R:@,*'R3&_<+7)T>G*& M3A!AZ)I0JO^O3'VEQ0V%7W9",R<4/2,4HVO.5"U1P2JH!O#Y1 M1[O(9]%1PJ]K.D)!^ Y%010-G&?^$GADX>%0./^G7ORS^D$RXOX:Q)8O/GH- MAOZJPR7#.%/%)K+%)4P]7:8DB UXV=LWX3CX.)32UR3+7Y.L>"6R@^0G??*3 M8^R9?7K@GM[@RW+P#Q9N"O\F"T<7J;_93^W?/O$H/O3)AW@N#WV*(9YQ[^/B M\_?J30-B90N]1"5?,^7N7&_M>\F5+:%/[+-P,@\'[+GN/:Y5_*%WC>L:BQ5A M$E%8:JE@=*'+H7#-P"T4;VVUN^=*UTX[K77_!&$<]/Z2<[5;&(&^(V>_ 5!+ M P04 " #6F 15#58@FOT" Z" &0 'AL+W=OW[OQ>?K>"75HRX #'DJN= 3KS"F&OF^3@LHJ3Z3 M%0A%,P)TBNBY+JOY< M )>KB=?S-A/W;%$8.^$GXXHN8 ;FH;I3./);E(R5(#23@BC()]YY;S2-;;P+ M^,E@I;?>B54RE_+1#FZRB1=80L A-1:!XF,)4^#< B&-WVM,K]W2)FZ_;]"O MG7;4,J<:II+_8IDI)MY'CV20TYJ;>[GZ FL] XN72J[=+UFM8P./I+4VLEPG M(X.2B>9)G]8^;"4@3G="N$X(=Q.B%Q+ZZX2^$]HP<[(NJ:')6,D5438:T>R+ M\\9EHQHF[%><&86K#/-,\NWJ?'8U(Z=D5E<5!_P^AG(RI;H@U_B%R8UH3HJU M_/@2#&5FQ;Y"31?;3]?X7S?[A"_L/R:T4 MIM#D2F20/<_W44LK*-P(N@@/ GZM^1D)>A](&(1A!Y_I:])#E]X[0*??^MMW M>/T7\)R3%64901\)+64MC$;/4EZC7FN>*8"40'6MG/M$YH3C$ AG=,XX,PST MJ,O89N.H>V-;_2-=T10F'I:W!K4$+WG_KC<,/G>Y\I_ GGD4M1Y%A]"3[Q4H M/&%B05+K5F[/7:YD262[X!SI/%X-]-!!VRMKF?3#N#_VE]OJ.H*B.&Z#GK$> MM*P';V.=,T%%"@)#OM:/U)K[#/3)1%.T0 MWH\)>U$WX[AE'!]D[%K*JWYF_P,;8 M]+%_,$U7O:5JP81&-3E"!FRVPN8.R ;B>2VDV M [M!^W&ULA95K;YLP%(;_BL6JJ96V B:0I"-(O4W;U&I5 MTVZ?G7 (5@UFMDG:?S_;4)0M3O(%?#OO\QYL'](-%R^R!%#HM6*UG'FE4LV% M[\ME"161Y[R!6L\47%1$Z:Y8^;(10'(;5#$?!T'B5X367I;:L0>1I;Q5C-;P M()!LJXJ(MRM@?#/S0N]]X)&N2F4&_"QMR KFH)Z;!Z%[_J"2TPIJ27F-!!0S M[S*\N)J:]7;!+PH;N=5&)I,%YR^F\SV?>8$Q! R6RB@0_5K#-3!FA+2-/[VF M-R!-X';[7?VKS5WGLB 2KCG[37-5SKR)AW(H2,O4(]]\@SZ?V.@M.9/VB3;] MVL!#RU8J7O7!VD%%Z^Y-7OOOL!6 \9X W =@Z[L#69@LY1ZZ)ZH5E!%=8<7 MW3"ZHV1!63=X>@.*4";/T FB-7HJ>2M)G7O8NKS@7>X^)'R\Y1 M$'Y"., 8/<]OT.G)V;\RODYLR X/V6&K&^W1'9)R6>I"1^Y0P5R8'(3YLB9IE\%.(K$2YG*MLR@,QZF_ M=H!' WAT$*Q9D8O51<5;K%$\BMRL>&#%QU@C%RO>845!%+A9R M="!/#Y*?N"(,,7OK&_*F"[%RWNSISBD-XQC_?TS]K1)EJOT]$2M:2ZU?Z+C@ M?*R]BZZ"=AW%&UNU%ESI&FB;I?[I@# +]'S!N7KOF$(X_,:ROU!+ P04 M" #6F 15ETL3F[L" #N!P &0 'AL+W=OVSF]PT%DZ"UJ*B9%+68U-4R0Y%%B,6 6EFLD8+[!4 M7;XT1<4!IPVHH*9C68%98%(:<=2,W? X8K6DI(0;CD1=%)@_G0-EZXEA&\\# MMV292SU@QE&%ES '>5_=<-4S>Y:4%% *PDK$(9L89_9X&NKX)N 7@;78:"/M M9,'8@^YE9<%%C!E M]#=)93XQ3@R40H9K*F_9^BMT?GS-ES JFB]:=[&6@9):2%9T8*6@(&7[QX]= M'C8 MO<*P.D SEL!;@=P&Z.MLL;6#$L<1YRM$=?1BDTWFMPT:.6&E'H7YY*K M6:)P,KZ^.)M?S-$Q^ED!QY*42W0-*BU"#7WA3 @T(UD&',H$T.$,)"94'*G) M^_D,'1XCSX?3YM=[IQ.N=>'N=7(,08W155+6$5!U%J8ZJD$->6AY_P\NQ;;O! MEI>]J[W3B]][\=^\*Y3@!:%$$AC<&'_'C.VYI_:6&7]W^P+7<_NH%RJ#7F7P MAHQ/:ZYJ@D1L0E[KK\E;J00:N ]1\QIA\[NB:WS_Q\5]02P,$% @ UI@$59@3%VZ M @ Q08 !D !X;"]W;W)K&ULA95O;YLP$,:_ MBL6JJ96V0DB I$N0^E?;U$I5TVZO';@$JP8SVR3MM]_94)0M3O(FV,?=\WN. MX&.Z$?)5%0":O)6\4C.OT+J^\'V5%5!2=2YJJ/#.4LB2:MS*E:]J"32W127W MPR"(_9*RRDNG-O8HTZEH-&<5/$JBFK*D\OT*N-C,O('W$7ABJT*;@)].:[J" M.>B7^E'BSN]5'H#FC*NSL@)815Y+D2C:)6KJ:_1 MEU'WL\[#5>LAW./A9\//23#X0L(@#,G+_(:W2[ MEER&VL*1N] ]+X&"DA>)B(+@!' M[5*#=(''NV W=])S)P>YST)33K@]ZS5]Q^&KG>=YLO-VAL-Q\!_;WYI*9L _ M4+EBE4+Y)98%YPD:E^W0;#=:U'90+83&L6>7!7YG0)H$O+\40G]LS.SKOUSI M7U!+ P04 " #6F 15)9F%;;$" #I!P &0 'AL+W=O>T$!,CD[(D,**P7KOC4<@J24D!=QR)*L\Q M?[D RM83PS9>%^[),I-ZP8S"$B]A#O*QO.-J9G8L"E#G MID8K-Z3059Q+KG:)PLGH]O)\?CE'I^B*%+B( =V"2HI0"]><"8%F)$V!@]XY MGH'$A(H3M?DXGZ'CHQ-TA$B!'C)6"5PD(C2EDJ2)S;@]_J(YWGGG^.\5'2#+ M_H(X_ZH)%A9V2XU\@M"#%&-WE924C4_U"J_ZF0?58: M'F_#RFG@;SG9>]8'G7B=$^^ DJ3M#6Q*PQ:4++%N=;W5\78L.:XUW/+D[930 M=NV@"WJCU>^T^@=D?5IQU13DOU3Z.RI'9_:6R-T8SSWKUQAT&H.]&G^R(FX% M'I3,8#=/0]O=TKD;% 2C+9WF1B/6C^ /S)>D$$I%JE#6(% V>?.P-!/)RKHW M+YA4G;X>9NHM!JX#U'[*F'R=Z';?O>[17U!+ P04 " #6F 15472SI?D# M #E#P &0 'AL+W=OV-R12?WQM+RR0+E8N(E]@ MU_8S\ZTUHP_B16BA)W )E3F-,!&4)<%RTG:Y_U_=KVL"L^$IQ+?:>05.9 M,?:D7T;SMN-ICS#"4&H(HOZ>L8]1I)&4'_]L0)UB3VVX_[Q%_\605V1F1&"? M17_2N5RUG:8#&.L/(AIDO^3 MEXT0>P9!\XA!L#$(WAH$1PRJ&X.J(9I[9F@-B"2=%F=KX'JU0M,/1AMCK=C0 M1!_C1'(U2Y6=[/1_'X]'T_'P?CJ![OT OG8?1]W>YR&,[J?#Q^%D"FIJ-!T- M)_ )AG$:L5=$Z&&""RKA(2*)@,L!2D(C<0470!,8TRA2)R1:KE0.ZFW<<.-, M+W-9_#U!@@/PMD,7!:B%_U>!6C^ .E(P)SJ&O>',ZRTQH:U5A0$48,9%Q MA&^?U1H828S%WV6BYEO4RK?0>>!.I"3$MJ,NND#^C$[GQQ_\AO=SF0YG CM0 MHU:H4;.A=[I2Q9&60R40^+?TG'HY0MT@Z!SUW G\EON\3\&ZR8D4Z@6%NI7" M'QF)Z(+J(R5B!8R#.F+D7 UT.2?)$E4.E/!MC/$,>>EQ6C?XWN,\$]B!%HU" MB\;'!W?CG&J<">Q C9M"C1MK9(S)"XVS&'";1,-]68@ BGR4$6'CGZV4/.Q M^E@+8N8SE1$YU#P?+I^NC(AE8N4>-/IO[D=5B]/U*!9:-"T:G T(JYA M2EY@(HG,2K\;=MA,?%H2DMX5ET]#YC>L+ JL8"\CT\*FSW.),BYT X5V:O ?&M(3!0B#5'??LKFI73M %6(3=E4 MRLUJ>BJW8,%>X'^2ZU%SX31[DJIJ5X8HFRX-%U]MDJ#.A65$J3/".A&=W M\50)=A6>;RV9SB3!]JLA?H(E9T) 2EY+%:F6*.(UWDKR$56>OROS?'N=-[3R M%JKTNRCEEJ/>[G'S*_^C5K:H6BS*/7;W&J88^=+TD4)YD24R[RZ*T:)7[9H. M[PIA';P>0-\)CP)55<(EPH2*]RHRHQGO>4^8MDJ6G+9DRJ)L\\KE0? MCEPO4/,+QN3V16]0=/:=_P!02P,$% @ UI@$5?/PN=8V @ S 0 !D M !X;"]W;W)K&ULI51M;],P$/XK5I 02-"D63=@ MI)':+6A!M$QM*9_=Y-I8\TNP+^WX]]A.&HK4]0M?8M_YGN>><^Z<')1^,A4 MDF?!I1D'%6)]&X:FJ$!0,U U2'NR55I0M*;>A:;60$L/$CR,H^@F%)3)($V\ M[U&GB6J0,PF/FIA&"*I_3X&KPS@8!D?'@NTJ=(XP36JZ@R7@C_I16ROL64HF M0!JF)-&P'0>3X>UTY.)]P)K!P9SLB:MDH]23,_)R'$1.$' HT#%0N^SA#CAW M1%;&KXXSZ%,ZX.G^R/[%UVYKV5 #=XK_9"56X^!C0$K8TH;C0AT>H*OGVO$5 MBAO_)8[*>+/+)]%M&\ODJ M6V3+%;%'^2K/EN0]65/-Z(8#R26"!H,DD\B0@2%O[@$IX^9M$J*5Y.+A%\;/B#1\!V)HS@F#$%<(+WJ M+^K*DU[]]T6=NX&6>W2>VPW>K:EI >/ 3I8!O8<@??UJ>!-]OJ!\U"L?76)/ MYXW8@"9J2]9Y9LZI:_'7'N^F>)\.DW!_FC(\Z3 !>N?GR)!"-1+;9NN]_:A. MV@[]&][.^8SJ'9.&<-A::#3X8//J=G9: U7M^W6CT':_WU;VN0'M NSY5BD\ M&BY!_X"E?P!02P,$% @ UI@$51.&":,T @ N00 !D !X;"]W;W)K M&UL?53;CMHP$/T5*Y6J5FI)""QM:1()6):E*A?! MMGTVR9!8Z]BI[9#=OZ\OD%(5>$D\]IPSYS@SB1HNGF4!H-!+29F,O4*I:NC[ M,BV@Q++#*V#Z9,]%B94.1>[+2@#.+*BD?A@$ [_$A'E)9/?6(HEXK2AAL!9( MUF6)Q>L8*&]BK^N=-C8D+Y39\).HPCEL0?VHUD)'?LN2D1*8))PA ?O8&W6' MX[[)MPD_"33R;(V,DQWGSR:89[$7&$% (56& >O7 29 J2'2,GX?.;VVI &> MKT_L#]:[]K+#$B:<_B*9*F+OLX 81'0&AUNT)6Y3U6.(D$;Y PV9K-+*Q5B];B M"#,?9:N$/B4:IY+M=+:8+I_0:'F/9M/5;#-:/\XGH^]HOGQ8;1:CI_EJB3ZB M+>3Z2R@T9ZX/S(6^NP>%"97O(U]I)8;/3X]5QZYJ>*7J "TX4X5$4Y9!]B_> MUPY:&^')QCB\2?BMIAT4=#^@, A#))W:&[R]]GIZEK=W[7K^]WW)K2/I7R8Q M[*LRQT(Q/=Z1BHN%&'YZ0+D M):V.[ZU>VRT/\6$"9!G^\Y5Z? %&C_5LD?4$L# M!!0 ( -:8!%5TS1[@(0, D, 9 >&PO=V]R:W-H965T0@)9B:%/(&AJ:KQ@G M20$6%B11FK_Q0Q&''8#@J098!/NU+\8^J,;U!MYZ,*_OICT MQI>#?N\*#4;GUY-A[V9P/4*?T"#E0!DL185P-,4Q,'3L <=1S#Z(Z]NIAXZ/ M/J C%*7H)B0KAM. =70N+)1Z]'EAS5ENC?6,-0TT)"D/&?+3 ((*O'<8[QS MZR(R97BL;7C.K(.$7U?Q"3+,C\@R+*O"GOYKX):"FU7NO$V[_\_:]X+1*&NE MH?@:S]5*D?\)9(3R*%V*LL@[E?SD[ZZ$.!IP2-B/JLSGW'8UMVR';9;A.70U MT>\8T#5H[OMWIF-\J0I[G61>G61^361[";++!-F'V-V^*'XJ6J]HX&M(5U"5 MAIS!40SR)[)V3<-R[&9'7^\&^*G8J6TV[7TIKX+LLVV?-O;%_ HQIV'91BFV MYVVS]+9YT-N]GN3'D>B.JA(9NAM",@-:688'.?^V#.LD\^HD\VLBVTN,4R;& M^8]]PJDS0762>762^361[26H52:H]>8^T7KRS1J/6L2+$MZ+$OXAB=PU?6>V M28 NU5#)T)RL4I[_NLK3Z;%>>>F'/SL?0/?3XD#S%=1J*= MQ+ 0JHR3EOBH:#YXYAM.,C59S0@7F8OMO:" M.$I"C0U>($G/UO[XE3$Q1KPH9N:]Z;:)]!R9(T Z"$Y?BO*WZE&IVOFQ7N75 MV>RQKC>?YO-J^:C6:?6QV*A<_^6^*-=IK;^6#_-J4ZKTKJFT7LVIZ_KS=9KE ML_/39MO7\ORT>*I76:Z^ED[UM%ZGY>^?U:IX.9N1V>N&;]G#8[W=,#\_W:0/ MZD;5OVR^EOK;?$^YR]8JK[(B=TIU?S:[()\2SK<5FA*_9NJE.OCL;'_*;5'\ MMOUR>7(5/_WK!9JM=J2=#O^TT)G>\UMQEK,?^!K^M MX!^K$+05@L:LW=YMK(G3.CT_+8L7I]R6UK3MA\;?IK9V),NW7?&F+O5?,UVO M/K\1R96X_NY<7,=.(KXDWRZ^_GRYN/B'7:.7%NZK16N@?6 M3G'O?-FH,MUVI,IY%ZLZS5;5>UWFEYO8>??3>^:Q)RK(J\?*T?D=^H.J"_M]7U+_;G>/?M]1%_WT6=J!?[] M:?71<'7YYWY[\H<;W[."[;LK M:WALK+NJAZ87EFI9Y,MLE37]$.IC.PZ'.=L3_*=JDR[5V4R?P2M5/JO9^5__ M0GSW;Y#!F+ 8$R8P81(3EB#!>MV$[[L)M]'/%_H$4.JKG.XGSRI_4E 'V1'\ MAK"]8#^?$Y?ZW#N=/Q]:;Q6::OU0,^3$XWU)@2DI@9\9<1ZROF8"%/,9Y>Z^ M6,\';^^#9_4A5KJ)R]U!ZNBK@9.NB[+._CMZU.YPWD$S.*>^88E5'U$K8IB_NL=MZM MBDH/GVZ5GE8H/7):%FOEU.F/5Y,@?X)!LTZ\R-Q="VLSIAH$2(;Z;&DXA"DI M 4FB=[_I$52,\3"$70KW+H5O'"NF$6K6(_NC5#\RIE5UI<@\8BOH^Y\:I6*"*2D"4>)$W&*1 Y6C(O9&Q M).GR$&*=1T^?8;6\WH2'F-/!A5UULC5#31:9%UR!JBD!S9!QU_1E6"J(QN99 MI(L?B#U_.'JF9>=,/J6BAA6H-(%*DRWMT#=S!FTMTO>UBS.(/<] F+O9%28[ MCIJ%H-($*DV282)R0MR #(YHH%P0\#'KN^R$O!6>3)L0VG&3?49-6U!I I4F MR3!S.6%>$)HV \5HQ,?.W%TX0^SIS%'33#MCLK>H00TJ3:#2) &RFH P,S^ MBO'0Y2/>=I$.L6]1VS.2X1?3O M/$2!>7O%KC2U!X"B@6M<506JJ 1$&8^H>;H'BP7A2.Y)NV"+6I.0Z5/CEM>[ MW0(*>>[(S6#:94?4GATA3)_L"E-/LZBT M&)4F4&F2#@,H[C-S5 V5"MG(P(MV(16UAU13YTYVW&234;,L5)I I4DZ3+.( MQ\W;3%"ID/DC)G>9%[5G7D?-G.R,RT)O'+^=:76MZK\M_,_9_SVHAT[V6S4J N5)E!I$I66 M8-'ZG:?+S:B/-(.BJ(D9*BU&I0E4FD2E)5BT?G?I\C=JS]^.OG-"AR$1,8?J MJ,':VX("55"BTA(L6M_7+GNC]NP-8^@/K"ORF1>8KJ,F;9 HCXAY[Q)55*+2 M$BQ:W_DN0J/VA5N3!__ ,B@21H.#&S4A@T0I&<[$4:,O5%J"1>L_E]%%7\P> M?1TU_&?#J.>$<]\\A.U2DY^W $1I8*Y:%*BB$I668-'ZWG9)&K,G:6]- *;< M5K%+37XP!S6-0Z4)5)I$I258M'Z'ZH) 1I$F!0PU[T.EQ:@T@4J3J+0$B];O M+@ZR$]>3^*O(T?0 M9]0($)46H]($*DVBTA(L6K_?=!$@"[ &AZCK\%!I,2I-H-(D*BW!HO6[2Y>U#PR,6;#*(^XU'QJUJXVN1= FN:%2Z!J2D@S"(SG8!*@%"7>R%.SK$O[ MF#WMPQBJ@UGT,F&P6(^J[YR)) %96P:&C>L(>*$=<+1E9(\2ZSX_;, M;NKXF@-)FD>,"4VLLG66MV^_L@UE[="I8Q-46HQ*$Z@TB4I+L&C]KM,%5QSK=54< M=&N5/>\ZZK55.\3A&R?,I>-VE]_V?R2=!@.V2 M?$IV+\SL\+OW=UZEY4.F+P\K=:^EW(^!OB25NU=B[K[4Q:9Y(^-M4=?%NOGX MJ-([56X+Z+_?%T7]^F4KL'\QZ?G_ 5!+ P04 " #6F 155 J.VE $ #3 M&P &0 'AL+W=OZ':1]<,! MB9EMRB;='S\["0EI@PN:Q1>($Y_S M^#GXX,=Q9TO9=[XB1("?<93PKK428GUMVWRV(C'F5W1-$OED05F,A6RRIO=^P?TN1E,H^8 MDP&-_@OG8M6U6A:8DP7>1&)"MQ])GE"@^&8TXNDGV.9]'0O,-ES0. ?+$<1A MDGWCG[D0>P#7/P" .0 >"_!R@'T_ MC.[&X!),R5+^V +T.2>"@[>("!Q&_)U\]'F*P-LW[\ ;$";@844W'"=SWK&% M')V*8<_RD;S/1@(/C.3?370%'/<"0 ?"&OA #T=D=@6\#.[6P-$QT6$=W):2 M%KK"0E>8\GF'=,T%FY U92),EA>9=O+&C":S4/9?@I$@,?CZ24+32_ZM3K4L MCE\?1_TM7/,UGI&N)7W/"7LB5N_OO]R&\T^=AB;)D"&RBKY>H:^G8R_TQ>F$ MK-,MPS=2O/KW>^IY+;?5\CKVT[XB-=W:OJ]FX'XW5,?F^*UFT:V2A5]DX6NS M&":$+7_5C5Z+._57-TF&#)%5] H*O8(SN2HPJ:]),F2(K*)OH]"W\8>NRO#! MO@^@YS2=9Z[2ACE5D;J8$ 9!O?>:1:[-5[RWE'<(4U-&KEA@0!,NBP79K,M; MRW7J?#%)A@R1531L%1JVSN3'EDE]39(A0V05?=N%ONT_]&/[A3>@!]O/%SEM ME%,%J0D)VP&L=Z/KE(6HH\WU;DT85G-H5VQR\/66Q(^$?0/_@\,KI9[VU*EC ME V98JM*NE?;NV>R9Q[(E,@FV9 IMJK(9:'O:NO<(SR:$[RZ:.H#G2Q+7=3# MRZ9;5MZNOO1^S:BG+*OZ4"?/*Y-LR!1;5>9R:^#ZYS*OTU=?WP\HDY,)"W(!QC2YW&6_LV]M_B9+ M^8%1-F2*K:IFN8%PF^=RJ-'MA5$V9(JM*G*YPW"U!?8Q#FV],$O0:@0O5E>C MNX+:H+[K''!H6?"[^HI_E C">)[S, KC,,'J!3G7F]1D@3\PRH9,L55?PY;; M"NB=ZSUVJ#W2R+*]&S1*V M]PY0U''7+6:RBN4@(@L)=*Z:TN&ULM9U=;Z-(%H;_"O*.5C/2=IOZ!+))I,15 MW9/5](?2W;L7J[V@'9*@L2$#).F1YLS,Y/-\]]K,Y/R\=FE1?9QRJH']?KM/K],EN5SVL M&[!1_#O/GNN#GX-N5[Z6Y:_=@ZN;LUG8O:)LE2V;#I&V_SUEBVRUZDCMZ_AM M!YWMM]D-//SY._W-9N?;G?F:UMFB7/TGOVGNSV;Q++C);M/'57-=/O^<[79( M=+QEN:HW_P;/.VTX"Y:/=5.N=X/;5[#.B^W_Z;?=@3@8T'+@ 70W@+H#^, MMAO 7KH%OAO 7[H%L1NPV?7Y=M\W!TZE37I^6I7/0=6I6UKWP^;H;T:WQRLO MNHGRJ:G:W^;MN.;\DW[[3K__'%R\5\%;_>'M]<7'GZ\6%[\$5^_??+A^=_'Y MZL/[X%6@\CJ]NZNRNW13WO(VN,Z>LN(Q"WY469/FJ_JG5O7EDPI^_.&GX(<@ M+X+/]^5CG18W]>F\:5]HM[GYB+K!R'Y1T!#2H'7LWC)<+H93J#=^?^VKH_>NG4P MV'[*L V/#?"&Y\)_?VFEP563K>O_057?LMGY MW_]&9/A/Z)!CPA0F3"/!K.+P?7&XCWZ^*P5T]+<#Y69@]_?CZ9R$5')Q.G\Z M/*Y]6G53E.JN;? GMI7?DV#F& M"5.8,(T$LPZ_W!]^.9$!2,SB8,(4)DPCP:SB1/OB1,<:P':@^"L#Z,L@ P!@ MD $ ,H\!Q/N=C+T[J8NLNOL=VD?ON+$S#!.F,&$:"68=_&1_\).)WOX)9G$P M80H3II%@5G%(:$[HPV,-8#?2?FO+R#4 0"8EY])Q $!&1"(D<2P TM&8"P9[ M #F(+N0%+A#\$?C.!_R,L9,.E:90:1J+9E>#FFK0B6QA!\8J$29-H=(T%LTN MD0ENQ!L]O-; 7F8-?1EH#7T9; V SF<-)@41?PS2Q5W[3%;EQ5V0%C?!HBSJ MQU73/@1WW@L;/0$Q:0J5IK%H=EE,;B-B*H] S76H-(5*TU@TNT0FVQ%O.O%Z MA.R_6Z,D"EV/@&11&+L>T9+-,EZS2%YF%I ,,(N^ M##0+2#9H%M1D*NK/5(MRO M'&,8Y-+DB2. M'0 RFB3"/7D 9'$8$G?5 I")A+,!1V F.S%_=C*.X$T5?LKH>8>Z7(9*TU@T MNQX'?8Z3-3KB=CKBMCKB]CI.$?R8"7[LZ';'W4C[/1^[2Y +0$98;^%3 3(> M4^KF"FBC$:5#UF#2$_.G)\<:QN0*/WGT7$1=.4.E:2R:72.3_=A4;9$,-?JA MTA0J36/1[!*9Z,>.;HYD8*]& ++:6/^S]-!&*^R/4WA"\ MR<(/&3OM4&D*E::Q:'8Y3-+C4_5*[%GG[ MCN>N,P R$?4N.@"R1 KAGBH LCBF\<"I C_XO)@_0=G.,"98^,&CIR+JTADJ M36/1[!*9\,>GZIKDJ-D/E:90:1J+9I?(9#]^=-#V*; "7\ :KO#-Z$X:>-_G@VZIH9*DUCT>RZF, GIFJ5%*@A$)6F4&D: MBV:7R(1 <72KI.CW+48B=AT"4"5A+U\ *B)YZ)Q=:$@F#I=([;TT.4KX<]2 M08P)&OXMC)Z1J*MIJ#2-1;-K9;*@F*J-4J!F052:0J5I+)I=HH,[GQS=1BF MGD;&N'O!$I3%DKFVT9=1R;A[60*2130>:*04)E )?Z#Z4N3-J^X.8-#MGR[] M@T=/-]0%,U2:QJ+993#!3TS5*RE0PR J3:'2-!;-+I$)@^+H7DG1[USDDO:Z MHR!9&PYZ)Q)]64*IZR\:D+7N$HL!1S")2O@3E7$$?\) 73I#I2E4FL:BV?> M,LE/3M4X*5%#("I-H=(T%LTND0F!\NC&20DT3E+A?H!J # J0Q4*X M'^'0D(Q0,G!Y4IHD)?U)RK&&,=G"3QX]%U'7TU!I&HMFU\CD0#E5,Z5$C7^H M-(5*TU@TNT0F_LFCFREEOZ^11>X*Q0)0==V/KEGT53)BB>L5?94@11+W-I)3 M9#]ILI\\NEE2 GV+@KMK$PM 1F02NDL8@$PD/'&7-J&-,DD&@H4T 4KZ ]2! M)7B3A1\S>N*AKIVATC06S2Z(27IRJKY)B1K^4&D*E::Q:/8]9DWXBX[NFXSZ M+8R,B_Y=9J&[1T:Q>]$!D(E(NF<>&MHHH=' YRXBDZ B?X)RO6%,M/"CQTY& M5)I"I6DLFETD$_^BJ;HI(]3TATI3J#2-1;-+9-)?='0WY6ZD=Z:!:2*N7N3*$!%VQ,)QRKF!]^IL6Y/"39?9E('R_*Q:+;?E;!_=O^%*1>; MKPEQGK\D)PL"/*_(B=Y^'8K!;[^=Y5U:M3Y3!ZOLMMU4^#IJ;:W:?N')]D%3 M/FR^T>-KV33E>O/C?9;>9%4G:']_6Y;-]P?=!O9?.W/^)U!+ P04 " #6 MF 15MFY2;!@" !/! &0 'AL+W=O'#,%:8U/;A-V_KVT(2J7L MOO0%//:<,^>8&:):JF>= QCT4G"A8YP;4]X1HM,<"JI[L@1A3S*I"FILJ Y$ MEPKHWH,*3L(@N"$%90(GD=];JR22E>%,P%HA714%5:\CX+*.<1^?-C;LD!NW M09*HI ?8@OE9KI6-2,>R9P4(S:1 "K(8#_MWHX'+]PF_&-3Z;(VRHAK'DO]G>Y#'^ MAM$>,EIQLY'U [1^KAU?*KGV3U0WN;=7&*65-K)HP59!P43SIB_M/9P!PN - M0-@"0J^[*>153JBA2:1DC93+MFQNX:UZM!7'A/LH6Z/L*;,XDVRGL\5T^82& MRPF:35>SS7#],!\/?Z#Y\GZU60R?YJLE^HIF( ^*ECE+*4=ST32#N]5/$S"4 MT-JQ7EUG=:-SIDJ808]O[&M01? >>[*LBATH)+/F M%C1B M7VKG,$PC#SBNP,*G=P27A#?>VIW0@>DW 0D>.Y''+6'V[4%E0=F-"( M0V9!0>_6HE73ODU@9.E;9B>-;4"_S.W$@W()]CR3TIP"UX7=/R3Y"U!+ P04 M " #6F 15C-^1SV<& #G.P &0 'AL+W=O>'[6&@_3>C1P. MQ$8%?L1O)(DW8>C)IW,>B.U9RVX]WYCZRY5*;K2'@[6WY+=<_;F^D?JJG5/F M?LBCV!<1D7QQUAK9I\SM)A72$G_Y?!OO?2;)4.Z%>$@NQO.SEI7TB =\IA*$ MI_\\\@L>! E)]^.?#-K*VTPJ[G]^IK]+!Z\'<^_%_$($'_VY6IVU^BTRYPMO M$ZBIV+[GV8#2#LY$$*?_DFU6UFJ1V296(LPJZQZ$?K3[ZWW) K%707.J*SA9 M!:=KT'EI"]VL0CKT]F[L:>"HI[SA0(HMD4EI34L^I-%/ M:^MX^5$R46Z5U-_ZNIX:WK++*S:Y(Z,))9?L^G(ZNGD_OAA](./)N^OIU>AN M?#TAOY(+$OZJ%;E(9RZ7Y)Q'LY66(*.BGE]C/;LFXU'5W*GM72*[D*>ZD=/= BJOR^D&7(6/% MP_AS558ZR*P@810)8R"8D95NGI5N[0_/S(I,LK+F,KFE_\NNRLD.9ULI+UD2 M/ ZMHXYU,F@_[D>[LIC;Z9O%:#4M4:3]8NP K9L7,\;>R\?>>V71F;"/Y-/U M](^J0-;VK>GD1L(H$L9 ,"/!QWF"C]&2=9Z6,EIU_U MZ[=/>B7)J2SFV*5BM+J859:< [1^M>2UV2AI5WV[CF"-I#$4S8^X4,7>:2N.M_^5M M"6/]$!K_ )$T"J4Q%,V<#(4=8+MP<83NX:$T"J4Q%,W,3;&/MVLWI-\@CM!] M/)1&,UI9N#LEX6:H5LV8%[MTNWZ;WF#=F)ERKR*/M8-HG&@DC4)I#$4SIT-A M7-@]N#Q"_08HC4)I#$4S.[ZF.-8.H7&:D30*I3$4S9P,A<5BG\#%$>IX0&D42F,HFOG(LS ] MG-J->W-QK.O[WCB_4'L%2F,HFCD+"GO%<="JZ$#=#BB- M0FD,13-S4[@=3OW;#\U5$>IU9+3R Y9.^A=>EMZ![4]H#2*)3&4#1S-A3FB-.'ZQ[4JX#2*)3& M4#0S-X57X=2_#])<]Z!.148KZYG=+:_\H!X$BF:^:5QX$.Y7/8BWHXY+W3DN M_6B9+DN3KFT"I2\K7U*&>B%0&H72&(IFSI#",7%MM&*Z4!\#2J-0&D/1S-P4 M/H9;_YI(8\6LYS7.#-3%@-)81BNK^=Z[V6;,]PYG?,6?\-53(I$L>""74CSR M-ZR1V),W -1+J=$!I%$IC*)J9F\+I<,&'.NIYC3-3 M>5S#=DMG1"BT57:@U6[YC>WVWL%%K3[+],1H3&9B$ZG=@;7\;GXJ=92>Q2S= M/[=/+^R*^]0^9;LSIP5^=P3VRI-:RV(2\(5NRCHZUEV6NU.ENPLEUNFQR7NA MM#2F'U?&PO=V]R:W-H965T,5EJK*5[Y8 M<\"Y$56E'P7!V*\PH5X\,VW7/)ZQC2P)A6N.Q*:J,/]^ 27;S;W0VS=\)JM" MZ@8_GJWQ"FY ?EE?>7B6AD9@[K@CL!,'9:2'H'L$)612([#ZV\("RE*35#_^:Z!>&U,+#\M[^GLS>#68>RQ@PV2UCB$I8Z@G72,FS3 M,K31XTN:J9>!4(]D#G7I1#^'VS9;>)^MO@35[+%AZ_?'-@YF_O;0=6OT8UUW M"4L=P3JNCUK71U;7[UYFKQ5R[/P?/Q MU;<%+HGZDJ$$H_=]<2*_A8+UW"$I>PU!&L MDYU)FYV)\R5^XC(M+F&)2UCJ"-9)R[1-R_07+O%6]K$)<@E+IK;EI;;=4;R. M[>]:V]]9;?^D=C0?@ OXCA*R)68;Q)9ZM:I=MRU65O*QIKN$)2YAJ2-8)SUA M\&.;$CA?KAJDH\PXI25.::DK6C'VD4E;8 MP7;:C5_/V4FC(G7[DOA\=^_>R]TEW6KS8$M$!X^55';,2N?J4139O,2*VS-= MHR+/2IN*.S+-.K*U05Z$I$I&21Q?1!47BF5IN)N9+-6-DT+AS(!MJHJ;IRE* MO1VS =M=W(EUZ?Q%E*4U7^,&;*B'J40%2HKM *#JS&;#$;3H8\/ =\% M;NW>&;R2I=8/WK@IQBSVA%!B[CP"I]<&+U%*#T0T_G28K"_I$_?/._2/03MI M67*+EUK^$(4KQ^P]@P)7O)'N3F\_8:?GW./E6MKPA&T7&S/(&^MTU243@TJH M]LT?N^^PEY DSR0D74(2>+>% LLK[GB6&KT%XZ,)S1^"U)!-Y(3R39D[0UY! M>2Z[^7KY[?8:[B<_K^?P!A8J1^.HEW#/'V&FK?#?SL+Q%=*MM"=P!-Y9ZL9R M5=@T*?BYD6<0#TXAB9,$%O,K.#XZ^1\F(@V]D*07D@3< MX3.X"V4PUVLE_F(1R$]1X4HX>PHW*M<5MHI0<>D$6B#VY'!HT#J8Y+EI*._7 M9&F=H4GY?4A82^#M80)^>T:VYCF.&:V'1;-!EKU^-;B(/[P@;]C+&[Z$GGT1 M?"FD<$] BPA-WR9'HNI=FPZ1;F$O JS?T$T6I]%FGTFT-SU^$6^Y60OJN<05 MY<1G[\X9F':X6\/I.@S44CL:SW LZ7^ Q@>0?Z6UVQE^1OL_3/8/4$L#!!0 M ( -:8!%6-K([YF@( -$' 9 >&PO=V]R:W-H965T]YSG<^WT4;QA]% 2#1MBJI&%N%E/7(MD560(7%!:N!JITE MXQ662N0K6]0<<&Y 56E[CA/:%2;4BB.CN^5QQ!I9$@JW'(FFJC#_/8&2;<:6 M:^T4=V152*VPXZC&*YB#?*AON9+LGB4G%5!!&$4 M&NE(%HP]:F&6CRU''PA*R*1FP.JWABF4I292Q_C5<5J]2PW<7^_8/YG852P+ M+&#*RA\DE\78>F^A'):X*>4=VWR&+IY+S9>Q4I@OVK2V5Q\LE#5"LJH#JQ-4 MA+9_O.WRL =0/,, KP-XSP'!"P"_ _C'>@@Z0'"LA\L.8$*WV]A-XA(L<1QQ MMD%<6RLVO3#9-VB5+T)UGVL M\S]I_7LO^/?1#:.R$"BE.>0#^.0P/CR MU4N^H1XNX1,O(.$7YKR CGN.^0Y MGC=PGNDQ<,_ W:%P_L][^L_>GR3#[ZO#-WS^$=4Q=+7$'07T%PB#WN7J14+Q)V+W+1O#KS $D$&B;$2%!\/,((LLTK(<5^(>N6=-G!__*1^ MYI+'9.94PTAFOUAJ5@.OZY$4%G2=F2NY^0)%0L=6+Y&9=K]D4YP-/)*LM9&\ M"$8"SL3N2;=%(?8"PM:!@*@(B!SW[B)'.::&QGTE-T39TZAF!RY5%XUP3%A7 M9D;A+L,X$Y]?CKY?3,CUZ>_)C'PBDRW%2Z@MF"8?QF HR_1'W+C$^MY@?G[!BGM77Y2$ UW1-$!HJ]K MT2!A<$2B( K_#?]6^E^I\\9BMDO* M=AW^MVM [I3(G9K]K]:W?E5@=DO,[JO][U7Z7ZGSQF+V2LI>'?[W:D .@^?> M$=3\#_C/!=:RETC]O89G/QXNJ%HR[%@9+% G:'3P55:[?KR;&)F['CB7!CNJ M&Z[P&P:4/8#["RG-T\2VU?*K*/X+4$L#!!0 ( -:8!%5BI<+UB@0 !\8 M 9 >&PO=V]R:W-H965T59>/P(;RFU4NPQ3WG2#I7 M5T+I[S%YIQN$&/B>Q"D=:!O&MD^Z3H,-2B!]Q%N4\F]6F"20\5>RUNF6(!@* M4!+KEF$X>@*C5!OV1=N,#/LX8W&4HAD!-$L22/X9HQCO!YJI'1KFT7K#\@9] MV-_"-5H@]K:=$?ZF5RQAE*"41C@%!*T&VLA\FII6#A 1?T9H3X^>03Z4)<;O M^#64**GG'\ M-0K99J!U-1"B%I@EL"7&%6,;O" MF@ED<-@G> ]('LW9\@?AKT!S1Z(T3\4%(_S;B./8T!O-7U]>IPLP\^9@\7DT M]T#+FRWN06N"&(QB>@\>P-MB EIW]^ .Z(!N($$41"EX2R-&/QTU_+'!&85I MR!OO3M[[.N-=S07UH.S6N.B6=:5;-OB"4[:AP$M#%$KP?CW>J<'K?(JJ>;(. M\S2V:@E_S>)'8)B?@&58EJ0_S_7PT9;4PB=-U"T!-R5PKXGZ=;C__\8^_<^= M/['"KE+6%GSV%;Y77J!?T@ G"+1^PY1GZ&C',Q4N8P08!L\X27B-6S QB[2*RK2*\[2294A!X0B*?)?? M#1_:MN7T]=VQ]9(HVW7MTZB)C,LQS-,H3\KEG"GZDJBNT>N=1DUE4;;C5E$G M\]:IYJUSV[SQ#8,?#J) -G\%5><'\U.O2D4E>3K-*25\B*7%#%G75#:=R MP[G9C; H?C(_G$;Y7"MYJQ\RR4L_5$KZ$DF)'[*HJWZXE1]N[6;U59R%^HTLJ^W5K99) M)"66J93T99*7ELFBKEIF&A\_B(W:BNU!DG)'*)CQ,BUJ=-.R7!(KJLM*V29* MV3RE;+Y2MJDJMM/T.;I/,6O7_#@_^HIE'.(XAH2"+<\CL:2E*[JD]>9LD(NZ9XM:J:@O%W7.1CJ]$M:]LJZM#V.L6F,F1Q6VH356,VMJ M=6^V1BYZ88U*45\N>FF-/.S<&OWH.C)!9"UNFBG?_+*4%=<\56MUFST2=[AG M[6/SR3,E[7Y^^RVN/S_HBZOS+Y"LHY2"&*VXE/'H\NV!%+?1Q0O#6W$9NL2, MX40\;A ,$H_B&ULS59=3]LP%/TK5QF: M0&)-FGYLL#82;9G&!*RC*WM /#C);6OAQ,%V6MBOWW42HC*UU9#ZL!?'=NXY MO>?XNC>]E50/>H%HX"D1J>X["V.R4]?5T0(3IALRPY3>S*1*F*&EFKLZ4\CB M I0(U_>\KILPGCI!K]@;JZ G8)IIK+%!3.^LY9\W38M?%%P"W'E5Z;@U422OE@%Q=Q MW_%L0B@P,I:!T6.)0Q3"$E$:CQ6G4_^D!:[/7]B_%-I)2\@T#J7XQ6.SZ#N? M'(AQQG)A;N3J*U9Z.I8ODD(7(ZRJ6,^!*-=&)A68,DAX6C[94^7#&J#9W@+P M*X#_KX!6!6@50LO,"EDC9EC04W(%RD83FYT4WA1H4L-3>XH3H^@M)YP))M/! MY/S']/SZ)YS?TCB!PQ$:QH4^@@]P+0UJ&+-G%@H$(V' T@<-=U>8A*CN*6*H M,.8&SN8*D0[7@.\U3]8#II,1'!X?TS\OK\!/MP-_Y8+@C;U)5T[ZHQ%V'?H+FI42W2"]^^:7>_S)JU[(GNEO%4K M;^UB#T88&CI*;51NS_L8(DD&L-3H8\AR%2WH3D$B4WRFJ)B",4Y1:V!I#$.6 M<<,$_XTQ7*(-_!X*/F=F6TWL3.6MKI5D)P69_7-;!LU&I^*>_6RKO_3\V7J737RK1=%VEI MQ&POVS?$,*K,2K"[!6,F6!9"5F.R M,*;\$(;5;,$*6EVHDDF+Y$H7U-BNGH=5J1G-*B 5(AST>G%84"[)9"3KXJ8P M53!3M31C$G>AP-T^9V/2C]^3P,FE*F-C\G#V]D>MS/6;P-U/WIV<]![.K_?C M9PUP3D*OZ.4+1"]ZN*[%,.EX5[H9?FJ%'/$4HUV]R-$SAC#AH<>/M;^Q!!V, MG/C)N^R6'K;[.1GE2FZV-2(N8/5IP8)'*L8DI8)/-0=63@LN5BX\@,!,":4# M8^O))NQ#I/KEX+[K0:FU.@672C>Y70;W/6V'[P'K'ACD0G0&!\0%)J.2&L.T MO+&=9G 3? (%;?M^55J'TE_G6SO5@WV37M(;:II-Q M'=#?5G/:V[+1JW2#DC\J\ZFVTY%-'^J4W6J6\V737^:= 4R]CZO3LA2KCX+/ M9<'<^69EU.RQSW/#A" MSW]WG>=,,DW%MFE;^X>\RJ]V'%W]*\O-;Y5]PUZ/['H/)^!A,'D5- M#@_?9)0@F<9 MDT^.,U;>T*G]8V5'WX[/6$YK8>X[<$PV[:\LXW61=*-N82':49OV%YA>/^X. MJS87EQE;LBQMNWH^;9J!;=BL[06$?>2FN?P(QG&8'P$,RX,YP#B.A>7YG^8S M1.?C,,S;T(L,4!RFV;G$,/WXU MS!LPL#R0Z<_6&M]MO$*>KP-L3Y^K$&RF>"5B,\77&A#_N@$C2?R[C>4!!K8+ M6.U ?G\>J"D_)XI@5S%OV!.,(TF"(5"+_AJ-8V1U8OCX]P=[2J(H2?P(8'X' M480A\#3B".8 /&!(%#7OP;WW4;A^3X6;_^!-?@-02P,$% @ UI@$59>* MNQS $P( L !?3T\$MP>:4#M.*2VBZD8_1!2:5K5N %( MMB6/:(7->=I3W;+T]! M;X"O.DQQ0FE(2S,.\,W2?S+W\PPU1>5*(Y5;&GC3Y?YVX$G1H2)8%II%R=.B M':5_'5: MU/JT?.Y7FU**M'J1LEYG??/\W.VOA9[+&URM5:_93I3>^\QZJ7XO6^*-7/(J]%%J_* M(LMN>L;NQE*6M5K]=CEN(!/Q6+57:O$8"0URTW//=85/JJSJMD1;O]",/Z0N MO#O;UL589;4L1Z*6D[+8;E3^W%2CGZ(/'J-MA_??72->E?^G&8NG)[62HV*U M7U*;JL5RLY4WOO0@3>L&0,P!I(I#F"2$? M3 !I(9#622#C1/_,> @;032/B%DIR4=!-(Y):0%(%T$TJ6%#*.)%_C_>(D? M!LP+1BR<\Z@]BUDXA@-G@$ .:"$C/N1!PKSA,%P$B1],V#P* WT\;%[)!$!> M() 7U)!+'BQX#&@N$9I+6IIX,9]/V];QIFSL!WJ&\?71D6%LG&/3]CDMYHA' M_E*_;DL.(/T@3J+%0<\:J%V(]3+B=PD+[Z;^9#[0A$<<8F+N,(CE$?/)K)U.-.*$AY/(F]_[ MP_:]&X?1#&)B]C"(]>$'NCTY2[R_NSV,R<(@M@7WHD!/OS'3DF#QO1=Q=L;G M\1^0#_.$02P*+=I&#US/(]U&P[Q@$(LA7MS%_*]%\\HUBD@Z8)@B#&)'H.[O MK*),S!$FL2-0^W8Q(YX]S\[FQ>96BE9P6%AHG$'L28^T'1\F1V 8<8P MB8V!KE*Z78L9PR0VQJ'^C[8CY@J3V!6[=SADELC<^L M]JL](2;F$9/8(_AT#>-)$[.*>5*KV##+@5G%(K8*CNE 3,PJ%KE5,/G!3K

Q"SD$%L(_>#9W8:"6<@AMA". MV=F(@EG(I8Z%T&QQ!Q.SD$L="Z&8,.OA8A9RJ6,A%!-F/5S,0BYU+(1BPJR' MBUG(/>6>@4[6P\4LY%)GY%!,F/5PT3UG)_TN!+,>+F8AE]A"< >&5L]29-M= M@.%E>H$D("9F(9?80@>8"^W+4B\UI?%*Y3 -=?:6OKT2VFI>L^=GMQK.=9D_-TS;+AOI: MF$\+D;[OFW_?\W_['U!+ P04 " #6F 15M\<#,$(" !"*P &@ 'AL M+U]R96QS+W=O24'XIM$-!*LONVG(%]4 ]Z$G%&J$!<_@'ZA(#'EW)HQGU[&G;[;EA\ M'@^G857MQK'[5=?#>E>.S7#7=N5T/K)I^V,SGI?]MNZ:]7NS+;4LEU'WMS.J MI\?;F8O7KZ[\S\1VL]FOR^]V_>=83N,_!M@WD*@MZ#>0J"W3!ZV"?06U%L(]!;4 M6PCT%M1;"/06U%L(]!;46PCT%M1;"/06U%L(]%;46PGT5M1;"?16U%L)]-;) MRQ("O17U5@*]%?56 KT5]58"O17U5@*]%?56 KT5]58"O0WU-@*]#?4V KT- M]38"O0WU-@*];?*RFT!O0[V-0&]#O8U ;T.]C4!O0[V-0&]#O8U ;T>]G4!O M1[V=0&]'O9U ;T>]G4!O1[V=0&^??*PDT-M1;R?0VU%O)]#;46\GT-M1;R?0 M.U#O(- [4.\@T#M0[R#0.U#O(- [4.\@T#M0[R#0.R8_FQ#H':AW$.@=J'<0 MZ!VH=Q#HG5'O3*!W1KTS@=X9]F?4._^DWL/X=2C#M>=[C=?_2:K'\[GE M>OG+\GOGY%:YX%S?5@Q/?P%02P,$% @ UI@$5?C# AT& @ 3RH !, M !;0V]N=&5N=%]4>7!E&ULS=K-;N(P% 7@5T'95L3X-],1L)F9;8=% M7\!-+B4BB2W;;>'MQPEMI58=-!4C]6R(P/8]-[[2MV)Y>_049X>^&^*JV*7D MOS,6ZQWU-I;.TY!7MB[T-N6OX9YY6^_M/3&Q6!A6NR'1D.9IK%&LES]I:Q^Z M-/MUR#_'U@VK(E 7B]F/T\8Q:U58[[NVMBFOL\>A>9Q0X=B^G842S/E_B@1[?=MC4UKG[H M\Y$R^D"VB3NBU'?EJ>C5^>24;YA.G_SB_*G,N<"\&UL4$L! A0#% @ UI@$5?/(T7CY!0 V!\ !@ M ("!#0@ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0# M% @ UI@$5>?^R&PO=V]R:W-H965T&UL4$L! A0#% @ UI@$52=E!!<"!P ?Q< !D M ("![5H 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ UI@$55_4+% Z"P :"< !D ("!M70 'AL M+W=O&PO=V]R:W-H965T/IOV@L TZ 9 " M@9J' !X;"]W;W)K&UL4$L! A0#% @ UI@$ M5>-H,Y2R"0 VAP !D ("!JY, 'AL+W=O&PO=V]R:W-H965T^A !X;"]W;W)K M&UL4$L! A0#% @ UI@$5:D@R&.D @ /@8 M !D ("!WJ< 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ UI@$585!2Q.^% C$ !D M ("!H;D 'AL+W=O[-G0H<" )!@ &0 @(&6S@ >&PO=V]R:W-H965T M&UL4$L! A0# M% @ UI@$53"V#0@\ P Z0< !D ("!X=< 'AL+W=O M&PO=V]R:W-H965T[!F0@ "$M 9 " @;;A M !X;"]W;W)K&UL4$L! A0#% @ UI@$5>T$ M_8XH P \P@ !D ("!ANH 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ UI@$56:1=.0X P &PL !D M ("!K_0 'AL+W=O^ >&PO M=V]R:W-H965T&UL4$L! A0#% @ UI@$57SX3PT9!0 <20 !D ("! M[OP 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ UI@$54?8^\KF @ (@D !D ("!/0D! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ UI@$5>5^6$99 @ (P4 !D M ("!$1X! 'AL+W=O&PO=V]R M:W-H965T@( /L% M 9 " @6 C 0!X;"]W;W)K&UL M4$L! A0#% @ UI@$58&PO=V]R:W-H965T&UL4$L! A0#% @ MUI@$50H0JNGQ @ P@H !D ("!D3P! 'AL+W=O&PO=V]R:W-H965TQ, 0!X;"]W;W)K&UL4$L! A0#% @ UI@$57N-.D") @ T@8 !D M ("!(% ! 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ UI@$5269A6VQ @ Z0< !D ("!B5@! 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ UI@$ M51.&":,T @ N00 !D ("!#F(! 'AL+W=OX"$# )# &0 M @(%Y9 $ >&PO=V]R:W-H965T&UL4$L! A0#% @ UI@$550*CMI0! TQL M !D ("!9W$! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ UI@$58S?D<]G!@ YSL !D M ("!LX(! 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ UI@$58VLCOF: @ T0< !D ("!AX\! 'AL+W=O MHX8" A M"0 &0 @(%8D@$ >&PO=V]R:W-H965T&UL4$L! A0#% @ UI@$510] M,A2^ @ G @ !D ("!UID! 'AL+W=O&PO&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'-02P$"% ,4 " #6 MF 15^,,"'08" !/*@ $P @ %UJ0$ 6T-O;G1E;G1?5'EP =97-=+GAM;%!+!08 40!1 "X6 "LJP$ ! end XML 86 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 87 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 88 FilingSummary.xml IDEA: XBRL DOCUMENT 3.22.2 html 292 290 1 false 67 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) (Details) Sheet http://www.willdan.com/role/DisclosureEarningsPerShareEpsDetails EARNINGS PER SHARE (EPS) (Details) Details http://www.willdan.com/role/DisclosureEarningsPerShareEpsTables 72 false false R73.htm 41301 - Disclosure - SUBSEQUENT EVENTS (Details) Sheet http://www.willdan.com/role/DisclosureSubsequentEventsDetails SUBSEQUENT EVENTS (Details) Details http://www.willdan.com/role/DisclosureSubsequentEvents 73 false false All Reports Book All Reports wldn-20220701x10q.htm wldn-20220701.xsd wldn-20220701_cal.xml wldn-20220701_def.xml wldn-20220701_lab.xml wldn-20220701_pre.xml wldn-20220701xex10d1.htm wldn-20220701xex31d1.htm wldn-20220701xex31d2.htm wldn-20220701xex32d1.htm http://fasb.org/us-gaap/2022 http://xbrl.sec.gov/dei/2022 true true JSON 91 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "wldn-20220701x10q.htm": { "axisCustom": 0, "axisStandard": 25, "contextCount": 292, "dts": { "calculationLink": { "local": [ "wldn-20220701_cal.xml" ] }, "definitionLink": { "local": [ "wldn-20220701_def.xml" ] }, "inline": { "local": [ "wldn-20220701x10q.htm" ] }, "labelLink": { "local": [ "wldn-20220701_lab.xml" ] }, "presentationLink": { "local": [ "wldn-20220701_pre.xml" ] }, "schema": { "local": [ "wldn-20220701.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": 505, "entityCount": 1, "hidden": { "http://fasb.org/us-gaap/2022": 24, "http://xbrl.sec.gov/dei/2022": 5, "total": 29 }, "keyCustom": 47, "keyStandard": 243, "memberCustom": 23, "memberStandard": 44, "nsprefix": "wldn", "nsuri": "http://www.willdan.com/20220701", "report": { "R1": { "firstAnchor": { "ancestors": [ "p", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:NumberOfReportableSegments", "reportCount": 1, "unitRef": "Unit_Standard_segment_sukg5lRumEKFYMFVO53FHA", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R30": { "firstAnchor": { "ancestors": [ "us-gaap:FiscalPeriodDuration", "us-gaap:FiscalPeriodDuration", "p", "us-gaap:FiscalPeriod", "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_10_1_2022_To_12_30_2022_rrxaFq6VT0uKoiBZKN-PQw", "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-20220701x10q.htm", "contextRef": "Duration_10_1_2022_To_12_30_2022_rrxaFq6VT0uKoiBZKN-PQw", "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-20220701x10q.htm", "contextRef": "Duration_8_3_2022_To_8_3_2022_us-gaap_UnusualOrInfrequentItemAxis_wldn_Covid19Member_U9PHbxmi7EyG0Tc6Xa3nug", "decimals": "INF", "first": true, "lang": null, "name": "wldn:UnusualOrInfrequentItemContractsCancelledNumber", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_contract_vqfCd35vjkesYHBO2qh0IA", "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-20220701x10q.htm", "contextRef": "Duration_8_3_2022_To_8_3_2022_us-gaap_UnusualOrInfrequentItemAxis_wldn_Covid19Member_U9PHbxmi7EyG0Tc6Xa3nug", "decimals": "INF", "first": true, "lang": null, "name": "wldn:UnusualOrInfrequentItemContractsCancelledNumber", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_contract_vqfCd35vjkesYHBO2qh0IA", "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "p", "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate202101Member_zPOujs30fkK9_JrUxpNGUw", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_us-gaap_AdjustmentsForNewAccountingPronouncementsAxis_us-gaap_AccountingStandardsUpdate202101Member_zPOujs30fkK9_JrUxpNGUw", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:NumberOfReportableSegments", "reportCount": 1, "unitRef": "Unit_Standard_segment_sukg5lRumEKFYMFVO53FHA", "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-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_xiM6xZOimEiGjo0KdUTU3A", "decimals": "-3", "first": true, "lang": null, "name": "wldn:LaborAndRelatedExpenseExcludingStockBasedCompensation", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "decimals": "-3", "lang": null, "name": "wldn:RevenueOfTheEntityAsAnAgent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "p", "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "decimals": "-5", "first": true, "lang": null, "name": "wldn:ProceedsFromSaleOfTradeAccountsReceivable", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "decimals": "-5", "first": true, "lang": null, "name": "wldn:ProceedsFromSaleOfTradeAccountsReceivable", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseRightOfUseAssetBeforeAccumulatedAmortization", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "lang": null, "name": "us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_xiM6xZOimEiGjo0KdUTU3A", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseRightOfUseAssetAmortization", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "wldn:AccruedSubcontractorCosts", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "wldn:AccruedSubcontractorCosts", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R39": { "firstAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_12_31_2021_bM_9UicFy0SKFapt8BVSgg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_12_31_2021_us-gaap_StatementBusinessSegmentsAxis_wldn_EnergyMember_UwBlMC1lJUqXqnBJU-10bw", "decimals": "-3", "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_xiM6xZOimEiGjo0KdUTU3A", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_xiM6xZOimEiGjo0KdUTU3A", "decimals": "-3", "lang": null, "name": "us-gaap:CostDirectLabor", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_OrderOrProductionBacklogMember_evl-FKk5EUKKg5KqKb9c1g", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_us-gaap_OrderOrProductionBacklogMember_evl-FKk5EUKKg5KqKb9c1g", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_12_31_2021_bM_9UicFy0SKFapt8BVSgg", "decimals": "-3", "lang": null, "name": "us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "p", "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_4_1_2022_XAxdDQ7L10GTap3U_7bEYA", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:IndefiniteLivedIntangibleAssetsPeriodIncreaseDecrease", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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", "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_4_1_2022_XAxdDQ7L10GTap3U_7bEYA", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:IndefiniteLivedIntangibleAssetsPeriodIncreaseDecrease", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_1_31_2019_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_InterestRateSwapMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_gTYhSEaAikKA0TPXFA65Bg", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:DerivativeNotionalAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_1_31_2019_us-gaap_DerivativeInstrumentRiskAxis_us-gaap_InterestRateSwapMember_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis_us-gaap_CashFlowHedgingMember_gTYhSEaAikKA0TPXFA65Bg", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:DerivativeNotionalAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:DebtInstrumentCarryingAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:DebtInstrumentCarryingAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LongTermDebt", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "lang": null, "name": "us-gaap:LongTermDebtCurrent", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "p", "us-gaap:DebtDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_6_26_2019_us-gaap_DebtInstrumentAxis_wldn_CreditAgreement2019Member_us-gaap_LongtermDebtTypeAxis_us-gaap_NotesPayableToBanksMember_pKPOfTzJ-E2PaqBL4INvOg", "decimals": "INF", "first": true, "lang": null, "name": "wldn:DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughJune262020", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_ok7QBbqQKECzrDVgs-xdkg", "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-20220701x10q.htm", "contextRef": "As_Of_6_26_2019_us-gaap_DebtInstrumentAxis_wldn_CreditAgreement2019Member_us-gaap_LongtermDebtTypeAxis_us-gaap_NotesPayableToBanksMember_pKPOfTzJ-E2PaqBL4INvOg", "decimals": "INF", "first": true, "lang": null, "name": "wldn:DebtInstrumentCovenantsTotalLeverageRatioMaximumPermittedToMaintainThroughJune262020", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_ok7QBbqQKECzrDVgs-xdkg", "xsiNil": "false" } }, "R49": { "firstAnchor": { "ancestors": [ "p", "wldn:LesseeOperatingAndFinanceLeasesTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "As_Of_1_1_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_GdkJOcxYrUeaJoR_HCAzXQ", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:StockholdersEquity", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "Duration_1_2_2021_To_4_2_2021_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember_KL549LbM80eXn8zzdjLCkA", "decimals": "-3", "lang": null, "name": "us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R50": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_xiM6xZOimEiGjo0KdUTU3A", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeaseCost", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_xiM6xZOimEiGjo0KdUTU3A", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeaseCost", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R51": { "firstAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeaseRightOfUseAsset", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "lang": null, "name": "us-gaap:FinanceLeaseRightOfUseAssetAccumulatedAmortization", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R52": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "wldn:LesseeBalanceSheetAndOtherInformationOfLeasesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "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-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_xiM6xZOimEiGjo0KdUTU3A", "decimals": "-5", "first": true, "lang": null, "name": "wldn:OperatingLeaseRentExpenses", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_xiM6xZOimEiGjo0KdUTU3A", "decimals": "-5", "first": true, "lang": null, "name": "wldn:OperatingLeaseRentExpenses", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R54": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "wldn:LesseeOtherInformationAndSupplementalCashFlowInformationOfLeasesTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeasePayments", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeasePayments", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R55": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R56": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R57": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R58": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseLiabilityPaymentsDue", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "lang": null, "name": "us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R59": { "firstAnchor": { "ancestors": [ "p", "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "decimals": "INF", "first": true, "lang": null, "name": "wldn:DefinedContributionPlanEmployerMatchingContributionAgeOfEmployees", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_Y_GVOYguFYOk6n6eQQeX6Xaw", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "decimals": "INF", "first": true, "lang": null, "name": "wldn:DefinedContributionPlanEmployerMatchingContributionAgeOfEmployees", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_Y_GVOYguFYOk6n6eQQeX6Xaw", "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ProfitLoss", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ProfitLoss", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R60": { "firstAnchor": { "ancestors": [ "p", "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "decimals": "0", "first": true, "lang": null, "name": "wldn:NumberOfVariableInterestEntity", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_item_ck08D0BZyk-_N-aA05KVPQ", "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", "us-gaap:CommitmentsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "decimals": "0", "first": true, "lang": null, "name": "wldn:NumberOfVariableInterestEntity", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_item_ck08D0BZyk-_N-aA05KVPQ", "xsiNil": "false" } }, "R61": { "firstAnchor": { "ancestors": [ "p", "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:NumberOfReportableSegments", "reportCount": 1, "unitRef": "Unit_Standard_segment_sukg5lRumEKFYMFVO53FHA", "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-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_xiM6xZOimEiGjo0KdUTU3A", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_xiM6xZOimEiGjo0KdUTU3A", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_us-gaap_StatementBusinessSegmentsAxis_wldn_EnergyMember_higf3xBCIEePCCsVdAawzg", "decimals": "-3", "lang": null, "name": "us-gaap:DepreciationAndAmortization", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R64": { "firstAnchor": { "ancestors": [ "span", "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:Assets", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_7_2_2021_MFlbeukSC02sZKAJ_Dp-hA", "decimals": "-3", "lang": null, "name": "us-gaap:Assets", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R65": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "table", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_xiM6xZOimEiGjo0KdUTU3A", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_srt_StatementGeographicalAxis_country_US_oe9_PHBz7EKVKfd_5qF1HQ", "decimals": "-3", "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R66": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfStatesInWhichEntityOperates", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_state_wCWGO8JWr06fEa6qM8g63A", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfStatesInWhichEntityOperates", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_state_wCWGO8JWr06fEa6qM8g63A", "xsiNil": "false" } }, "R67": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_srt_StatementGeographicalAxis_stpr_CA_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_RevenueFromContractWithCustomerMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_GeographicConcentrationRiskMember_6hLZ3gq_1kCgSwwzpmbJKg", "decimals": "3", "first": true, "lang": null, "name": "us-gaap:ConcentrationRiskPercentage1", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_ok7QBbqQKECzrDVgs-xdkg", "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-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_srt_StatementGeographicalAxis_stpr_CA_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_RevenueFromContractWithCustomerMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_GeographicConcentrationRiskMember_6hLZ3gq_1kCgSwwzpmbJKg", "decimals": "3", "first": true, "lang": null, "name": "us-gaap:ConcentrationRiskPercentage1", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_pure_ok7QBbqQKECzrDVgs-xdkg", "xsiNil": "false" } }, "R68": { "firstAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ValuationAllowanceDeferredTaxAssetChangeInAmount", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R69": { "firstAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_pT0SiZXb7UGNheK-KO0Uzg", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R7": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_xiM6xZOimEiGjo0KdUTU3A", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:IncomeTaxExpenseBenefit", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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-20220701x10q.htm", "contextRef": "Duration_6_10_2021_To_6_10_2021_us-gaap_IncomeTaxAuthorityNameAxis_us-gaap_NewYorkStateDivisionOfTaxationAndFinanceMember_us-gaap_TaxPeriodAxis_us-gaap_TaxYear2017Member_zeld8yCYL0OMXKvHpYfwXw", "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-20220701x10q.htm", "contextRef": "Duration_6_10_2021_To_6_10_2021_us-gaap_IncomeTaxAuthorityNameAxis_us-gaap_NewYorkStateDivisionOfTaxationAndFinanceMember_us-gaap_TaxPeriodAxis_us-gaap_TaxYear2017Member_zeld8yCYL0OMXKvHpYfwXw", "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-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_xiM6xZOimEiGjo0KdUTU3A", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "41101 - Disclosure - EARNINGS PER SHARE (EPS) (Details)", "role": "http://www.willdan.com/role/DisclosureEarningsPerShareEpsDetails", "shortName": "EARNINGS PER SHARE (EPS) (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerShareTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_4_2_2022_To_7_1_2022_xiM6xZOimEiGjo0KdUTU3A", "decimals": "-3", "lang": null, "name": "us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R73": { "firstAnchor": { "ancestors": [ "span", "p", "us-gaap:SubsequentEventsTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_us-gaap_DebtInstrumentAxis_wldn_CreditAgreement2019Member_us-gaap_LongtermDebtTypeAxis_us-gaap_NotesPayableToBanksMember_VGi2b7qZiUuIwBxxzeHWpw", "decimals": "-5", "first": true, "lang": null, "name": "wldn:DebtInstrumentCovenantsPurchaseMoneyIndebtednessAndCapitalizedLeaseObligations", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "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": [ "span", "p", "us-gaap:SubsequentEventsTextBlock", "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "As_Of_7_1_2022_us-gaap_DebtInstrumentAxis_wldn_CreditAgreement2019Member_us-gaap_LongtermDebtTypeAxis_us-gaap_NotesPayableToBanksMember_VGi2b7qZiUuIwBxxzeHWpw", "decimals": "-5", "first": true, "lang": null, "name": "wldn:DebtInstrumentCovenantsPurchaseMoneyIndebtednessAndCapitalizedLeaseObligations", "reportCount": 1, "unique": true, "unitRef": "Unit_Standard_USD_otXL0HE8aE-n_1g2uIu9Ow", "xsiNil": "false" } }, "R8": { "firstAnchor": { "ancestors": [ "div", "div", "body", "html" ], "baseRef": "wldn-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "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-20220701x10q.htm", "contextRef": "Duration_1_1_2022_To_7_1_2022_AH9LzfT5TUShoWcU04da1Q", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } } }, "segmentCount": 67, "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": [ "r675" ], "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": [ "r676" ], "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": [ "r673" ], "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": [ "r673" ], "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": [ "r673" ], "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": [ "r677" ], "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": [ "r673" ], "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": [ "r673" ], "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": [ "r673" ], "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": [ "r673" ], "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": [ "r672" ], "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": [ "r674" ], "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", "r161", "r174", "r175", "r176", "r177", "r179", "r181", "r185", "r257", "r258", "r259", "r260", "r261", "r262", "r264", "r265", "r267", "r269", "r270" ], "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", "r161", "r174", "r175", "r176", "r177", "r179", "r181", "r185", "r257", "r258", "r259", "r260", "r261", "r262", "r264", "r265", "r267", "r269", "r270" ], "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": [ "r192", "r335", "r340", "r644" ], "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": [ "r251", "r252", "r253", "r254", "r275", "r308", "r413", "r419", "r595", "r596", "r597", "r598", "r599", "r600", "r601", "r642", "r645", "r670", "r671" ], "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/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails" ], "xbrltype": "domainItemType" }, "srt_MinimumMember": { "auth_ref": [ "r251", "r252", "r253", "r254", "r275", "r308", "r413", "r419", "r595", "r596", "r597", "r598", "r599", "r600", "r601", "r642", "r645", "r670", "r671" ], "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/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails" ], "xbrltype": "domainItemType" }, "srt_NameOfMajorCustomerDomain": { "auth_ref": [ "r192", "r335", "r340", "r644" ], "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": [ "r245", "r251", "r252", "r253", "r254", "r275", "r308", "r367", "r413", "r419", "r422", "r423", "r424", "r595", "r596", "r597", "r598", "r599", "r600", "r601", "r642", "r645", "r670", "r671" ], "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/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails" ], "xbrltype": "stringItemType" }, "srt_RangeMember": { "auth_ref": [ "r245", "r251", "r252", "r253", "r254", "r275", "r308", "r367", "r413", "r419", "r422", "r423", "r424", "r595", "r596", "r597", "r598", "r599", "r600", "r601", "r642", "r645", "r670", "r671" ], "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/DisclosureSupplementalFinancialStatementDataFiniteLivedIntangibleAssetsAmortizationPeriodDetails" ], "xbrltype": "domainItemType" }, "srt_ScenarioForecastMember": { "auth_ref": [ "r115", "r418" ], "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", "r250", "r418" ], "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": [ "r189", "r190", "r335", "r339", "r643", "r661", "r662", "r663", "r664", "r665", "r666", "r667", "r668", "r669" ], "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": [ "r189", "r190", "r335", "r339", "r643", "r659", "r661", "r662", "r663", "r664", "r665", "r666", "r667", "r668", "r669" ], "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", "r250", "r418", "r593" ], "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": [ "r582", "r583", "r584", "r585", "r586" ], "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", "r590" ], "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": [ "r194", "r195" ], "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 $751 and $1,115 at July 1, 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", "r631", "r653", "r657" ], "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", "r476", "r586", "r648", "r649" ], "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", "r426", "r427", "r428", "r512" ], "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", "r198", "r199", "r206", "r207", "r208", "r209", "r212", "r213", "r426", "r427", "r428", "r443", "r444", "r445", "r446", "r465", "r466", "r467", "r503", "r504", "r505", "r506", "r507", "r508", "r509", "r511", "r512", "r513", "r514", "r515", "r524", "r525", "r527", "r528", "r529", "r530", "r534", "r535", "r545", "r546", "r554", "r555", "r556", "r557", "r580", "r582", "r583", "r584", "r585", "r586", "r606", "r607", "r608", "r646", "r647", "r648", "r649", "r650", "r651", "r652", "r653", "r654", "r655", "r656", "r657" ], "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": [ "r420", "r429", "r430" ], "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", "r196", "r214" ], "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_Assets": { "auth_ref": [ "r17", "r95", "r169", "r176", "r183", "r202", "r257", "r258", "r259", "r261", "r262", "r263", "r264", "r266", "r268", "r270", "r271", "r472", "r477", "r523", "r588", "r590", "r615", "r629" ], "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", "r202", "r257", "r258", "r259", "r261", "r262", "r263", "r264", "r266", "r268", "r270", "r271", "r472", "r477", "r523", "r588", "r590" ], "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": [ "r489", "r492" ], "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" ], "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": [ "r468", "r469" ], "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": [ "r468", "r469" ], "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", "r536" ], "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": [ "r486" ], "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", "r198", "r199", "r203", "r204", "r205", "r206", "r207", "r443", "r465", "r466", "r500", "r503", "r504", "r515", "r524", "r526", "r527", "r528", "r534", "r535", "r545", "r553", "r554", "r555", "r556", "r580", "r582", "r606", "r607", "r646", "r647" ], "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", "r198", "r199", "r203", "r204", "r205", "r206", "r207", "r443", "r465", "r466", "r467", "r500", "r503", "r504", "r505", "r508", "r515", "r524", "r526", "r527", "r528", "r534", "r535", "r545", "r553", "r554", "r555", "r556", "r580", "r582", "r606", "r607", "r646", "r647" ], "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", "r619", "r634" ], "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": [ "r249" ], "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", "r512" ], "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", "r309" ], "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", "r590" ], "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,215 and 12,804 shares issued and outstanding at July 1, 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", "r623", "r637" ], "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": [ "r150", "r151", "r192", "r520", "r521", "r660" ], "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": [ "r150", "r151", "r192", "r520", "r521", "r658", "r660" ], "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": [ "r150", "r151", "r192", "r520", "r521", "r658", "r660" ], "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": [ "r150", "r151", "r192", "r520", "r521" ], "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": [ "r147", "r150", "r151", "r152", "r520", "r522", "r660" ], "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": [ "r150", "r151", "r192", "r520", "r521", "r660" ], "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", "r602" ], "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": [ "r315", "r317", "r336" ], "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": [ "r335", "r341" ], "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": [ "r335", "r341" ], "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": [ "r315", "r316", "r336" ], "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": [ "r174", "r175", "r176", "r177", "r179", "r185", "r187" ], "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", "r202", "r257", "r258", "r259", "r262", "r263", "r264", "r266", "r268", "r270", "r271", "r523" ], "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": [ "r148", "r192" ], "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": [ "r463" ], "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", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r289", "r296", "r297", "r299", "r306" ], "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", "r272", "r273", "r274", "r275", "r276", "r277", "r279", "r285", "r286", "r287", "r288", "r290", "r291", "r292", "r293", "r294", "r295", "r302", "r303", "r304", "r305", "r550", "r616", "r617", "r628" ], "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" ], "xbrltype": "percentItemType" }, "us-gaap_DebtInstrumentCarryingAmount": { "auth_ref": [ "r20", "r300", "r617", "r628" ], "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": [ "r272", "r302", "r303", "r548", "r550", "r551" ], "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", "r273" ], "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" ], "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", "r272", "r273", "r274", "r275", "r276", "r277", "r279", "r285", "r286", "r287", "r288", "r290", "r291", "r292", "r293", "r294", "r295", "r302", "r303", "r304", "r305", "r550" ], "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", "r272", "r273", "r274", "r275", "r276", "r277", "r279", "r285", "r286", "r287", "r288", "r290", "r291", "r292", "r293", "r294", "r295", "r298", "r302", "r303", "r304", "r305", "r310", "r311", "r312", "r313", "r547", "r548", "r550", "r551", "r627" ], "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": [ "r285", "r549" ], "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": [ "r431", "r432" ], "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", "r442", "r452", "r453", "r454" ], "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": [ "r439" ], "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": [ "r360", "r368", "r369", "r405", "r407", "r408" ], "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": [ "r409" ], "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", "r238" ], "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", "r164" ], "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", "r490", "r491", "r494", "r496" ], "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": [ "r502", "r519" ], "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": [ "r487", "r490", "r494" ], "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": [ "r483", "r485" ], "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": [ "r482", "r484", "r485", "r487", "r488", "r493", "r494", "r497", "r498", "r501", "r502" ], "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": [ "r464" ], "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": [ "r335", "r338", "r339", "r340", "r341", "r342", "r343", "r344" ], "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": [ "r335" ], "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", "r133", "r134", "r135", "r139", "r140", "r513", "r514", "r624", "r638" ], "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/DisclosureEarningsPerShareEpsDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareDiluted": { "auth_ref": [ "r65", "r112", "r113", "r114", "r115", "r116", "r126", "r133", "r134", "r135", "r139", "r140", "r513", "r514", "r624", "r638" ], "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/DisclosureEarningsPerShareEpsDetails", "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/DisclosureEarningsPerShareEpsDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareTextBlock": { "auth_ref": [ "r136", "r137", "r138", "r141" ], "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", "r142", "r209", "r309", "r314", "r426", "r427", "r428", "r445", "r446", "r512", "r537", "r538", "r539", "r540", "r541", "r543", "r586", "r648", "r649", "r650" ], "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": [ "r563", "r570", "r578" ], "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": [ "r565", "r572" ], "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": [ "r561", "r577" ], "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": [ "r561" ], "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": [ "r577" ], "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": [ "r561" ], "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": [ "r577" ], "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": [ "r577" ], "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": [ "r577" ], "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": [ "r577" ], "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": [ "r577" ], "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": [ "r577" ], "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": [ "r577" ], "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": [ "r564", "r572" ], "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 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": [ "r560" ], "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": [ "r563", "r570" ], "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": [ "r563", "r570", "r578" ], "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": [ "r560" ], "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": [ "r562" ], "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": [ "r575", "r578" ], "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": [ "r574", "r578" ], "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", "r234" ], "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": [ "r230", "r231", "r234", "r236", "r605", "r612" ], "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": [ "r234", "r612" ], "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": [ "r230", "r233" ], "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": [ "r470" ], "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": [ "r341" ], "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": [ "r149", "r660" ], "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", "r215", "r217", "r224", "r228", "r590", "r614" ], "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", "r216", "r221", "r227", "r228" ], "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": [ "r487" ], "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", "r237", "r242" ], "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", "r169", "r175", "r179", "r182", "r185", "r613", "r620", "r626", "r639" ], "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": [ "r243", "r246" ], "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": [ "r246" ], "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": [ "r436" ], "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", "r434", "r438", "r441", "r450", "r455", "r457", "r458", "r459" ], "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": [ "r437" ], "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", "r167", "r433", "r451", "r456", "r640" ], "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", "r603" ], "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_IndefiniteLivedIntangibleAssetsExcludingGoodwill": { "auth_ref": [ "r235" ], "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": [ "r235" ], "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": [ "r229", "r232" ], "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": [ "r495" ], "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": [ "r161", "r174", "r175", "r176", "r177", "r179", "r181", "r185" ], "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": [ "r576", "r578" ], "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": [ "r576" ], "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": [ "r239" ], "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": [ "r255" ], "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": [ "r569" ], "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": [ "r568" ], "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": [ "r568" ], "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": [ "r577" ], "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": [ "r577" ], "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": [ "r577" ], "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": [ "r577" ], "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": [ "r577" ], "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": [ "r577" ], "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": [ "r577" ], "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": [ "r577" ], "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": [ "r567" ], "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": [ "r568" ], "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" ], "xbrltype": "domainItemType" }, "us-gaap_Liabilities": { "auth_ref": [ "r36", "r95", "r177", "r202", "r257", "r258", "r259", "r262", "r263", "r264", "r266", "r268", "r270", "r271", "r473", "r477", "r478", "r523", "r588", "r589" ], "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", "r202", "r523", "r590", "r618", "r633" ], "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", "r202", "r257", "r258", "r259", "r262", "r263", "r264", "r266", "r268", "r270", "r271", "r473", "r477", "r478", "r523", "r588", "r589", "r590" ], "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" ], "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", "r286", "r301", "r302", "r303", "r617", "r630" ], "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", "r256" ], "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", "r131", "r169", "r175", "r179", "r182", "r185", "r202", "r257", "r258", "r259", "r262", "r263", "r264", "r266", "r268", "r270", "r271", "r514", "r523", "r621", "r635" ], "calculation": { "http://www.willdan.com/role/DisclosureEarningsPerShareEpsDetails": { "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/DisclosureEarningsPerShareEpsDetails", "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", "r132", "r135", "r169", "r175", "r179", "r182", "r185" ], "calculation": { "http://www.willdan.com/role/DisclosureEarningsPerShareEpsDetails": { "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/DisclosureEarningsPerShareEpsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersDiluted": { "auth_ref": [ "r125", "r127", "r128", "r129", "r130", "r132", "r135" ], "calculation": { "http://www.willdan.com/role/DisclosureEarningsPerShareEpsDetails": { "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/DisclosureEarningsPerShareEpsDetails" ], "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/DisclosureEarningsPerShareEpsDetails" ], "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", "r200", "r201", "r210", "r211", "r447", "r448", "r449", "r510", "r516", "r517", "r518", "r531", "r532", "r533", "r558", "r559", "r581", "r587", "r609", "r610", "r611", "r652", "r653", "r654", "r655", "r657" ], "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", "r139", "r198", "r199", "r206", "r207", "r208", "r209", "r212", "r213", "r426", "r427", "r428", "r443", "r444", "r445", "r446", "r465", "r466", "r467", "r503", "r504", "r505", "r506", "r507", "r508", "r509", "r511", "r512", "r513", "r514", "r515", "r524", "r525", "r527", "r528", "r529", "r530", "r534", "r535", "r545", "r546", "r554", "r555", "r556", "r557", "r580", "r582", "r583", "r584", "r585", "r586", "r606", "r607", "r608", "r646", "r647", "r648", "r649", "r650", "r651", "r652", "r653", "r654", "r655", "r656", "r657" ], "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": [ "r461" ], "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": [ "r157" ], "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", "r552", "r625" ], "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": [ "r169", "r175", "r179", "r182", "r185" ], "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": [ "r571", "r578" ], "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": [ "r561" ], "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": [ "r561" ], "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": [ "r561" ], "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": [ "r566", "r572" ], "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": [ "r560" ], "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": [ "r575", "r578" ], "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": [ "r574", "r578" ], "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": [ "r174", "r175", "r176", "r177", "r179", "r185" ], "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": [ "r462" ], "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", "r481" ], "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", "r309", "r537", "r542", "r543", "r622", "r636" ], "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": "Other comprehensive income" } } }, "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": 4.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", "r307" ], "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", "r307" ], "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", "r590" ], "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": 3.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_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", "r425" ], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 7.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": 8.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", "r169", "r175", "r179", "r182", "r185", "r202", "r257", "r258", "r259", "r262", "r263", "r264", "r266", "r268", "r270", "r271", "r471", "r474", "r475", "r479", "r480", "r514", "r523", "r626" ], "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": [ "r240", "r563", "r570" ], "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": [ "r241", "r570" ], "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", "r239", "r560" ], "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": [ "r241" ], "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", "r239" ], "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": [ "r241" ], "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": [ "r239" ], "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": [ "r176", "r179" ], "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": 5.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": [ "r579" ], "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", "r314", "r590", "r632", "r652", "r657" ], "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", "r209", "r426", "r427", "r428", "r445", "r446", "r512", "r648", "r650" ], "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": [ "r346", "r347", "r348", "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", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419" ], "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": [ "r346", "r347", "r348", "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", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419" ], "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": [ "r160", "r161", "r174", "r180", "r181", "r188", "r189", "r192", "r334", "r335", "r604" ], "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": [ "r150", "r192" ], "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", "r326", "r327", "r328", "r329", "r330", "r331", "r332", "r333", "r345" ], "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": [ "r150" ], "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": [ "r318", "r319", "r320", "r321", "r322", "r323", "r324", "r325", "r337", "r345" ], "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" ], "xbrltype": "domainItemType" }, "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": { "auth_ref": [ "r573", "r578" ], "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": [ "r150", "r192" ], "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": [ "r230" ], "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_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": [ "r135" ], "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": [ "r230", "r233", "r605" ], "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": [ "r217", "r218", "r219", "r220", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228" ], "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": [ "r217", "r218", "r219", "r220", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228" ], "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": [ "r241" ], "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": [ "r169", "r172", "r178", "r225" ], "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": [ "r169", "r172", "r178", "r225" ], "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": [ "r499" ], "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" ], "xbrltype": "domainItemType" }, "us-gaap_SegmentDomain": { "auth_ref": [ "r156", "r160", "r161", "r162", "r163", "r164", "r165", "r166", "r167", "r168", "r169", "r170", "r171", "r174", "r175", "r176", "r177", "r179", "r180", "r181", "r182", "r183", "r185", "r192", "r217", "r218", "r219", "r220", "r221", "r222", "r223", "r224", "r225", "r228", "r247", "r248", "r641" ], "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": [ "r156", "r158", "r159", "r169", "r173", "r179", "r183", "r184", "r185", "r186", "r188", "r191", "r192", "r193" ], "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", "r156", "r160", "r161", "r162", "r163", "r164", "r165", "r166", "r167", "r168", "r169", "r170", "r171", "r174", "r175", "r176", "r177", "r179", "r180", "r181", "r182", "r183", "r185", "r192", "r217", "r218", "r219", "r220", "r221", "r222", "r223", "r224", "r225", "r228", "r244", "r247", "r248", "r641" ], "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", "r142", "r209", "r309", "r314", "r426", "r427", "r428", "r445", "r446", "r512", "r537", "r538", "r539", "r540", "r541", "r543", "r586", "r648", "r649", "r650" ], "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", "r142", "r604" ], "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_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans": { "auth_ref": [ "r21", "r22", "r309", "r314" ], "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": [ "r309", "r314" ], "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", "r309", "r314", "r421" ], "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", "r309", "r314" ], "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", "r309", "r314" ], "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", "r309", "r314" ], "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", "r197", "r202", "r523", "r590" ], "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", "periodEndLabel": "Balances", "periodStartLabel": "Balances", "totalLabel": "Total stockholders' equity" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/StatementCondensedConsolidatedBalanceSheets", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfStockholdersEquity" ], "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_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": [ "r544", "r592" ], "lang": { "en-us": { "role": { "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued.", "label": "Subsequent Event [Member]", "terseLabel": "Subsequent Event" } } }, "localname": "SubsequentEventMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SubsequentEventTable": { "auth_ref": [ "r544", "r592" ], "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": [ "r544", "r592" ], "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": [ "r544", "r592" ], "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": [ "r591", "r594" ], "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 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": [ "r436" ], "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": [ "r436" ], "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": [ "r436" ], "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": [ "r341" ], "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": [ "r460" ], "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", "r198", "r199", "r206", "r207", "r208", "r209", "r212", "r213", "r426", "r427", "r428", "r443", "r444", "r445", "r446", "r465", "r466", "r467", "r503", "r504", "r505", "r506", "r507", "r508", "r509", "r511", "r512", "r513", "r514", "r515", "r524", "r525", "r527", "r528", "r529", "r530", "r534", "r535", "r545", "r546", "r554", "r555", "r556", "r557", "r580", "r582", "r583", "r584", "r585", "r586", "r606", "r607", "r608", "r646", "r647", "r648", "r649", "r650", "r651", "r652", "r653", "r654", "r655", "r656", "r657" ], "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": [ "r435" ], "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": [ "r143", "r144", "r145", "r146", "r153", "r154", "r155" ], "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": [ "r440" ], "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": [ "r439" ], "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" ], "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" ], "xbrltype": "domainItemType" }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "auth_ref": [ "r125", "r135" ], "calculation": { "http://www.willdan.com/role/DisclosureEarningsPerShareEpsDetails": { "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/DisclosureEarningsPerShareEpsDetails", "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/DisclosureEarningsPerShareEpsDetails", "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "stringItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "auth_ref": [ "r123", "r135" ], "calculation": { "http://www.willdan.com/role/DisclosureEarningsPerShareEpsDetails": { "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/DisclosureEarningsPerShareEpsDetails", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataEquipmentAndLeaseholdImprovementsNetTabularDisclosureDetails" ], "xbrltype": "domainItemType" }, "wldn_ConsolidatedEdisonOfNewYorkMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to Consolidated Edison of New York.", "label": "Consolidated Edison of New York [Member]", "terseLabel": "Consolidated Edison of New York" } } }, "localname": "ConsolidatedEdisonOfNewYorkMember", "nsuri": "http://www.willdan.com/20220701", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "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/20220701", "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/20220701", "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/20220701", "presentation": [ "http://www.willdan.com/role/DisclosureOrganizationAndOperationsOfCompanyPolicies" ], "xbrltype": "textBlockItemType" }, "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/20220701", "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/20220701", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "presentation": [ "http://www.willdan.com/role/DisclosureSubsequentEventsDetails" ], "xbrltype": "monetaryItemType" }, "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails", "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "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/20220701", "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/20220701", "presentation": [ "http://www.willdan.com/role/DisclosureSupplementalFinancialStatementDataAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "wldn_EnergyMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information about the energy services reporting segment.", "label": "Energy" } } }, "localname": "EnergyMember", "nsuri": "http://www.willdan.com/20220701", "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": "Information about the Engineering and consulting Services reporting segment.", "label": "Engineering and Consulting" } } }, "localname": "EngineeringConsultingServicesMember", "nsuri": "http://www.willdan.com/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "presentation": [ "http://www.willdan.com/role/DisclosureLeasesTables" ], "xbrltype": "textBlockItemType" }, "wldn_LosAngelesDepartmentOfWaterAndPowerMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to the Los Angeles Department of Water and Power.", "label": "Los Angeles Department of Water and Power [Member]", "terseLabel": "Los Angeles Department of Water and Power" } } }, "localname": "LosAngelesDepartmentOfWaterAndPowerMember", "nsuri": "http://www.willdan.com/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "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/20220701", "presentation": [ "http://www.willdan.com/role/DisclosureRevenuesGeneralInformationDetails" ], "xbrltype": "percentItemType" }, "wldn_ProceedsFromExerciseOfRestrictedStockAwardsAndUnits": { "auth_ref": [], "calculation": { "http://www.willdan.com/role/StatementCondensedConsolidatedStatementsOfCashFlows": { "order": 9.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/20220701", "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/20220701", "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/20220701", "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/20220701", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationDisaggregationOfRevenueDetails" ], "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/20220701", "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/20220701", "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/20220701", "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/20220701", "presentation": [ "http://www.willdan.com/role/DisclosureDebtObligationsCompositionDetails", "http://www.willdan.com/role/DisclosureDebtObligationsCreditFacilitiesDetails" ], "xbrltype": "domainItemType" }, "wldn_TopTenCustomersSixMonthsEndedJuly12022Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Top Ten Customers, Six Months Ended July 1, 2022 [Member]", "label": "Top Ten Customers, Six Months Ended July 1, 2022 [Member]", "terseLabel": "Top Ten Customers, Six Months Ended July 1, 2022" } } }, "localname": "TopTenCustomersSixMonthsEndedJuly12022Member", "nsuri": "http://www.willdan.com/20220701", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "wldn_TopTenCustomersSixMonthsEndedJuly22021Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Top Ten Customers, Six Months Ended July 2, 2021 [Member]", "label": "Top Ten Customers, Six Months Ended July 2, 2021 [Member]", "terseLabel": "Top Ten Customers, Six Months Ended July 2, 2021" } } }, "localname": "TopTenCustomersSixMonthsEndedJuly22021Member", "nsuri": "http://www.willdan.com/20220701", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "wldn_TopTenCustomersThreeMonthsEndedJuly12022Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Top Ten Customers, Three Months Ended July 1, 2022 [Member]", "label": "Top Ten Customers, Three Months Ended July 1, 2022 [Member]", "terseLabel": "Top Ten Customers, Three Months Ended July 1, 2022" } } }, "localname": "TopTenCustomersThreeMonthsEndedJuly12022Member", "nsuri": "http://www.willdan.com/20220701", "presentation": [ "http://www.willdan.com/role/DisclosureSegmentAndGeographicalInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "wldn_TopTenCustomersThreeMonthsEndedJuly22021Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Top Ten Customers, Three Months Ended July 2, 2021 [Member]", "label": "Top Ten Customers, Three Months Ended July 2, 2021 [Member]", "terseLabel": "Top Ten Customers, Three Months Ended July 2, 2021" } } }, "localname": "TopTenCustomersThreeMonthsEndedJuly22021Member", "nsuri": "http://www.willdan.com/20220701", "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/20220701", "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/20220701", "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": "40", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1930-109256" }, "r128": { "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" }, "r129": { "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" }, "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": "(b)(3)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1930-109256" }, "r131": { "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" }, "r132": { "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" }, "r133": { "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" }, "r134": { "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" }, "r135": { "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" }, "r136": { "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" }, "r137": { "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" }, "r138": { "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" }, "r139": { "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" }, "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": "52", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e4984-109258" }, "r141": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "260", "URI": "https://asc.fasb.org/topic&trid=2144383" }, "r142": { "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" }, "r143": { "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" }, "r144": { "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" }, "r145": { "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" }, "r146": { "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" }, "r147": { "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" }, "r148": { "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" }, "r149": { "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" }, "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": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592" }, "r151": { "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" }, "r152": { "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" }, "r153": { "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" }, "r154": { "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" }, "r155": { "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" }, "r156": { "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" }, "r157": { "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" }, "r158": { "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" }, "r159": { "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" }, "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": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r161": { "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" }, "r162": { "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" }, "r163": { "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" }, "r164": { "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" }, "r165": { "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" }, "r166": { "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" }, "r167": { "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" }, "r168": { "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" }, "r169": { "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" }, "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": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599" }, "r171": { "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" }, "r172": { "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" }, "r173": { "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" }, "r174": { "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" }, "r175": { "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" }, "r176": { "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" }, "r177": { "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" }, "r178": { "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" }, "r179": { "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" }, "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": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r181": { "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" }, "r182": { "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" }, "r183": { "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" }, "r184": { "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" }, "r185": { "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" }, "r186": { "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" }, "r187": { "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" }, "r188": { "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" }, "r189": { "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" }, "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": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599" }, "r191": { "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" }, "r192": { "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" }, "r193": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "280", "URI": "https://asc.fasb.org/topic&trid=2134510" }, "r194": { "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" }, "r195": { "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" }, "r196": { "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" }, "r197": { "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" }, "r198": { "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" }, "r199": { "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" }, "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": "65", "SubTopic": "20", "Subparagraph": "(d)(1)", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513" }, "r201": { "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" }, "r202": { "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" }, "r203": { "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" }, "r204": { "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" }, "r205": { "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" }, "r206": { "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" }, "r207": { "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" }, "r208": { "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" }, "r209": { "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" }, "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": "(e)(1)", "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": "(e)(2)", "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": "(e)(3)", "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)(4)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r214": { "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" }, "r215": { "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" }, "r216": { "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" }, "r217": { "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" }, "r218": { "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" }, "r219": { "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" }, "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": "(d)", "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": "(e)", "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": "(f)", "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": "(g)", "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": "(h)", "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", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r226": { "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" }, "r227": { "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" }, "r228": { "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" }, "r229": { "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" }, "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": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r231": { "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" }, "r232": { "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" }, "r233": { "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" }, "r234": { "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" }, "r235": { "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" }, "r236": { "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" }, "r237": { "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" }, "r238": { "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" }, "r239": { "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" }, "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": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r241": { "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" }, "r242": { "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" }, "r243": { "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" }, "r244": { "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" }, "r245": { "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" }, "r246": { "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" }, "r247": { "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" }, "r248": { "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" }, "r249": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "440", "URI": "https://asc.fasb.org/topic&trid=2144648" }, "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": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14615-108349" }, "r251": { "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" }, "r252": { "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" }, "r253": { "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" }, "r254": { "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" }, "r255": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "https://asc.fasb.org/topic&trid=2127136" }, "r256": { "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" }, "r257": { "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" }, "r258": { "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" }, "r259": { "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" }, "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)(iii)(B))", "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)(iii))", "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)(iv))", "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)(5))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r264": { "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" }, "r265": { "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" }, "r266": { "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" }, "r267": { "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" }, "r268": { "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" }, "r269": { "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" }, "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)(iv))", "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)(5))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r272": { "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" }, "r273": { "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" }, "r274": { "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" }, "r275": { "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" }, "r276": { "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" }, "r277": { "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" }, "r278": { "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" }, "r279": { "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" }, "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": "(i)", "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", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r282": { "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" }, "r283": { "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" }, "r284": { "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" }, "r285": { "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" }, "r286": { "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" }, "r287": { "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" }, "r288": { "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" }, "r289": { "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" }, "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": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611" }, "r291": { "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" }, "r292": { "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" }, "r293": { "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" }, "r294": { "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" }, "r295": { "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" }, "r296": { "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" }, "r297": { "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" }, "r298": { "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" }, "r299": { "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" }, "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": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870" }, "r301": { "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" }, "r302": { "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" }, "r303": { "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" }, "r304": { "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" }, "r305": { "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" }, "r306": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "470", "URI": "https://asc.fasb.org/topic&trid=2208564" }, "r307": { "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" }, "r308": { "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" }, "r309": { "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" }, "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": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21475-112644" }, "r311": { "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" }, "r312": { "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" }, "r313": { "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" }, "r314": { "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" }, "r315": { "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" }, "r316": { "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" }, "r317": { "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" }, "r318": { "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" }, "r319": { "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" }, "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": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045" }, "r321": { "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" }, "r322": { "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" }, "r323": { "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" }, "r324": { "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" }, "r325": { "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" }, "r326": { "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" }, "r327": { "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" }, "r328": { "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" }, "r329": { "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" }, "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": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130566-203045" }, "r331": { "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" }, "r332": { "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" }, "r333": { "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" }, "r334": { "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" }, "r335": { "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" }, "r336": { "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" }, "r337": { "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" }, "r338": { "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" }, "r339": { "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" }, "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": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046" }, "r341": { "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" }, "r342": { "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" }, "r343": { "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" }, "r344": { "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" }, "r345": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "https://asc.fasb.org/topic&trid=49130388" }, "r346": { "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" }, "r347": { "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" }, "r348": { "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" }, "r349": { "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" }, "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)(3)", "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)(4)", "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)(5)", "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)(6)", "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)(7)", "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)(8)", "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)(9)", "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": "(b)", "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": "(b)(1)", "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": "(b)(2)", "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)(3)", "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)(4)", "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)(5)", "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)(6)", "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)(7)", "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)(8)", "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": "(c)", "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": "(d)(i)", "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": "(d)(ii)", "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": "(d)(iv)(01)", "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)(iv)(02)", "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)(iv)(02)(A)", "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)(02)(B)", "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)(C)", "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)(03)", "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": "(e)", "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": "(f)", "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": "(g)", "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": "(h)", "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": "(h)(1)", "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": "(h)(2)", "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)(3)", "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)(4)", "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)(5)", "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)(6)", "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)(7)", "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": "(i)", "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": "(j)", "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": "(k)(1)", "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": "(k)(2)", "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": "(k)(3)", "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)(4)", "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": "(n)", "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": "(q)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r394": { "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" }, "r395": { "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" }, "r396": { "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" }, "r397": { "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" }, "r398": { "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" }, "r399": { "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" }, "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)(3)", "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)(4)", "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)(5)", "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)(6)", "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)(7)", "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": "(b)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r406": { "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" }, "r407": { "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" }, "r408": { "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" }, "r409": { "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" }, "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": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947" }, "r411": { "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" }, "r412": { "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" }, "r413": { "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" }, "r414": { "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" }, "r415": { "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" }, "r416": { "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" }, "r417": { "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" }, "r418": { "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" }, "r419": { "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" }, "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": "2", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4534-113899" }, "r421": { "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" }, "r422": { "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" }, "r423": { "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" }, "r424": { "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" }, "r425": { "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" }, "r426": { "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" }, "r427": { "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" }, "r428": { "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" }, "r429": { "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" }, "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": "13", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11178-113907" }, "r431": { "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" }, "r432": { "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" }, "r433": { "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" }, "r434": { "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" }, "r435": { "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" }, "r436": { "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" }, "r437": { "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" }, "r438": { "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" }, "r439": { "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" }, "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": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319" }, "r441": { "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" }, "r442": { "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" }, "r443": { "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" }, "r444": { "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" }, "r445": { "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" }, "r446": { "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" }, "r447": { "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" }, "r448": { "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" }, "r449": { "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" }, "r45": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "210", "URI": "https://asc.fasb.org/topic&trid=2122208" }, "r450": { "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" }, "r451": { "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" }, "r452": { "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" }, "r453": { "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" }, "r454": { "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" }, "r455": { "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" }, "r456": { "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" }, "r457": { "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" }, "r458": { "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" }, "r459": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "740", "URI": "https://asc.fasb.org/topic&trid=2144680" }, "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": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473" }, "r461": { "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" }, "r462": { "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" }, "r463": { "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" }, "r464": { "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" }, "r465": { "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" }, "r466": { "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" }, "r467": { "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" }, "r468": { "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" }, "r469": { "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" }, "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": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=d3e5291-111683" }, "r471": { "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" }, "r472": { "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" }, "r473": { "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" }, "r474": { "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" }, "r475": { "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" }, "r476": { "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" }, "r477": { "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" }, "r478": { "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" }, "r479": { "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" }, "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": "4K", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591552-111686" }, "r481": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "810", "URI": "https://asc.fasb.org/topic&trid=2197479" }, "r482": { "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" }, "r483": { "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" }, "r484": { "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" }, "r485": { "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" }, "r486": { "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" }, "r487": { "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" }, "r488": { "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" }, "r489": { "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" }, "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": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959" }, "r491": { "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" }, "r492": { "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" }, "r493": { "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" }, "r494": { "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" }, "r495": { "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" }, "r496": { "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" }, "r497": { "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" }, "r498": { "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" }, "r499": { "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" }, "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": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=121483254&loc=SL120254523-199619" }, "r501": { "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" }, "r502": { "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" }, "r503": { "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" }, "r504": { "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" }, "r505": { "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" }, "r506": { "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" }, "r507": { "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" }, "r508": { "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" }, "r509": { "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" }, "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": "(e)(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": "(e)(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": "(e)(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": "(e)(4)", "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": "(f)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r515": { "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" }, "r516": { "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" }, "r517": { "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" }, "r518": { "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" }, "r519": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "815", "URI": "https://asc.fasb.org/topic&trid=2229140" }, "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": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13531-108611" }, "r521": { "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" }, "r522": { "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" }, "r523": { "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" }, "r524": { "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" }, "r525": { "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" }, "r526": { "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" }, "r527": { "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" }, "r528": { "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" }, "r529": { "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" }, "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": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497" }, "r531": { "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" }, "r532": { "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" }, "r533": { "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" }, "r534": { "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" }, "r535": { "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" }, "r536": { "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" }, "r537": { "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" }, "r538": { "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" }, "r539": { "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" }, "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": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r541": { "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" }, "r542": { "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" }, "r543": { "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" }, "r544": { "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" }, "r545": { "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" }, "r546": { "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" }, "r547": { "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" }, "r548": { "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" }, "r549": { "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" }, "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": "835", "URI": "https://asc.fasb.org/extlink&oid=124429444&loc=SL124452920-239629" }, "r551": { "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" }, "r552": { "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" }, "r553": { "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" }, "r554": { "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" }, "r555": { "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" }, "r556": { "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" }, "r557": { "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" }, "r558": { "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" }, "r559": { "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" }, "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": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977" }, "r561": { "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" }, "r562": { "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" }, "r563": { "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" }, "r564": { "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" }, "r565": { "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" }, "r566": { "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" }, "r567": { "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" }, "r568": { "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" }, "r569": { "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" }, "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": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980" }, "r571": { "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" }, "r572": { "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" }, "r573": { "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" }, "r574": { "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" }, "r575": { "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" }, "r576": { "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" }, "r577": { "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" }, "r578": { "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" }, "r579": { "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" }, "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": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "848", "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL122150809-237846" }, "r581": { "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" }, "r582": { "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" }, "r583": { "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" }, "r584": { "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" }, "r585": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(01)", "Topic": "848", "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846" }, "r586": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(03)", "Topic": "848", "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846" }, "r587": { "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" }, "r588": { "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" }, "r589": { "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" }, "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": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "852", "URI": "https://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766" }, "r591": { "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" }, "r592": { "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" }, "r593": { "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" }, "r594": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "855", "URI": "https://asc.fasb.org/topic&trid=2122774" }, "r595": { "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" }, "r596": { "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" }, "r597": { "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" }, "r598": { "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" }, "r599": { "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" }, "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": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r601": { "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" }, "r602": { "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" }, "r603": { "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" }, "r604": { "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" }, "r605": { "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" }, "r606": { "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" }, "r607": { "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" }, "r608": { "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" }, "r609": { "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" }, "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": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(f)(2)", "Topic": "926", "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r611": { "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" }, "r612": { "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" }, "r613": { "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" }, "r614": { "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" }, "r615": { "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" }, "r616": { "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" }, "r617": { "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" }, "r618": { "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" }, "r619": { "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" }, "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": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(15))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r621": { "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" }, "r622": { "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" }, "r623": { "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" }, "r624": { "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" }, "r625": { "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" }, "r626": { "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" }, "r627": { "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" }, "r628": { "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" }, "r629": { "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" }, "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": "210", "Subparagraph": "(SX 210.7-03(a)(16))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r631": { "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" }, "r632": { "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" }, "r633": { "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" }, "r634": { "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" }, "r635": { "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" }, "r636": { "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" }, "r637": { "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" }, "r638": { "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" }, "r639": { "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" }, "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": "220", "Subparagraph": "(SX 210.7-04(9))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r641": { "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" }, "r642": { "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" }, "r643": { "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" }, "r644": { "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" }, "r645": { "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" }, "r646": { "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" }, "r647": { "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" }, "r648": { "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" }, "r649": { "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" }, "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": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(2)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r651": { "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" }, "r652": { "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" }, "r653": { "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" }, "r654": { "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" }, "r655": { "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" }, "r656": { "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" }, "r657": { "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" }, "r658": { "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" }, "r659": { "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" }, "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": "50", "SubTopic": "310", "Topic": "954", "URI": "https://asc.fasb.org/extlink&oid=126942805&loc=d3e3115-115594" }, "r661": { "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" }, "r662": { "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" }, "r663": { "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" }, "r664": { "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" }, "r665": { "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" }, "r666": { "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" }, "r667": { "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" }, "r668": { "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" }, "r669": { "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" }, "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": "50", "SubTopic": "310", "Subparagraph": "(c)", "Topic": "976", "URI": "https://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663" }, "r671": { "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" }, "r672": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b" }, "r673": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2" }, "r674": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1" }, "r675": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "308", "Subsection": "a" }, "r676": { "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-1" }, "r677": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405" }, "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" }, "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 92 0001558370-22-012312-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001558370-22-012312-xbrl.zip M4$L#!!0 ( -:8!%7V9R<-(!4 #3C 1 =VQD;BTR,#(R,#-A9X(%]1FG\YZYQ=G MB###-BE;?3IS10<+@]*S?_[TG__QX]\ZG=^NIR-DVH:[(WM%C-T3SBGEH6N.357!*&K\W?G'WKOWI_W^^_?O$&=CL_I&@N@M!E2+/OG MO;#DQN=JLX_H0_=-MW_1[Z.KC[VKCYAU[_HDA>' M,$$7%NG(:H1C!X8:T>G+H<9W1-ME#L_R0Z\P)H\1I\C=HKP\\X;?N@93"8(J>D$,V8[RHO5L^#I=DO9TO8?P4/I M 1\E/'/ %LD?C]-AYL"N<)P!6S6=W-C,A%Y#3/@A;(N:$MYK;$DSS-:$..(, M47"+*@2A9H%N)EE21E4[P. 7%ZB#0G[P^V;\,- ?9OI _IJ-1\.!-H<_KK61 M]G"CH]EG79_/?NSNL]J7XH)28_:3^@TSD #FRG9RI/:I_2IYE :V#->J0;C3 M+)O.?QI@=4((PU(Q7M[8&[#'6@Z.3V0(,=>&E &UB$4^S/VR,,_F\-^]_C"? MH?$M%-U/IOIGJ#?\HJ/A _RMM]#7AQZ+]:UE/Y?JQ>F$^3"_J0FS-ON,;D?C M7]M^O0_N@ K#LH7+R6[T!MRH#ZZSHY(^]3B9C)3' M:"-T.WR N6 (OT(_0N!7&M0+M4*8F2C4"T45^P<"U:"NKUU4T ^^@G]O'?$ M1]0,@[O$'%&\H!;H2$1M+\MF5>1";^JZD"\2162V?G$4OQA"$5O)-9DF!,2& MM;TBBU&13WRHZQ,[@E(<0-?F4X3\^TSD M0V%>5Q;P:"<0V4N_A[?1\Q$\XH[;0@SH\;:[UX!8QYS! MH"DFA,_6&/[>9G7IG)JY(/9ZR56OKDT?A@]W,S31IVCV69OJZ =],OM["UDV M9/[QHN!_C9DZ-Q1AUZ)5 M?\MZ GV).6OB4&A=Y?WK.'719O;;.IO9Z(>8D+9KUM_AG#FV\55N^! NY%:0 M\UIUJS.%0S[HE_7V/&?S\2D::@3=A#P3+C-X*?A]VFNUMR9YH8@ M>4,=->) ^/P%$U??#N;=ZDH'W%VTZ MU*Y'\E#P7)_JLSF"HN%\V$*:%TN0E9^ONB/VBN/M6N8;DOFM"@3Y0%ZE1!+Z MG0H8)(AW^OANJDT^#V_4?'0[GMZK4;"%,!-"[[3]'+\DNUZT*!>6WD42%N]L M/9IKO[4]J%HVOT0:OP"."OG[%IJ<^4KE!PB$RVG34K0P'XZ4I,'-6*4*=(B< MV^Z1NUA="/*'"^W5G](6-HGR?"12,@:SQ^N9_LNCG$%D[J!=NQR4,YW8%DWK M+A4H\Q"$GI0\"5@^AXI^"*2TXU[==&H6PB6I\M'M)]$M2J^VF%;)M&:CMU>> MC]-E&DY>YK7%HPH><[F8S43#+\W#XA*P2!RJW6'A<6B1."0=GHY1:;I\]-XD MT2OW"E$+;=54:SJ.Z97R07N7!"WQ(DF+3\G\:SHLL;)\-++?*F@Q.#R#ES'Z ME23+1^XJ9? KD89YWW MK<4C#^4W!RZWY9%O*1 IB>U1X:/XP6-R M+: 5T@=WA$$?CL9=F6 6$>0#F9?PZ2"?:_3]@A;&8UU\([N?D)V1/LDHZI"+ M;S)8Y4-?]_">=_&-$HEV,EN_.(I?W-FV*1G4]H9]!D4^\+:N#P2"6N"/ ORM MU(R,Z!,Q]^\L4F]3:AO5XR!\@\[G;F3[B0D/N>,'?K4]YFB2BUSM75U7\S3L M6%+%E N6@O=-?4558!E1%45U;;WUU-X:M?:$<&J;I_#,;"E%7IBXK^)H7ACS M,T^IUMV.XFX#B'(M>TO,.3'6S+;LU6MMI\KA5> ZR3?@R[I.*!/MA+:N[QKL1+: U;HCCQ*3.+3;R[S I294/:9G-O0[R>*,=\Q;6TCM^ MI;,61=7S@YF#!NJ>YE @4A);CSB&1X1KK?%RMP]9URMR MF15Y1KTC*-$+6NPEVHEMW>,H[N%7R+W5O1:3(G=(WO)?TAW\,:*]S?UX7@!5 M\6K%B;>>&R_]7)RCA$3B*3$UB.JO;'\!5NN=YS)@C4>SK[>M!1-+LY%[SC# MGR%G%+)N :T&J/Z"-Y3E1H,%M8M 3,SO>R!&>;;HU7A%-W/');U:/EYE7MAM M43K*N5)_?BS.XQW"JNC4Z $7)$9B\#;75^\X86D7*"8H.DZ8>7-?"^,W_J!C M]'A"_M=\3BZOZ(Q&S5D3U:7VL]'ZD9II*>OD] MY5R*HKW'Q!(BW'OO!Y[A6T8)?HB_G]]_TS^ MLX#P>TJ6Z$4]<:#2IS-!-[ ,/_.?K3E9?CI[MDS6Z5_T^_(<[K^@N>;Y4/'I75U==50N8V%OHFA"@ M=0/ESU#W:,T"+*HV:P^^)K8*'*5JJ^*^U<1&67A1M5% 0JS3MJ=VT.1@9F)N MJFLZA&-OM!9'O-W*=PG4,_\)8[;7!.^A? 9>:G,',;PA8HN-G0LI[Q/$ M.%_93]"9:%?Z[1D2QIIL\,@V%!^OMLBJ+G\H?S\'48&KY8N-.;[I\*[L39+9 M1>>BU^GWLC4HHE1_BYJ:0!>\\CR>R5-3Q$S78Y_,XCQ&U9%\.KU^I_>NOB*7 M7II$2_>G, MW\T>+^=KHO)YKYK0F+:"&MXD*B.)?^76\J(0J0?]N+'!\3!_'3ID(^<)T-M= M""!P5?J!V^XVJ$JARAEB,,_+K.*G,X>[,HA190OOH[&?S@SUJF'P>*M>&)\K M>:;KG;S(:9M\)7+W5NN-#6W S!'W,-EMW,TM?2'FS1KS%9%%'*_(5'*,-+LN M@ZA%MG*Y=I@UHLWV!E:P" 9&'!O.I[,EMG;A58H91GAA OX_07 MPW)-RE;J&ZW7$*&9\@0+%/EF#:U0D_Z4;F&216VOD%JZ#N&?(71[QIQ RV;V MTI$_[\EF07BDZ27J>LV$**"C9OV/I@K^2C=T!Z/7T&(/*-%$S858U%Y0F'_F MW#6^RDV%6THL,]S[3[2T/$D3&QSU/%!\@E]A$K14?L2_/F\/U*+*WV9,"SMW M9D.#%_5^IW-3&C)TUX7*,37ACHJ2)3C?A]A,54.?6Y@/; M73A+UPIN_0K?[E67-D9:5H6HP2-HL%NY6Q!KOHGC'2VO7K1Y\ Q\]5L/(L(9 M+V?NPK"9XF[S&>%/U"!R,/1OTHB%=;(2%QR]K?/U(7-<_+B7%L0V43: M7(=XWPA.4'3$F+!,1)"X /&!./YLEXP%2E1N(KC7KJ","*$9$+-X^U#AI\J@ M[S%!3?^XMAQI8=[?Q .#FO2-7?\ CISX4T(] M#DT=XAYI1FM=(RXLJ1AM(H6Q%^)_>HX'8C,TZ^Q-33IVFQH0Z6T$? M)#(:D"[E6M*_@MDT,5*5JMW$H4IGA*^2LVK\<1,5GQ!NJ,L&YK:#+3\O)%=4 MG,H-@^6-[VCBUS4UUD,FDP0P-VXQ<":3M3R_..:ZQS+JJD?FNV^ZK1%/]P3BDQ^2II4ULQD!N./I>3Q=*M+QPR,]>\'OL&&MO2 _+_4'=NS(TM@XY ME%5T)@QT_W.G_T,VI:LUC(6/PK_*-=+@,I4;&Y&.(+HFQ']K MDJU4CE&^N1)\\BIET56>I"%++4_A:\]>LS4A3I $B)Q\'"\C'_G*;G9-+HVR MQ+[2,H>>?P]>2>,H:V;O>55MQHI[V+WI7R8@O MNTX3D1S90F,KHN[,@R6#X]V7]BMT%;FQ.;&?(5+8;V(%FB8V.>J(^HN,S@61 MUS[)3+OA$%-MVVK/F)LR22U7(B+#C4M3-S;L2-_'O\>&:X:]O=G?RJSS_W(YL/.^2J'YZ-;I34)]' M4P>]&^B5Y)<=+8\P,=LI[N7MVJ&>J48S"Y]9K8M%_ J]0E.S)!-N;0 L)A M]M$XQ[#<33T<6IZDB0VNL46@K6"U&QRF%(=M-^SS:EX_S3CFKG9B1R1RLMU? M$DUDGM&!&68.3Z )\LWR-2B[6O_L,M)_)]^$*CY%?R#[J!F__1G[X[5Q1K:. MZDS]MR>S8T+&]VK,GS%S(1+H02M[I_'(F(#OU8S:EE.K?S(C1ME_KR;\V;5> M3V?!"/?OU8!CP[%AQ%(]3=YCN":<8)EP.8E!S5A M.*^>T(X)&=^K,0?$.+4M]T5\KZ:\E_>M7O:\%XE/8,<8_^_5B.$ UC_]]),I MJ\G&O<:"BMD6=#7'+#@W#^T-S\ZG'-ZK1;^?9#C^X=XCKJ*#']&=P@-VGBOS M.T%FM)S79.QP',-^P1MGVA.F2K];EYDU;9?%ZR]CM[F]G1/FW3]$N)";].3> M9LY:Z,PDIEP:J)$Y>0:K(F$3"G, M"\B:V/",<6WB0OR%A71@\CJ$UBP@J%!O,C+3GQ3HOXGW%8K(-^*+!\S:C)LX M>GI7DWGWZ/ST?U!+ P04 " #6F 1518F5!(03 !L)P$ %0 '=L9&XM M,C R,C W,#%?8V%L+GAM;.U=;7/BNA7^WIG^!Y=^:6=* B2!9&>W'1+(+C,$ MF,#VMI_N"%LD[C46E>V\]-=7$C;88-F2,5@VM].Y&T!OSWF.WHZ.CK[^XV-I M:6\0.R:RO]6:%XV:!FT=&:;]\JWF.77@Z*99^\??__B'KW^JU_]U_SS4#*1[ M2VB[FHXA<*&AO9ONJS9#JQ6PM2>(L6E9VCTVC1>H:7<7[8O;9KMST6IUKJ^U M>MTOZ1XX)">R-59DZZ*Y^>7!+Q797[3;R^O+5J/5TNZ^-.^^7-UJDZ=-NB?2 MR(69EM R[=^^T/_,284: 6L[7SX<\UOMU7577RXOW]_?+]ZO+A!^(?D;SP";2T[2O M&%GP&2XT5L87]W,%O]4<<[FR:-WLNU<,%]]J[Y9AURD#C4Z#(?GSU"4T4CUY M0+8!;4(W^<-!EFE0>N^!16N9OD+H.C6-5O/S>1"%0/3( /:%CI:7]/=+J1(9 M6B$17AX7Z>979[QX0,L5AJ\DC?D&!Z2?+6$NV%/K4%,:P'E]M-![/OQS2CXA M\I[IZ!9R/ RGWHJDIXT!UJ-I$[TT@;5I8 ^XH/]?SUS1#UW;&$)2_RNRC %A M#KVM08R@.P-SSP)X6VP/NL"T1,5UNN8H*N.NKF,/&D,3S$W+=$WH'$^ "74I M*IT!^<6[#H.&3*/)QMN385(I@?G[GANF2]L)G?H<(D*3A!902:45" RWFKG,)2II1:(>+R" MF"B6_;+^^ 1<#[/!=;Q@W^0PM&>O2!VY?,?(<7KF8@$QV;P=J/6"91>(?CW+ MP&/KA'PUJL@D5WT0*KD0Y'V ;:*GS@3BZ2L@GU>9&4\J2AJ;#BR=K)3IA#@D MO_EX:(UY[F]#@H,?+B0YC,VWIDOK:C2:C896US;EDK\?QJ->?S3M]^A?T_%P MT.O.R(?[[K [>NAKTQ_]_FPJ@9DA)I@MI$>:9%%+"<)1,FEQ#BF/E;4 SIP5 MZ#GU%P!6S'YS"2W7";YAO#/._2]^7:\?@T(M,(?6MUKPY641;7GP,.D)[DZ3 M8M/\VK[JW-VTKJ\[G7:K>=-N7S="C0XI31='VP^P'I1/_MS3HR@S?HI+QULN M66EUDY ?Y%]@M-Q*S*\$R30880/B;[5F3?,P?(,=4APD8WF"+HI/3,A2S7HED;HL]Q2J6*M[NY.^KQD4:QM\K_;$I(J MA,IG\%JA_CK!< 5,P[>9D,F& 1%9*0GDK :U68'Z;-\HQ39:0>Q^3LC&A!X< MA \1PKO&9]K \>*GL[;_=A7&&HFVOJ;*.[1-@U_\<^[H'6\"3\I3!L;D M 8A,W$72N'M>1U:2_0_=\JA34$I7$\E:!E(SXQ"9I@M?5ON8D*TGKLEBTY:! M/?&&^W2U%9K,>G !28.-M>O.#'QL-)!#$S]#&;B2;+U/6$?5_A4Z%B*+J:F+ M]-^H*PW$#EV>N9\['*8G+Z[]''4+I8@RU&FWKYH%Z9>HV,.:EP9$04MWJ,G) MV^G]A.IP)2K_1,:24"E(7&",G8!/:M 1LTU'$RM-8%(;^:9I 8!J/=)?8_Q,9CU[ M@5&1W;9O.JVRJD7.0E#=_A%W%B.H+B)9*Z08F>&J;CL9(1>*S?(Q*2M$L"@Z M!8\UPK9SP=Z;E*5"I$K#%#&OJ&.P%B0[.5.%Z,X 5'7S3(8%2:J9]* RE5:7 MXZWR4@0@LD'8JM'5Z>TPR'Z90;P,SW(\2TQ,TBCFN_;-;=&>1QEL,:*X5%^T MQTYJJ9T^)5<5&,X"4?7E.6=*2S\*2\M7!<*S@2S%B6=(&&+'GK$9*D&R'#K5 M5_"I)VS\A.JPF>7T2A"/@J;6"?:/?!F$I,L9,2DC(.FEL,Y5P5U0D(A]!D71 M*7@$0E;Z2V2G\K>;K$+D"4%3L/-U#<-=+:A M$5R"CCB'+TS=Y*V4TS-62!,R@A4_X/AZN7-Q_)BWR=,CAH7(X-XO;XG>+Y_. MR#]/_=%LJHT?R4]/D^?^#Y)N\,^^-AB1S_V:JG?.8Z23,EHFYCCU>21TMZ,4 M[R0RG":JQ,WV3>&WK 0(B)P\IJ)1<$&];?$CP;ZVGGMDE/%-,J3CWL,%PG#C M)0N=_H>+ 8%BV@!_#HCTV%:>GJLCBS3M96"[$$.'-W8?L4;U5"A=)_;UZ-0" M4E K-P;!U"$D)J5Z6G!J1A,LK#F,4-L5X^D5XQF^0=N#@1AW/7DV5V6H+S_Y MO\&?*S.4I)YBB=(:MZC,![Z"@\<#B:& MNCL$\VWI,:2%4D71M=J=QG7A"\8TX<<3E@;JR&%P]D.=T6]\-%-OKOL#!,)3 MB-],G1T6,*/$NN$TX>[\G*&$;TD,+.)_.STU_RP M*[@.&NNZMP*V_LF_P1M.4GY*A5')>?D5X%M (X&F==[DQ-5A4P*?@L=@\C&& M1,/BE)I469 *AAQCJ[DI9-:8[] FQ%'+>LP4>0A"'R MUVHB6=53(#GZX@Y#,J)6<4%.AS[9P2(Y4_4(SX!709/)9CSTVWU/9KH%UYV% MDUI!1]%3SW]@,:+_ [,&WZ)8MS^0SUR -%9(W#/XO*LPKU ME$;2C>+HPA ?+HISC H](QBBB.L.=9W1':H[_:$]#L>_J/OP!I7$SL,!SV0Y M@$V=B,Q_6"#Z12CE!)*E'@WPANF]HAY<_TL^K\U[_0_]%=@O\)F(K;]80'UW M?#YUY:=WT:)MGF#T9A*MNO_\Z=!P>)N=75@%P>I[;$_)W#A>1!X%V+P(P%$)L#TR"JP;KD$9B872SN&O_Q')<9)#A! ME>)Z>\:B*JP%N8M%+M19(;;OG>WQ_HN ?$-X:M8*J\K!8O!5XU8E^_D^&.[+ M@<):P2WA+)5#3AJ^CMPEZDB1,>[V 0H^R9B>\2S50T@(@2&JH?;0X3]B&&RH M8Q\S%-8.D<*BPFHK<)QV HW)+)A B_CV3"6TB,'8"DQ.:^(RGZ66" LBT JE MCO7Y:ZSDL*JI^J"R)B"-1!)9]NL;7U M)D#I0?N532EGJ23R$@GTY5CQ7CFVL?VF[[RT&GOS-3U7A5D_1 (!RWP+:-'; M4XZ8!O8;= [QFHDI("JA3IOLU7[WFLDF-=4O!I"%$S,$SU!7)Y+#D/O(.L^K M1K@ =;0J)VYCO&X.$T:J5TX!^Q6"0(?08/=P8LZ*131$O(1S4)$#I:&@>PY' M1NOG% Z8F6(*4$=!E)V91*4FY^B3ET_'O?]T#AL?'19SF',&R;"MQ].XE6ZF M@M11GYQ(W%G\YB<4H:FHV!B^*W^R'2\$7B7B):^P1F2"KN)-J/"4.:3Z/5X\ M8&AP'3^YZ:.(;PEB15T^LY,MA_W(YA,BPY9,;$3@,3'3](S MGH,N9!."D(.G*D._R'C 37\&.B"'/=75LU[P@!!^HFV"32*3%7VR8HV00W]B MGC-0 7G\J=Z@1=LA:'RT,6N5T_^ 6#>=[>74).M#7+XST(!L,A#Q]RQ:":C- M).&^7TSB?UJD$$WRFG,AU;(; MJ.NL&RB_:BU4=PEV1?L">_ PWO=B2$B7V^5Z4G[D41CNBSGC>BBL]=TW0:42RU0R4@\ I?J+&SZ:>V23]J5P&INVI%2*8SER/"K.X-E? MKBST"2&])D*-=O3]Z[AQ,RY=R2B1PW'DI]VY3\)MX]>0I=4$?-*@_BSL?WR? M$YE)8^+ CE+QO.AR$2B.16^L1B0G^P7 M#2ESQ%L MBR_!*#]$]LL,XB65$:<+1).,(B 94ED2CX%@<1%?RC=K,,,9__8N3NHS4B0-1P3*_.TY&7IF1'2KW?)CB MALI(#=4;+7\]?5<+5Y^\AXU)&=7,5ONFHU(7^S7V$351& H.B^&FTXG: M)BX[8RE(%%@\LA-8A_W7#PXH-Q)V]D?"8;\[[=/QCY6J^<668?BC[:73V(Z. MAKXOT#TG>#\S^9')A!SJ=*8]0?/\7400J'[:F.3J<)!'%=\=HA3!Q M$UV+-XSP$Y:$/<&&9SQ?//(4%WZ@\1Y85 VGKQ"ZLM/=%7>Z"]>@^55HK(X2 MS'WAGID6%9&3ML!Q5?!<*RE+5)6OVC>WMP4O-1,IX8VJ0K 4W"S$8DC=-:3D MJAJG*<@4=.Y-F/#E%SPJM;XP[WCEU)A#:^XN["49O/C>S >N]L]/-S)HA5)1 MEJ+KY;15%3>U&JU.\8Y-S!1E[)IL$ZX*5M(4:OB['B%H"@Y1'!2I*ZS4?%7D M-@6=,F;;:/.=)^!ZF'G C1<10-)73#J-#G>;NZET;=]UR%?;BC6T\,V^Y;IB M,H1DPH$<=0@B^_0\GM55-'L1)V8B37N&2V 23<#CQ2,A'5C_A@ ?@C6V0/6& M"AG>8DYZ\I6$ZH9L46&-R+ R>X?6&WQ"MOO*\SK,6MQ9:I&H'.2,Y*=_A,_.FG*BT;MIW[<;Y* M7 '*7E-16 MET?D';2V"15SSLK"Q2]W+RJO<'BB36=!#3AJD+V@JBA"SA)0X-I4[$Z971+H MF8L%))M\7=KE:>^B5-+FF-6E;2O[?3>\S:[2+/'3-@BEU.^K:0$H'J6]]<+/E1Y.WVS6V9R9O"K MK)+E--91(7V.2,^F@@.*O%5+MACU!@510E.]5611JSX))(*4L:#+%W0&6B*. M6W5'X#31)-LV!7.?@4:D@%7=@BF$+<%R*9S_C%2!"U=U^Z0(N@2[I&CV\U$% M+MIBK(]I34ZU.DH5$ 7>:=^TBKX6*4-S3GA%;(LQ1)]R4WF8F;'9$-]'EM#( M>*2-8P$N-K%-DC0G2I51OOX??]QT.&@%/2T/ODE5:7:36"S2H;(/L$U#=$X@ MGKX"\GDE9_9K-O>C)_6[SZ/!Z/M4F_2?M>F/[G-?^TM_,OUK"0;G$70'-A$3 M'))YI?M&&DO?-YZA![1<(IL]@$6#FD),IC?+<[EO!68HY\3=5;R%]\ Q]8-Q MLE+4Z^*9"0_W^#RDH."('H$EH@!18+<$6-';L#R82>$[%K2";/[":H9&]PUB M\ )'WG).C8Z^6K/!WQE[KN,"FT;_X_ M78H:*/<:EC2H296AGLYG)#H2+OA@ M"8AW@+BES=?+-2_^(N#O_P=02P,$% @ UI@$5<6"VPLM, ]-L" !4 M !W;&1N+3(P,C(P-S Q7V1E9BYX;6SM?6USVSC2X/>KNO^@RWVXYZK.\4MF M)LG4S/.4;,L9[2F6UU*R._=E"B8AB1.*T *D;>VO/X O$DD!($B)1"NCJMV) M;3: ?@/0Z&XT?OFOUZ7?>\:4>23X]BQE.R6J&@]QE3ZOE^[YIZ M[ASW>A_?_O3VP^5/[]]>7;W_X8?>V5G:TS5BO"4)>G&75V\O-U]NTEY)\'/O MP_D/YU<75U>]CS]??OSYW8?>P^<-W&>.Y,RK O2]X-O/XC]/?, >)S9@/[\R M[]7Y/S^/)LX"+]&9%[ 0!0Y^T^/P/[/X MCR/BH##F5*[YZQ/ULP[>G6_&4D*(W\XRL#/QI[/+J[-WEV]?F?LF15%\-A@D M W_=@4]INOSX\>-Y_'4#RCOR-%WGR-[ N^&F01[XQ_/DXQO.Z%[O%TI\_(AG MO7BXG\/U"O_ZAGG+E2_ZBO^VH'CVZYL7WPW.A+ NWE_$1/_/2<@E+E3JA@0N M#KAF\!\8\3U7:,+F*QO/)B%QOBV([W*-'?PK\L+UFYX8]\OCL$@^UT$7!6\= MLCP7W\_W&R)FA9$\SO?EQ:W'')^PB.(QG:/ ^W>L7?;R)*N42'_(L3"I!GS[W\ MV!Z?Z@QNA7^/V.$H]1V'1$'(U_<'2@+^HY,H?E/&&/9JB>)G'$28?<(!%Y<_ M#&:$+F.Q-:>VLD/Z2VG1& 7K+UWV?K+ [Q>(<I*?H)DSE%JX4XQN4$&9/ $J@)\IM/BSU& M@LF9S<8UGFW/Q*UQ1S\:4 ZE +'ETQYGI*/ Y @'1?,YQ,)ZEA^K6>%,U M'DPNW9! >%82)7_TV+?6^*,>R0IGA@$G D_1*V9?D1\E+C??)R_"+=V4"6:= MVJ9W\(J6W!;>:Q&MZL[2">N)X7]%7,L&S_N<&93]U*8J1CPCK2X6_#CK(NK& MCEX6DF7_U6.W9(D\;O+-4.2'[,U^[#(9P(20&6)/,1,B=C9':)50@K&[/!^\ MACA@XE ^"/B1*YG](X^9X"YZ9UDT:&<,0=0YYCB*OX@!64QG3*,8NH@ZHDZ& M??IC61*8+=%;'%&R$O_$@YYCAF?G*?SYB^=B>A8@2LD+IF;HE[7$IW33GQCP M+/V%HW[YX>SR\NPJ$5)Y+'-2-D-Y07CN>LO-<,CWF^& =$<;?K0^ ;=W6VQ,NGICH@1[;8[P$P77"DJ!,]X;,-(PZ( MK[3WP^I#L@2UHQ!9WWF,^1^%,S%>GX)OA6&Q6,5<[&8#"U0/M/IYH>AJ"]C+ M0?:2Q;CW.=8*ED3 ,W1]XA1P]$76 *&-EU#QE^T*FO[AC]25^L2XX>9LA.&C M)^S'F1L:H)0T%="Y!6H>^.J.:;@6W@!AJN;C0XE[,/&R/'KS!3_]?6&)*[D_ MX\?EG)_^%J\H=KPL3)MW-"LXU/[ ?[Q3\+V;H8O2W$ZE/BW*E<_S#,\9)FVT,BD"U3?I83W9N27K?$$LK-C%_?7+[IK:A' MJ!>N?WUSL5D5SR7+X@'6RP.8O7LN'0P[;^?D^=S%7K)J\!^VBP7_Y8\1/\;[ ML2MQ+88OS6K%UU3..U_W7>FJT4U&NRU84"FNLD_9IE/XU& &FT\+U:Z>K $J M?A(M^KGYU"OUT M)K]BR-*VWBG^P;8C1,+<%\=^V(N*__+%Q*DX]=T$*XD&UVF2I> MKY$AW0 F0BUIDH9\R,\2DP'%K#$=J/TI5./(O-FUDBSU.*,DB&/O&OM%!UNV M8^2P-D@M82(WIW4PF5TMAX%@SV@%0\S(D]HTLHYC*US>(2@5[[M_\H-FG%!R M1^@]?E'EF4M4OE';E)$UV]I@S93WO5V@/A?<&BD'=" IH7(0B_.AF=2($;'Y MZ5%K'#%=Y/U;MZD>,E5,&IB0.@N%6"(>8$%BP/>;>Q M/T7='2C%OD:^\.-/%AB'V9U?B697@:7,48-!H4VJW-6 &OH J'>E=$@-&O,* MKNI8:+BN0U JWG]!U%6LV-)OF6E<_&9E=5X@BN," N+TPE4@D0"E*)@G1MOU M>@OS@-;QGBKPWB(?N")^=X^6BH6]Q2&R/:&5(6R:[E*M(9TPLV#:Y_&(=YU6 MQ@@5'?$]X3QK'*=K0++KB8HP:#0-A+W1JA4J4W!-;06 MP6W>>*B2%ZE-;^$ZA*)[H?C5W8*: ),%H>$4TZ68L*K8OPYF$PB1PH @21$< MTD*IR *@W'IQ$%/2"E:RK,LDZJ+H"I02;XO0;;<<<3"5FB+5H)OM6P=JETY^ M!H_O-"K5VP1TATX9J%53Q4!6I!:M1<-%W7UBPNBZ!3\!V">.YX@P=KW^#;MS M+Y@_8C\I([/P5H93P[P3S:0QZ<0&UR3(2.=2)5Q*NP8.V"RJ(59B3G_5Y*H> M54P[S6B@YEQ2HFGC7])DF!E IAS40@(B4CI-C&#UA *8+B;"(O6(S<\+3?=" M^2NZ!34!LEWQ'UZX2$H)8'J-F,?&LP?J.7P.R^-0-1IM(S-&C6!R016;JM7, MF!, IE!-&9/&W"A%K@P&3>-7AH-93X[YC/XD-,-1%K!2 Z0LD@%TA;WP^HUG M!0RDAMIJ>K.OI9L/*%R?5Q5=5<.78ZBY< M9R0E<<$\ KJXJAJN&&.5P4&(MRH%0LQ)E,9=RQWG8JZR#D%9..EU0G9/0LQ& M! 5L4QXJ/J$XF)]QGGS,#S37GL]'G@NR(Z;*R#]0=UD2_][=V>!I'J\\5HH[ MA"; FPN%>F";6?6'DCRIR9-"2OV>2"27&?6#@YJ^RB)OR@S1&BVVQ6JJ6X B M7NDRKM&BBG@@#N0ZXB1-&% JYE,U6%K;IWH04--(\P;4]3JQ1WW$9*>3!BU3 MQM9J"8PI6_24"20-6UEA9(01, %=9*@AC25Q4+".D^ M&%/;'2/Q AGW#6I1%KO%>):K&2&9#EJ88L&],HP5%W6N $8_<.^)>-0H^\N4 M_\20$Z?12.^O-VR=.:#KMK8X7?1B)?NR(C]KI$.):5-[" #;1\"([[G)JZ8A M7LJ\/'J@;>*"%,@>):JT#"V8DAH0.X)6#L28NE):A:33-(U"T1FH-7_SDF(_ M"A?Q&RS*##T54"%G;1<(!E6:E#PUF)(R .I<(1-B3-UN^EVYTVWFG:PS4.K< M#T+/]?Q(9-9.L!/1Y#7N5\>/7.S><\ T*8ZUEG<@ MBU:W/U)F1[0Y$APA*0\JIN!:=@$YEG2A-:0VRPIA\/8PC(V\2LQ K2=#P1;D M]U$V)7 MCIG\K_+J?P?H*E<,OWE7-@^=U7I #LJIPN%4.7A6>+_YH*"F95:V5I:R)OF4 MI6<5/MG$6YYOIJL%#*@DLI3#I +_0F98KH,X!0QR$6)1W9\;L(BN)WQ"C&>3 MD#BRB_25<+E7$Q1P5LC;(I%7Y_<8-,H(-&EA^+T(O-]* Z/+3$=(1 MXM1_@YY!S8>O?!>17V64?,G"WODO%I&6!^UEWXJ( U!3&7.)'OE"@'[;/([- M%YN!4C!Q(5Y<2>3XX<#Q1/K]/0HC*JH(;?XL+4I5N^$F>IK& ZD'5JJ &AP&I5H]5X'7H/: FE_)>6*&2.=S085X?E+H$"[/CE_. M2RP<\5^3+\6_I9@5"'MY>7G[XOF^BX*W?&,YCXG:U+'@1R&7DR>>G\ORWK"[ M^!^,K@5 M/TW&H^%M?\I_F4SY/Y\']]-);WS'?QO?_-_?QJ/;P>/D?_4&?_\RG/[.^U[Z M 2N0M)'7%1\JYL\38OC-1N>Z?81C*JY(*"95&>C<$HZ)]$06" D4X4_#-AL* M#NM36/"6U(F>\-EFSN7G@FR)D L@OS!4D%):&SJ630DG[=JL@&U)%KE5+QW( M4! Z+JT2Y5E>1-TNISFZ2Q+$ MFXN6W1(X"#R7*4J>U1*T[?*[[[I>,O0#\MQA<(-67HA\+>\KVG0JAZMF/>?M.9?6NH:S,R;$K-VZZBO;UA2>7#[W2?\2/?KFY!&W1\X^%2EF)_%;G'R M[S#8/4,^$M^_(U0\8:YV0M?K!<)V9";CVJ2MJ!?[@6/=LCWY5.Z G$# M*("V(^BK@99^XY4 OA+TW3\C%L:1N?@A*>Q.R12]BB<_Q$S@]'#]3^[SHCBF MMUSA@,7W]I0^OCUZ[%0M?FQM8=B+!X"T(]%BX>CD^.ZG%LVZ@K!,'&"*%!:, M1HR I!2:97-[E3"YS"(FR"=*6$UKLJJO3M7B)ROV@X9Z^+J0Z/B!E*&R,PB+ MQ%Z3PMB>. ZER"V84Z*(E\7T/)77N4?,IPWS0CS!]-ES<$+[(W;(/)%KS,]J MPZ.E83M5M/==6"]O>^.'P6/\6YSE.?UMT+L9?W[HW__.@9.!>_'(O?](Q_[?G61] M,NR\G9-GSG(OF0O\A^T4X+_\,0C"N-:5+,53\OT0D[.JF36B[$ZN_S8L1%YP"('NHM$ M^B8=3]Z#5J> 8*S6$8Q!P08(UXL.7DC#NB5<0_N,BVKL*:47WPUBUE^\O[B, MV2_^\D>Z0$J-.1D !+>XD;X(OLH( *GJ*N//O)F]A'%3D@P4W9J-J)@<"C1% M72;*MW)V@P('^SYV[R/5]*G=!81\UCHB;48E(+_Q)T)<87\*\\RC<5:\VJFO M H:0E]ID(JKH 22?+6KCF7A\,GX=.'D3^#?LBWR'+TQEBAJVA9 YV$1ZAN19 M.[L]8D<\P.4XXGDZ$76F). _.DG1AGJ'LJN+R_*A['%P,[B?]OHW-^,O]]/A M_:?>P^/XGO]\D]9I@'^\NL#T.O@[NOPPF M_,>T]UZN^R,X(G)JT'Q.\3Q]$C'EE>X$J&_2?9T-LL3;DA,D>:"MLJ"UH@6< MPYN)8'8K/2O(LNQCDZ-F4'Y;V0;(V0(UPSL;7U M'.$:V]8U\D7X=[+ V,3Z4X-;6&,5Y[>ZII^:)GBBT1I]N@9 ++XJ=:N22YO9 M5NDYG(G J/AVE^J#H%RZ05! .O6ILV"2,F)-F=&HHI7N4JKVYFSQ-N M2E)^ANA7.C"96@]\!8_3(*8D1'Z*9'S)413'25[8BS.1_K'PG 4_B?B1BR=X MA2@_C3R(4EIL3%.$RZ)M8P ([NLZZM &#P[GK%8HQ0@]$=H/W+3 RN!57#G' M@U>!5^P*)4\>P..9X?WRH2+@(V);<> MQ4X8_[)5PY14Z8[:O#,(N6*UA;H'O:T+-AV)KRH+G-Q4ZK-^T)\G.\:.Z+3@ M$"I]U1:.EB)($3T2,+YEQX^%9VI"Z-:"2\JPH[DR=&?>'D(IIB;64@T2K<7: M)M%JE>S!R+_CR 2.A_R-5_86A4B4D5B)7_@V,!)5)D1YB2'?YLESLG=S6YT; M@)&/Z+;;>H&Z'W8#=9,O#P^C.'&S/^K=#>_[]S=#_M/FV:W>;7_:YW ;[.++ M=1O\>GD$_T^/H\AA4RSS \$/^$V5)M"N_NXARMO*UD*-WY[V*G_3Q1%T#"'ZG&@I9N.BN(:N=JY;+511B^ANB M[@N*AYV062A^U%V_K&P$P9=04P2FI-F=*%+;1SM3M"T@N ,:3A4M7:V<]J.0 M+,F3YV,VY?;T-Q;/4>QO$=:XRXW;0CC+-YDYYA0"M12JO.@F#>WYTXQFA M./?>87]):)C6XE'9BHV[ [T]:J7=G&9 >J D/=Y;S F\Q2N*'2^KUV2@,IV, M#'JK;[:6')(]QZ^(-E00I/(IPA*=*M]?2.UF_ 1K1??J# PAGM*M M;A#N!0 M3%:?I6YTY<>FT95LP*.*DV1(FX5%2M"=/VZ2BO!3D4R6C#F3<(,)VOU0Z[XG<($06I M_#?NMR*^K2?(#((YER06S_:(_(+(C^_Q)F^ER-W1YLT@N%BJF&U !HP* M30FF$FFYS[*TGA^ABS*C0/(\BD).!4@(,\5(9E+L 1VT,OPJF ]C(] H MC8SGH,\2=V( '-<(''(HOJ[RJ9Q4"XS=TOQ0)*YDB..1W%]9]Q#R4]-#2(+I MF2]0[6UQ[27(BE.*P+>7(ASG@>50[N5Q/JISC$9"9D>;Z@ZZCRZH$+I>?T9_ M$GKC(Z8[^]3J >))R%2HI8B".='6XT(WJ.E/C.L=B] CEL-]-M0SG*R M+3^Q)W@QI@^4N$F.\S5ROOEDKLV)J6H$89MOJ,2%9_4JR+1<:I,B%PL"]/E+ MNV 0S-X#2&>7,,N5&HDHAK+"(>[/*3;(+-,U@! Y/X",="1:O@N,G[%/5MB= M8F<1$#ZKUW&\02^RRE808M('D%LEG9:O+44L)$M,XPN-' 6V\%85]9-T+2#$ M<@\@-"V-8"W**@^;65-[3KPP2YD^/PY#@\.0Y/ MCL.3X_#D.#PY#D^.0R"'XY/C\.0X/#D.3X[#OXSC\'LKS][,OC\5:_\^BK4# MKC!>LUA[ZQ7&C[CN_54]5K9>]_X4?#D%7QI(_ O#L\@?>3.5_]"L*?"38$/W M?)Y"P YYB8U=T^U^>='4[;X9N[<=_.16/[G53V[UDUO]Y%8_N9=:=JP#=R^= M+.V3I;TA*LDY& 8.%<4L;G'R;WWQJ_KY/FUP);G6#/);CM S"CFN&W-\&)>$ MCX,2]2SO'R\NRY;W[>!Q^+4_'7X=Y.SNX?UD^OA%&-Z3(["NMQS2OF!0E15"?7R"'A;!25NI>(8= 3@>45;+J^"V%M/BLIQIQ^9IVO"?H+0WW),$[ MJ0%2*:@R.(3S<&VYE8D =/\G?^Y]C<_I&SNH4C:2%A 2$VN+1T*'13_$4SA^ M\KWD\3HFGEHAS*M?Q.MH;7X^&G_K3X?A^PO^4Z_XH/!!/X=:K@($8U3J- MTLD!AKW,-T','M!::,^47*/@6U7^NQ(>@MVL5ZQBEKN2$#@2&8<+3-.?S>4B M;07!1&LF'2DYMNVS_-*K=>_L D)RW1CM(#(B(/&_,OU"#0YD#U'KDUH.!\N; M4+VO2+'KA9LK0%<7EQ\U[RJJ@2%L"U7ZLGU$44U'&SR>\L6P[Q,4J#F[ V*3 MGV:*L>'F#NYM\/ 6^VB-W5N*7L1X(S[<'7(\GY\3U5PU:&1SPZS)9P-JVN!\ MO#&+J:7F\PX(!#/$>#78P1[2KE?M5E5 VW2M:@E0[W7'[&+-TW&#*%U[P;S" MS:IK F\"U9!CF1A0+M<9IGS%31*-\ UA(;O':ADIH&&X6FN(1T$'(,F(4^,T M/35J7$1;$ CWN6O(H(@\&!]W;'VD9H2':R;;_73QSL31'8_1VPYR?W-TG M=_?)W7UR=_]EW-TG5RHD_I]-1[Q,_&?Q2."^6."W.%J MV.8X_*V&Q%BV-W'(K8+Q+,%-*Q0Y*(2%QDC%"A:GE)13R,',>00LY+#W'/B* MJ">L,)$YJ+$J=\$LV)1&?CRE3;E+ AS.:VU)&2 0*U*E/2J^PSC=7B,68Z-= M\B?B6(V?,0U$Y8KT3GDPC^\7DAG=?!D&+GX5-PXK9].>?4((%YE) M>$]"3Z5,@WHAHU/-TE/-4LN[\ZEFZ?=3L[2"E9LBAQ,'!WP_((J%4P%G81%5 ME.0V6$05-%A@>CK^EX"ML./-/'Z>EIV7*F !++9:]=GP74V"/=[?$8H=Q.1. M,AV@[86Y4GG*;"\3 "GL-#KE,AY=+N,= T>D('^+_'4' M^I$;IE/U^ !%/7(,."+M&#LAX>R,U[U^X$X7F&(T"U6Y,QT,VZGV?(2B/1J& M')$V"=/\W447B\UVG&X]@!=0%";/@B/2D(U%WH6:[ S6K:XT=UFVS8')&2;+;. MJPXM7N6@W2H/*"^NE!^V%"G-HXGKW=XL$)UC\6E#4 WMJ.RI6Y&WXXVM)-*2 M'%/%NT$KC^ODX'6% ]<+(XK+0>V&?70KNU;\HSKR6I=:JCZ9!O30W M[*A;H1[4;V9,(Z D,D,*RMZP^LV[E>NA4P!UE(&59N$Q/9&O[7(%=/@'?G(R MDJ>^@VXE>HC*A^:T 9+I2)+&>$.62R^,H!:BG6(%:9?<(!IN)!XQFAR[CH8KT:B^]W'Q,:#?J3@:BLF/;=\[:='T%MQ1%F#"?< MN<7,H5XL#EV-16V+O_0E4U7%N&H62RZ;;F?*U>GFZ>GFZ>GFZ>GF:7?K_\Z& M;[0'C"!<$C,DJ%C%2K- '^&EL82>,=^HN!42S&/"'K%0W.PWX='2BK:Z,80+ M98UE74T>I/.'!.4!W^NXC>IPRWN<:"L9Q$9K#:EJ^H!PT>Q PM50"5S&C_Q M\8+\VG,UUPK"I;=(<7< E)]$Y@;<7J!\3KM\-A%M>[]QE*&W& METP_TT80;E?5D) I68 FWR-FGALA_ROR(ZX\,;9NGU.@NB"O:P#AIE.#":4C MR9J[;>L 9/W S?SUF]_OUM[VO_<=B_'@UZP_OIX'$PF?;XI^%T&#OM,@QZ*0J]&(P.<[+:R;F03E]=97%M PC.$6/65]!B.Z N12X7V*NL M8V7>@KU#&%Z MMZ(Q]=C002J<%,L4$?H9A[LA,8);%:.4\J*+869I@DA]9^X'["9$[1:N$YA?3>..*0 M'FTGR*_[IOK'BZMR>&$R^"1B"W%HX=-@_.FQ__#;\*8_Z@WO[\:/G^.'UCE8 M?N!>//(1!!4FS@*[D<]-OI2QCWA%J(@#YEAZO4X_ZF(-C7KJ((N0JS0CON\[L.:87WT9JL@$?H M#7_$SSB(\!UG6FR2(2?\AQ+=PU-VLW@/3+K;8<_V;4GN_9DUY[L M6L!V[2:=-54:IK5HE=#'9,LJB; KB1M"^63F^\B]B"K.E:E.!O"V;_C5D8:& MC-.)[X#A\>_KQ)?96]<1XS8N8]E4UF3*5K2QL,NK#/K]=GE#>D$_*A-4-"T@3.R#R59+*2 99A==AX'#=2XN(,O$V9]D7IE[Y0UE MLZ80]DG$!AE'"^^_%>E_! J14MC@@AK?V RM0BI\#I(,<_G2]I9J96?R30$%+5 M#RQ["96 Y,;7LJV**J15@H&0,7XP&95H QQK3P%$)8W:,?8?FL;8TXS19-0C M"*T7]6(\2Q OZ$=>,W2Q]69=G8+K=8+K^XCK%%T_1==/T?53=/T473]%UT_1 M==#1]7VW^5-X_11>/X773^'U[SB\'B^)FW4RF(N];"?*6!%GK^@#3L#=B%AU M2-5T SG"T'M"F$+>V4= L[&Y2#-BX'K<."A*WUF-E2Z-Y-;UO?W8T/=6'%Y< MJJ M:EYX5?2U<=;XPOET+0J[:R6@!X5@Q33ANYXJ0$>,.^\5NX(,;#1/U. 0LGOV MF2%JRFR\&_!!1":4ZM/ MQG$-_FWL!.)E#:Y ?.-1;P&[,+:#:Y4*L5GH=W%OO=SL)_*,:: .7:J ;,?( MS)DJ0;YUKCY$3[[G? GC!Z'5?)6"V8YRF7-6BCX@F^3["'.IJF#7/$:?PEFG M<-8IG'4*9S4-9W5O2&^F5MYEKCC$:& M+-FJ\O4USC(:@BQ((E&?/"K*(XT& M%L"1IE*G-OQ7DW$X_C/LO)V3YW.'1$%(UXD(TE^V$DC_\,>728G=^0^V#SF5 M*B(8FT?8\D5#^50<53VH5-G,XC-*AB05[A1J5Z0C#&G_E2X3U_.8:?7@.RL5 MR6D0+RXD=]X>/?:M;AC]?<,P>F'@GACY".+G.]S21G9S:WY53>TI64QQL,)IR8/R9+\(+-A"KT]\B?WTI6JF/H75[L&TKFGL8 MZU+6@7PFWNM>TJEH?SQ^]7IT69HYO,G5Y5XSI]##\?CFZU)F9>;4DTY%>YN5 M' X\]WNQ5XJ_]9S9XFGH>CWEP^FSG=4MX"0M51_SC C:GOFNP(E*8%F5 MT:QN 21X:Z" 6F'E2;(LGW3V[Z"HOP-?U0I";-A ]0I"JJ+)KJ"V'LMZHC)H M!\'Y7%-8!E0!6_>NU] D$NVU696H@KQC;5"MMVWM-(.[ M=TDU4R_ ,G&6T\#$6[%I+.H>ZV\0*&!![E@*U2NDA,Y_8.HJ>,YTY7;D5U:[-\%PTI;:_8I\3G'6%TF?C,PA5-^"]^RO&>__;' M3;_,Y>ROMA-8C)*=-]AVS+;[WV5L$W^UG5MBSC:!+3#WT:@B-5S7P%Y2>#49 M^@#'T2:"[Y#RP/F$BPT@6#4["G- CW6LK=SCX]\17Z4O&?D^^0% M<71K)6I?7EQI6E M'X6+6+=$>H+& :%K "=GNT(8TC=8) 39KL8MPTSK?= W >*,J-:Y:OG B'W< M(-^;$1IXZ(YR)5MX3"!Z31!U]3'\ZG80_!TF"EC8O*K)LOV6T)5%KVUASZ0W("0O&.7V=81&O MG&%*XPN)<8W?FP4*YMS$["_%56-CP59U V%&[BWW*B(!5>XIHRHY*2AD:]02 M0HW!FN(TH@O"F6[PBK+'3NJ]',=/71LLE MP='K ^9[K*M9"4LP<"ZEU%K\2E0 8;MVB=N! K*J295&RFL8:Q='YW>,Z-7% MY7M]J?M=. @KD$)92@PO8PZ%Y1\,6?X!DJ^H%LL_0&/Y1T.6?[3")WV623OUG/5O-L-O$^^7$\&?_\BBJ0-OO+_3H[ 05-B M@LXW(P?M.FF\A(3^LKP2&HY#1B> 0@JYBA3+2?R[:.D3^M7P0 XK%1I6(1,8 M!Y@28OI;A')8" >92N72" .&P3)Z4(EIP.6&+1+ ME H8R/JD4RF='&"L3/HN**P>H&2 <*IX6"Z/,FH@"2 RCB6&AS( J56*+4<#A:W4M4XH]CU MPOZ=^X%[@U9>B'SOW]@=80XS?O*]I-A^ M68:MC #!(V:B *T0W\A?]LMY(I34R?2?_Q]02P,$% @ UI@$53.IAL L M= XX0' !4 !W;&1N+3(P,C(P-S Q7VQA8BYX;6SLO7F3XS:6+_K_B[C? M <]O(KH[)2.9E9]O1UW.B@2$A"FR+57'+QIW]8N$H$ M"((+#JL<,=/.DH"SZ9P?MH.#?__?+WL?/>$H)F'P'U^\^^J;+Q .W- CP?8_ MODCCMT[L$O+%__Y?_^/_^??_]^W;_SZ[OT%>Z*9['"3(C;"38 \]DV2''L/# MP0G0!QQ%Q/?1642\+4;HNZ_^_-5?W_WY+U^]?_^7/_X1O7V;43IS8MHS#! G M^?ZK=\4WYQG5,/@>_?7K/W[]_IOW[]%WW[_[[OMO_XKN/A3M/E A-Z2MH4^" M7[]G_[.F#!%5-HB_?XG)?WRQ2Y+#]U]__?S\_-7SMU^%T9;V_^;=U__]X>;! MW>&]\Y8$<>($+OX"T?;?Q_S#F]!U$FZI2O>7=>3G!+[]NN E;<'^]39O]I9] M]/;=^[??OOOJ)?:^R$1D7VLPR9NS;[VDZ%!M_*>OQ9=%TQ/2F?KOOOONNZ_Y MMU]0PR'T[U'HXWN\0?RS[Y/7 _Z/+V*R/_B,+?]L%^%-LY1^%'W-^G\=X(2I M^!U3\=V?F8K_'_WHQEEC_PO$6GR\OY8J^EU!(^O 5="RR]>#ZK!E'GFJ!_^X MJR[53IWU$>[,.M_0OVIJX9<$!Q[V,F.24N_W]\T?1]1WLP MJ1FQ9507W8G_#>^^B<)]LZB"7=CPY3_\M<%O MF^M24R3"<9A&+N[THU;EE]FZD)&V8%"/@[[N?((LH7<0(3^!\ET%"DMR9L7JGE9O M ]K;)*+V]+B2*F)D)_.ZZ\ -(SJ$\W,3OFX^#],@B5[/0T_NA&V]P/NDEMIU M%U5V >VQ>I+W=. :DP7B;% 8H8P58KPF\^I'Y^7:HU,%LB'B1+!EV):W!^_) M+:K6?5C2&+3WMLG52G/_7 O_0\:K4X^P_;L'PG-49S6_!.JE"Q[J - M#4$[ITK>GHZ9T5SD?R"^E;T*ID/14^7>=S#$^WDZYGM=QWP_,\=\/ZYC/CZ' M4SOF.?US%3V&ST&;&6HMY^*4I^HUNF39; X.V2#M4.[(2+,9)R,^M2O>A7'B M^/^'')3+)DGCN3ADHY*-/EEK.0>W;!9X*,\4U!$E/^TR*!. K\56T5T4/I' M;77/T^9S<5")HHTN>M1V#DXJ$WDH-RW6[#F'"1R5@?8RPHX$-X^^!NR(38H4 MZ8>5[X Z6J.(QLF'W*THM:G@CB5^^W>[,)"?SS0T >Q-,H5RCSK^'JA72<4T M]2Q.$'&*TVW3/& WC:A+OWN_?B3)22*KI E@[Y(IE'O7\?= O4LJIJEW<2HH MW*!W[]^LOT0Y_0E<[#%RV)V>A]?].FQ2]?A[P,[5J$KN6;4O@;I5LXS&/B6H M(4%N0K2Z?'%W5&0L.4V6- /L6"K%CI&KV@:HFRE%-$LQN M19$G?.$D3B:/U!K2YN#=5*WH<7Y#4UO0;MHB]H[OGZ4Q"7 L'[2/ M6X'WMT:UZOY6:P+:WYHE[>EOG"C*J4[F;Y=['&WI\/]#%#XGN_-P?W ".<[) M6H/W/Z6:=3]L; K:']42]_3+G#@2U%%&?CI W&'?;_/+HT;@W;%)J2,TK+0 M[7R-@O;%0D9SH#V5"W!^RZK.0_$F2R08(,J?*8XS14KI"L2NX[_=^Q$\GMZBJ: ';=-P>+$ M5](.J).VBFM\$IQM]0C*B)&>\MY>?F50L!?W!J_H9TVK&U5;P![9JN+Q!=*3 MAD!]LEW>WA=),Z_,[I-RXI,[)0L)/9>LMIR-0YZHU^R.1;-9...IM$.Y(@?( MJ1PQFYI0]I'C7P<>?OE/+%_GG+8#[(1*U8[FE/5&0!U0+6O?F:,@BSA=1 E/ MX'Q+ZO8>#RG?:5KB''\/V-D:5?7RZ*9!^Y@PZB8(*C&-],KF6NG<.I?V\E]LZ=>+<,//:?RW^EY,GQJ43Q M,CEWHNB5!-N?'#\]WH'MVA=X;'8R0356M3H"CMUN\AM[.26/G,!#_(\*HP5R M$I3S0IR9G>B>V XN^P.7C.R,N:[+:NO$]]C%5)"UCV]QTIS+J-D%>)3K*%P; MB!7M <>TEMC&PW)&')74%XC27\BR&R<:G2?1.:KH'&"^?G-\/WQF[\B@31@A M+TS7R2;UD9-WH4W^[2]_>L>C_M_>+=Z]^Q.#O+^E_BMZMT#\31OVU06ES&ZC MH6_%I_1_J9T.F&>/^OWWTXSF!6' )SD_DV1WGL9)N,<1GP6UPH1>3^!HT4'] MVHR@O1M@[.@BO?G3(H*'>%@JY[) G \$,)G4"&+F;R7 5\D.1R5BRMZY:&@& M/'1EBE7C]+@-X*"4BFKJ?)Q@900_<;]IXFPDO2*Y7I.$U5V$#P[Q+E\..(@Q M755PL6K[!Q*#Z/4$'GP=U*_&HT8WP"':17I3[\YXH(P)GS<*CS_:*[,3S5.: M LF,;=!R&W@UG;2[&]BZVPCP@_FUK"=2X .ZX>3!%R8.+[VCG3_.@.,'80H MNHO" XZ2USNJ2$)AA.W''=AQ*?U;G);B&TQ%OB?;7;+:?*18PX1=;BA"T95Z MND]]]@3G!3[0B0#A%7EIS^6>717^C?]3"F 3, 8>[],9OS[VC\T5,#)-J+SY ML"M$7" NY((/NX6<_%^9I(B+BKBL;\/-6RIMOJYWF,"H(C&JBLR)5(6V-8D! M_V/4[>XS:7:A[R&R/T3A$T\LB?GVI)U1:086%$,=-K7C)*/@#V'H/1-?9N7* MU\!'E&-%JKB??P<8G4]$-'6ZG- H47G('\I21>;@JK"3#,P68!LD!!A1MX?$ MB9+)M5OC+0D"=C8]KHZMX]+H;CC-AC,UH<,*]C2- +)-PI8^P.%/2^7:OK2J M V"@U)/;>&Q1U2ZT3-E^G[TU^7604 7(VA=ZQ;,BDVLBD?]*;@A')67]J)\4FL M(';R26D+)[.%K15(9?O^E@:(BAM#&E[\S MTDC0YD\15D90.V$YA;Y$Z)LX+]CB "D44Q[.P8_ NA*G)[N (^M(P'YGN38O M%0U0M7N[EY_:3GD:/=#>O,7Q]X8X:^*3A.!X&7B\&!8[%J"_)#O)2%Y;+B=V MZ X<&;H:HHH=NGT!HTMG%4P]OL*H.%=-7FU?R*U(I7 M[CST'=8*:3C7=4?4-U?1+UG8N;B;WTNZU;V3QL!C4ZUDTW6]>DO M,=DB<._K:AE=(%?SQM+R(.C:BL HQ=XIV,AM(6T//P[5JAZ%8G-CV-'8(G,/ M5V644=- :2TF1]:U,CA:6H^.IF*V1&U7=!((RE]=. _W:Q+P!#EVMY $6ZHK M_2LF'C^A#H/<%*]JC.I%$#B(]3=6%>7,J0&&P0&4,@VLG#6J\*9 67!'-?:+ M D]?QT73)QRM0S6>6C1:Q3QNE9'5>5'3#6I-^-'L"AQHNAB@K7K C,"CD_A# MUP^8" Z,R@>,9P3;\X_;,,%Z.Q#-+8$'LD*]:MPV- , M?C8'U>KM&H0E1K9V @Y2>TO(;'C,"*DW! M![OC 65"/[+>XLIT/H\_J?4WU1[&Z%IJPK*E] ;MX_ 8'NT]HQ]P5--676,[=!;(IB_[&)NBMJK ML;4-*G!E>0NH>P$-*0]UZ9K*T.>"0TY':? N[H"T>-ZU2MY5Z/)VZKDK= M20*V\Q,8R22*R3A.V^8V2$-TY($H73&8& MS(G;J5UP%V7%O+A(JB?&FUL"CU:%>D>/GATW QR?*FE-/;*@B3C1A7@$?(&N MXSC%XQ1;U]CC&5?36&CZ;]]\]C",O^4<+N(=\_2)$[H'W00MC9?#H/6^&UH!CQX98H=3X>K;0"'K534 M/C/!, 5L&/I* O5/TI"]7^B=]\NWK-'OFF OGN_^.LW?U1'[FQ> U]Z'F'[ MSHY_YQ#O.CAW#H2NVBN&E_PT6AV!(X*^\K4J**V] *-&!^&-:X44+!#C@4B M,BXLA:[$&$LU4B8U 'O6]"TU@"NXV*IFE#^_Q?>SJ:J'".]P$%/8$?5\;\*8 ME?)=;1Z=%YG=.E.!'OQF9CFJA]2%!&18,-2D1SVAXKW [*'?*D?D4V96@N4> M)PX)L'?I1.R!J+CV=MV&N$2V":75$7A(Z"M?C8+V7H =OX/PIKZ>LT Y#_2F M_EPF9V/I$90I]<<9#R"[RMK[=/ #5ZZ<>O<8<& JA)U@M]C>F5NM!^0@*B?/RN&$SWW:N26.I]/8, EDWX&BJJWB7TOB D59; M] &26BJE\*WGMXRC[$G2"U<93%#G]97OL8O)$QOTZ)I.[RD S:[ @[N+ 9K* MD*OZ 0[R3N+W+MY=C086*2&H9T(0 93(ST M, Z96G3D_% CV-@MOSZM6>:")/6LB]N4'8&N-@_\^)2NMOG!+IV+\7WG"Q*[ M?ABG]*N6V4A_JL#19B"SR?.2.I,$C$A#:398OI,0 84;)(18L(TED53!%P3B M9DE%%.O3'S@FC)M.ARU %=5Z%3TD;"^<:W^'(VX.+0,J.L\*>-J,(,<76<_9 MP$BK H.A!<,&.EX+7AE*4&X".R# P02FR'*RBFPL](8$= ;C^TX4HP,U!D^X M.CDFLX + A.717:8E@4;.LT*!V1*R^/_N,=LXEXJ^&#Q+CB@D@6$&!]1[2RV M3_(J>8R+3^$$MDAY[6"RHL,, [JN;%LPB]8S"^0CH8<.XA$SI(T">'!UZ\&; MY3M##-Q5F7_=P5[U7C,,X0:UV^*XTF5FP=PD^= 1O9+?P+$7UN,H7H_MZ@4& MVP%>2<@>:LNP)TG@T#"$P217H3ZEG<)!U!KFBM7\]@@A&,_>[F!%^XY;@WH] MYP,P738%-;K- RY&VP.KHP+ O< )C0!Y%[!B!LTM0'6/^<2[SN:?HOD\XGOP M_:]Z7 /9\YM 8;"[?2>Z*[?ZY*WG%KCR33Y)TSD%[$#[74W!.FKY ZW;(&-I MF]^=4(7D@%JV7@^9O9[=<7=8OP6Y27NB<_L.;4N7N2%OR]ZLJOV<,'C(SEC=7%\L'^D_'A[I?SYK#W?WEC[3=]4^7Z/J6_OO24H&' M)QRD^(K^[JR0*K/ SR39G:*5N4\UV@@C/*62/*VU8EB>F-5-@E$LQM MU:FSZ""6)O9QLMID$K2>NC:W!0Z$2A7K<_B&AH#!3"VO>23&"3O)S&'+_DGE M&%I>D B[[&G3.(F9MNX1_K!Y.@UU7L**?NWQYOXK_5K4^O'P@7Y"Q).H[(C7 MV;-G?W[C'WQIIV0SLY30B]JSI-Y@SWJK&<1O@UK'D5MI CQFFR3M&ZT/.'HB M+EM?9Y[-R=N+V"%U?'!\)\KK+SP[6[/7#)Y]+^ Q\\U?OGG'XX9]DL'+0[K. M$2",Z*9L_U;>Z0"5A#D%=J\X\#!KM7ZEA!!5F=7+\M*(K3]"OIE-64$-"P[6^<8FEB1 7Z M"J6?4L9#&5TR.-MMA+>4*=OY2@,^6O/(\$C";SBPLD7QR62/ M9;/>"79W 7&SH OHP%A\T$"G6/FP-QG"(&!OKU Z_%@EW\,[1*&7NGQ9$X7_ MI"WB+SF%@_-*S>NCQ'EA.R;K,$CCC#C>'_SP%6.TI@"P(?E(S91Q: ]6V]X) M7MDR*69,_04J]1'%(-\R&WF\96[PB9=3=IR"<^4VS/CFPT3E;(NS1IPWJC*W ML+BR8Z33K:Q%W1L;G7"Z,8_/\.#;MS*5=-Z5BN*^W6#I]KC.6RURO!'_+'83[;SSP++D MVB:]K8V!1Y=:R=J;#XTM 4=NF M\X%EY:1;8A5U#^ AJ:%N-2X5S0$'IX[4QKD5%=H+1/_EXR)-HLJ(#IYA(-9H M]@)X*D.<)(G8F9VR@YP'[%.:VVR+BRE=V^#*)OJR:48;QY8FEM/;1(8QSZZN^PS"&R9:LKC'LPVLF3EJW[2T$ M.&3U93?U[RJ'(H8S)E]:3XT87W\QER>9XMF8:NGJPW5 #8+CI*9IU03RTQC- MKL#CNXL!ZI>?V_L!CO).XIL/9(+)29#S#:R"U0AG0=\)"P0\T4)97F9:0V3! MOD"!K=,O./I.MV\GA735+H:J$W!,TU/Z9$-.V@,PCFD*WF^H5DY8+&ZTC:RW MO:CM&K SCM5.83K'"!W/22V$9=MVP'C*BKTY<9_(^JA:;G;D]1Y(D%*55\4V MQ1G>A!$6[1Y91MKE"UT\A9%' B=ZO4[P/J:VXI'B*L:;C+:EY=[(FE;P"[U9CZFI M1B6Q"70M=)2A]C2K7)RT'F4?MP$.-XTJU5:PU0: H:593N.5*D[JA]5HF201 M6:>)L_8Q*SERYT1TDF'IQ&MP7?.S+=_>P?S$2DU53/P0X1T%+/*43>6H8*L- MQ@('EP[J'U48;^L&&(BZ2-^C]G;)HPY4_&R.73*F_!82U+)^9#^% MC<1)@%NS5 T1[)S?<[$:]&<_WKD3[Z[\\/E'[&WQ#PX)V(?+#37G/79])X[) MAKAY_KZ\R// +("#S!@&/3EI&X@^8-@:150>RO*2^=*"#!-LY?,;T@?II@KV4]V=X+>&!KJET-[I8N M@ -<5W)3G\[IEX_TLFK:G(?UM>%DNF<#=_% KYWUX+&Z9TY,7$W3Y&UG%KHU M%54!RQO.*$SK\@X9G)PRC'@<1DE.!=)#V1+8Z092\XO%(S4UAL\9Q>.QQ",, MES!B>M5UH(P MX7C\W7LZU+ RN;O0]^@(?TNJ+_6IW_YX^K MFXO+^X<_H,O_^GC]^'>[\2"LP$YFPX#^,UZ^$%D^?EN?N?B_2N5&OV_J, =_ M5\IMO(/+B:*2*OJ%T3W9@YGFJ*&NX46X=XBLOKBL+7"W5:I8.V1H:@C83=7R M#N6>Z!=!V(Y_BDR>#YC-LB1F.&H"W!N;%*HZ8?5[P+[7**:IR^4W 00Y.XYV MSAG;\.X=XU\&YEQW-44MQG4[0X[WSCH8!\'J_%IZ M:=1N\$]G@Y(3:KV(9@4;[G%"%X?8R]/ E$ @;0P\ZM5*5D.\N27@>&X1V-1Q M<[*HR%>T&[)3J6FK'%6$J3P76/SW.CC=IK\/??\JC)Z=2)9'W)T*\*@U-,M1 M6:LN) #'N:DF/0HF<3[H3<[Q2_9H?)7I'U"VU_@+8XPRSI8 K!]+)UO44&N MXSC%WD4:46B[PQ$)O9\8H9+>#XTLM$]7,R M T* L::?/L:U-OGFG6"+!%\D&"\09[U .?-LHR]GCQA_2R\9VS%5EF*S*7)N MN#V(L!V%(>K] >;OPZ)GDNP0S@TG&AYRPQT:#&<3GH1B4L/)#^9-JC+2$*K&-]>08 4@CTX.^/R[U8'7NKE\P9%+ M8NFM3Q,Z\P2K=M/HSJ4:B

/^C 02R*Y2VCB%+D.9EH M_8JJ[>Z<5_[QDFW++')@6A3(%+.@%**#PJC1[=@7I*Q/E9;>/],X83]N?(_Y M&=AC^.B\_$P%9CMDU))785$'!'M5AY&>VO>A"!S"!C!7/2'%F!Q@4!M"JYY1 M^9&A%C_*?A6/[* B\^P'BG*L3B.?O]AZU!2 B=+,1 =JHB0WD4"F+3>1G0D4 M%XXEY% #] ,B0U+ $:B/@6K3* ,Z@#&GESKC@XUH:0MM;!JG%6:L3X%4Z]M[ M'"<1<=FM4]:*SW]_B.2OP9C2@@XZ?4RDNW,D)009=GKI,^(.4LD\0Z)LZ<8% ML'6OVXZU&$.'NCA;JD6E600&.8P/KQ.?!L36G$>U>!T(@=J)S1."-(VDO8'T M"8&0KD)C'K%-#T/]MHI@H)#U*5%E>?H82JYA<(.MCZ>-]_A?*8E)@A]P]$1< M+(Q[C]UP&W J'.S;5\5CL06.KFEY0* =DBZNC.$BKO M+"UJ^_5521D(9[*B3-@,IE%%7%LWO(#;GX\"F5'=ZF&)S6=)5<_CM+SUHMD5 M.$IV,8#NTUXS> :FD_@C/L55O@H#\8&H@2W1]*"@[>)@^1M8L7Y-L*8NP*-< M1V%)!;"3]H"C6DOL4>M]G2\??D17-ZN?'VR]LLT4OXO")^)A[^R5[:=?!ZL# MCNA8&VR7;D*>Z)B.V]S=B!#P(# WSM&CWAVI Z8'LJ8AA$;\?@#E#E3EB#S MAI_[L%<5"]:HY+V@8VA /TO9QUD#ELQGNQZ\!>N=YX]-QH@Y-PH+^FUAH AXI396HUKXIO 8=V@Y!]0O9HWDK_Z:>\C/9=&(F4MZ/* M![?4RNPES]#W6;/K@(83CL=YY%!CFCNP.>R_95A;[[/%>N 2GSW=6$[?'\-A M)@,CL0*. 6,:6+IG.! ?P+@TJKH#[0T68J$3Z&-?=YR^6)^GS,'D46'RX!A> MV=?L0_[0]J%J]C0W.YQIT 4^4%4(GZ'2OWV>Y.9>+>CG7W] YNR M2&REW1EX;'V4U]<>MXSC,[-@F1UTD.'9]P(>[M_\Y9MW/.39 M)__@2YZ8VOTJC"["=)UL4G_INF%*UR7Y&=+U_G"Z.=*]-]"@-S0#B_J.72V' MO1>Z*?.>IC68J2:FKOZXPV(]R_;R$>%$F8LG]/-#+@;:A!'R,D'HRE9(\M4H M\X F3)S:*'J#YB!W''WV-< MD\#))U'L(V?/8H5O+FX#\AM=9;!8XB#KQ#%[Q)$U)'N\0-0^Q'5\_Y4W\8FS M)GYV^ISLG 3MG">,UA@'B$Y)> B*RWB4&(GX_F0F#'IBZL=\0D$^F_,-$M().I,A&N? M;,7)^+0CA*V??UG:AII:8F:9C2V,':#MI'!'(#6BB\.(+)FYY="R$P&@@X^Y M,=1%H66] :_+#908N-1Q>;17/.DR[KF>1E;#A%8YW[&*1KPZ4>6TC0U"8JBK MC9B!2&O&FPUVDRQ5:9W&), Q&]/$?0,V4MDYI#LU6SZ'O\2TWZQ 1"'^P/!1K&)+5K:V\R8Q0Z%O)-774JRS>1:#1%:ZXYQ. M@,(]CI8,R+3-I:(PN\AO-8<: *3=9X4#[5H,# 36"DW1U8Z0.Q A.*2<1KQ)S?A32O*;.IN4"/I M/#MH41E!8XIQU'-6T*%48)2I1N4B C" &,460FE0,9]O@-PYKT;[B66_V46Z M1'6]G<2LTZSB6R;[6'N(&1\H3T\.K7ZAYZ%93WL1':44[LJ3CBX6.NTZQ[B6 M&* UM(_ZS2VZ9>(/'^",$ZJP A3C0QLAU]:7:POHB"#7_+77YFF5RNSB7\LL MW8\+"A*S0@4]328Z-B@80X&+<:U3F*$G=$@28D_5N2?;7;+:?(QQX^)=OQ?0 MF.^H=I'1VMX%>O)J!PV,QSF1A1INV!VW+*J]:E1'C"/[/F5;>YSIQ%G^$UA! M@FB<#UIMV-,?EO8JIK( )_@VW+PM?V;@5>(D<-^) %#$,S>&634XP',; R4F MK/XVSHPF3!Q?-:.9V"8GM4V:*II HOKX G'0Y245!.:)WAH&$<#1!14Y@LY8R'N':O?-EX+758^A$ #C4 M=#=&K62E=F_ T&*@A'&"0<:*OQ0AF!55&1:B+,.")QU8K\TPI5&H^#NV@JO6 M8A"7/]B*B3V#R*ZR4^SB-Q+MS%>H^B[&7GQ%HZ>A6H4.:G2B !TVNIOCJ-2M M;G?(P&&@18]K^YR7&$P9MVI%ERFP0W>N8<\J<6:57@5=)ES9])ZLP<>)[L8P M6\$ 1@D#)29$DI$&X) ML=YK.L(R)0044_H;ISBF-J("_>2ZGU+]#[/%F46^44)53'T^/O.@$069F@O* M(">*6#$)UG'B6J<%QEV"^96#L/MF*G8=*,N JH8T3W. MW7RUN0T3W)+3KV@.%&IU%:U.TF1M 4_%6D7N48FN\-T-XJ3'R='7WQ<>3==J ME 9<4YM9^M5-K!N&6:O->80]:=U]57O@P=FJJFSCMM88<'BVRSS,]B.GS0)5 M4+>_^SJLLF=A%(7/=/",41K0<1-16?;(#YT ;1R7)^!F%;L"O@OK-EIA\H%5 M)WI5[8%';ZNJLK%U+M';+O,PH^NHT6LVOHZF+O3X%=LP^(8=_]Y%)'#)P?'S M"8+$<&U]@,>QELK56%9V !S/>G(/%--AL'W+W3ROK,54X92'R.H27+Q.#]P0]?,5\K8[0XUE;^:;, M;WDOR'&N+WSO[6SV[$O)A$6$*"HE^-A.[Q[1 ORTD>=<)2%;AH@G.%&!!=O( M&?:]J2JNY7.-U>8>QTE$7&H/CG7+9R?RXF7@?0Q(\WU[,S) @[RO8:K/\76E M 3W1H8]*ID%1/-!'@G)QFL]9&3A$!?LL3!PN -^92YD(T[_3-[F1BID$8UJL M9MAE_I)O-HT2G!%EC3AO*VD--FS4; GN)HV& );#*AF6.A$ "KGFQC#+504\ MSS)08L+<5%"I[V/91)'ZWI2 :@4VF#W8_[.)YQ-=-_(78W)X8U]0U*Q_4&EY MAR,2>J=E5MA+AU2WRQ>7OS!U3Q'\DK\;)?E=)A<".'S9^5&J$#BM!(!AU)(A M^BS\LF33BAR+ZN2-?\GF*L>?U3H(T5%#A:<%*A1 N0:(J8"$#G:@?6:_$QL> M))7#W/SWX7_@4LKYC0]C_%:?.'H/#L:?*K9"@DR4.XCVC=?(TPA M)T&8O=VQ04*-$2WTD#A1,E,;K?&6! $;1:66F@3A']+#P><7=QR?"7SEA\_7 MP2:,]GSWKN7&JWYOX*C=T0Q5?-;L"AB)NVI@&A!5/@))&2=4867]=NI4IC@7 M5^V(A[PT8BC KM<)&&#G5K9>4:;VH7!X1^6Z5;R>>MP*>&Q+U*J7-:\U 1RK M,DG-B_@*>H@17*#;H=\JU2\X/HY>MMX?"/?XD9VZML520T/PX213[NBA@*-6 MH(-**FR/XMB4).(T[LT4F0040(0,E6I2;'79=,"&2D&L3ZFM M6["V[/ *^CQ',LA,2FHF':Q S PQV_/\$L;E;LS%'[9JZBRBPOMO<"#E);: M=0Q2=@$-,7J2FR.(Y 86REG8 H9Q]2Z*7=(HYH5TO2P+&L"5I%6T=0+RFY,5 M8HE#GWABAR'P[JBU\^RYU2;#2,=_H)^(,KPMW:+E[05:W5W>\W\]H-45>OSQ$IVO/MPM;_\^OP M M)S&/^"4YHQ+^.L9OTB6%#YRU^SMY[IBNHNR@,Z)]N-GH$WCE/IHF+ M-Z9Y&WX;W= .:#YZFG-O)A;L'8-G<9B/2G&X[*._FEZG;IE,Z/<&CE =S5 O2Z?5 M%3#.=-7 / !^NKS]> G2T=L&Z@[=Y^WJR@%7M^]\G7U N!>,Q"7IG!5ZIKQ0 MS@S R#B=.6P&_YGCL].*AQW&R3WVV7WHGE_3OQX>EX_\4W2Q?%Q:3U&O&J-BA;81L",) MX,%@8A!9QGI;?\"!8:3&($DD&3?$V54VJR$L%Z>U"EC0N, 1>7(2\H2O XJ0 M:;Y>_A%[6[/4P'X4@4/* .:J(DP/+S_:&\#QL @;2-U3Y*?7I@I1_(^]#ZM0!MN3"N9HPIWOEN<\9/:+5V+)C"$8H8(3+TB<\1(WGFQNRDYL MBZ%A[3S<[TERE,X>K#A^M'OM;G6>D_ M+>^OEV,M4O\>',.*C:TO!.GESX)'ICE5@W)MHU-+E_FYK'(\4K6?E],.![]E[4-80\^X2ML.U4LG8O7$ MV7,6#SNG=6!1- <>HFV*5L-3UA9P:+:*;%P/:WE_>WW[PP.ZN[Q'#S\N[R_1 MF\N[AR]!>&O;J*)J/S-_58XGTL8S\MCA0#6GS!XD0IPV@&%D1'4A1>A-&,?L M6AU5%0?N:UMRA+0U\.AL4;.6+M'<%'!DMDELOBG,BP!]P5O'_^ D M+%I9&81"2=)^&TRW+W3/[6*">MJ/1D?(7MU)?O/, LH%96Q$L9 J(P #T31V ML!_K#^DZQO]*<9!>;$)%YM M*B6R0I^XK^)_V\)4NS/PF.UFA'H)#9V>@*.YHP*FSL[9L$3\!!V6CF*;N)HAE[Y;# M"[HQ=/T[=B([CU=\C/%J61%!3?Z/D M&) 7!.&%U\@*#WJCXHEX[[Z[S9[*"!%WO#ZPZ)W4*SI_:!5JE^2[+;0,R0!&PKV$TJ\7/ M;3%NK,HH5>#A368FMX^\0OX]=NE__5>T],)#@CT..\6'UW&LYG/A(1>U9F#I6O&H+H2*[WE#7F<@\G+>C43K4:)_/(&>H MR*CUVB<:X)YPM Y[%6X?RSITY JW 3'=B98LZ1_<'?92'Z\V9Z^/M/7.*((R:RSY M5#CGB_);E[]PUI;W(2R;Z+QP+NHNIS82R73D?53JB9 MBC?#V^9N6AV!XG-WY:MSM/9>@.=E'80WC82/#A(:H0@(N M#,#,P4N2[4+?0V1_B,(GL=U@)VFO@,JEZT8I]FZ(LR8^'_F4LS8C L !H;LQ M:GE^VKT! X2!$D/$1\8,5;B!@0I+)G$RD_@E-\L(\4,8>L_$]_4AH:G';#! MJFYST)\TGT64RZ4>PH=SZ@!C>5S%W?)=778>[3I1],J6C$^.G_(&V]PRM15E M&I#$^C2 3E4BS&ITD@3?D"?L7=,5?; E] = M$&YA4OX2CO@E^-[^AFN)TAAO4I].E)ZL3Y'8*P$=ETV-76:#>'*%F['LM/TL M4$HA]A 1PY^[@(T#AM"CBFVR0VORY/_[- C#*82!Y+UX=T MOW>BUWSTYFS0Y_%61ZB.NR\!;48[1=; )HSV'A]4F>T:@]8BY'SF@ M,3N4H8Z>(S&B!?WT>0C5ACV&)D7JLAC5D,,2#?G$.$#K[)7EF+^R3$H1K;QE M8L=LV?,F]0>GV=$SYX\J J#5IGSO!, 9M$VK5?!98'/53MF%5+K$"H-L\47G M5Q2Y>8&7./2)Q]=I-9L/_U;4D26H<:HO=Y\[\>[*#Y][ /V '.!C_]#F/'Z= M:B#R\Q@A!M=VV$$CY-!7&0_X%DM(=VE 9:\TB+'9@DM#JHUA0K)L_ MG74RDK#QI2H28C(A)A3\ 0>,=2MCT*F%'3T+WY<.FS]IQGJ6CYW=V-P+J+UJ MQB7)#X9?/SA)&M'_:NX3F% ".B8-8)[Z_D)G,J#W'LRUZ8=RB^.@612I%J\+ ME+.V#F0V#76TJ9%Q88DH#,+JUJOFJ5@JZE*^H&B&.MTH $<; W/4*\9H=P>, M+B9:F-=@J;PP"AM+IC2+$D-J-K..(.4IS_&+1)49V-EKGBVO?9S9E1IP9.EI MIN9#T$ZD "-.7XV&.$0\?>ZKPGO!,C:@7$V!9#7Q.#:A*Z_J!@%/JJ Z'["; ML$47P["HO+^2W7>R@U<7)':VVPAOLT5K=JE1:ZZCVQ!=$#]-L-#QT=-,S6-U)U* M8ZBO1D-$U>ES-@O$N?-MO8P_P'':GL6"=+^FMJ)_/6.RW5%F;YTG'#E;C-QP MOZ?0%#.!Z/HB3>*$6I%GD<=BSY2V.%#YT+HPL9>9^/(.QFO594TW:N0@H0NR M^.2B;NMS!SUI0@>U(4RF]X*P!D'( #>(7L9!>[P,6:!ZP4(APA_BQ@OA\FH^ M$T$="-M5EC]V*OAQL&73RV-5)693=@".*^W*UNKO25L#1@0-H8UKZA7CUA(H*4_E'&)OW'/S@"Y9=MC[1O^AYHY$E5 M88%V\B7 N)++:.I8.;5LSC]@+;LX2BJ03_]5NA3]QS_NV?7,Y0LY1O;C[X"Z M4J,*S(UJ7P!TH6;YC N;,4IT\D1I3>PZ'S!#1)ERQ;?0W:>N1LV!Q%>07>A( MPIY.=!'N'1),YT8?2$#VZ5[J2,?? W:E1E5R9ZI]"=2=FF4T=:B,&OI%T)O0 MI9P7M4L=?0_9I9I4*5RJ^B54EVJ4T=BE!+7A7$ISTOU:69+?D !?)WA_/&5J M;0S4S?24K,W-&UL"=$!-@7O-VE]KF;J_,.J(D[=3D+KZPM1%&C5E^+JF M.@K*7C_+VP%T42UQS;/3*J^AH9RL_:?/!E/P!@?;9"<2.;BJ!T[?SFMH01JG MCK]BMPXB\8HJPX&FS1K-+L C44?AVKMIBO: (U-+;%,'SHBCD-\+RLS3I8]WES2:S\^A!]F)TO+G@?>I^KNSV//H9JZB MSSQ=NJZRAE.+#O-SZR.Y1W7L'GMGZG//H+8S=!]XW&@ M;8WB'4/9OL9HP3-;9;0>8!Q*(YO/*4I@3;8+U:$;4*CHJKC&V 5YCZJSZ*.. M8#VWKR2CF$2WXLF/Q)Q(LFB*Z.PF@[MW'(,58V;$_]-'45)TQ0J%\ MM*;@ND""[[2C\N=L%/7H/K5ERK2O\KDL-^=A95*0%VUG3SZ3B,7631C+I@+2 MQD 14D_)ZK#?W!+P8-\BL*FCYF07J"2,&&5;#SR.K">O&RCH6@G#4JW5YB8, MMKS.N*@N_B/VO:LP^AC+]OYU^P(/TDXFJ,:L5D? (=Q-?E-/+[DL$..25>3G M?!:(,7J[":.W'T_KS4YSJC>-%;CF/M<\*WMO.? 5;[.OHG/^YLEU4&U! I<< M?*PZ#.Q+$SA0#&*RVE6,/@0! \LP>IF&6DD8/;![E$[DQ>CC@95"Y352^^?:9QP0U'<49A1<7K9E0;PH#,R237(.A$ '%1F>HP11!9/ M/]E3NZO-,BNMW7BFU-(4N+NK%*QZ=5,[P,ZK%'<4'QW\$D 7&"\$*^028M&6 M[[YYIW1;W;[ _;B3"6IPK=,1L*=WDW\,UV>,WG[S;H1+"Q,L+]H.!8>@"SQT M!C/=$$N-.9P[#J>;\?8Z?JXO)JHRL..(MC5'ST/+WN&JL)(4T/AHCCW)C]*/ M(O 0'#L00YP6 ZAE7&^BS+>%D@Q?M(OA1#HER1*,=HX?GRZ'3#-WN3< M33@O+*,KDPOZ]]"_14GV4T6U(\,- FT9S4\1WXY5LQ>A[+X?$V5FZ ;?@-;K MZ$I,WM(%.$#I**Q;+!KS%R?E<#/R5@\^K@,WW&,:9 D6*1:N>/)( M?LRA[@'S ME!WFY\P#7632U ^ZX4M5JBY?C1H =5"ZK^9VA MF+]GS&G:/4VHOKVK,3=0- ?NEFV*5KU3UA:PD[:*;.JK]5>E(4P&FE15S@24 M'6;HMO(Y@+SUS%QWH-%?YKS#W\7.-C3B>^QB\L26>[TM7H! M]=".:A?7T]J[0+^1UD$#4\>]BPA_(Z]\@BHN9K"N(W;',)O:'IPX9KMH3B83 MB@JA%BA@>>"N$&SB9ZPGL-'R5&5(FX4W+?D6&MV 1GY7Q34V#F]FD RA+?H( M&X@WHUR]OL/4/.QVQF.8.'[&[)R"2D1B[*TVQ:7)GW?$W=&EM)]Z^ $?G(AB MT=V."AVOHDOQ/OFQFX_" &A C&?,8M0E )A%[4HH] M6\O$RA^[XR](<<'JEX"?F6R(".%0G$F'#EP\EKF$,P$G'IEA&3>3!JTVB,M3 M0%XA$?NJO&+.A4*95"@7"PFYT"I"N606KI[#M&SY+"-ZX\3(R7WYRR%7/[Z? MK:U6FRO'S9YL9MM<\6-X0>@$+>'_*&V06:=QZMB#&.0!HK>1RB64*27HP-]? ML3X@[^S9>H(7C"UX4T"G_) C!!-/!GI DJ#,%>3C_''*.N>-"!$9TK0P6F'16WR9;P,EEL:CDU6 M4C>'#+,:BA9 JF@+'2IU1#=^[04?J,P\PSZIX6(^D6!S8/H%%C7N29!/=A/$ M)VDQU<#GG[-6KG.@KD[;T5Y.@)SM]+M1XQJK9A-!'K&95H X!PL8-Z&^F0]0 MV PCCXZ/!LY@Z00^B),H=5E\Y4 ?1N5VY3U.'!)0^:2GPOK]@<*EL2GJ)_F: MG0'O['77P?SDO^2$2E8+=%_9MB_864H>GLP:@A(KW )D*[]\S3P_7+@-$QS? MA$Y \=.[$J MK#P4YG#>N-7"6/?-"6;_*1J,LODG!!CQ=-R^8$4-T21 M9G(OG9M.<;8TF2W.F5\<$;%(0:$PPL2.=,E7>>M+K.5>W/U5?R^W+;G-T^P;I1W5[FS>DK](H($D: M8;YG_L+^4E^55G8 [N;MRM9>KY>V!NS4&D*;^G)!.MO#%<1[W:N6OKBZ/Z1T MW?*C$WG/#M?E(=PD[$_5*ZSMG8#Z9S>E*Z^UMO2 OBFAK\ KY9X+-O*)7RE MF;U@DL;\-1.6K.U$?,N"!)LPVHODP?@U9H<1W-M=YT 2QR>_T0Y%0NJ!&H2E MDWMTY2JD1L[AX!.1?#CU-N[XQLPYH)P%-TW.Q&Z!A1M,1=R%OG>]/T3ADTCN M5PYDZAY D:*#NM6A3-$<\%BF([4Q,.2T497X&(/9,DW"?;@F/HX?H]3]560G M8+^<;RHNKNOW!>JP1B8H;V!H=H0^T'76P]2M?\([XK)J-\G.H:L-BLI\C#OP M>^[$?T5T>&,[L$%\""->%_* 0UXJTG>B+49/>?^R!R=PTLVES4.._WXQQ"ZD M8RSOSN[W9??MZYAGE-::T0YSWF M&-YUP4?:U>1,@ 7U,(J7^,5G/L4:@E36$':V<7E&)>:KFGNRW26KS<<8\T=@ MSS"=?;&#_72?\C2,Y9[-X7YKFJP.0 XX"/0U5&V#V) 68.#HK9+QYK)@C#CG M!>*\WX8;]JIR_M+RF@N *A*@J@AV ,>:P4HH2@,/1UD),RQ R=IC\P#, 0R9 MI2-2<4E%SUH7V=*:5QP-=$!\&L[ \7Y"\VO-'(=C"W@4F5+[@>:PBZ/U:7E- M)1N3=(>DJLRLUBCV1L#HB7Z#JOF\8_,Y"O--^&P-,]K+ 0=T]7.#J6WP6C,,""1[HEYR+I9.*L76_4FX= MV-Z_[+==.:\I3T\K#CNR5X@A+/ %X.;A>#JS FD\ M4V785TJB%'L/Z=HM"COQ8I>->2B*QD#A2D_)ZE,DS2W!IVVU"M[KHG3V" '. M,HHKMZ0SQJC&F9=WY3.4&$=/Q)V\4,1XYI#K:Z/ ^/AZQC4]W28])YEVK9(= MCC*A;HBSSJOTB@=D)##=V@DH:G53NCJW4O< /*72%-S4G3GY JPJ#!8H8V%G M\C2%V@-.%R[W!S]\Q?AGDNS8IC<)MHTS!4D[H.'6JEHQ/VAJ!'UJH)2YSZS M=:+HE658/SE^RK*H\PK Z^R1O9@_LI=]^%RRYS>2G%=>,(C]C3,)IYXEC&*9 MG"BJ4K4P-1A7N6>%\4DW]1^=%-M+K]X*,/?IJUVY4JKM MQZ4.&@Q4MEX3L#RVT*'?A&N?B)?78O9J$Y/)XXN:#+OX71'V"F-*W?N5?

[$-1=.FI&HTJZ0C-E;/*P$,I.2/_]0VHC]VQ923O!;55EP MDV1,$.=B9Y9F3?>:+]DJPLOFI&=AD,9MRRQ96Z"0JZ7B42W=TX: UU)J>?ON M"&1D+2^U^CG/V] MK4?A0ME12("C[:N\(,[1]T =2*I*>>11^1+ZEF*CK.9YEF6!-6<=IDGVNB%C M4>0UH CG=69BX6Q3GV$,J;(@-FB0;.D8@B-J'_:(7.HS2SUDME/%CDXWV"&E MK7@ETEK[P ] ?16&CM/OQ;3!_/ ^]/VK,'IVHN.G@]0M9^*+#>HU M>6.EV0S\L4G:_A[)J**,K*7;,F,H>+ZC_?CY\_%Q=[A!VXRAY1W.*Q*0!-^P M0HS7=#)!1ZRU+Y+G8[U-3PT"P .VNS&:MT;;>@,.;P,EAMA %#\,XS.?2=6;;)VHP \1@S,<73-3+<[X"@QT:+'=3-5:*Q? M$6>(.$>;.[@*HY0FN77VZO=PNE.9;\"HS*(9-$TDYADX2DW&"9Y%+7086[N/ MZ:PB#T>KZ"X*O=1E6REGCONK'VZ5[Q"T=@(>'WI*UZ[3*'L ]GY-P8WOE3#R MB/ISR0!E'.Q6!^=/@[+P4K^HT= ,N._*%*MZZW$;P/XI%=7X0@I_JY53M.N! MMV' TXH2O-Q&6.-U%V4'X%[9KFS5/^6M 7NJAM"F/EN21B5MN]Y[@9^P'QZP M]XC=71!2/'_E]0W4+MS>"[@?:ZI==>:6+H ]6E=R4[>D8;U8C;]6'%LO:F MY8Q5LRMPK^YB ,V=C9L9',YV$G^D#4#KI[@*(ZB>@]'H-E^GESX)T]9GGLX^ MS.LH;9MU%M^%&5WW1U:$FSW"0-D@4NIN7EMLS+CN_!I,=T+SC?UN+\!TI#)/ M?!CQU19E!7I3\"QN\WZIJ-P^4>QX>".? M-)Q826KBSF3 QX^98>H1U(T&Z!@R5,4\BG*&XN7VAFVIIGBR]?S!Y-9Y>XA" M%\?L'.,1;[$ MS7FC-SGW@8%%_QTV6[9JFW'0SUV6Y4PV1#P1X17Y():G)8I=T4ZH9$('."(9 MFT;SC&%V2&2NRU@G#%,AT !G#+]C3T-B942>G(1:2W7%];05<-R0J%5/E*PU M 1SS,DG-$R%S>E:OE99B7 =Q$O$*+O>MI^%NRK$ M'L!W2^HV[WR6 IUG[U$]4F[*"YXM76;CQ7*%F[WXM/TLO%@A]@!>G%.W>^^2 MSI0PM6!R3U=W#\_.09E]+FT,W'/52A[M=#:T!.RM+0+WV,GD9%%,:2(GOPP$ M9KH0_T CYB:,X[/7'[&W)<&VFA+?<2*A10RXB_ M\USA9@97UE32#K&E=F/Y-EHIRVW(L-OQE_LPE;[.I&@^&^]L5K391>MM9^&G M$I'[.^L"Y:21H&WGR&8T30OMG$;M)@['*_+"SZ2*E7JK.9IZS"8HI>HVQ^5) M\UF$IESJ(:*34T?%+@RC;SM"AU=8*!FQ)VC?.#%RV%NS+EV#);EU>)A:3B@G% M#B<4^YV2IL"=5:5@U5N;V@%V5Z6XIOY:]]$%8H1M[C,>*ZG<9)0VGIF#RK<7 MFUO.R$D'VEAL=E.;&XMTC8#C._'._6-XY@2_MM5%E+<'[JZMJM:K(DH: W;: M=IE[K"1QC#+2+(./$[==TK/4=I7L<)3]K>^_S;UFY,4*M66^W-!E)AZMDGP0 MOUX@SB+_I_6:G]59O?(POZ$A<">6*R=?A@&?UBJ$-=\+J2VW[.;Y5;5K?<1! MT7Q6GJE^ED'6=C9>.N!#"T>^NNC_FH+D\=+S"'LD*2HSO__FW7?R)TM5C8$Z MHIZ2Q?.DTI;0'R5M%]SX9)Q3+HMW(T9;.IB/%G*@M.P1<(]TN;KT0R>0A]EI M$\C!)5&H"*FC[Z$'DDQ<4\>ZQP=VCXMM[[(G?$GE8=\#CA(*YRPUBJX!V;>, M.6+,T7+B9WN'5IMKLD0W3)<1HN@"^\XK]BXBYYEQ8FRN')?X)%&\5J_3"7*D M:2M=Q%YK#^C1J*_ /%)3A[=SM@CC_)'21&U5C*6H./2*6:]6!L; HZ#M42]QM(XCAE5!$GNT"4L*T"8F/I M6:CH,HJ\0@^?Q'HD=EF,VRE+R #P,<+0UBCG, M*&=G>!M4H8=TS6N,VJE>.HDJDV=)GJ<4]8)D&7CL =;L'^I7 3ITGP%J=#&$ M++=2U1$9! M>:JD+"[+EC,)S0:!AXK.LKH]Q#@=17&^@,R"U4IHWN.GT'^B-A?9,,H3==T^ MP -52^5JO"H[ Y;/;G-3_4RZBA+I!KDR+C_6(,3&EFKC1!*Z<>2IL#=5Z5@ M;91I: ?8697BFL^)&%$V"\I\U*IK_N1$A-V+8+?>%=<1&IH!=TF98E5W/&X# MV!6EHIJZ84Z0%V"P>0FAJIGR^D%CPQEYH?S*P6FKF7CB0-<,CGS1YLW9,RH0 MDT(Y2)\T NZ%S4I5/;#> K#W200U]3Q&+O,ZJQ/$,/#"@%>@63O!KZO-!M.Y M 9/KYOIL=:^>,6KV!>ZCG4QPM'/1WA&P1W>3O\?RGG)!!1N4\1'._X:S^M)N M$#Q@-Z42K9YP%)#M+A%GY:P6+"L 'FZBXAOV'-<+*PG>BM1]:0(/FD%,5@VF M7@0!!]DP>AD?QPKNJ&"""OY9_#VLKFCXE=]S*1 38ZS1*8Z22E#2?Y4!2?_Q MCX>$LF4Y8P\N#NCT+&Q8'*K: 0V<5M58,$@; 73P=EG-BX4)8H.O#=L\+^/[ M,8@/V.6OBS4N"]O:0O; -A4++Y0UA.J)K?+V]\;!5X>:_G@51MAUXN;M6V7# M&7ABLW+';EAO!=P')<(:5_3,R$&Z/'/EN+C#781:C/4D2[#W23TC ZDT\[J(P MW>[^E@;X_9\IAV^.C#I(I%G!KDXJUW=+:_&8* M\G-K1\+:^\S:AZJU]]VL#6) >Z#@SE>([_\T_JAVRNSS&-HD1AYA?#OB]/D, M_F]S.P#>*W8<<_=KM#6+H^YL3I$[T^H[R>#?R5*7. MZ?,8])K,.\:*KL+F\QGN&K4&![R9E.@=1X%WC_O >UW0T\YF UM M[2&',J6500QD?TO]UPG&L2J;SV,8.S'L*,=M&8_/9Q [51DYPA)U-(GMK8PJVG\?PUFKX$88[ M*<_/9_AK-P$XG,Y$SK=S>"&^4NZY#I"__Q"0AM"1?XTAA]2F7R&1_@H@!EF6 M9O/M-U,L$BM\/H]A]-2T(V5E"B:?ST#9H#,X0.;I:]]^,_>5XN^&GC8K36\[* MA#[ZM=L=Q!!X@=W)1L 37I_' -ALXA'&OSJCSV?XD^@-#HIS.6<_^/UN+WX_YL=4:?QY#78-P1QKL*E\]GL&M2&ASP MXO<<8W=3V!C&T%9O#[R=,A9$S_3R&O!:CCWF< M]_XS38)I,P XK*Z>B+S_1!)@?O\1H R?H_X28Q\0OI\\ >8#"9B05^0%>^<[ M)]IB]E5A[@Z_53NE&0Z!FN9I&]=:R,QTL-+5RC3D:/2BO>"!-HP)^S$O(J\$[/@03'M$&[0Y=GUX\42'?PT1OQ]2OQRP$&,::3&,4J##:\T MS\@Z!\(BF'_OD832BI%'GHA'OUR_5FG6Z'#*15U-='!>F7UB\;GKQ#N4."^X M^F_"'IG <9(+16U*7 8-];X>85^L4_:#Q%\RM9P";ZC@'HZX3*YX)".9A#J^MS$"\$>_C=/U/["9LDN8QA,GQ M%@2HCFBB(S@MT+18261,494K&! =T3"Y_@W>LJB[R( HFF'V#?E72BBO5[JJ MP?$N]+U+)PI6:7*7S1.:+-2A+V34[&J" BUU.T)'RD\6:3(2:FDK%J\\4\EBV*D>/[X3/:A!%BE%B; M:I.)@74RJ^;3KH(3*E@AQ@M19BCG9@%()S=$X5A#XJ0 Y^66KGVV3H*/9+]( M(_:"&?8)WMSAB(1>HR4,B(!&3E.CE!#:E0)X+#56J.^TH0368^"C^.HD-9!U MG8!B[*\8>5P>_ETQ#Q/2(2'>Q)AIS7H%RU/(1(+M!'9IP5%[KE48I^YD;VM> MYFF8:?@-Y?R/JN*/.-K?A$ZP?'*(SUZSODH#K\,&0#>BD!%Z,*.U[3CK4X2. MX,,I.,:&8S-*+Q 3!3%9%JB0!G%Q(&PG_&Z]_KNW$YJPM,&&T4,,4/@>*Y_YL0D?CA$V/%6P4].1-C0Q-YBO\Y.M^4[+J:$Y@/S'8TC@75- M*O."\:Y*#08YG#$2G%$8H)PW2PC "Y2SM[+%\KN)3$!X*CN5!MGX(75SBK%% M"D_$+5-F]'".Z U/UJ'_<*F87P)X"5MJJN-[S@;=@<*RJ2'D+V?+^P)^6[>S M"M.@"82WMDG1#.V6(M:[80F!5*Z!A#CA.JWK-! M"BTE!L.*8FHA9AJ"(2HY0H"+42UR#0T=;AK>9#\/]WN2,%M<8=P*#]TH ,<' M W-4 :)#=\ (8:*%:4 P7NQ(4W!#.3NV7Y0S1)2C=8R8TB85U3<8!DK@.,;X M!E/Q+G#L1N3 =@$>V41*9B]E#^@HT*YN+>KES2%'N8;4QE'-:2\0I[Y %?KH M%\[A_P)R8Q;:UPG>'Y]=Z?>:I3N?J-WNTD67V;GUJ>1CN#8?S#B;$_^>:)0: M77GZGY-CF0EC=T6'0;[.YI+<8Y:LG/^+G8DK[:+1>1:1K&N$TX!NZPD^KK45 MZ!O>!:,\T M>X@.>@6$SR$>W1&D!7U@@*BS /T!)@P6L0<'E"XD33 -HM5F) MB4QX^4(_.#Z9-*4Q0V!H-4D;/D@)S PFVO48'"T*EFQM*YBR2S*"+?HEB5*, M-HX?GTZ$[6'(>&8Z@9*PL CF',# R#T.\+/C=YY*5'O-$"H:U&Z?/!1=9@8' M39*/,%W@3,!-$X93_22H>2C'/*Z!SPR8_B1P$O7F52@F-!-Z2)IL;4'] 1% M?05,'?<>'ZCDV;5/L4!&)$#/.^+N^"=AW;/Y7= U+KW:F_B>_/@F$1Q.<:\$ MN.EG2!.I?@)CQ<]L;X)TCV/BI8[_D^.G%+NYUMZ26B*1@+^R U" TU>V.KV1 MMP8\D=$0VAS,!&G$:;/IB:"..'D[4Y$IU'WBZFY3)W*"!!M-- 98QU"9SL,X M6:[C)')<670VM0,>E%+5ZDN-HT: 0U N:Z]3-I8!$R?HEYRJMKI2JRA[@$\^C34K8:AHCG@>-21VM1Q,]IY6!;)TAE]6R$Z MILJ%CF&01:M/G#5++R76$FW4X^*,AD/E*#B'P6^X,6'LD8X_BZ UD>Q?R9*_ MP!#@Q/;PQA>>\3+P;LJ0%=M*+N_L-9\)=! M*DQ8MBG?1I6O!BVLG7(!7UN\O;T7<%?75%N^Q#KI MC)=24?;/%5L+"^US&= MZGS@HF$-8\8GT;N;E68;QAW"=WYA.V*XVIE&CJ7G8_:L5TL\VMD5FES-R7>' M[LEVEZPV'V/,9T!+5GE^Z;KI/O79L?AR'T8)^8T?[;?,-OI3!0YC YE-MA-E M0!(P+ ZEV4 [6ER$M^'F+15"G*/FKRQ4!$%52:Q/BJ!84$R9T!L2N'[*WFHC M <+_2LF!WY-F"R;>@K^\0/:'*'S"V>,4 4Z^_!X!'D!*:,8ZIC:,+ M7=HJ)M]J(5L3Q[\*8,,BY%+=LUCY= M%4K/Z(:B/5]HZ&Y"31#1)SQ/N#'0;\2Y1R$-RS\MY$&Y0.B74B1T&:1[OFL2 M!O#62K,RJW4\U#U::NLS(_S2.E92=I@)W@Q_KE)S>$#G2=-H+39SP[5/MAS[ M[&_FMIT@R=K.,5JUHW1NT3GT,&3YW&@<'<4Z8Z,;B382%JTI.^&%_PL2NWX8 MIU%;XI6B.7#P:5/T]*+^:5O $-0J*&,*J*Z?1>/D^6C/ MN76T@G8PQPWC*N M>:08X^7VB0QKA8TY8=&'ELY$@ .+F5$T)RSS A5#1<::L$ "%$NF&0],)(4' M3VJSYK?*CU\B:6\--.XUU2QJ#,J;0B\NJ"&YN)S@B$8XFA*Q^LI%70@;[\2/J"I7#4M4FV3N=*_W]ZE/U#D,C9%=;*BW1GP/*6[#J9^SS@AQJI:)KGDIG$)?IKI MR<06.3C$0YLP0@X?!V)4O0'#BLKN*0*E49'.=7*YS\[=ESI WCFO/-U6:PE9 M:0P<'=1*RK=#\I: X[Y%X,&V-G+*$/8N1M#292&\H6B!F.<Y6U2GXY0T0Y6M_*L&,6,$_# M%?B9JROR83POX?\=.)+%=+X+ 4:._L=H>CM.C!AA1!E"J7TY[PV-R M!?\29O*'JZD,XJXGDP(Q,> \)C>1V6J&8/@ %X^'SSP/)(TB3J+\MI+$3U@J"MGSJJ5.$+!'J2D;$GHQ>M[A MH/@^_]")V*7:0Q@QD7EB24X_KM;YVQ1U_@YY^42//4;_AOY"/I/*.1RBT'%W M7TY\;<#.;Y]E$TN3 .HG=9RWK<'!HI4HPO^%.V*RPQ'FK@UZAMES6(4[@)@: MPF0F^0G,(*>?.=IZ5G,B>U1?#CI(WB9@H, H+=F( MT RAH7L:+ZR<4&9.:,))K)Q%UIS!5% MQLB$U<$02"G#DQO(6JIPFZ;J%&']WC,'"$5*L&;7&V9MQ\S::7]XV3O,P!)IIS4*E 3:-JT-AT*X@T!7 MQ;O,Z68\EYMJ#@?HF>=/,@U6<*AKB6WJOQEQ5*6.&'GT"V=P M,M9/4P0?)T0\H,-$N77V>/E"9$E1TL; W5>M9*TJ?6-+P"[;(K!Y+E].5K@H M(TRGI90T%#>]"%FVH;95BN:S<]6ZHFIG%6UGY:Y'(@_KL(*XDJE1B8H#I9T.T(_4^JL MAZE3%XP0?PXOC%#."U68H5\$NW$V"Z0'+'.Q0H]@E\P'Y1'>U@%R6&LI6\2R MLC7T -83?H2)OI5 A::MS24Z>T3=#]F;H3?TZ^L$[V5KG4X$@,:UN3$T%O,- MO0%// V4ଯ[H%\8/<8:@ N2#\T+VZ7[),T2J7\9W.+K<'_SP%6/ZIXNE M&^'#4)YG2)F83R/6NI"=7Q ::3=X="Y0)@<2@M1:Q(CR1[DL"Y1)8^=X#H(9 MO/KE]SZX\_: M,PM$'YS$W9%@6_W^ 4=/Q&7&(:'780[5A2900!O49&W+ VV",UU!=-?/-/X$ M&198L: ;(^R3+5G[/&WTX$0)<;?% [7L,-1O03P^QFH_4![3K% M3Q"U)0I:P)^EF$<5LH!'[L_,=(.#]\#V6R;9F]9T0@YIQT%E@FRULMKP+[LM MASK1!0KT@YM.8Z]!G^C\=AH,=+, 5YDD#+)X"U"[#!9,>+)J6>3;#A':YR9T M:R8\E";<-YD0.. -_I-\RA W++9]DJ &!,V*R%97;>OY[#6WJ?J7T.H_#PC3-T4#8K5WA@]0'73H&T09 MJPR*^"'K,HXQNXA9/[Y9OQ9 915Q)K#-I1)%[%S9E&;6OSPD3I+&ER\)#F*V M>WU#XH[3'SF1>>!%1Z-HW;-HI ?.;HJ,L)TAK)$@B?ZI>2*+H-TSXOUAZ?I MQ%:G+%9--. 9P&W*DL56FY^Y%H0&?,;->3#8))B (N!YL^/V62(,Q$ M(#B>^"!T9(O<%HKF#%#. 0D6%K; I]/Y^M+.+.?!W6$O]?%J\X"W+"+N>0$E MZGW7I4^>O69?JJZ+FE$""G@#F*=><2A3SPN"<^4;;B:JFP(-![:E6/N+F\% MT)LUA#5UUAI9D3$]^$W4SI[8>/NTI>FLO/'TUJFJW6P\.R:>^9 M!Y]+Q0*H+WVR)P$7K?&FFFX?H/[:2>7JO$'9 : '=Y/;U)6KU%&%?&SW_I9B M,G33 MHF;C2]SUIH#]N$UB4] M*VT,V&?;93:?+V>4%XC2?EOL*-CTW'O,?G/B$X[Z5_2GSO=86)W;^#$L)_G8 M:RDC:TH+N,?W,E&]4I$!(<"1TD^?_M.6*G?KU6+M&B.J<0> )*N-R$"I&:)J M M6^OR&I6>%(-P/)842/SFQ0I*,ZYH>E-? (-UG"E'CC(X^J)$15UE9+5!XO M";F\A1ITB4A7:EWW!-IH \H(Y.H=@F4! "'D)D>@^T;+$3PH I'OG%@?P^! MI^W01U7K4[ P^3;D:H+]]T>@(.C(X* M]#@(X6S0,^6#4?<'7**]S?I#Q 3+\O81X2]PTD2Q*AX$Z?ZCF4+1O)EI%-G_)B!)&!T9YLD2]#\X_PRB?<,G211L; 75" MM5)Y6MYI"X .UR*H\9"0#P(3YX2R!R98H8N*0M*D4%5;P([7JF+N?]*&0-VP M7=[^WCC\TR/GX9Y29F]MRV?##6V .IA2I6+^>]P ^L17*J]QG<\P2C:A3T(V MJ>5O .=/K@=;=O:)R1,[F8GIWSX_J4E"5FHW$Z+:8N)I[^"6* D.&%,_A$\X M"N1)=M)&D*-*JE015B57&#C1+IHZP3D-[$^3'9.PA:)[/KHEK-BX>6D MR2Z,2/+*8L_A8<56D:\31]+PNI<4!PRENW3M$_=CPE\!E0=3EYCP1"5P_]?CYZ3I-4! FB%T\$,/7 F$? MNPG;(F?/W@9.DD9T)-LZ\0(]L[W&!:7X[&SQ B6TY6$7!O1/)Z!](R>(V
0<=L1U?,DZ6M46:#QKJ9BO:J0- M@:YJVN4U#NL*P:G7V5G.154$Z3I;U1:R1[:I6'BDK"%4CVR5=QB/'.H8-<;N M5W3Z]S5_OCQZ%6Z9_:/TRNR#?W")JRK7O@#J;Z?",^/ MEQ?HX7'Y>/DP;;;T@%I0=\=Q0EPKYSYY%1<^VL37P<_LX$V48^C6 M$VC<&*A?/1C2Z 8P\DRD[U^^1W I#W4%(Y1SLG/)85H3Q$*SXD3]GL2_JNXQ2!L##V^UDD<)<0TM 0=QB\ ]4C)*LHC1[7-90+*W]!@> M'G%0'!P^TL;X0Q@DN_@R\+#WM]1_?<=ZR;>=.E, ZJ@]S%%L5G7K#GT?RU ; MX[RW\( HOR*M,UX@SA()GH@S18PK>K= C+&E9Y\_<[NH:Q&"-\YXX/E 7GI! M9UO_&0&GEBEDL*GL/#/0U--E0.^G#*$#YN=DDTY@"1/&RV"+?1Q?X(,3)7O^8N;/ M++-I&7AWX3..Y"C9I3-DB.QLA (?M7M"!\?NB@SP/HK\;126^DI%0IE,J!2* M'4AQL7B2'1=LXMRZZ4RE;0&;2 G0'(->>]:(DTIMC9?SB@O7W5S;YU^P!U<6_6JB[=V NSD M^K+WO\H'SM$;9EYG.'!W>R?ZM=N4^K@;<#?75;QECC.+C-F?B#X^/X'C_A(,6W6%VD5-86 MN#,K5:R]^M'4$+#;JN4UWXWE!*L.:O<=.BX.>_:GJ4*]TF%U^P)WX$XFJ#\( MI=$1L(-WD[^OP_,7GIH?)YA),&0%10IA^P2'E-:\@T5MH@[!TTQHOL'4HL^( MP;4HGE4;(X_7N3(OQ3R&Y1BEVXQ>W?H;I%13+CNB"7/Z._K^[_ M$\86P4W+4XO*#D#=2E]9Y8; S0Q>3-00>LA2(#?VWT&LJWN'(_:!L\7O="U4 M[S(W%VY06.G$E?9SJKP.7+O,>G9=E7C"> M/3"B."!4=@#NL>W*5IU6WAJPWVH(;>JZ@C2BM%%!?($8>9O'@,T**X\ 6[K, MTHGE1W^J]K-SY(&._%2N;#7USO'))HP"XEQ%=&C8D9A9X"QT(D^=?*?1#[A; M:ZM>6P"T=0+LX/JR&\^,"PZH8,%]GC.Q>UARBY__QI8-KQ?DB<2$796BDO&9 MD=+3=?H!]W1MU6M%F-LZ ?9T?=F-=QGQ,Q(L4,Z#W6?)N=AU]=.E1-LVI+H' M]-)S#3J2.U(,N$6WO19XJ?($W.(JPQZ9H<8R3\QU5%U\'2_Z.M;;= M6LG,SMWU#*.. 36-606&IBH#1LL"Y3S%#)]Q72 ZYX\P[8+>7&#QUY<+)(08 M95?T"4?K4+TO.KFQ2AMXN0U8H?ZGPH9.+H@5D#G6/CXUD,22>CV!0TD']:OH MH=$-,&!TD=[XT9D3.(@7J $X;.' %#;X"4B,?PPB[(;;@/S&]3W# =Z0)"ZV M>^YPX/CLW(PE(%CQ(#FJV+( &0!8\R0 MVIG&7U4&L0F32<%G)OEN9"$)+T^5RX(R8= ON3AV%@$][#C\+_-)Q^K ,?II MQB:(F+2346'3:C?$6?.7@M$FC%!*PX"7 4()M=4AC F;9-AYYJM0__+%V9. M3W=4J1>J]L"QI575QB/ X\: <:%=Y@$._RJTK69A9%7B^ -]IYOD-(:OJ)34 M)]J.1KH1 >[B9D8Y.C3I0 %P,!@JTN[B(2> M(FGIN UPSV]4J>K8M0: _;993N/"YWPRQLC93#@J=%+F&)VVFHO/R3.)CIK, MP>\&RA>J>I[-_" JQ]^Q$[W_YMU?E%.!IG;P_:]9M2,/K#>"[8,26?MX(2.) M&$WK@VZFW%\U'?&O\W/$O^HXXE]GY(C'L@[AB'^%XHC?:3KB=_-SQ.]T'/&[ M&3GBL:Q#..)W=AVQ:;_BIB7/JZT/< ?54KEM'^IF!ME>>G(/O1]U8SGEJTEK M%FP? P]'E<\Z&$W2?89^KC)$F\LW]9V9]RM5P%@+A4\:M^KF=@Y>IC<$. M57#5&*^E,;#<&!/M6B="RILPCI=/#O'9#OIC>![N]V'PD(3NK[O0IY+&%\1/ MD]8$CC[T@$-(;U/5M[4-B0$&F?XZF6]V)_EI[QO&_$M4L!?O*S$!4%6"!9@XOFH\MV$> MDIG'Y^9YB]9-Z@,#D SQAD+O3PE$CDS3:Z3^)(#D6!<+(S-T,!G21,=PXC6; M8)J*U>DZQO]*<9!W4EQ3YRR)(D[5:HK5 ML8:ORI?EY*UGYI^O\A?E)$UGY*7'$@_FJ+;?D6M05)EMHFH_/X>59Z!(&\_+ M:0?*2I&XK=47*^K*JE^LD+2=E\,J7JQH:C@?1QWHB/9T$F#E\=QIE800>SQ<@[8S^8".)?!/RLE,!\]L MH2=?VM@P2%,\#8,3?M,]=8T?X'R5DI\,]@:VA0FT]"WY)Q,D@<:X8.[148"[ M2$!0 5 =VQD;BTR,#(R,#&UL[7U;<]LZMN;[5,U_ MT&0>ID_59,?R19:[NL^4+,N)^MB26Y*S>Y^7%$U!$CL4J>;%L?O7#\"+1(K$ ME2 )4JXSTSN) !!K?1\6%H"%A;_\O[>MV7D%CFO8UE\_=7\[^]0!EFXO#6O] MUT^^^UES=^@L;=W? LOKZ [0/+#L_#*\36=A M[W::U7D$CF.89N?6,99KT.G<_-;[K=_M7?]V?GY]>=GY_#EJZ59S84W;Z@1- MGO_6W?\RC%JUK3]W^E\NOYR?G9]W;O[-YNS]_^?+KUZ_??EW\9CMK6/^L^^4?CP]S?0.V MVF?#W.7GZ(NHI\9/A(7?\N4CV3JWMS%#1F$IO=B0^UU.G]Q M;!/,P*H3M/%G[WT'_OK)-;8[$WT[^+>- U9__?3+7%J?$0)GUV>!)/_[+J)) M_-^!M1Q9GN&]CZV5[6P#/7[JH/:?9^-TWR&!EIKUFVYOOZ#?O[ U%Y"BJ"=#VUH""U(9_L&U36.)J'NKF4B#\PT GLLH(E>+:DKZI#FPW 9X MAJZ9\L4^:EX9'>Q_=:>KH;W=.6 #RQBO8 SMZ!9(403U&TIJ8^[9^L^-;2[A M]#+ZEP_'JW1EY'U"25T,-7=S;]J_Y-@#3,L52GYGN+IIN[X#ILY:LXQ_!T88 M&N;I#CC!GR.J:A8KZGQ-UB+K#.AH^M%UVX?SC[5^"6D]9<33*^ M LL'(M+$%6OI]]S?P?)(8!VM++X">^UHNPUR,P66*CPM MUB)IZ#(NM#G8&U;!PQ44$M-*C=ZNH"#IRFIZ@:)$9&U7%9]*4$Y" M2XK.ZA$R"2CN@*<99AG3/.%;BFKG'I;5S#^ YKCEJ27O(XKJXYOA>K:#QB[\ M?>@[Z$1B#'_1/53DU5AV;\K3$\_'%?0C117#V&JMWI<\*\+08JV2?@46)*8I M45)"BXIZHQ$77<1,XQ7-;Z(Z*/0M1;6#CN%VD;<3N'3H> [:*<=^#8?L!'C0 M*?!-S4DZL64IL%AW&JSCP=9VO&A"&;WMT!EBO5HF=4A1/XE$+D\GF2\HJ@GXKX8''HQ7L!S#4M;:@(9ZX+K <[\Z MMNM"ZOOAL0=$V=]"8^.!97(\E*=">5UKGNZ38L EJ6$O:]$SH1N*ZO18@O+4 MAOV2LIJ!ZP\=N- A<^&*5=_ @;, ^L:R37O]#KTT4W/=("ZU3)UQ]T%1;=[! M-8!I[T"B^^6IC?0Q!:,X1!7!V*H*.]YH8\-VC2(3($.+2D@:#4F]T&S/UJ@2 M\CI@:7CWFE[0;69MML;3#GD[(M3V:I0R^-^"RTA"2S5*A@LX+R8EM=4:)1XL MEX&%E$A:FEH:VA:*LPI-P6Z)1^]:5NX9I,%BY;7BV3] MF[ ?%G(:P/)!>P'F)ZH^\MHR'2?5%,J<=(,R)W5[@<;27RC>U05:/I3?W^1G M)'3:]C2S@DXG/E.HTYZNH/F4 L>6>2O0? MO'G 6H+E_E\-#WWD#/;PK/.Y$S>4_*-F+3MAJQVQ"^*!D @%6T_UQ40)RVPG MJTP7MA>TY0+]M[7]^F4)C""#&OI#8(H"/<*__!C:K\ 9O+C08].]N"43:?>O MGXY^^U)F/V)M+6"+1]TX_OE'[^+ZYNK\\O+ZNG?1O>SU+ZX2G4MR8>"D.ZHY M>MPV_&.&'FGU1R6^[(+45)_UC6'N45\Y]C:CG^A+-F./;6<)G+]^ZG[J^"[L MA[T+C]@JTO/??A]A<5$/%F'\YLA:WL%YD !$JERS4*!W/8+@LEH(P@GRWC#! MQ-^^ "='^\=%FJ%XIEY'.K^J0^'?I' M:VX'&L3#UOT0!>T[[T-[B8>#6*M)Z/ +$H%U70=8"^UMO(3"[@,S*=8*4[Y) M /&($$'3KP.:P7()]>9&_X'+0-#%PI)3-BU/[[I[<:,L)*S=C^"X40..AFX'U/GR;%?C?!Q "(H1\4;" N+!#$P%:_)T0@> M.$##C([DS\U0/+7'L:(K7GFC9R_,IXUMX5?>QT6:H7"F7L=*KWCI/0^%HZ.F;^?OVQ39S-)[ZO1GJIG&4*W M>&T[[\13B'VI)L% [WBL_5K6QO.M9IJWOFM8<'6"U7ZJ5).T3^]XK/U:EL&C M+7#6T&A^=>Q?WN;P&D\^"KFEFX0&NP Q*A6O@2/2;(!ITL!(%FH2!M1^QZJO MY3P:765#IU*V_C.(%W6GOH=>4$0^-]Z)(E1*B]COP?]3%AIN.6*H*EY+1Z[$ M(=,P/H #5[09L'#U/@:CXC5V'&<2=C*,-KF'_Y8WF6/+-@,.ON['>%2\#D]W M$I&U]R29B0>Y\C$0]"W* +D>98VL)WOX+X.?SHW+-0(&]ZS$&%:^]!Y C MRX GII8W@:=^;X;.Z5V.8RIQR^F_?#F.GR\85<_WW'%";]C@^NX9"J[?MPO_ M/)Q.[D:3^>@._6D^?1C?#1;P+[>#A\%D..K,OXU&B_FG*F+L5YK[$C3HNY_7 MFK8+J0=,SXW_Y<#!Z!]^)&YH[_/XQ7?I,,'X;%4*C!X1.:(4J/D]SB^4INA- MKW]54_0^#P9HL'&(@PWMA^*M '3BPHM,A.X'?3>3EUPJQC3R-9F@/2JK#,(< MB.%@9A%-$MI>YJY899"C-&#HV1'X'Y3K_54S 4K>X@TUQWF'JSUTR_EX.<55 M5U%*L*";98:XQ"4P90=7'>@8*@BZK-I29)ZOF O_R2#I4JK2,(M*/86D@QN MG%=O4FPK4-?OAK<9^JYG;Z$+B_1)I0A#S58Q151>[%4I&83I5DZ8J;#?0>&I([I3@,^@PU6T4(47FQ]\D: MPQ$6-N#U<'X&]7#=7-SIDF%OK'$BG,GU4*$5L'? \=Y1GLP@\4+BE:ED\M&9 ML=[ -?JS&SXB,EA!5B9>L[D#4&*X=@^0M5*/VV"-2-D?5I2+W,:G%CV5Z@A7 M[]?$KUQAR!C_W [*$*4IU6&]K-YA327,/AH$..^55*<=%. 7L02'MDY>'#]Z M!9=QHS?=]%'8!,48L%1M!TN$)2W!LZW5B!S\^8EMZ41W-[=L.^C +IHLO[>^ ME288<0ZLF[YURCLI:71DFB!Z>%Q)4TLJPGF/UA.1L9^OX"FGE='O] MRUZ]]J 0JD22L$C>_//W^+#P27M'^_YL1ZCIPBIS@@5$_ DJ@YRM8,#1^_!4 M$N27;R4/.$0M8?>P8BK$U\.&]O8E2L".CHCAPCB,J'2-9?2F2ZR2=S)7Q!ML M'YDDZT+2EN8K<%YL)58C><$(C#1CJ=H^0@E+7>JN9_7''!/; VS^2T[)]M&" M5]=&;J!NB9RB9=B!,6L@5W7DS3_H6LP+WMW-G^B[?RS:PZ*/=@ M>-I0ABR%P<_A46%%E)JQ;J>>![&]BA?Q_\8R*WCBM]<(I5*2W+29>G@;'K^EP\"BM\<(A%(2W+ MU9PG/?YE/,9:'TQBUDK+[HXFSM=D^>E%FE2&B*).NG3AFW_ F5 )IWO.4#.M MLU[O^JJF]U9+(P"18UQJ:9E7GGDCE>J2$VJ<.(^8U-$R3SPC/M$-QY3^X U9 M%2WSOCD>I6:I\L$>!GU4XW%7? B[_]6=KG)"E1A/8L]9W^:<+^!_'D>3Q;PS MO8<_/3[-1M]@N?'W46<\@7\?*7L:&RID+R-F\8$M57FTUBNP?' /1U5>>J)] MHFV4D17^OR4^HD^@)67,"06S=,26'#&;?R8[M%VXVHST05UCYY1M(OSL@C3_ MJ K)>F1)1%'A*2$Q4\OA4HT$(K6"!+[G98@KWV6$Q\6@_7 MO7[=$9E%K0!9,EFKQOHB<_"IKOYT]UW=]IEOZ. M?W8F6:0U1& 6KM1]YNJS@P2[7#1#02[<.@YPB%G[]%"8 /S/I#*_V]D"*O#* MVOPWN(-%SAR8)GIP#UA0?282?+DU+ .ISC->0:1,W/S WD+K^%)4]N;?]>SD/%]EIF!]**H.ZR J2(H:LR: ^:">V9:>%C;A,V3"@ MUDOKJ]^[Z=442L2N:D,O!+19:JRE"A&,Y9O@@+W[)0 MN, GPBJ5Y$1B*[66,P)B-__ @9<;IT<+(48T^(#BX%C%H1>&Y4/9(\_+MMQ; ML+(=L'\9&KBC-ZA0*+EA:<[[&,[F09I?=(QG!ZNQV!IC9ZK2OJ@,*SE\G:K5 MT?Q5T%X3T:N[DW[5_?P'(-OFJ&A?YQL(*]G0'= MU%S76!EZ?$" CYB5^8DT"C>]_G7-SQ^*,@>S "I33:5D:Z[YU@=.]_SFJ\7, MXI5:UKHZ,<'529,XZ6A\"?/.,'T/+"DS':66,G3AF.5$1)*67K&^*>Y8[%O- M-71&U(.RRF!=!$@Z'?"RMFQ;%J,^/D-P(J0@2=NRB\>_ V.]01J#'HZV!NF+ MEHG;D)2)@[<998C$,9-(D3&V*@V.&675 VG*X6I#&;)(98(XP2J=L]0@5V21 M6>^Y<[:2TN4%2M5=\T%2M03C4DLIC^'DO&E1XQUX?.YZRA7X"[$K\//%=/A? MWZ8/=Z/9_/]T1G]_'B_^^*3J%?A$,BKFQ^48ZU3^3$74JP7A;>]T(64,!1<* MZ>GUB#!GRK42:S8IFQ_0A7DNC\@ 8IU6 MLH%?XN;?-F-X"(_,$M;Z[61,(>F;?S?M^ $](E7R"[>2%QRB-O\ZPI&>[NPM ME!UW:I%7MI448)<4&VI9UVKN 5(WB!>E+>'V!=5%4&C=1I9+DCM8C_\/)R4' M:"ZX ^%_QU9V=V)FF^:][?S2'-SA(VGEV=]559UI.1SE)$AN#-/P*0 M]7RL"E20@6B>*6$27!(5=L Q;+1![GB9[?KK^K,>%\Z4?7G6N[KJMI$G/-)+ MFG=(9+FJQY2$0M_Y#O25GX+N!=FC1]N=:;\#$+Y=X#OZ!NK]R=2PV7!$VCH1 MHLG33?/W/#"Z" <@5AEX;UBH->5X)X\AS.P3TE%+W">,IH/?IH%,[N@-.+KA M8J=.[G:4XUSUMHY=+Z4^)%!#7CG2$)3 .D)#RM%.#D$XS1PW\Q3):2WA\.F? MONL%D3M10L^%O=#>4-Y^--"AFN#PYDI[6*!%Y;A8C@F4K:&BN]0W(24ML$9] MR9#RHGIS&+U38RRA(HJQ4:0IY6@HFS YQE&6FHJ:1_6X2)B.9L#U'$/WHE=' M!\@&?'7P%]V%VE*.C=7[A7RZD90= Q=B>Z,*!<,Q*XF#E,:4(Z$\NG!ZBD)< M+,=;K'Y#,#$1+6Q,1$Z@II?CR6(&H%UP#0]$+X2$*IT!W5Y;02L!4*H^"RLD^$1[$C*[L(;<6I?6MIPB.]K.OD>*[L??0Z M'R6.,D'M_17*/(!_-OG?N'Z>_S3PVX?;E7"OW294[1ZKU.U(DGQWXU M(&*W[\\0[K&U3ZT_T#WC%3KBU+?I^!M*CYOS7O^R_CN;6.R./%(9HC;_1!MJ M8&5XA/7*H8 R8$L&,9?G$P^-P;_;((HF27GJVRXJLIQKC)J9%DIK*_F3Y]W43_Y4I93:GUPJYBJ MFF^\XHR\4VNNF6"Z@GJ%FO3>46QE<+5MA\# L(NM\@?)I&BL:$QU;DB#E&>M M S6YL#?WMG-G^R_>RC<'NF[[4,'Q&FF\W65=-<[:'T22H[*V1:U*?@WY1)DE MH*$2[J47(!+&.L&!X<1^XKUF.,$9<4*_X3LYZW 'TX6Z=/+X4Z2I#W:5H#]9 MCP\I189*F: M5N)%KW_15^WLCPM_%D(Q:J&4B.7:V8,L.M(>"N0>PD$.A[,S<%W"V[/,+9PB ME_B4471W@A($K\0DB0)W#B,+=[1$KWB*;&+2@0+;#B7PYLD!.\U8QGM^\0.O M5IBB+1A2[%QB:>P4^26LEZ(;%&IR+I#ZX++R<2RO\BERBED/I=Q&K)U#L3/Y MI+T+N>)1O5-D#HL*2MA44($RC@\[;F@OAAFLD7E8%72&7JJ9KIZAUY?G[C#6:B]%BBB@Z-43 MRNJ^^EN=[+%LA:.*TPJ]A+#4? >AM#B^@CJ1E\:%G#=8#YW@TPLF%"N0 OA_)^W%R#4 MD#*LD(SVT3:!/-V4G!RO^IV#&=A%/N5T-;$]0#D>P15O/Y&$-%!*&$F-#O<# M&D;0<,..8^]-8U"C6!80ZQS.LSA5T,;@CM2FQ40]"%%"3K.P7#25\&?P] M33J2V%4T)4;V =X/CF6T7=/;+W633-[;0L?YHJM.W./O=F:@2?Q$,LXQ@ MD;;4EYYJN?$?)F,,7P4D,>&X8.O)P"1PJ2&-U?,AUMO$MG3XQT/4G;7,6?'> M&:YNVJ[O ,I<4K199;@FXIM(%[R$RVH*O:H4J^P;6*Y!G,]SL/*"5!JFYKK& MRM"U*,N9V.M+O)]0AGZETBK+WM)U6.IL6GWV_>AR8G#0/GTQC74@OPN5YB-9 ML,:16.M4R2>BEFIF8^EO_!QT-'76FA4E6D>)7'91R"D*]H'C4+/VYXO$QWVZ M9_#_.I\[AX;A7Z:SKX/)^+\'B_%TTAE,[CK3I]$L^%OPKL_BVZ@SG#X^#29_ M?%+U89^D>@[/((6Z>DIH?[J*F*B9AQ>2,#Z*I#:KGD&+]/I BP4DT"WLX4_< M+"KY,^E1V^_USJ_K,692F92:,ZO06&G/+91HVE B-,N+LL2@UY8=VX)_U$$J M@H]BULZS9FTV&HXFB\Y@.)P^3Q;CR=?.TVPZ@7\>AF^6*6O,)N 73AN0*\/@ MK,7=Y]4)R@2Q>R;VYH^4%BL_M!;N,\UXR6A:&8,ED2WIX^V2=-1,$_4*+!^P M&J.+/&/T?31Y'JEK="(14>Q,;K+3?,/"7*OR:P3$?M$,!&MU98P )WKIZP,% M9&WB8$YN!V==K3O-TQB'^65VF,^?GYX> O=B\-"Y'T\&D^$8_FG_4&KG;K 8 M*&L#;C43W0>8;P#P9L!$T6L'Z7"^!6NE&L\XDUU,](UF!7B:4,82\&&(._<4 M$K>)QN ..,8K;. 5[$W!V((Z\GD6'U=90W WFHV_#Q;C[Z.$&1A/YHO9L]J+ MCX-"$GJ 'A_:SN4[XRG44N6/_''WE68]BC29'EXW]5V(EL"&]%-_DG723)/S MXB7VK1EM3"_/QMPN.M/;A_'7<+-689ORXC&8B_Q"E5N"9#?H@SRWM$+CEZ3Y M]-!DEZ2)HRXX+F(=;-?9P?8P&LP57KZ'XF&&UO&/4JXS/0#7!>"0SS(^Y(LT MC1LY7'65&4?YZMW?/"HD3Q-'T]#>;@TOGKZ_:XZ!LIC$<7(CRTO=)J*,MGYV MM VGCX_C1> I!R>2WP>S\>#V801=Z,5H-IHO.O"G\6)T^8U<29GAR81**H: 7ZXF#M,Y6",9X1#]"NRUH^TVAHX6N/O81\81 M>I.STS7Z&FQHH='Y=33].AL\?1L/@T7N_73V&'BDRLZ6D5YF8(>>KX<&.W\ MXXM5O9EUU!'V N*E6;79S(L6&TR ^;#09EKB@++[%@X+K M]P*_X_9Z<*4J'GH/8*V9CYJ'^( "AI)(T88A4UUEAB0%E^2(%!>LB:-S[K^X MX%\^;&7TRGZ:VLV)GIH_W\Y'?W]&ZTT41Z7P\>FQS+B5);98Y6$2Z8[08R(P MY=.L[?;ZYW7=Q*,@D YYX)&FB6.0?F_DR38-YND33IYGY^+W1SI_BK^FKH_[ M<97D$ [F&I GB1!?!%Y(F'>:H6"KK(S5*.W:1P$]E&9O*LS-[.J:&::/PO D M6:3];*!*V_RGVYY1TL61ZQE;J!!<1J)TH?;CSB"OJF_,#%%^P^[-DP;=@:VA MDZT_0XWV@BTJO*S$>.IWP4+?#XD[S-*&-FJK^? MIX"'6<%=/$X;4VP);'4Y'MX]8URRBTRMC'.UTB:T>?79V>7]8QP M'#8P,%Z@1^L84O*#U4U;M)BG/JYO@%+ M'SW4>_N^@+6#3*@HE ;I-HJM"?1,=/3Y6U%MS/)I2FCBQO31[6HN ME[27=4F/[UBK[WTVZ;+U@;>H0YR.0[9*FL07O9L+Y:]= M9X=B> -;_0%8XE5L.7T;VB[;6,.45F:8X6]EBTA0^ZJ,>-$^Z1R@0#Z4@3UQ MD7.Z2@PRAKOW0LTU /A21*Q] 49.P7 D&)25\N()+UED?:%9_"E5ZN:OZ(YR M7@22Q_L:<(7A^2@Y/N,TP]U2 Y@D6[K2%F,51H,>/NY2 ]O8]/BAE7NMSM98>))>]_D5- M&WI<"2TDREK[2J;X)I;A:NNU ]:17Q4=US--$DQU&\D1<*6 M+_W>:63X$K/;'? TPV0S#)?%'C)##F+X_4ZB YT_15U0UX*4<3M5U4*9]B2L(FJJ66O:$_\[0MPD*-VK 7<+1=L!>58 M)1_\+,$XU5$->VJ=-<,+Q'\ S7%YI\LB>1L^=\(/=X(O?\R3Q=O^4CA=]?K]?@OF+*3C@U%A$UJ2 M#3'E;9NXCI=@//S; 6?XEQ\S=(%P\&8<3RFIWY3!EPV$ VAT*9H)V"- ,QL. MLO!794"C@Y #&$$&+&05:/_1L(RMO\7J/_6[>@@0^I7&@"Y'K2AH;V04DK\W M&06J')2=V3*=@_?$U@=T6,$83I_'LPBYL#+(\$XK F))"@*2.,\()F*Z\\-% M!?:,/5M4/9S9<4\ 36D]\,%[(-G;VC9!2^@Q0_AK_H'BH2I++A76=F MSFNXUIF'#G4T:]F)NM0)^]2Q5YV@5Y^[-Q^+4 D+I(OJTX-9ONMKYA1%UCEA M[DTT=O-6J2Q5TN.VU^N=W[1AX7J19[>X]:#>TJ@X47)6N@PUE*,)-Y;,=,"* MVT8VW-E;SP.=L(JV9:ZB9 MF@],A: \L@XR=-"R,_8X@P):(1H.KDQ8' MF:>K!]M:!ZD0P@0(WX"YO+>=9Q>WX&2JVU;2B M?PIVV:K?+R$F-^?;!.J$7<[M,6FSJU";RMFDZI,?"RJIT9LC@^4_?3=\ MS1J:9Y+.\9MG7&TTB6>"A,B2KKB&&DTRE.UTNAHLPU[G[L^0BBI'F>)P9BG" M+'BCF7!0U-S3K*7F+-WGW5+S "S9/>L2J<%4-ZVR?J_7K7DCAQG7'*LA+'"C M.2)JD&E[@(7;58Y;54Q=Y6BMT1$Q!*FQ0S8P (>UWA$U"[38&E*2"9,EIFR= MM6QO4U@]Z#8E_+-LID;-?M!5IN)*R"Y6];99^,1'T1N].0\_[U_]:.I]7;'' M0+AK?]RY5R <_9S7 IX[&1T''\]-78 $GE62, M=W["/R'WN1.U?A+SDZKS$BE!$L8VD*JDA\,-' Z]QKQ6)2P?8;C'@_:\^M-\ M"XYKL ^4?D ?06K'GV<0:B@#JS!&.:?VG.(RH%Q#S$:^$,0@7V(=Y9#FA8D9 M:(*\I=[SY-G,L%UONIIK)G")1P29'0(WXT)6; X2B(Z/ [745$"#T*XT!78Z&9G)H%@I4.1&!5%E,8D_1 "9^A54O)W#OK]YH9]0ZEYW ,%RQ1&H[HXR_] 4QA"AO?(&)2OH5(/460Q$39L.P-K M&3T^.WK; &B'QAEK)+'F:*/F&WJ4L]\,T MH[EXNKK7].B5<[3;Y2[L.\,!NA?\Y3"H(K7F>B6BC;622W*U43P60XAG^:+P:+X%\[=X/% ):+/]TY?+L!\23)17GD\QRD MQX4 LE:2L]QR;!V I8N"*=#Q&S2>CK8$6:1SEU*LE=,#I@O7IC59##Y #BNB M0H+6GJ((@SV2'/5_:F&DF=OF\?4.]HI-QUQR*[5^(_^Y1N[Z)72X''6 M#91_O-TY]FNXTI\ ]*Z\;VK.H5G>^2$34L@Z/^Q[%^1)W?>OD^S@_^W +L*R M42^3'VKI5,);N;8']:"!W0''>W^"_40$V\-)"E9DK:Z,)1+#,O\A/0&15=FM MQW;]]AU=+2:^ M8QD>M&^P[_?&&_H3.? 17Z$Y*%.PR:+,*72Y9^=H$]Z'7N@WS5G^TH(^S>V5 MA_Y(2DA+J=1"] H(KDJP4JY'3QR?A!HMA%A4:NRY@ISC)=^SM_:+80)WX?CZ M3SS_TU^0TNLN?:R2JI&JLF84K]Y"N9G=KW= 2B_;L2O#3'P MM((OMY?2=2E/5N ."G5L+OOKX/T'XZM66]& I9N0ZQ8*E(G*-I/M*SA9U4)Y M]@]_\%ZR[F3%5Y$-O?)'[$D]1?'3O(?LF2=)RSAD3_:S$W7TXY@]R$O%'5PN M*94(&JLA$.X#@$,24,2AU%+.PK&K/VO41&1M62(YDNTNM,A7>EH4 9YK0<\Z ML34WHQQ3X+#C0SD,[26ZI\$[9UT6"!Q&G^XDOOTQ#07,EG4K)=+PW'_1]T'S MPF_0X 2K>(/'_#6N>.\KQRK<"43[H2+A5*"^R);]="S^=) M>X??,1?:&V[4,M9J#\2"LI9PH[#ZUXR0G;JU+2@!Q8;GEFT%!_@E+.'V7\7( M_VX[/^'7D\R/9ZMW,@\8:K:*%:+R1ASI-9:3AX0K[=M<1]; 56^/'C MVKSK^BO1=7W\P8_%?$#,ZM,-',+Q8BC8[FJE2J='R&7O6J4T:F1U9^T CXP, M&<T;>^:UC =?=/:N"O9!'K* M4F74 M@Y$;B!PPJ1*6>[MF9 %G_8Z/ST_^KAX 5.4=[YG0I"E;V6O($^ 8UAIE>?'- MX&DZX+P:.N8:&FNU-D C)J0J5Y=B2_Y N?*0*:<>=(5F)S;YY#Y36^'G6:;*6>,E?OJL9B4Q!7%F8:7'B@RT1W!VPF]*\=K-,;=%H+N!ML@$Q,*&LV_)L.["=43W80*>_K91%WM'/K:"3N+=JE0?SM1AX.HR427 MTS&2'_M8:&.EADV/O=-%X!W;UA:M@?2HOE+KT0 R**3=+B&QE7QRCR#)[?NC M]D_;&9J:2]H.XVA!.3841#1+D:+*4"9W#5Z.@Q03;4O.7\39BG+T*(HF%S^8 M-:(*1Z:H'U/GR;&780;A6TW_:=IK8@X5&*P=P)#_"%_A1.#E5("D3$C%WXH"K\"T=V"Y M /K&LJ&A>0]N;)#1IM0Z$?A@G0.[X&Z,'>7I97R-$\&;5P/8 M*$AU'';:*1%+5>70KW+E1M:"W.,E=6A#RHU%JZ8<7831Y2(*7O;FWWDBB,V= M&XNSH;1&>[WK[N4IL(E'&^U\@(&DG(1&GH+3'=XCD.O2CD!2AQQAYS[..H)M M]:O3.>M0P$RQ@R+OK"-MCXK.=\HY166?B2C FH+(2SP3:3F7JCI(N>Y=]<^4 M=9B8*"#Y("722*.)5?KIB]JT80:YV.E+&Y@BYSREG?.TEA.< M"I"4]*(>=E1P.-1:GHAH05+"C'K(4N*)4FM)PJL!27DU)!+$=;P$.>#?#L2 M?_DQ@YK*>\(P]9MR8$M;YM+%5,][8$$T=U@?_:H,JG00<@ 3C5A2T-S(*R=^;C )5#E7BU2H-<>CWKFZN6S)#%=9" MHQ*F?7;#RS0=CA3O[8:FJ'&V$4>8A#$7^$TCP?*Q;WN/GONCQ<_;$^>-L M.4A;7L,; SGA/Z,WW?11@M3X8BOUR0&>1I2S-NS@9,V+!-'E;LPK>A%/7B2> M H21 #J79X/70LL>LQC#B6:%UT-&Q5A[Q-?,:1!,BE9:]FPEFZ(+37NG0BYA M753S%F3-CO:38^O =6?P8Q"ISW*&RL#<$> WHB[X)]W89\Z<:>" M3!>';G62_?IPT(/!<*W:E!B&YHXMW4&/&-V!\+]B\V)^6^DQ>].[NJXY3P\[ M5-QS((<&BGI>K*]ZUFJW<@Z'.0U4]TS40.V_G31)'U8(4;M_.B'HS;$W?9DA MZ)*,C**;UJ6'H"O FH+(<^T/,"FCK5RJ*@1= 4X5I0 7J9@UTFAB51 ZJ#9Q MF&'.DD=$"XTF2Z6G]PK0ILHYC*P%]<+/Y-"&:_G.W8YRA!+&GXM*%:[B:S_D MOX.ROL(&7L%^!3^VX(K$#P+^^1;K5V?=X\7ZW6@V_CY8C+^/$DOU\62^F#VC MM?J\ 0OR@X82BAE8RV]@N3:L]4"'/X6/6^\%IZS2"[58N7\3]Y6T.C\JE1HJ MUV>]J]Y-O79# H9IQX4N;J,=E3Q]S0SW)V&M3:JB,!_P ))@9Q2Q)1P81@^: M+^#7B.MC4A6%.<"()HD0C/*JDL$4>CP :MR;:1Z8_])VQ,5J?F&%\60$(_<0 MFE5259#,G=F^0I$?;->]?8\FN.2]*TX;3F],8284M>Z"PC=ZM9DC*-'H8\LK MS(O""&?IPZ<&5D M],4TUN&$-[2W.]LUT)_YMF][>=NWMXO.]/9A M_'6P&$\G<_A/B>8;L7G[XG'LR^87KGQ@OW@'!Y6\[9HIF:9XM]>_J3G'!!F! M],!EDZ;1NVH/MK6&IF*+A$7[$X35>%Y1)>%E 2T+-[-XK<*;N)3.+ZPGF,.65!Y^ 8!9^/C%;PX"IMP%.]&=V M'N34:B\;6(5M]-9J>K(D;L0?%U0.>?&)GU&X%B%-#2S&%5<<=8Z)GTO".@W_ M+W-I!7B>79]U TS1O_P8PH\:WCX5ZOE9]R;7D),+*XXG!98#J@)2*HCI DY< M ]/6+#R21T64P4\ @"/T6"13$+,[8&KO8'GG:+^0! ]0@'M--TS#>\>C2*V4 MEOZ\U[MH+*YBLM8YV6*0#CQ"9)_PN!X5409%&=:51;86N4CTH\O'D:'0DC->11$8!90".[^T3Q6H5WX9!'!3!G1HX..D'"1L->4LBC@N 3 M$,S"SR=FHQD@+;Q- '+V?AQ2JH@K:[BC#7I@[Q K(V.F[N MN^88:!V",AD0%E?'Q90!O?C2BDFTUF!,7%)E"RJ',Q-:9) 57405AOE6

F_N#:4BI5J+0FVF57S5 MZUW6_,:H,*/DJT$]?\)UO 3+X-\.#(-_^3'3K'6>@YCZ33G$^;U"NCP1=)?- M@BYWF!_]J@Q\=!!R *./MG*2:E*T_VA8QM;?8O6?^ET]! C]2F- EZ-6%+0W M,@K)WYN, E4.K(]3 0K[9USG.K#@9&QC)I3<Z 'KX@M31J#O;0?HFIM_-( OJ!;$7%#EP\P@ MGGH8"T=F/,BX57_=ZYV?-\U^BT@8 =]K ?#WF@XX;M0?BBL./1E &OP4,=MV MK0KJ*C[]W)^-A4[GK>TX]B]TO*KMX"_>.VX[DJ.)EC&GL.AR=R@+$ E[Q)Q* M-&&_P@G2\MQ%_,VW MP'D/?N'LB$:E?2>M\'ZOU^TWD6O5ZJ>:2V#*L'(.=E[@Y)U?E4_-HX]]\%-4 M29*V;)M"TK]IEJ\Y[UWXC6[)QC/QI0]Z"FE(TBY/4[@Y@)TSS\MGYN$['[P4 MT(^D56M36/DWWWRO@)3[SWQPDE\]$26O3X224]VSH5<33!P#:[G8 =H*P\7 MI%OZ9S\H6UQ=$87[)T)AM'2\.*O"K,;?^2"I@'XB5MZ<""OW"\8JJ'GTL;3^ M;WI7?07RRM7.3Q8EQ=OH9R?"TCN@5T;2]+<^."JHHYBBBASUE$[11PCAY@*Y M/N?E\C/QH0]RBB@H9J8B>?RJKC1 MG#5 /^T5Q4%)2DLGP#,1#<3D:>+93S2*AMK.@ -L]+8#UM+P? @E.VWP;:34 MU3^#:\%&AE;(DSVFBMI',=$@>##^Y1M0FG=H4(&[L\]:>](![D4 M8:W;)FH4DCFFA-KG(!'/!^NU$SRP<239G>^@JVK -, *SLB&O^];2X[)AZ/1-K&I'&7$[&KDZ4&>[#+< M&\Z&3Y1E@HY0DTX$;C77<.>P?]IR:B4O>@=Y (#KX6<^H8;:RZ0B"HC#DQ79 MI9=\_P&KF>/]>=[J:5VBQQR5RJ;$2B8I8L<44F0773*%XC$4)(Y EPN7<#3I M"-TUV_,$I 9:32-NP6,B*;+I7< L) "J3.%IH&96*2AYSJ;EO MW3P S07N5V !1S/'ULIVM@)O(4('[/B1FX?18#Y"3]M$;7>,0^,->-PFU OF M49OC'RO/O^JZ($3N#KBZ8P2L(SUE0ZB1YO5YKW]=TZ7K?(VG(33!&)2WV[]+(FJDQWT,?V#&L=Z&(& M4**:^&_H+('(&%KEAA"'##N./$+"EYJ\HZ<$AT;0NX"K/1VNCZ?AN+1'P?*/ M@TK8-DZ(47PZ. GC9(%?FLEME?:U3H@\-*E+S;*A!EURQ@]2AV%I'GFW@[V9 M$R(4MQI*39'!S3#,D6^>I'NQ<@P-6Z6T/BYZO6[->]W%:%% :+5R44AXSAA", MM5O#DB+R2MI0P%&G^C5B4AEQ[$\TN3+0Y:A&*RG"(J.DC0,<+:[K\PQH'D%K M(&>:,@JOVX,KO%AX2W?)A[;EVJ:Q1'%]MYJ).#[? .#QNN<76/<\^85.](E. M\(VF^^JX0A6/S&"><@?6\L'07E"$G8%66FB52NDWO6*:^9>]?MU/O]"]>T&A MY#X34>?FR]$&=]J=85H!'-51C@2"$--6!RQBM^Q1@;0"8G6^4^P&I=:I\(5- M\%(/')5AS-!W$ I\A(DJ*<<7$9B9R4(2^C2LR\2V=!&Z'.J=%F,H\ :$, M;?C(EJ0-NE0"JN!KOM;WT3+S.2F'<67*=BJ"N\6)" M1QE[;B6E[0]:2M:=6@_'224PZRXKL4Y::5?U'[*6LNY@$_L4N$+>7R5548XI M_ SDH0D<,MV5G/EI^ZK4FJ=#E,H,K?LR"97!3P4.1UBD.A0LC-=>J3/8+DT MPIX7R$)TB0WS.33?&;S]/$V]W<[,S@2TLRAYF[N3?M7@9V( M'G8,)C_405_JH$^U:5>BY@M',7I['@]TSWAEOW?$7%^9H4V_=E1,IK8E&\"\ MA4+#H^BDZ0MZ$ALLQ];H3=^@'-?WML-W M[Z1 BZVGFVS=5),CL?054%ID]U'S?"=0+4&Y47"MJVOF'T [?E>B>(/*\:DP5W"A!=*T)1R;_N%_+Q$,Q]\8]2)6KGY.1YHR),TN/R'89)X M0VWFDF2ME)K)7UWC5=!HM9E@4G01T>JZX7=4CG9(OSJVZ]X9*R@!>E*'=U.T MS[,I&GRK<_A82W=!JS]ZP0Z5(W0'6Q1\*+H?2FPL/630U>-+I79&+[EV1OE% M/=%M*:F3C@*LD<@(6=./9((IDF^$J(MG:QD%2H/EZ$V'14-]B[ -U]8']<14 MU+KD2?)S8;:>33Q**/F5#F7X(BT]\ZFRAZ0+2?N1RI-(6 MOI)/1AQ*C72ZP2[JHT^>>IS3E1()9KBBG-@;2 ^9JUZ_5_L%\F/E9PU!0?%: MMGK/3;PC$MG$WY!R["G(##:J">CDE"C''K_$V\R)TXU5(RV+5J+IA!REQ%C[ M@UHD1;0L)HE)%818).;Z'ZPBJZ)ED4KC9,G M&)=B6A?M(_>EAE/D#XDG[8GR*?.)H%-D#4D/1??\]D;&4Y4X4M\-.D7Z4%11 M=(./A4$EKK:']G9K>(';-["6WS4'BFWN,]"-+"]0[FB[,^UW &Z!!5:&]V1J M%F=H3_^L>[P*'TX?'\>+Q]%D,>\,)G>=[X/9>'#[,.J,)XO1;#1?=.!/X\4X M6*G'/>A$7>@$?2A_>8[9,4VHC?IJ"TN%BBW%'52A!99#V_(. ASXL8!/D+).^#'3T=]]S316!AP!FKN9.G=1 M/P:.@_(Q(KD>P?8%Y)[=L=9-Z^*ZUZO[EC87:$>'=(6$5I & .(1YU8H550 M\TLJ*62M'ON.$3=QO@9_'GM@BYORV1M0CB82W(""TK>1.H_:F['UMP/+@D8S M^:/[!)QX749^E4E"RTTA&RM3F*E76$EJG?[Q36"1?,ZCYD$HK'7R]SEP7@T= MB6[82XXYCKG-]E*N//6H%>XMCVR#-9BNXM&6^X95X48_Z":@GY8%@PLH*3+] MTU7P(]\$S-YN>\E9KHI:%E0NKB3IQ/Q@)*=NU I%ET7%Q)%4RCF^?8_U1&8> MO?[)$$U0%2T+5\=N(KS-(0Y6",%P3']%=AK1]MM#%TS$P\21P6$GT.^R<;. MS$=?T4@.!O+7T?3K;/#T;3PS\#.=H+W MZLCW0?#%*_8 &_Z&1D94F'9QIU";RM@25F23+H-\R=7:""], MM]C69K6 X1*^0EI=-[W^=^(%N^YO@%+WX1#Z;A3"3+KUOS M34P2,#FSDB2)U8LA=!TO01[XMP-QX%_@2L!R;=-8AI8"+?USPD;Q!=6#71*0 M!XIP"M\"!N1&CI***L,"3JQH(!.D4P]FCIDB.3&/3&-K6(',N6&%3'44)P ! MQ^Q4P"]HH[E ,)/[W6!&WR>OJC+,*&^"**R.1D<7SL KL'QP#Y4<' - %^MW MP]L,?=>SM\ 9O>FFOT3^E^NB%R.6"^T->R>!NR7UV"7*@2R=9*FC_0M<=-84 M1)%/5U'Z=IOW'N/-V87H7FS\<92N_/#Y]JQTU=F'_5C?;DEPU+"J_5B@*N!_ MR%J@-G&MV>WUSLY56FI(76M&TI6*&(,F-**XT> (6M?>414 M!<2A[4![ WV6R?X$FP@CMGR;@.03$KM>:]^>@:C\W7E'<^BY< M,[KN_B 4G]"!6$<96"O8@^'6@RJ#.>HH,6M#JHQZJ'+K'KN'5KXSA G[&UG M6;_C[]Y)TSR%)(J2<-EZ=\LG4.[4'MN7IDT:2$HZY(/RV+!+X#L-]ZJ/"! MM1QLT5C_=_!7#-$(-4Z*4+QZ*#6]1?66*[Z>,[9T.'Y&;SM@N6AKRX[W*R< M-SVR5#TI*@DKI*C'14ET7_U;+Z$&'FS7C0VU8?E0 8=#[UL O1 0EH,V&J#[ MGXX&%6%8FO,>."4H[3(R\;9I!FY+J%PL&4O[XHEQN%H]EIH=H_JGTO=JB49_ M=*&>2-I,Z1,D')L.2LU?4;V5A-/!8;AA*)(J3=H)!>X-H\6,QQVF M=EGPRG#XU?9$IU&O^YS7O%LU784J3XVCY @B!:J)-)4>51>]WKFBMX-_,&Q' M%1!9O:C\*B/=%,!=&I*TT"FL]"V@0,'XN!IIP(D5#62"=*J$5I40'Z<O:KY+5^8\65@QC8ZX"S6)(4WXHW)L* Y9E@8$4=M_KQX6U=9K M!P4@!,,K"M/B/;*X$CRR2'\>7:^/.G!"IQ?5QPYA0">^(4RHHKZ52*@Z._ZY M12-8A7AL5W\BE1=4>:NYACM=/3F&CK2 7SJS558.9V[D\G:]A"5O* V(ZV36 MZLI1H0".(J0@:$&53>Z%L05PWG^$7K%C:*8;"T7<&B572LM[U>MU:WXYNA!0 M6=P%I"]WG?]L&1Z4)WI] P<>J6A;(>.6694#BWOC#2R1I(!I0.**MQ57(;E+ M/;6@'.<_:O^TG5A@7#1'ME!*CNY9K]^O.6U[ 5^*0T*&339)/A,%-O00.7K\ M+]%K;!@&MJPR('(@D(:-3[1R)SOT8 UP=#CQXF>YXS)*(<"GS*.YC$FR<@'X M:K\"Q\)'M>07:@\$;*))0A?]Y8!<] \_GN=',!U^ M4 L3+KT>,*&(4T)TA1H'Z0^4B"Q:-67 E^C_"\E,N#=>WQ) G9Q1"E.#C&N6 M'K)4(E@0LWT2#KO]7O72JS#)X\X1*DN1J^*, $% M+#.'[OD"!-@!DS3Y5A\@< %%O*QO%<^(@%" 0"1:N1O1"WNW -9>@@4L#![A M8F'CCM#T]3???.^B6O@]:;X6E$*/#XBC;6H)^6<-&BKGQ5H@2Q/JM)02_ MU"5DTZW*1L JY]U"-B+10FLI(2*WI.N0U=L(/DH0Z[>6$/Q2EY B5@H='FQW M8*V!"=P[ /7GA<\*_XZB_N%2^LG^!1P\%Y@KMX<(Q40N(?>KI'#3PZWQT=)P MT>;U!/SZPW9^DN)/*97:@[J8J"6D=I6#-MH,7(W,GU\=^Q40 ,XIUR),6:6+ M8+QN[M%L9J/B]GT!/T>^!(NKH0P#"FW#B I:W:6-0IN?\&.TNZVX&NKC2X&( M99.4+*TJUU9CHY;I/SE#([F6^OA2T,G!5T!B53 ^G%;QH4RMEY;ZLM>_ZC8= M9S&9&YW0+\?XW0)+WVPUYR??_)VJU@!R%)O$Z=(J>:4B*TDL!]]T?E1-?;A9 M$&,!GD%N52S_7#.!&\5Z30#YZGMNV0:@R@!'%E5V8=5+>"\O=I+(!Z:ZRO&# M'=@L*<0E;C-)HE"1_3@K0IK\MI0CD3@1N$G%H9%&DZSD2[L*D*:0>\DO:G5W MHJJ[KJL BOQ Y(!)E5#5Z[HJ $!5WM$F.U6:.NUFS7=\KWK]2S5BRWGP%!-2 MO3V8ZB\&*X"W<,0JGXC5756K_DIPC2CR W$$(I>$95X)=KV=$^*&_I3 #/[M MQW!PC$[XKVKAP*7+! X$66K3^.2//(U/_FB/QC&RJ)((,V.7'RBWIO$5E,&L MG)U]LIR$B!N%]O2?@(/^05N#+BN\B2KJ TS&B %DFK2E7E;%EQ_UX\ M<+]KIA^B99KV+PUJ@NM>8O?LK'M\+W$\&4X?1YW%X!^C.?SK_@N=_2<:< %Q MKZ*#:)0;RL0:%8_Y+*JD^XB8TFGN]WK]?LWY#1@P28YK'K$:O7^ZU\O ]S:! M&4&1B83-4WP%Y3#G 3%+ 4Y!6\@"XG8KJ8IR3.#$DI4,!&D;38>A9AHKV[$, M[=Z!PV9CN$CT6UMSEN3P/5J]AA"#@&N."R@D=*/Y,0&__H8"5]*6$>$NZC0:4NC!QN%& ML]9P43G8HB2#S.P@-Y-6Y'7OIE?SJQR\H+/01D %)6=5J_Y=W6,=Y&Q)8"C% M4+.%+!*56I(1HA*GFGVK9RBFX\$9'/[MR78-U*K+NW5U3MFZVG^D [_2V7_F MU+:O?E1O%)XM!^CVVC+^'1#]%EA@97CNOI-/ %+7,X [L)9CRP.06]Y UQT? M+"ER2FA9.:-"P2YK0\I2@MP549VS4@$-R2>>LLZ)N[<,@K5ID(_>M*UA:4+^[25E9"?;/KF17'WBZ 2%]WHGG83K=$;[:6=SJJ$.Q.,XN>S[>6!I/-9E;C AF61\]DVT"'*WQ4$5&=/ ME>!JYAZ.)TO/SX\EUDA#*$- //=DKJ@&&DVC8 D,?=,E84))E5&7!()S"%VZ M1A^_[<4CSA1'I90#F0X2 =BV3@%0P#^ YIR?=:^)5CY3+JV*FUZ_?Z$(O%RV MFTVNED#<9X2XWU*(27(UW4!'(MXP0GS34HA)2-S_&P>1K/._-M@-NK\:?0T;\+AW+$Z*/OY^.*5 M[]YX(8\?;-<=O$(E(V.YL(?V=FM;<\_6?VYL$W+5O3-,WZ-&I0BWIYR)H"&: MWKR1*75[@D]2>F%AC'(LD(LLA3DUSA0*&IQ;S37TPF8F:.6T:26H'UG/<=F> M9C:*>)'*91:N%/?Y_^*"?_FPE=$KREG.=^IPD3UU MF#_?SD=_?QY-%IW1=_B_\P8<-QPK@3)/XHM7G3L_W1'2I8&\HLJ-7QH.J8SY MK (U.E#H6,IWXONHF-*JXXS'C@X[2<2V(4]^(P-7/JV:;N_FLN8-4QX(F0A MD+--%" _Q997M@G0$\"C@D^0L@1_O6+T'VQK#3^_O0,O-+N?5U1Y[#F,/K-\ MC8X8/9:2:.[S"RL'.C-R=-#;:N4GM@?<)^T]/-6[U:R?^<_Y4,LK#SZ7J><3 ML]$,0/H96W"IXZ.G) AV/EM0._O T: MLHR$%TGK&M!IY@]M*(1F>>Z3[^@;S06/M@7>Q]82E@)+]-CGP%H.M9WA:2;* M1?8 8)GIBVFLP_0Y>59 [A=4YPZ9 $>FHP+5U'A5Y"]?0BY$AQS_^?\!4$L# M!!0 ( -:8!%6\9$(*0&@#+8#X M^@F))2&3W($,,G5O=15+$(IP/W[)5')$**.#FN __TQ<*%PH8-/YY;@S^]\?$]>=_?KYQQ."'1[U15T_)"B>JWI38_N"4KO!T.OUS%6!QW]Q'J#DJ&GQ[K_]WJ!_J]'2+ M7U(H$2?H725+73&/GPW91)',.]DR0AEA20P_ IQZ$G#T!G#JC]__3("D_/[' M *X4DRW3A=3U[P\7K-R?&^$$/XZ#N:___FY M^W=3U]!2_-__*.HBYKB^#O[]84CV6#7CKC7[16(S]V_XU)_PZZ,RBNK,=,G_ M95HF" JHJU]!;<#>O%05!9CA2U@@;TMR(*"89ZIN*\"C %^(;2AO1;(546CG M1,OM5;$BFY+8N"GB8\(K>6EN^6/3Q]7F5SG/#@4MXO#_@?1$WA*3N]=;9A$% MTW,\2>?LDCFRH22@!$HN,#(KU1$#?8B,M5 5/%T#QA#8XJJY+/!YO<%@!C]I MU(K]<36Y;OZ(*4!6#4F'T(F3/V*F9,!.;Q_QJV3,)-4.W 8WJEKFN*HN@))Q M'. Z1: K>2RC MB\F,$LE 3OA&9L3F]4YFL%HH(MB?K.= <#M.&XR#M\Z]U%@3V&-_*[2\E-6P M>:HUT(RZMS;6S27EFYGGA=8""V!Z(&];!@,;&/2O"WTMXSFN90";7R6) FM"P ;]A4* MPO%T%[[:>FIG*V"O-M2J='[F8URVA.NIHKA6&R^@\J,"MGM%734FXD #E#^H MF!8H+PF(43R9Q%+7%#"^$^HYH.KTQ?%TLE(8EL%P8I$O]'(IX\*2+/-68F F M'!VK#-:E:B51S2QH"%6<2%$)\K9$^3)6UZ!3=IF9,A4J>=V/&_%^TYM>6,*3 M9)4MT*N1C7$-L!2JH$)AV>6/WR253"6?$7 =!ONV*K_!K62*Z>IZQ"=XH3VQ MNK* 48J$-W?]@;'.+]:$_M1G0- -O60J8%4!_J:UO"PF1_D\@Z]&$XT>KWQW M5%_KD]X2J@*'[ ]#$#*)48E]>[?MNV1S&<^V85OSJB-+>A](-FLJ.0B$?8L+ M(I5-]91<2:C@78YQ2IVE.LA TH,MCL=Q(DY>L[FY[0#MOKUY^(FS;ZV;]T;+ M F-H@M>-R]E5JC5P-.-5BU,+6PBB+P OE"]%$';LF$43>H M6HZ364BJ+@UUP%N,91B6V78M69M8.HQ?G9RJ>W!T?D0W!I.W&GQI;K)MI^A8 M7:Y(S%>0;BB2N%3H\9)<3L0@L[4T=A;]9D?H>GFF-&Y5Y]IEY3(O=-.E<5.U ML4*AJM:G.:[BZ(%<: S_%+F\R1PN)Q\T9"-SGL]_CFNMT87U0NU/R*7E?/+5'4X1K8]<"R]4@'USBO:>#5H<65$LW/ MZ>0;]=BPP0C 0$@)(=N1=.]XP.XITM"<39651A-1\O\>ZT>R&](9G *5B6$J3B[A,Y 9T=R6B:'M4QLY B66]9 MF,S+?%/&VN-G,C:GPK1W03.OFD$BL@HD![34\<3E1H(#PO32?L3&C3:E5!AG M6HX:M(-=NHI3Q.E=:0=I]+SO^G85LS M8+M^0Y=,%]( ._?46?!L^/J9)F9&+K S,HR$/3V8YH=_C)C6+:K MKL.W;XAWWVD(YQ>EJ-+-54=MCM@*EVQG*\ML29N,417E2X;K3"0;."*_;G!: M%;3:+,TW\"%7!5JZF7D7R]Y;7:F>?YZ7VN'#.<\-$N_!8/^8@-L-UI]GK3Y+ M^VQ5*'NMRG+TD8SIF_OZ"K2=K;=8VNJM:G(?QQA52%5;2:7:SRP_QC:.[8HM M"3KND#F#=S755 W/V!)GKX*SJ463YX5XSL89M9:;,"8OK0(N\9QG6(-?3I:55*^?9HU,H36< M*3+EL2^QQK[YP5,V+;V6F;\)^H_=Z\%@8 /[DN-X#X<"LC$U:;$B:UQ7K[>F M.9F:RYL<*49]8"QP24I[14^?,G!9\;/.R%=R&D&F5A).F3TS%727)/#$=3/" M]]9$/;0FZ(Q4%X336243/F(A@0+5"?$J0E$-TE3VLEL>>:QV)-G/#;3[5CDU:#8U [X)X< MV/Q['-XJ:\U4FGB1-:1F8= FJW*.A*XCR+Q?7M);"]H:$'$@)UM=0!TL0,ET M8*@?\$]+=;0C8<+> H@BMP7]?7LIS7;30<_4X10@%P?A:]8O F4,@=<">JAK M9Z+.CFH/>#"O6\MMN6WE&2PA\YD^K6-2G*:P 6');.Z%M-%]0^I6\"A)A]&( M9QZS'EN;-,ALQ4BRP/<3/)=95;+CTR[\Y_&D<>@YX8 3.+__"6;R?SGA)#V4 M;RRS-B'GTW"I0X!\\=W4^MW*T<)AC7'=6P>=_B,\*UC M>7;X+EP)\6NKT[!#>^M);?)NH?7L7[]SX"*D&\7ARE"3K%_ >)GN2:3I!4/, MS?-!.*VP>ZQ8V ]P]^^?GR9I_[YJT;\#/4[V=A4:^;ZPKV6XP M11$F](,E,QBYKV?_W5YLRA-%=]_LWN\>\O-(W\^J?TN>81KMP$>^$P!-?35Q M]*XI:Z"7Q"0F2^==*@+ "P# XUCPYS4 P,/9*OS\ ,". ("]%P"=>'?0S78: M-,OP2ZU>JL[6U=HR L#S ,!>#P#L[ "@1!+;4\#]FWL'/73O7?.!WN&X0W4S M8QN$XPX"VV-@]\M@'1'T_490 P^]VY'CADX6. W)W^3:LY*I[:(KLJ1G^?9H MX CSRJB8[?4(DJ6:J$+HL7AVR'E*/D^BZ-7//"78'[_W\QE/2?:2_$6%4^BO MX:^CHF>!+Y$^@._NS:?!5YM7JUIED# TB2*R!9R5BT!'E@$C^&XQ2:1?#=_[ MHF> +RT2\ ^4;@#?^S>?!E^9,*6),U!-#&3*G?2L,A9*J0B^Z,(73\%*[M4F?1C_[A9S>T-D$Y.P"_O6HA@?? M;W_=[>*KWG@X+VMJ<O_LDQH]IXUMML.X]VD4 M8J_,[3?O-9M'4SA7-YM.026&R?E %;S2,KM:K4&Q.T..4;\2\#\,P$/>_B@ M$1BU^QV+S.9R?'LIV)%L-O@TF0(]C6"![ M\.'< MAF,+V\7;1ECL.I4FMD[[\)M^ $DZ?!-]OJ".0*S[4.,'0>Y'5'[) 2<)(^)7#C@/BYXA@W!C1AL:%OAL0Z_IED=)N:":5WL/C6W7R?+QI,HV.+N_.:*6CSCZ(:/.^E6OM=*ZRWF/&.?H>%)%;G09<<7W MB"O0,/Y'>>_-/MH] *N6O-G9<[1BUW)<;M26]/UI&ZOZ4A,, M\8G51,ZT=DI^IH_W2'C4233 <*;)PI-[L$\L'MV(BI=6&<^=6#;LT'XWRYZ@ MP;(,; ?X.76A!H+F1K!\6/L6'2X]2N)QBZZP:GM->Z(ZS2I39!/+3W?Y@)M> MZO,E5[K@!_->5UYHN@T5\.06+D0PV,=3;X$+$^P?LF"\)>5M&(9-5"1YN+S8YXNM+$D>>X_G5I:D@J+$>0>P MQ.&ROB?.>0KVG;H^8QDSRP2[=!,-_L"H@Z(?79GR*-1X'0):P)6"'8ZL9 >;.W<1AU1S MW:Z&B3XK#4K:1-:[4:DJJ43$::J:ZD M;[5,MKUNHMX<88(75UFM8L;+>>76C?W9+M^&LA_MT?R0+3-TB:P7JNNL(%4K M<[PS2<0GJ\B6WZ9>ZO/5^[PMCYATIIYQVT4-5)55+M^>ZJJ"["@ ;5N^B+)[ M#UD]3\/-<9@[CH,QV!55KJYVJ,%YH*YJ)N.R&U7U_H!'G3H =%+/! M))!D<*Q!,,3?);.2@J;P>5+#YI51-K.N>2-S?/,AZ6N[?QLP>/I0Z?>0>I45 M\PT:D*9 Q.U.EB2[4RV#;#X*35(/1A]G7*S_+O4^3^E-L\+E^B KLG$":S1[ M65(KW;Y=?PJE(Z'L5Q/ZV&I/UD0E/M$*8CG1Y.U^C7)OW;P_G]#/"H)W9H^? M('2[X98[^CKG"?YR'6?[N0QEXK<>O5V;T*G/5^_SA([1KM18-5,]S!C)A()U MUXT:&Q'ZS2K[U80>]QC;S3#E&3;G_;&ASW,F#FY>\9]/Z!LARROQ+HHTM=)EV"Y+R.6V )M]KCE<&HL$+W'"KD MEKH0QV[[VNLJGSG1^-UKG[Q%BN1**BZTE2H0K1*8CZJW3@97!<0;%MI2YP7$ MLPQQZKK!K.2H#C=JV&JP5^5^/T5P '1XG_?N1P^V0^S%_K$+%$%.G/?3K622 M+4R&?F^1[*GY!K)8>YT MUL:GI#@D[A[.^)/B7[[\%?(_FLR(EH&<' 9Z] 1 M2[FZ[A"8KR9MM[Q,#Y,I9&/K6T+ZO9"_$:0WA^4%MQ)LM7. NX8WA+T77%6' MO;L,;Z=GXJ2\* EK35*%Q&S)=E5IC%S0N#F*[Z&0ML Y(:6(F[\8D _X5\^S M%5#C20.3ICW-+DF]LHO>:=&H(C;BV ?0+%C!=NY04)=AV)0RP9KKY#2#%;+I M@<.K!*\;MX771S**^/5+@?B 7?'*B&+;#7JB$<5%M=*0L%[106XYJ=MGP?I01!&S?B4('Q!K MSAK9CBPWRAA'ZL#0O"%1\&]KH/596/V6O/K&5->N. ^%G#&5&FR2#17E7#;K M2W7SU43O!^CY2;:Q'Q3&(T!]Q_R?!/*^N@!)\ 2[+^JM,/,]I>GFA,4[;XDBZWE\FD N[ MWXO[IZ08\?TW,X0#IF?)HF(GIKHOQ'W!=;J=]*)@(1>\WRKBOR7''QV>60#6 MV)9F$U66]!""V+0OOD='[\ MWHKGE]".6/FK0/> ;HL*-^PHK7R69=+*,)7-8GXG%6$TXM$++PF:9OOQI<+: M#8'13!'+Y?'29'GS@>V[EO9\/:"\=7V"KN =.=?WDX+!$&,\X523?AE)$CK+ M.H/OI?#'$Z8X517\3,9K:%VZ/IV[2Z(P1F]#_YDF/K^7LA_-X0CDE$_6)O$Y MUNU6"*G?EAOC$G+#N?/,Q7P]55\H"5PQR=Y23D 6(-E>HE',>(4X('HU*VQ928D?/9EF.3- MR<*O!YA7YS\LD!8;Q>PZR58ZE9$B)N9YO(@D5WPLCW'3*G[V?A,$=]J-IY6D M;/-#7P.6G\V,"J38GB$W4+G%_4>?FN/]S#M=4#* @S1PQ\N8&3\G%C!:GUEC M3&2$ GH[/6X1Z=?)%",&Z4_>:=?-]NI,HS@6!<_W<7DHY+LR>FOE4-VW%''S M]7?:-;2)/J!90A;B@XS%:L6*/YO<5IKLR^^TNR%H7GRG7:]9'YI0XR.!<$N, M/M?:;&^*7&2,YMZEB%^OO=,NG247(LFLJYI1=;M4O2"2G4*$UHA;WP/+2^^T MD^J,(2UQF=4X+FW7R4IO595N*WC]ECOMO@V$#[A'O: G!1X[2;QO]$?>CM].NU&(,=BP5UD);Q9(SO@_P M8AJY#-RM[CN*^!X10SA@^I8DL=:TF)$THM6U6_0DP=:P[[MX)N+X\PPZ/V.G M':>W$I3#]QH8:!6+U605R#B:*P61VL44L?(5=]J5BA.C+TP=$F.\8MKA9_U4 M&;W%1,AA]%ORZ#F7!%4*/2;+B;F1P!3ISMPN-H>8C!PWWLI..\2 \M;U"7R. MTE+2*BX(3,F;"I,UH:8(Y&(^E';:W9#"'T^82@4+))7:@M*Z2VLIE.IYLS]" MTN>@L=/NAI3]: ZG4^;9BMU=C04:"(MI/%>=3]3;TO4U=]HAINK+)(%Y+955 MN'5%T^+YRI)O,YF%2"&'B=O;:8<8>#Z\TXYO+MKY$CE;:5VAF6 \:;IJ2TB& M!MQH)";_1*48/TI^\TZZ=JJQ4C5WFM4K2:O&NLO1Z8R2# 13W+47U6K.Z4>.[>0XU]4$1MQ[+5WVBEL.5\RQ93%5@BO5O4: M[4K.N2V\?L.==M\*Q ?LJC022[G*ZHS S;L)WQ-6!M9&+DV$)EHC;KWR3CO< M9NJ]GMOQ6"*KI3&>7Z77D]L*7K_?3KOO!.'#U6,K8S1=2V*+[6:Q3+VY;GG- M&PL#OO!.._1 B<"FHI<)>-$@;1'YBF6J;3[2_S)X+-/8:14R-E%$< M4#HH"QJG,'Q;D%)>&YTLCCO_@H/,S=MH1 M+*"QA*)W-"XAK=C*LM*?YI C;^1V,46L?&GH'M!MOXFUF$:Z.L%4C"%6F2Z=F#.FO-.2X\29VVJ$'E+>N3TC& M>[98K694EL$U>T44FVI^B%S,A\Q.N]M2^.,)4Y]9NNT9W2H*'%ZC#*Q0$E+5 MV\K/7V^GW6TI^]$<#MU9-E>4;';9N>RVY$RMEFK;MV7:5]MIAYZJ+Y,$;FEU MG:.&/9+EEFN=4S"\KZ)W@/N-[;1##SP?WFG77B[I2IG,QH5*ZOC5#> @#1QO%0L)=1QO8H"(QX4A S(U KDA^2TB_3J9 M8L0@_J^I8B;K[_3SEJT>QT&\_)" MW$N5"P*#IST9R? 51<1&''OMG7:B*GFM9+I<%AAK5E]/R59KEK@MO'[/G7;? M!\2'JX>K?0Z71F)#FRNE93R5H8IC'[EQ')IHC;CURCOM,F5>FJ?&.9]MK^8- M?3K1YW3KMJCU6^ZT^S80/@Q;!^O&:EBIBQAASQ8#3A-J3317CR&'U6_)JPAL M*GJ9@/6%FUF,24H2:+>J58JI2@'<_JE3:.TUBI@:*:,XH/2"HW9[5M=/:/-) M>M3V6C[-5)'+G=TV^B/N1V^G'4<+/"9W&9V-V].9D;4FF$4@%W;?ZKZCB.\1 M,80#IF<)1U[%95?5YO)\Z' BRT[0NPCL5A'_+3G^LW;:C3E1T^U>#1,XK=&N MTP.Z-49O^AJY74P1*U]QIUU"[N69TFA8%GRZXL)NU VG%V$TXM$++PFB%ZD4 M7:,; \%/=5K:(C>="%WDY1VFEW0PI_/&&:5O":7XXK?#^^TT_M]W+,L:\!6R+&ZF#(9#$=OR@OIG7:(0>+<24:-37D\R^HLS+SXO#\#1T'ES(,$6I1L92G9 M@7=M6R,W>+GE@6H7K//"$IL(C #FBTJG55--9".*5W3\/O1\ON?GQ(EJ0C3 MLL2CZPQWWUQ?]1D/LJ0U5'7@\+8G:PXLG%>!?O^+7:Y=Y1KF6ED56$-N-?OF M4)I5T[:INEY(?3 >"E[MUT:42XNA:.@=MBU;TX6S M[)RB@$4NUQJLNIF"4"CE*[92Q_.#%;(>X-G>WX/@U=V_6(*( M"!-$>U0\ER BPE.;\/M'7/9XMG,#:)1K9AQ?*$XUCV3[ J"R'=!"-F5P,P!" MYBPOZM( HBKU=C,[JL]9-4^TT]S,'>-+9),.MP2@-Z2HJ7.?]T?L7=BCQ,7K M -0"KJ2:0&$EZ-#-\2YT:8&6(H%FSL.,E>OZQJ13\>:W3C>G^WI)YT2]$AH/ M,AIGX98/1S=/0".E2,U&U4DI++UBW,&"-S-@B6Q4BRPT;CIN>0(:NB?0;"W3 MG6D,2QGKEFQ5,'37RJ )C5N/2)Z 1H[/U^B^LJY@GC[P='70S)1FMQY^7!\: M5X\U-CD26B3@'PQ/[]6< T.W! ?AMA?TY3XGF@.ZY ,E9TM+'MA&U9+,O"2? M.M^M:IEC%Q8):GJ45:E;+G :DB\-= [=./:QF+:ITQ?E]"2*7OWL4P*^Q^Z3$KY, @=/QS$Z3M#GRMJ]"I'WG+2P M]$6P2%Y ]BLR+D[*)L9Z1T;@DWI0Q]*YB>0Z0]W3VC)@B/+[D/$DQ MM0^Y]Z^#-6$MR1QOT!2N1E=-U?",!^![BD\WJLB,;1#ZHZ#AYX&M55SEZ%[3 MP5G:U.>+[+C%=L;(Q6K!&K2]^'[\#I>^'\KOXZA\DJ&?E/R7L(2'PQ$RCJ5> M.1PY+'J&F//<9G,_'^="&7.CC1[/%'SDK:S C#P!DRP"Y&9^OM7I(3?V_1RC MN9\0?"SWR&0^Q62D%0J>1EVGZIR;TE<8K4]&#%&KI"LKY"+V4T9S*+_(TT1F M &\])DJ>U$WGD\NZ7BY 1,NW(:W\_ MX[ZDU\ZFV$FWSPV;PGQEZ+AAJ[R+YA%;7]ZT(Z]]-<.FMK:\77VS>X/L#*)O M)YR^AME-3&VSM39?C+=KY$TXX&@&\2*KUNZMX<6E28@;SB6=F]NK%*=%B<)8 M9D7C>6 )LHO=A'.+YA"_I=&@,8O(\OVEP]17-4WEID KJ"Y8WT:2-II%C SG MT[Q-=]Q/D>6F%V?].O 2C4(_C7=OPMM$\XBW;S0/SM1Y*2+K57 VM6CRO!#/ MV3BCUG(S)OEU1A3OT. 5#CIZB;BTQ7#NF%*GP1K>H)&<+VFL1M^$4E[%((@H M9>]>:!&_=R_W;W9,O]G4RDNKC.=.+!NVL2X9#YP!6/8M6PL32#EUH08"XD;P M)^$#P@,;3,F4P0,' PLTPN8>508_[0/)/HCCUI3#C45?6@I&O#D!GL7CDHE< M(+;CV:?E=<#%;Q+8QSW#D:0/SF)^*.I+N@(ZCK_6%1P6/4/\A"S 4[N0R0#> M?+G ?-;#IB6)7ZXG%+I[GV\2X*D(X)\ \.2.P8&NI'RF7\6X6J^R*,[ZHV4/ MN3'!30,\^94!?O+8B5< M*5::F2QR E]=J7%H#V:2Q[ V; M$RZ-'$W? (ZOR9!>L =O"87#Q4'G@8)9'7#Z>EQ-"@0_:'8TF4MJZ)U5CRP4WG#,S]E9 MX<0Q/^A$:3ANK(;%PF2I$36ZK#;R!4M+W22NOFV4]JE'%7TJO ^B-*,FE_NF ML9($->?4""*O=V#9",7$J619D_K"=)9:$W&\%$$!V5O&G@_8=_H63,_Q))VS2^;( M!G,/=BF0V,%J*VNA*ON9N55S6>#S>H/!#'[2J!7[,&I?(Q=2[13]3.?V5XP< M].Y+!>E/WCQPIN#:S)= (DF5EJPT5Y2V)"&G(*RZQ> M8W"]+,Q[=TA\>\BJ5F!Y5ZO-&\ MN'K>3GLX]FE;79('&=PBU,QT2VL7//'F'OTB^/K^7 M1F++ON@D>;YB2@!3K50MY9*ND '(10;77%B'SK:O=^[GK$T\'[@%G&,E6B_9 MGHLOEZ.ONVRX6O2]>DGM M-H5*W%Q49X.:W49O1>)ML-NY+QMXK4*/N&W4R@[;OCV$AN(7])R<'(6HVIJTTWF$_-$AW4O'F*\/=<31+VOS/4<#1C. M$O7>9X!W@P=<[.=KC,[Y2XIM+\99;BZ!13U_I\Z='(XI*SVJ_9 MWIN'G[J@JBZ 4C+AF&^L#G60<1S@.EF_)DTMF]$EYSC1RMN2 H)EAOM+;U1' M+QN]7)GUNB#1;.(^UUY\'1?S8LV[P?P;A'FP+/*!-!$AQFLMO;@42.M6L#)V M!ERPW_2Y@ROI4(1!;B,Y[B6 >P6 MT,,6.!-UMD-NVQ*:>MY21AKCE<:XGI^.X^6(:%^'W&<$^[VA>W(G]ED" Z%- M5D#-!CE!4G@^'Q^WRBIS$W@][_[J*#! !Z3/! ;+M9'.^AU!U^8&,^;S9'=1 MF=Y$8( 7*/ X,+ ?2XPR!338-P&JQ+FZR#E=MW>(-6-B#8*#-Z^K.8]T.1L M!=B&:1E'CE<_A*'G)1#! MZ%4PRH$%T*T94'@@3TP+BL]OJ>/)WC\W.74^Z:^$I-;6NUT)X*Y+%)%=VO$N M'+T@@J\/I$?7<5\"2(!H@?J4("V!Z"YY6BN)/=?\6H1T&T ZS_3+@S-[SCJ$ MK8(&)Z26;('U95O(")5JW".^%N=<\VNYB^N,WA&'P$MA0Y:S MZKUE2I.$ M,1Y7ZJ;?30/?L(]; !<3 \EVZ1NY4N2!1KOE;)8$U 2<6\@=XI MU;>0%+D<"$YL)3A+0+BF&'O5'I;Z+$AC/7($!3-=?2W=7RD@O/S>D0N$A'HS M(?%MO-;7B+R8J#<[J82+?RWU?TI(B"88G@D*Q6)WF8 8Z&KE"()@A>"@OI_%"S1Z;M"4;2&:7H$E:KHG<>T V&A6C"X;G L-D<4H5Q M<^2Q<27IQ4F#:;$,<2,I_ITSHFQ6D*&Q"6 MS**;N7M.C/>6=UJ.'Y\T?Y\"#ACAE 8N-TC$S^D2-HC&T^@C>LSW)VU6RJA! MSH%O]/(9.I%%-@D9(?J5B,;3YT+T\R=>GOD,C5(IH2:%7L7%B#X+RG.J7JJ@ MRZ\(GJ&!SJF8'X?+P>D;$W4\(E=9IL2"!L,X'24C+=?(LA0R9Z^A=RSJF?DB MF<]H \P?US"ND^#$3@%S%NC=1WY#?('&:IT/\X5+EMFT-Y,PK5#FUX*7X!L) M]"ZU0I$O$#L[]\Q\X=6&6I7.SWR,RY9P/544UVKCQG$1G47[3K@<\$5>RFK8 M/-4::$;=6QOKYI+RT3O- CF^0.] SS/SQ1ITRBXS4Z9"):_[<2/>;WK3B"]N M\]#/C\+E@"^3E8*PS(83BSRA5XN9=PX+J[#%XB>^MH"KFJ',FKHDKF_ M'"S4?-.3]$ #2I"_X>P<& ';!DK&MH--1\%OMJC@$I6LIDSPAE"0\[,]Z=P]/%GG@+@X4JP)Q#X\0<_A.[]0S^$W8O-/Q\=ZOG1 M^6=23+WM1*&OQC +HE;.95JE+L;1IJO'568V:'PCAHE,_@9,'B/C6.I<)D]M M0Q'\AFT>UJM89KAZ8PA_QXW@H!,H0;%J*XEL^TJV_2K07,B&P_SW^=PV+1+TPV5CIVV4ASK(Z-9^$/E!R^2Q*=$W M^YFA,)\2!-!_T JZ,']PTNZZ#A!GPMMCQ);5P*;[LBEL:!* M=:W@MJMTG+%&=0PY_O[F8+OXWMFGP,:Y$V '7[X7;&$%V]<[R!G3?@&;9"E# MZXJEQ<)*^(5E#KGAP(N0>R";:T+NA%2_&/!R0)=\H.1L:1F8=A5:=EZ251VV M^3R\5XUC!5C=\?'?'>_G=B5=UO7B-SO5RE5X'DQ+5)5&H-OQJ/W*]2+K> MSX/>Q9UO*TO9\]JJU!'B"0QGB4:O+B]OC_N^G?,]_R;=_=P(;T7S)$D*&":I MS&P!L*7\6F8Q;@B*SG@P/ZK MPC0UL?/:2#/2W4%MT28)UD9N3!K9_Y7L_Q@=W]N@I5,7+*!GT!_S_U,(CT;+ MZ52%=E9*#[)5RJ;)F_#_TEDO>(CL/_+_WX(N'OC_;LV0>T9N;6F5ZG@LK*5\ MRE&1FXN+[#_R_V?W>I*/5WA&I72:XJ;!9OX:7IQ1+Q.LI8B#V\7;U)@8W$4O=/DM= M+Y:Z!=HY&AY],=KY6"Q5S(Q; WF*:4*;3*5*J3Q9:J%WE,#EAF 12T6Q5$1J MR)':@UB*L<>95;9&+K!N8ZUU5V)B250CEHI8*HJESD0[]QOXPNM*O\MNOCE= M6Z1 >3'6YL.L,%S2G=($$#HGR20_ MUDW8M(W,GW\.I].%['1TB.Q@= =K>(I0RYD M//8F?'HTJQSY](@ 7N_3BTD@):M4J25T!X5&2:?$IC6]B8G@R-(CGWZ6+4U9 M29=,&;0G +A52P[M_MY2,[)L>:;KM( ,U$4@M3IP&<^VP?[46-!G:T6KEJMB M-#UO92=X.6YRR-G0O8I/=W>+]Y?[>TY47'2CT,D+;#9<'5QAN+VO\."$Z*KE M9"#)Z,#)@1F$9- -;M2%>+,SIM*PEL!^0+.,!45INIL'!O=89?TL,.6)(=G' M-X.UP *8'LC;EA&>KBG);E=U)[M&;,]SWO_VY<<\\@F[JAZ5?5#76T_*)O&< M)J?;2EY0I=')6*)Y Z#QVK=8OK5>OTXM;X$B'NJ?157(BE+L!*[IS) MEZ>Y-<^JYM 7U_%TT9\CYSN?99>W*04ABKD)2OF:!K[GOP*PQK8TFZBRI&_& MDN[,%NM]%&SWOFU/66^2)]>DPN2G@LITZG9W: Z+922M]TF!P]$DE/BO>O^[ M&N:+6HY,\] TFO+PE M&K>_<=S>JF2(;FFH\1CG#Y<#BA/540;)V=IHW/[90?9-CML1NUWJ#>/VMKJZ M[5$[-1_ZBX5?ZF)SINHOVXE*<;&\+6YYBTH0HI>;H)/O9=R?%WU:MY**,W FJ:AF$M7^K0VI1:C*VD6]J!-824DY93:X,)(<+3U/3 M"A[O,6/Q@U>OK'\7#1U M$"7K7DM?^"MW&Z! 7]&,PBG&JADM1ITS'0M3O41YP'B#97^!Y. BFE&(2.JK MD]2+R]MO;#ZA6YKK?*-HDT(!9RS.JPDDQS)1VA')W,;MF>:MI!VSG$Z"28/*8/&N'$\F M%^UNLH;D-'V4=HQ,\_X8Q_TV@4>#6';NP<8SEC&SS/T@]MYH#,,RVZXE[PR MC9=7E9DSJVGS.)/H@70];J$W:GTT1CK5RX,HZF$WSXF @R,;'ZPW?_^1C1NE M4N=2ZIAOYFUUS8LLL\KB9(.NXKDQW!>2R->@JE3JC4K>[*S^NU(*BE3EYU;<% M()6MEEAD,NM>%"J]6JGX&;WJH_@WHTSAV"/,E^-W@O*E#8B.MDA;+MK":U0L"98@C1ZS!@CM:N#M&#G=Q=;366 M*TJWA='Y%F-;@Z)?FD981&5_\A5 =V9R6PE2N3WPK;36%8;+=M-JNKAFJ&!;?: MU";%4I=A1GV!UA=DLNF6^GH#N5S&:ZC_V7Y^/;4RECVSH*\#=3C W[1^J])2 MFK*5]C"AL:K36(MU;#Z6W9M4Z9-]O!5U'DRIHS'J8/,S8>Z.>G/,4VB6J[ E M,)>0(^\;B/0^*QHX'P)/:S,8X0PJF;*8F\4G%T_"?5+? MG[_Y[&V+ S**H@9U27I#4I62R4@SU97T+=#S;GLU(MI522@,N@-^:8Q39A9] M3_3\0H%GNWQ.W#\\_!>Q*_)6:HU>#3C58-7"U,(JBL +) HV@X[<#L\S?^>: MUN<-K!Z?)$B''V8UAAW3&C$AIHL!^I,'B!K8&T[7IJX E%YFI>2:R2J.%7AI M1@IB?I7K3QOG6U.3E$J$9C%KEAH,%ODC>NE%=='D;.D?0 MG $0SS,NL4[*9$[ "IC!87*I.,EU9YTHI/D:0)FMI;&SZ#<[0M?+,Z5QJSK7 MT MID#GCZ9VKQ)\W,(9IUB5&435!DK%"A4[37A^]JQ)NQ<#>L(B0N@)0>@6' ME^?YT4CCRH1>[/K$A$8OI/D,N3V8U9[Q6%L=](9)H5"?@$J\PF'"^N(IHD^= M C[8'S:LB6E!E?,^UJ[DI9F;RG;:8\1Z?^9M5*F-/X(RB*?TQG3-<^L!I P5;R_5J^PR7(?/$QWL+IN^UO/O+4(,P2ETRW MP*7*71NC1ZQ$SVNI,4T^]O#VF0ES,1XQ")A93 M#3C]8I8CYA.L](0X=S]Z_KD_U=4O"'O+LV7@;-Y.@*2$K JQ_?L?^%?,<7T= MDK,AK>)+57$GOW ,^S]_SR08(IOCN Y&+OSDCDSSW6]'L)?Q MD62HNO_KOSR,]IU8'2QC+$SXX%_P M92SXC][\&]0OQ28V&/W[XS\\Q\"WSDPRCYX8OOYE6K8AZ9M:EYOF;C_Z\9N7 MACJ(6:-8<,9(,+SXYV=0"Q2K!/^;G1"OK /)_C6TW,G?#R5]2H#G%L'?)_L9 M%H1?+E1'':HZ]*^_)JH"?2\L_G__DR(P\N]]QV:!W +TBG*2),FD@HL2EI1$ M*HD#,3W"91$CI$1BB$O#9'+T8R.* P'LP!,"X0Z;K?X>6C:$8O@!>1>H*)S: MC/T'"_]W/BDJY M&-MCBIEZ@8TQ7*U6:K=+7#VL,1#:9XCKN+%=R9E T+B6^5#/I#THSS[5J&PF&LH-^R+3,,))3Y=@VKFX%E/RN M 4C,E(+AA0+47SE+]H+8)CB,Z4=(5W7)MD6.,'-&6J-UC9YW!FIJFBQ9R^8+ MC<:Q>'.CZJ/VGE/U9U;TEJ!I,$I2I Q$(D&3(D5)BIC"Y+0())(""@G?#U-; M@M[\@I=%H>[G#:LQM%B/3-J$H-+-?K(9J&%;T@U=WK9U6PJ5+5V79@[XM7OQ M$#-;-Q]X/'GC*;==WL05DN=:NP\V047XR5'L<2;0$,N7];!7U'PR#F0 _;9^UTV_EX;0"WDN^#MP2X][B&0\L'%MV[]=Y57R3I-W)!4) M_$P"_^G: ?K/@O2/]QA_A99,-FZ7X+S"S;_;$C0'N9$+0Z(Q4T8SRO#J8^Y^7\,:P?.Z6YG7C:8&R! MF%"*M7T#NHW_AGI+)RGZ7F\GG,?9C.42*#T5T>&G([JFD&GQ;*O:C[78!M?B M8PVAU18R=3[&/\44V=A 3[N/!#,/' MX-=XFJ3VD=8]VG^&C@A1!_SY<6O>LF/N!,3F.YC'-EG,& @.LXZ="+\.;/!7 M<*R* 2N=*)+OPP$K,"]CA(VP3>PFWWH0ITFRE5H7C%%;(,JMZ:Q%3RJI]O*% M+@DH9EDU4FED<+R7EW/9:*X&)$P[2N'H%&T M=X8\@"V9&VD_"/=&25>NK\OILB;YBU&V.11L<9!Y;[A'?8MPCV]EZNU2$-1] MZ7@O>4O.>!?ON7N@[P*^D6T9L8WPW_=WS+4^]/-;BQ(^7YG!HF#5"5:TQ48J MC"I,+USG=N&<*1NNK,C#!];#YQWF3:>YVGRI]!5-I6H4E_*F*U ?O] +#,/C M)(DEZ0LG3V\ $*_)FU]:L2TP5IV 'MPZ_.9 N93#][/MY"R'^6ZW6Z0J#594 M7DJ*=TO5:BY3CQ5:G-#X:V/II3IS][FZ_H-=2;(;"SH8S,K>=SDF.;'V#,C! M6B(EIIJQDNO$F$DX-OX3^43^,(EA(UE)BY)"ID5J2 [%U!"#0Y&,"1IPAM(MJ'VNTYFD] M-0Z6ACZ:''#5D:-@?1L#BWFM;X_:=$7.B-3C.JU1(:426K[&JGFP6#=-UN2G M8S'QN&1WL<@3(XY9:U(OY2IQO]Q/JAE8K3J**H?#;6NT60YU9*)A67LLF>HZ?/_GK9G9U[.J/TJM=HPU9KKE0Q4> MXS]6M^[^O%EX/A%YT&^(/&X'F!?HWU=4YJU!^-(N+Z,H-G"<[3]5U03X02K$ MP=>C\3BY6&F2Z"PO 8*SENK *] QR/QC+AW9-OGH/^ZSH9 MOL6MI'G2]-\_,D]9EC/:P3OKH+I:Q@12*\U?L69/_X\*A M0A =!&VY)ZCMJD0F)_5 I8=QB3P,$NAJ0YZ_Y E3[XB'_KS*'IFJ!:VJ$>CC MT7PO0TR3U4&G)6.>D*.F7LX6ZLF7>DH15#R-4Q22T[W$YYM'^(EJ!@F'7WCJ MH5FW(;O;JJO"A]BAZ0 ;*+&99SM>,'_I6C%8(LQ1X,0?PS\#WQ"L]\C([J]; M$NYN[RA))ZEA$HAT@DZ)E"R1HC2DAF(R)24(199IDI9_/-H[>CB%MVW0?AY1 MQ/LUGEO4@18O56NC:M(LC\S=NOVC&4=#E6LXKF(EC0;E5-==,\D^LSQ8RGD_ MBXEKCP(!DKPCDD\YSU@BV)T=V[]" M:\+NG3.2L,GU\5N26)?9O7LKO/GW"VONINS M!X D3V*R+CG.\;+)"^'D-H5E2V&$N5FO^TEN0Q M>DV:EC?>K-+:' T;"\^&_2LVD^S80M(]$/O?V!V&!ZM[8^%I1A]::OY)D/X\ M36R)8,,#>S7,X@E-J0W&-:RM826#J)86*6P)U0!#PFXU5__Z,GZ8>0X,_Q)) MYYTEL%MBN5^+"M6@]$U:R XR#:TB+G/Y*A4';+>Y68G(P\%.77(4:;ZQB%A- MLC7@QJI5YA/7FVY;5-"MH:1OF_14+NB:)\ @L.9YW\PGA[PE4PGFW4%LZ,?D M"8 ZA5]KT,^ <'5%,+RU]UFD7[$_\&U>9"(YX;IX)2;I.BP2;.@)1LUS3PW& MS'"H/ 3; K#F[;!YOQ_%L@_WHVR'T0>C[QTR@Z%UX >#_2@QQ0LNL J+SFP@ M@S"8P(E8N$G6B?T!*X46%',\Z"&=B14L*][MOW GDON@+[&E=-S><)5_^.-M M;_[\*R:92NP/XJ#+0VB,L-!P"CL4_"@L#W\9-&5;67A!4]B2L*7!G&0:BRF2 M[^P.KKEXDI_Q;!NV8K/-*F!:5W(]YR"WU*B.M!S-#A6M4!MJ NL[YDH<__C= M#\[E.S;DV-,[L!XB<8/B=#J]1_'A3V'HXH(X_$0&OZ#^PL$+_$4L5K=BI\J_ M_*ATDKB^P7Q!LXX%R(:@-E37A;8 = ANVS(#1ZK[,0"=JA\++ZB2Y'#N(R>Y M4BS8H_+0WN_K.,R9M3Q].R]-88GME@!/WZSU:V69L'6@$L;_J;5>U,&SI]7,]0#J09"W=KM@:%67!6C[))5+D:%^2T.%5B'%=/A[$)-D&1IJ<+^8$J+6#KS5R4]C$"3QDU\X!K1P^!1[ MYR@@Q W8??^OP$/#ZJ S"]HZCHUM:^E.=E_?05\-8@H8J6:81 IG20,!$MC? M3[4N_!K_>U?LQ0)/MVU7,'#.V\)/M'-74C5#$H*<,8P3NZS]88QQ]XF3#A_' M*8J[O 7E#2M7Z#OJR>'M7E9O20^] M*/VKC*&JI\ED.S7[02=T0_CY!,0@D0 )@Z10Y8&/'%NV?YD%>$$P:S/;1QR$ M7ZDIN9P;?M'5*E#6K.CYRNIQBBM962(GS'H_6RS_/1!_2VI-,)R MA.6OHM)O=?;UTS,7HV=F"/Z*J:)$1<_G(F0-?WL>(?$#WA1-3F2+G[N>;7 M3&D^.1_TYUTLUH?=W(GC$T>$06\?QZ$#E^.5-56DL;GD^OUZG#1H]\P#PLO. M"3_*>'XGH[AOU&;5X?X^O$PXE9KQQI[CQLC-.?I_!?"T06P9_+6%8CY<-0!9 M*KA<,(3;6VX^/4*PZ1F*Y2I 5@U)_Q%SH >'W<..P?RZBWACVUJOT#I:E/UB$?O5+]135 MF>F2'V@'_*U#7M[=+WD"]SAQ?Q'DJ]GC&9D$53U:3?^F;CQU2V0X#[Z3Z>;J MS$L<8OAD_$KL%BACIR7V]E,-_^?_.-H9),D:C. \4PE6#ECVKQU8#J2PU2,1 MXFX,XIN-1]((-O.7I"\EW]G*))F^(__/%HB_]G@C0XV'%Y7&#E[?;S:Z[@6H M!'X73&$<7H"*WR6C"U!/"'"[7S1!4_(HG1J*Y(@>BA0 0!R"!'R+)TF0Q.DT MD=CM%_W\X[N?/QL9B1/&[R]B#&XWC#V\P.G,+?UP>GF[(S=$*1HZYC/9*AM< M5\!P=9ZM\^U//.7^RDNUKGE*7_HY.87C?@\VCP,^-.OU&[Z7!GGUUO0%^CL<7H]1/ ;]A^?6QZI$^+X MB&MOP '&^__H=G2IZBND#Y,^)- M9-!]*[SY"*^'>CGQ^0MVXY7K"^)S.T/'=W M[%A+=;2(D9&Q#(J^5;!'C'S+N/MVC Q)DPK6^MB6[D"R;-B6#)2 'L4D@:<^ M0L7476Q7<4C#]U5'/(L,WJGDC4 X2N_>&K2^)I4^G@,K<7R1;1U,7HDXG232 MY(?GQDIWL;#J:&(,27Q3J1N";$2=MP2MKTF=S^<%R"I;R%0;+8YAV5RI7FB+ M%)'&\?3')LRJ8"SIF] S/.HUBCW10?G-$&@TQO]2N/N.[(IG@@1G7I)=RW8^ M0JF9NS!5&MM6%=$I,K"FTK>*U(A.;QEWWXY.(0^*'TF,$GZ7T@)@#(RE81?6QU0&[ M6F+>++@R!IBJ91\P;L2NR* \8M<(=Q&[7H==*;&FFJ MC8#K?VS*/Z@GMJGH M<+%5Q*O(X#OBU0AW$:]>AU<3(A>["FHOOH\6 F0 M"07#:#$M)5,BE1ZF12DAI<1A:CBDTDD:2R>E'[^O=%;HH_.DGSM=C,D(P<+L M3*L?:_,9/MR%'FNQA4PK6,48RW.M+GP9KW)<)7A_M)9[>$ZF/#RM/HR='G;H MWF#YB>H$VR*#V^UU/]8*KZV+668L#_4>"T^0_<,-RFROQ X^V=Y__6=XE+ND MF@YL]/X($G!7^,PX'O;"EP0 XN%4AP"2>3B?^"BJ4C/!JC[L8/P$. M.'P:;),,;#-F>79LN+T+[Z^8M=^$'\ZPW]_L 3\/1]CP1^$W\OTV?B>V#.Z* M@/\&=4%/8@85#:?!#1^+[50]6,W@VVW-P:TBAX]]QU/_BBTGJCR)23;LE!<^ M*[A5Q%8=;5.'%_0NT$8@J+M8!C;PH//6]MZ+T.KO/QW%H&I=RPYBP-A(@G6J MIJQ[RN;6BU#O(02"ISZMR!/"-B1_5U4L.*T20L0+6K_'D:0:C^YNATV7U1FL MX]$WCN,9CSX= ET%BT,-!B+F-]H/W@9F'F'-42&N2'3. 9 9( M@E"#.#>W%^3L+]U1[D_7V-ZE A43E(?69$JN9X?>:.1M7FTL:O/M:7L*C#!L M$@1-B'YH$#94%,0O)#MHL9(QTP%DD6/360*(9BVX,$;?/ ":W=[N-QV]-_W MTH];9 7DL+W%"'ZIFE KTCU/!%?0N& E%/ M*%L67.[$"[9W:4 P/3Z>)22(T::>D$)FX:/N8ET ?8T=' )@!$"#* IJ>*:3 M(]LRPC+6TCR VM!3H'%L.7S7LT.FW@@F7%\0/DGY_^Q]:8_B3++N]RO=_X#Z MS+F:D:"/=^R>.2T9,#N8S6Q?+&,;,-[ "]NOOYD&JJL+NK8NP$".1OW6DF4< MF?%$QAXZD-"6_O)UIN!GD*:]1-O=BO#CGBV+G@=48=]UH"*6A.M5)8P@$ZW? MPSKB4+AI]ES9W8VF ]]ZO,O2A?#^^&AK^+^S.IX:!!._?G3H.!V]1 J8W #C/\;&6M>>FS\'$VZG M8?_NC=PM.S@ 7[BO_NJM7_J^(+]%#K!G,ZD MA;\%K^ Z^=I\M:QYPTQTZ,S$^0@R$! G5?!'3T.H7B*; 4=V!*3Z9[)=&#] MP?M5!PPUV23 &RP-L#X:PP?4R?T5Z>G@TO*AS:TE6/R_#T(<6H^PP[@"?^Y! M;2V$2@!0Z^ 4L<1&![HC@4$U$W$JXM3?.!4HZ<9.V7>@Y6'^NCD!C< " 2HJ M4+&<9UK:;H"GOAO]27&GF1 Z.N!,N"=NC/3\E^R(N!%QX_Y'OQS=/_YK'/T/ MO,/3[-E( =WQ'_R9ZGI J5\:7N@G_KFWIK-PA&P*YYY\;>#U-=TVU$AE!9;S MKG%9 "Q39R>7(U=;]:43[9JB_<44_N MIR?>OC2HD8A'H/K%#;M1NI'6&EEVR83E0AD,N1:640$860D=<*UK'VJF)G" MC@--P(.YCM0&Q%-_5G!7@+<<\!F'*Q\(2N@MT.'/]+7A1PZ6IU_N?%2_U&(] M%T"\![?(IN!8FT\3(B*B&EAA4I'4?J0^(*__(E2_,K4"? M1,[/G7=J$1H[7_\A]*2K,/+F[F)=>]_SWM&\0=(/\=F?^2R*=,P]PX$>X-V] M"KD-J(H!T$ W^[#ACK&>3;!.:/HHV,5S]<@!H">T4'\N' ';1H$=J.\^UR^! M.:7LH[-0?]T%'N'3=T^<>/K.?8O8%K'MG]G6'47&SYZQ #_N.<_3=S_2_\BP M!G3VPW@=XC#$8:\YT8.= VAG:43K C=A%TQ3--APCNG*A M%S10+#A=%_XJ1CR&(1:+%8OM^ FH>G-X6P)3=Y<7 ;G(B#R6E@).(.%/841Q M J/I$3,"W2_*H1A;D0?G^Y\Y['2&8B1JGK(CSQZ\W>44P' _ (;A1S%+Y5=@ MR@*HB=(Z]N%2]RE=X_V!TY/1TI=A[GVX/(IQ[])+[%W6U,HS N@HCA(+/)@7 M]4I,&4@%8Q3NH M>((2)8%[BS73(0P)R](>G\GB?Y8O"E-/YRW319X_][5DI M5;>LEY#Y;:;K]7*#\>-)RBA#&&4(?R!#^"Q;\"R19*Y[?F1%[])H]G;.2)\J MUC@995@ B0+DC0_D\P*.$AD;ATQ)W0#BQ@D,#U:[[Q-8]^DYBK=Y+C.T72D\ M^$/=\O75%!A73\F6KR;B)O?9*H"9$PVP+E%*)IXZ\>W#!L\;\NU#!\G#[\XX MP.IYVM_>?N,=!TKG8SHJD6-L9P?^"J!%6;N)G*[J]@C01^+)**86Y?1&J:/: MLW$M,#UGI!]R?9.[*S.B#*:A>?![<)(Z?&)T%\#\!BB>H_^"P]FE 7K1JT4) M?N,H >M@G[[HNB6L=VYGL!&V;42[E=SGWD3703CR]44('S_1G3RZ&S] M%X>;W>?.O?PM"W8L2I8+1Y:APIO2#J&JN<\P&KAA8I>Z"2Y*Q0J?\K;^?&O9 MBO9.EON5Q[DR?/T0YX>V.I#[^VL3_/Q/6\43 M;@Z,#1B_"O*3A]WZ;7L.Z<<025="QM<,)T=Z[>]Z+8'T6J37?DGE&\%HV%A5 M9';,43+%:"-9X31-QJDQQ="T.E98;%_YMON+:.C(Q6KA7B]_>^Z. 3IR*G+( M[(:8)$K?$XE\J<[7LR6^>K+N;4?/82SVU]&S?WOF"+2O%O*]-F/['*5ZIS;\ M@Z_<*U6K.;Z>*+1$J9'?T;ZLQO"Z6JP+&:GO\R!]0-52_U?,7I3Z=D<^=_X1=:X,:W0XY%,JNFQ M3&GL2.9H'9=I7!MK&*>I)$O_)J0Z*I!G\WQ8KHNDE%KU9G;)+E;9#B_C4>_D MWU:FJ=&V7]?")F;@).%/4^E\X$[ RJ-G9M74BLT-!SG!9A:KGN(-U&:O*1/' MSR1SN7!&6@ M+*?\N*-OL8KV 6B094MKLS+S/&G5WH;S_*VF;I@C/M8SG7+PBA8R>GCE6362,G4 M8"1)E:'7KLAYRBRQ39D]7JDKQF0SG/-YR2CA>=OJ3HO">")SQRL%-T<&J\EZ M)2V$MI;Q"XVV*#5E'#OQ\69QO9QMUHR4*@9<,U.O$-($+,6/ETZ*(ST[J%.J MI*_Y?%L;9K)R _ =<6(I(V+,PJD,,7T[ET=TJ36N]L'2$V=OE%MDK> 3-M9. M=RHK.;8$93IN=O@9$VF8B M$R5FIGP N%G!"PM>:;7E6A52>M"0C1U;:K5Q/3E6:,GF"7684UK'JKCW'])[O#D<;NNE,5S)Y2F34 MA6UT(XL#,3,9^E^TWP B<.-AQ( MBC20C3$6 INUK2@5>TE-9/+$:2T[Y79*'O6F4B4<-(S*C U2"W 'G0*WB5=) MPA)#J5)=.N-U6^Q.3/#4ET<@JRK-*A@]!E\P&.R61IK\ MQ%^\P-K[_N;HQ.EJU2,*:L>6E-FRHF.CYE)9@UT\<>+8T-CX.-\,!%$A<6J[ MX%9#P,C4B1//I;UQ*:TU**S@&;GZICX(/+CTQ(EWM_E@8JHY0EC4>7M=5!*R?:BVEE)MF20%8:?J34 #^H$6C5JCMK^'?G M ?8K]K[W'&!'%G_@'3YU_S1\GU'PI[YDOSEZTOCW]*MMZ)[9X<^>#]/ QY:[ M.OBV#M]'ANJ/G:L%]BIXT\7Q+'OB::DR\ETK#/0SNS:^I!G7;XZJ5]O!';;] MCXD6W]DT.HA8' 3.H(.(PT%@W_%7VT"BDT"RZ=$. LFF>!P$D$TT.HDXG 22 M35]Z$&\WL7[K1-ZT*2ZW$>P'-N*L7/C7)+-_&838!;&._WV*2!SH![8JW)3_ M_49\^^Q>X-_/V[W[;_>B'%J;!)X\(AT=_5<<_7E;G?_M9CQ/BKP5!GA7[/?/ M O#3N4GH.H@W2YR)Y*^Z ?9>T$,1WGR=B'H )0[)6C&6$@1&$#W9]]IT]MR[>?O._KS]+7WL<6 M,9,'?R#N/-K!3\O5=7U\?C<1__^[?CV\U ZHD1'_..KE8++$O]!9KB0 M<@2=F&@?]O$-M!$(& @8)YSK:"/N#!B?TQ8NIAH\50@W0@7EX(Q4@C_\>57_N4,G9>3(!/D[U4PKU.>^(^QAG/]\K!; M#ZSW#!TC:,'Z+PE\(;=A_R?%TV2IG9/=H%_%B@*K""E'QB=$6 HYI3O9*JB)BTG7Q+:+IJV(KE_^^W%/DM ML:L$_=]OQCKXX82VY@;[WW]+.(H-WCOT4Q-%F?^ @.0=#?Y'^(5&/L@JGK]R%=2' '@7'!?X*//F0 4X8#:&5*GA8FS:74W=HE>L!+!4@O_VDDRP.K/_? MM^$G0CA"^&<3 QX!X3@!T\&AXTP>U61.,M3\!FM7\LH\8#/=]N3R&+<7OCO+ M,R$K*".B2&_9 C\1(,:9;S]Q/$D0MP_R#PRUOKP2=TV7SP?U.GXWQ V0E!U MP&'1?"A'CWH3*);EKJ)^#;#MBN:&HV <6H>Y!U%OAS_V=G\A<6[I9N4/9.== M+[U]SL\PFYO]_NO*/I&:_4&0L%)/:9$["; M$!$=P(D>0Y[NSP]MNY$I? \^HH^J4X?TDIMVE-Z FG4V<7\D:^IZ\ =Q W0K M+9/RAF&PJ4B%SB:G6PW2R#--F8'V$X,E2>S\NA62"X\J%R[N)[X!N7!&S>1C MDF%,M;"ESA=\*:QE1OS*ZFFCX01(!F!U,>DD<0'7RA4D0ZP-L;A:7; ;U*XG M^#ZSXK:,[UC>!GT8PS88^. C=BQ*>7A?V"T8O5Y<#QTQ9 M(XGNU81.BX0];Z :" S/=/KF76P(Y5=1\!X;Y6=TIG\*YV7.2(U6?9T7"CI' MS#R<3J7[38!SH-317))@V9O'>:PUN!MRI8O[)M$'8^'+U3ID]S^JW8_\@9?3 M!R,8_S+Y_1.70LI?\;WUI#' LA.JDQ=:::4YAFT,H?*7),B[-/21*(B%*$ N MP$LJC>\0!M7,?$UNU\V:F:ITN]N*W6F0(@^$ 1,) ^;\AB#R^MV&UZ_AZ7/% MT*+98H[_VPP+];@F.#2Q,V+B5AKEK'P1L(Y M4F_CH>,&BG5FO1)Y(1[5"X$E+",)\PS/T)(834." MM5\4F^1H[AZ%0:S5QAA) %A'&$V5C9R/EJ[X^M2UM(1ASSUWN9M3&!6 W9K= M$,O;($8'CW(2;TCE:WCN'!S'IF$I3L [VA-JP=>[R:)Z%4*W!?=$'$N^'MT+ M/)SWRZMJ:(>6$NA:3I][X .BR=+@+WG;!4>\C;X]<76,Y(D@6"/:EHC"."?; M0HG->]%T/*A'8&@?4 ^R ME@4OQ$JF8YHZMNZ967Q8ZV96T24(W9%8$B>0.Q))ADM*!N2BO*12^HILZ&;+ M5CCQV8G9&PC%FE>9TOXVFJK.W+5LN#5U,D:Z8V2ZI-QQ*O1UE!YY$TZ'6!*- MW)5G+)F9ZYX2@,T\Y6PX<0THQ<;"PC(+3K#U8-(AO.Q@,0_L> MA+CQ_Z."'GD?SU<<\T'8,PN%G;>L\=JT\P6[.NX,6B-Y F$/M3_Z+IHFQ$[3 MNQTOX:Y^VG FT^,D770]LX2C49V,?(/(,_A-73%TA.^=ZE,=3T0UJH5POU] MQ7-0M8MB4<2HJD$DGL?MT',0-+$AH(*?B573-3XJ- M7$LT5D')#(4"SV!EHYS1F5$D-F#_'B*9QLE[%!NQUD)CIW(BK^(M.!CBD,J$ M/(CG;+JSE^RNH_XQO;U7UYI3:H@/3,4W&!4;>J/M9"+C]-YSR'*W/]H$ 1OE M*-Z1YO9>:(\&2K\2KLNTD-JDJ1E!#FIB$$&;V4&;.K^J]M!Z6;R]@SE]K /6 MT1*&H[JVG@B4M8Y\@QY!3LDS-7DC@82$LTPM M/8Y=WKY^_/JUJ8_Y!7'>KCVG.G2TQ)Q1:\DDUO/G^EA>S1OM)= [H]$Q)(LG M6?;V'1U(#L1+#APU>D1RX,(M>TY5R@V:0XMO61M3].3T8E!4JV*1AY( *(4D M1R4IXO8[+EQ!!51="_[V?[^EO[U''>38[SAQY60.50?\Z+W8F]&?-B;Z?J7# M[02D6!I87#64:*N,?5OQ=N"J)NSLHWL^W#,\_>\$[ X0;/[S/Z./<,^M>"N. M]N2.#(BW9>*^(5C"^L4&/VY-4L129W@THL^>Y!!+JA%_/PK19X_UQY+J&^;O MVXME?W JS&'*>&*N;.",H3MP^\:._>/?F?<,?C^4G'XA3]\>P(T=?O_;#.A MT,+6N1(&GI:5%8O2>U(D#Z#_CTDR%QCG@H+"UPX*OUM+]$)=>^[@0?9!O.W? M..2UHX*5\RE]$(_/W.Y_EO/UL)>MK$;BU&P/-UZQL&@(N-64B:BQ-DDE.0Y- M]T/@CILCZP; ?58=[MWPGILK,N44R!:VZ:>'N8(XX]TT#^$-U3@ZR;#8S<,[ MUCK;#3G[LN GX&5@J ZPLV]H40V0X$[?&$%KIBHIS9W@<)( MA!\D1Y _\3JZZ)=*$J&SYCL5=Y$V-_54=2@&VV&KT822!!:B8$D"8^Y1F,1: M?XVSL@IY #D=D5\".1UCH%,> -DS@FDV],%!Z-X[9/ZXLPP"&:OH4MC&^Z[: M;KEF"+3'7;MM/$GAM^^@0#A'_L<[TOD^B72)]_%57IS7,+$ZPW)&K^SRHPE$ M^JZ'#L6=O\SXH56Y&W)%UMU 1TF'=^4OB,.E@'R,E],'(PB_F6:T83C%&V3+ M%4S);^9&K=?F MZ*;UBC=V:_4L#R7";A +1B(G('("[A"P'R.>L.",GX0[ @1$OF;D"8RYAR"6 M1"/OX/FTP3U2HV%<[_ 5X$.-*RHY@Q6,X;@Q]8+T4 PG,A&UTD9]M!'@D9LP M]NK>!R'OT#QI.Z,A8XICW>E+H=A*I9L0\G :"HE\@\@WN,-!Q%!/8=_-'>C^ M<9.+J.TMZK!]@SKF[R-?WW'E8#W%+>(>&0B];JVS;G,-M<;Q,A%UV::3%$G? MHZ=\V[-ZHF;%'V$W"?DQ3R3AOFNDLOV%"N6G)Q3QXP4WS:V M4FVMUX&4CWIH<^DDC9U?S"-4WQ^JD:OR;)K5A;Q!L(( M2O>[F=+@5V9=,-U:XWL92I-PK,R">[4G?,RP2W=YSA M!,K[0UA'SK28ZWWO1'M3P,5B;#B<0[5"=HY,TR=X\VF.M MOL7;F_;'THXD^)'O/X5&YZX'?WP'NG[N"/MIA3#DRGBKSH!C.U@ MU*@ZFFL:]4J]9:_H>67:E,EH3 GL%H/:#2+1@,J%[T&/_+APZ,B3_FJ\)$M8 M127+0:9D]#%F H4#4"G3Z?/KD\A#&%L/X8NJD/&2CE=O M 7.>KH5>M=;">K3#6E6]*VFY%;RE8.UPDJ//WS_BT2#PJ+A'7L1+%U>\BOQ4 M,/#-[9H@I(6>,L7\.ARPO0E\PUW_Z#2#7(H/[%(4@ZGN)9PG#CIG605R$J"Z M/E1%?),J)Y02SQ+"7[UQ:(I@3$SJ9;#LUBBM+"-5U!F@:T:S3^[3X1 W^" Q M@\J';U/#_8B@P89ZA<[;FB,1[6J*6V97=K';A(*&N5=!$VM--]YUPZA>^(NO ME^N*R&O'O?!X\H"^^@[$7!YB@15JG.3S);\UG*^@1 !: M(H'320*[_13J6.N%R"!'C@E4>'GUG,I+"@J$%(24VTTQ1$B)P<;$W ?UMAJ= M=6W;"&S="?P$T)@CE3@J]%:1"PIEU\0RJ^Z&!-^CG?VC,OQYT\D0P]_&M8X4 M8608(<,H'BZ$N&T$ @8"1BP\!G';B/L"QLW[ ]J!JYI3U])TSX]:.Z;_G= 7 M(23^UG3%V''Z@QI'%_ &Q(UJQ-^/0O1EC/^X47W#_'T+IOU?35EL>/I8]SP= MD@?N\F3BL 6O_]D_7L^GR1E+0].C;!I_JGBZ+\]*-%NJXO66J<^#<383D(X^ MGOQEDEVIGO] 3LT3J9'6TE \T6L'2J!K7<4*]8;NM>&K/J7;8+MTF[KB>7)& M:A7'Q45A:XKU14G-3'*=ZG@%-O=LN_"AU**+[<.2:_!4Y,=INGP^#J>L!LK27"5_1S@_D84/5RMP(2S5%49C:)M5,\>>C_6+\ M]R[J[5D_E[-;!",I\V8_K6#:*+/DHV)?#,.^C/-VNY10GE[FACDPY>LJ/(>5 MZVF^[KSG$$J^'SX[@.? IZR9:?9'G"THN7F+*]LYLJ+&E?V^EO1RME_-8\*F MB]G9#IU9K^,M:I'1O\*$;_D4--&3GSF9:3-C-5'IF+6:5L3$YNYV<.*=K\W??P M26 +@>BQ=C]9Z?#M#S\Z,?$$P13!]';C 5\*4W%:8:=D,;,T0ZJP7DQ6>&_6 M:R*8WG_NP^5DU ?=(3#!T77NWQ>RH_/C#H#&IIX-:8Y)2WI(2 1>%("XR1G#>Q*H^\()_?_O?6GU:'U55>^8P#(!I42T SE=U>V1[B7(W4_!OX +YCI@G:5N;5!8,]YA^SB8 MUJC-\_FOW4C+/M':P#*+/9^:9VS)8*MT:;CBYGZ&E\EH.!Q^@>F?"-#W!VC4 MO_D2NMZ?(,T/V( 1@Q:-I<9"1V$(;]I7FQ#2L%TS@7HUHURD'>_SX%T@ RA6 M8JX86LIP$JHR-P+%N@-_;"SE_N.%3=#8M\NI>[_PW !P+CG9'9B?71DG;@O6 MH0OJT%#K4D\EN4%[,E[ZM:9,[2:_I8DD>>/M4=WUCJ".:F+L08DGTC?D)7^:W(%9'K'XK'K1WL/<_;TWQ M^74M1?,ALL\OI9(#[BB]"FZFNAZ(XXZR!EH0V!CP&:=&9>NKENQVU*;0+F"! MGG/7VVD*&$S1-#3RV%;ZUZW)@%CK/3?D7FOI@6(X0 _2%<\!;X6&H3W$E*(X M6-5H\%E\O'(',2#LI<"SJRBGCPW5.#67:.TTI+AICL4CB*YF* M!J!1?TA"0](%29?K^>R0=+F.:OLI^8++Z8I*=XV9T%.*:ZU4$99]? +E2Q0C M3F(<=X\")M:J[>7UV(_,/O/_V'KJUNR;>-XRCWVEH%%H5]).GW>4$R(XG[@M M.GFI4IUIF:W0QG"_6T\-F_26ERER%R-FDBQ^?GT4B87'$PMH(MK5U,IW"8:@ MHV>:;I'J2\S(EODM::]-+1(,4(U,*=# M@P1"5G/#D:7'\9[YQ^5=I9??D)A?.Q<8S,L[VKNN();04X-A@5Z:A1+8*B.] M96;+IDQ14#?UHM$"Q(MG_.3(M%RC1F_[Q4NHLWZ#E6:9*4LZ[?G MK0&&FTPD7&"LGZ.2%(%2'_]2Y?V?0 '!%9T^8#OI[NJ MJ6]>_7S)K#$\Z\M<3QWI+/MN79O__W_SRG MYA<64ZIKN=Z/@]!^MGO[C2$B<$[TU,C3%3.EC,''_U"LE;+Q#R8<]_W)[_GC M2>Z3488)W-;_3CS[&F[*T9G9RCKU;-_VLB!EZ>/@Q_[/#C^+/\L!_ M>+JEP$+]%X>V/_+ G?\@\._,[R=. Q*[ M\.M7VQYT( >;D'BYTZ_9[@Z[E$6\JT2[D2WRH)[?_\SVBW2SLJQ8;0XCLEL=Z6.0K#*38F M%#V_2^>>GHIN4Z"K9,5Z3JBWA1S\JBU62SF^ [YI=\!_:D*]TTZ(^41$XVN[ ME15KC990! \J=84$V">Q)CQMS+5)__;SGX:3"*9NZ /-RT\F]+6J P#-=6_7 MFR6AV$!R!?Z_XO3*DJ.$&C@S[=)O=21!GK_8.Q6 />))9:10RHB51R.%EBD. M!V:IQI)RFE444L<9CL35/3Z4@VJ)65B_0$K3'D;P\H0W5-.P)TUH5[]CE+<'F3+&5FF\YELTPG:9,'#]SWD[[ MI,NN-"$?2BG?&PQ1-AD1.R0UMJ-:I%M1O"E4OVB5"L<%DYW"9U*8 M'4[H)F710K$I,\K_3ZZ^UDPJ;+9B7L>^),KTA3GY>YXY5;9CG)='0OI7J4R MM088[$R"X\=+Q;[K+OR%:IBV/=[,&N55=E%>05/R:&EJLBI[5;HA"G8==R>N M&]BS,G@J>;S45SHI>HH[!B:N%TLB+UI5:/SA)PZ_+)68D=IC:A*3)OOS?@YK MF!YX*GV\M#IFMYLF3VRE2B'?]51W8'DL6'IB_PL3P.U+L2U(1EE:#7 M$QD_<0!IH(]6'7+I8F)UHYO>N$.7MV#IB1,H9>PYAG.CJJ1TI$+=W7#LS 70 MQXZ79KM*+S.NUQ7,V*85L9&B7(8'2T\<0:F373=JI715Z/&SJDS-LE1F"I:> M.(+EP)-KC=E0PIBZ(?8J4RP,P0X0)X[ ZTUY/.C/,H)NUNE\2\0K/0,L/7$$ MG6RYZ0R#>@:K-(:XDI?,1@I*M!/[RHPEML]B!BUMC+3>YCML?34 @NK$OO;, M#,7.AGD:*V3U<%@M\V,,!TM/\*L?-"R\$-8G6+8T+?,%VC67#2!_3NQK-T4Y MI=2F/I3$66ZJB'RQP5$\7$J^7$HUC4I86W6ZICXAQ5&CMQRXJ15TD1P]E>KJ M'0&;TPN)"?VP@S471:\QB;PI+Y?:1'X^I/JCK% 8;?FA)2YQ"[ V6'HD@THI M<1#T,JVY%$J=OMM;C%>^&CWU2 BM<$Q41BU2,3?U@56JY ,;G_-PZ;$4TJV. MZOFNWQ5":34*YOG2B @!72>8@*GU*IY;EN>O MA>QZH+!-%TP*N!^)T\)8KLHE8N&NRA( MF\8P/=E::[]= F]P2FC4[<:Z[/ME+ 1GO#9-?\!P/%QZ1%>6QU:%?(U,F0J= MH5(]KF5J_TZ>-D3\/(+8]%WM)F#5'[L? YP(,>;MO[>KQ-]\&&I,O)=*PST M,]OX?W;"X1_P)#[WV/RENY5Y-0T3'<3%#H) B(C#0;#?,82(.!P$_ITCT$'$ MXB (=!!Q. CV.\&A@XC!02#1%)N#0*(I%@?!?<=>[5J"#@*)ID<[""2:8G$0 M0&MZM;40.HB/'<0'BS;>]/5=CFKV@[EZ9_.J72G:_]E-4%T+_O!_O]'?/KDA M!/8]?=6Z-O8O/!,(%!0)UWJX 9Q$(2!>ZOB[TMP>[*Y\X_O<( M^E^E!MVP90#+QV]%)-X47T!MZ+;Y D=\\>5\L5>3;ILQD, XA\"@;ML;>2PP M/J=*7;N'!ZQ*A2T$$IZ^U)U0_S*%Z=J$_:8V7DA1)$X?Z!79_'A?_O$%E.X2 M-&-(Z:M=1KXSOU7>?W4CD5SH*? YL/ANUZ:HX_YJ6;0V:LQZ*!JV8!1F+E;1 MI(Y$\G_1?CE":]YS[0.">T8PS88^V'C=$]:J%<+MY7U?!__7=M-%CAKIY3;B MJ%P6AP*16[!;/STQQ0*LWX,--C$BR5#TB3XC7W01/J2 .$WWM6%S!@$1J7WQ MHS0F H+74!X=3J8BTGBEFIEZUP M2W8<=/0F+"]FOOUDJ21.4T@^(/GPV5S%&%(:"_F 'Y2&YPH$7^2JVW&'[DCM MJ=M3)8S2%+QY9?DP6BR:GC9,J8+>2VT655H,9F,H'SB@0,!&92>[("(!@03$ MNS(&8TAI3 0$<:Q Y/*UTL;JAV.IEQX-^IWFMMV87%M K#-\?6L/G0Y6F,Q: MK<5 P#@""@B<@%.KA?ZOAJ?L(2,6#R->+<>^"R+<*72_>5O-"1WO= M7)(+7M5W3N1;U9"(?V_V:!^"?]\JF4/\>[-'^Q#\^U9=5:SY]S;CI3G#T]4 MF&5^X,.NONJ+^&GBGX8#+",XX!W^6HN66YM$5)JF:\ :FX.?&)$=%TVB46P7 M$+V-?O"O'RC\^O7AUSNG^X_!V#NG&SD!'XON/\84[YQNQ.>/1?B^X\AGMN@.^ZAB:-W*/B1BWW[( MX;[R,+.N'^Q< E5EY'HG(J VX9788;/%F42FWE%YA7CJ7<5_[CV\ LI2:X:]1;-2%;Z5=7F6)O8S0A,.$0<29) M,@P")@)F#()$]Y5X^#8P&7Q>'QN$$& I7PM]OD3T39H'+\1]^TEA28Q#-R8" M9ARB7_>5\/ OSUTE#W%K4;3'5O'^[;10=1*._^*BDO:J3?%OWW8=>O+,V))*$X M_@WL[3W6>4<3(=)W@A(N]$\(RC$S+@GEF4]AFX*663NZ3^L2'$P(;'Z*2Z;3 M.*J*>("JB(MZ#FZ+_OMP-GR-M$A7_&E]1@S*ICUR>T,O;(7KS 1("P9H54R2 MPP@D+9"T^%IWQFW1?Q\>D*^1%G**H90Q:;!2-NN29H$5?:K# VG!??O)X4F* MY)"T0-+B:WTLMT7_?;AEOD9:E%.I*K&EN!6VR!HK(%0VN":0%=-DP;!(C MO]YE8 MGY!;!4)-M5+S1ET(95=T:BQ6&@]YF8,>E#2>Q.@S-J:Z?U@3L>;T,_A&XDOL M?3A"W@OK\6)$KD:9O& RXXZ0*:[FD\X&PIKY]I,FDP3#(E@C6+_;B1%?8N_# M8_%>6)*-=84-);*G*I\UF#L(:MH$B\21-GK$-%,+U_>!Z[VZ(+['W MX5MX+Z[;Y1&>KI3HC+1QQ36^* _:J^D$X#KJWH1A28)X+39QTQD?[#'>=\M2 MECX.HL^_8+>GA_2\7H<9XM:NXVKUW7';"!2#>' &N%H%>-PV B'AP1G@:C7B M<=L(A(0'9X"K59''JBO61;F]H#NZIUB[[E6:;3B&'T"C=:DG]/5<=WS=_[H^ M5O>/8]3F]BZ(?"!GY)T3>9E*[*N?)&+7^R#R,O7)5S])Q*[W0>1EJG:OJ8S' M)(#QI[9/R<1CZXD1T.W'!BI>O;_ Q?F+4Q\B+'OV MXM.H^)YWM-:N8;2PLZB?QNVT UIO$.G-+DW2S0+6['+W$2Y02 MW?7JC?EQL$J?OH[ASY\G(*RH$]L&7,=Y]^S19!T4^JG=&XVJC30,T@(Y="DDRC*H]XN_Y1 M*^M;<@R\$Y48&V2&@]0@9Z::0DG:+AU<-WF(2F:'RC/Z^1 J;P>5J(_UE]9$ MOH'*?,\*\VM"8,Q%::99"Z\FD8/HKH1=K,_; A*A\G90B9I8?VE%XQNH[!3( MC^+] M*-Y_);.[/54\_3T>/RV+Y:UT95HT-X$PXZO!="+G@%)!00,<3Z;Q,T[&>$A@ MW[N;'X7TSVJYOQO8$M.?U72J,L.,12_,;#)NM3",@ T;(R6Y<_9/0<". ^.C MJ/TM&?_O!G:WY,^D\:3FF?9L4$QEI3%;M'@(;"ZR-W"4A(> C0+SL?$?O!O8 M':W2##/43!04-DW636Q3J>(1L'>]D9+XJ_FUMQ9\S^ES#^Q8M!N[PE_;!:^[ M_5KGP?V+)Q1ZOT'!E3X588QL_"KL3,Y9Y+*_R4G@-[ M@8XF3"4I LVN1=$%%(G_:GO^8R"M+WO&H./3%6S1$V;%E* [S443@I2!("4( M-,<6@10%YK_:-O\82 MTUN\.MRQA9ENU3BL[-IBU%H$4&.ALDB71H $$4A2G M_VH[^V,@+68KRW$JE=9SNB*@J%:B%=R4^Z MF9H?*1=1X@.1I.FO=\9V=.EKD. M/\V9[,67?T)^^8[,#6J]H8 M]#JY+LF#;DL'ZDX:NE)()LFR: 8MFE7Y?B]) M?(F],Y?(.["=QW&]G*4'?LPT!8W+&LMJ$V&8 MM-)CD;81MA^OT\COL3> MF0/C'=AN30*V4IY7)9,9=JT[;SS299%]M=H:PC;"-9DQ?Q=OP M#FQ7\P1/.(W\5A!7ZF(E6[@J:A.(;>A32%-)XM4F1C>=X+%S,Y0*+OCS"+A@MZ+]XD$ MGBSVRNNAD1)Z(Z$JMW(5?#&;0)' P'PO+'W) M!$=9J%S9, 6,\#/IVFQI+$>K)A0)7%1OSF''_@\D$Y!,>*0\C3/+A LZ2]XG M$W1VXI2,UBQC&M44M2UW1I[&1C(ARL7 DP1SG(OQK]M-QOA-"NR6I2Q]'$2? M?R&I\# I&M?%,9I2C^8HWW+AZ;V.K8\;U8BA[_9HT6#[^R'R$?D73;H_-[E1 M)GO"V,=.]YG8__J!XJ6WU\S^ZEB]4I/[JY\W\NX]$MU7Z_E^]?-&?/Y(=%^M M!?K5SQOQ^2/1?;6.X-[I?G"H^DPF'#U 887;"2O<3_OK MF\^2/&!I%^K<9X?77<<]Q$!W(_S^&/QD%^IZ(=E!:!9"K%R?BU6A2#1E M\- MP\+(XRXW7YM$TLU&=DI]&?.$HF@BK,_B.2.',\ M-?*OD_]B4C7YK"WVU]K@-^M*02627QWZBS']=]:V"<+XN>#[32*>D'PIDO.; MW:X]-@TEMRFRWL2;E'D9O!GLX42@F9JH#@*52]ZRP^%-B?!'I0@\+*=0H;8T M"[UEKT5--J,\W82B@?GVDWM5(4*B 8F&NR^;O+/&41_5''*T/BUFMXIA,LO* M=LI.FG:W.H'B <[C/N?83"0>;@$>7^\AN3GZ;]NI\GG-P2QOB'FKW[,D9C#8 M"$IIU>\V(\T!NE.8XV&=-UQ(N>MJ[4;ITRB5X=,^DUCC^'&:6-]\*L2GY!4U M9)?R*&6$$F.5E_ZT/-,;T-(AHYE@&(K3H':8=]'&^N:=&9]"]Z;:6^8)<9T7 M%J$]X:A5R]@45A#=4NH7PC?!]@^VL;]ZE\"E\2]*F-"GFM[I9*3&*W"\H M_ER([N]=<@9!I.\V.>-42^N1#O9;/]1J!\KZ"R=F/:1K]3K'?>V> JX6PU&\32G0;1\(0TB MYT;C P\I;*])0MDL9ZKCK9$V%SE9L!KS27N>:LH$M6MOS9TU^?LA1<-UZ+YV M/L;]BH9+%'A<1304I_FPGVEM9+.=D7U[MF GU&H%10/S[2>;)%X/NB#1@$1# M/(K^[]F[<271@'SW1R[63V1;(!R89X-$JX M9\_(E62#V%MDY\X\T\.,H+C(ZZ,J'S8F4#9$;:_))'5BAN\-9VN@MMQXWJ!XJ#/-K1QJ'= V)HQ- WU@<[;E0CAK[;HXU#ZX 'ZY1=>HJ[)OXY MTAU]; 3_.F1^HS@LJIW_ZCAMO.F_ASAN1UGOTU R.SR_YC'Q#9P9M>W"2"A@ M!/ FL&">V?7*8]*H,!95OJ&:^3N(X7Y(+-3'N:%?&Z5'IM'3QJ1>XHE5 M=@7% O/M)YED7F\@A,0"$@MW7R]_)_';#XF%XKRIE+I8P<",?C7,M2N"(F*1 MML!]^TDE,09-'T=B =7)WT'H]D-B8;CTZK,A71I@3&W:86Q.GN7I"10+,.Q* M)W'BKH8-U_7@:;28!7/841SU\\7Q) "OYH8C2[\8>J_NY#RNFK_"+MRS(P0@ M]'USTK&69,AIIS@1E$:HV1RYH&K+IDRDH?N#2I(G^OZ@8KN_*+9[1+0?5]$_ M%-HO4$;_7K2/S<&RXWBT(U3J2[5I2-E69L-#M#,0[0QJC8'0_O4U]0^$]HL4 MU;\7[7BIEAW*7K8N9?/Y49FE;%GO16CG8 T)FBV"T'Z&"ON'0OL%2NS?B_9B MGBIKI=K&P+(%>6@8-F8U@@CMT ?!)DGFWLOJXY(,_I!^VFLSPS4]&7$KG4'# M=:\>H+ASNF-::HX8'S$^FIZ.^!SQ^9T6!=_M./5_[T>V 4/3GGOZ5'=\8ZG_ M'F7]@<*L<2I7O3I"477JG1[M96J?KLZ_J!CU3H_V(?CW,K6G5S])Q*[W022J M++UN<$)R/!V\ZE;7$A/%?7VC,5C4:B-AD=(;N0S9P2LU'LJ8:)@2>5R/?E,QT>R?HZ$H&'J[-:?_0%6D MMU!%>D)LU?5 '.]$T1\ST;=$NF %O5'%+ S;@46O3$WO-V421S6E=UEW\C5H M1E6B9W:I?!+-BRU'AW7>-DR%K#*55+,^6@XG$,U1S2C%O5I6@M#\B&A&5:!G M]UU\$LU!J#Q$\ZXF]*RS@Q":;Q+-J,KS[%Z"3Z*9 M6JU$@LFGJ^42,_Y!THYK/1Z/[,?D/+XI*)X#/L%/_+,:I8//=2_A3Q5/1[6> MJ-;STK6>5S_)A_$1WCF1ERGMO/I)(G:]#R)1)>?]$/D ['J92DY4N+F/,&04 MWU!1G.#<-9CW$2A]5UGES<5.<\;2T/0HCP=PM#2J\%/ R M2<$<1>P[B<;[7:$\XSYDP+M*1Q]/!GPJP?&L,F#M3 2;R+5=3-'QG$PVU6V0 M:T(9P$0RX)R)C4@&Q <8YTI_C"&I5Y4!GTR+/*L,".VN(G!F>2C9RZDSF.?4 M(:9%,H"#,@"-^44RX(N#:55 85FI]',=$A#RC9U?E4>#PVC M',D F$4)A,!QJ?8-#^_,&588Z!J*+Z+RR1C0]6B.B3WZ7A-'DRXV5T>C3$O* M5A=L3M:<8I/B99*^@&OB_L%\KQ4:MU\]>7L>AG> F:[.5&F3XBVSPH\F67+6 MMZ5U!.;S^Q@0F&\2S'=1/'E[KH)W@#G47]$/D M[(JJ*E%5Y0VQZ]5""*_;E__OOW &^XJ)C'$,%7QZ,,T^:-K9-D2SJK?: M-I MX".QJIM#Q8OZ$ T44Q?XE9$7^+>JWD(/@!> M ^=:X[%E3Z5>IL&\'O)>)$<<%O%-T=/->P-A'X+T=\%XF8AX?\%[-9O\ >/F\O\*X>9;$].'" MF/86K%0O1C?O^ZWV_PF4D:6?X?Q4'>RK=SA G#A8X,33 ;9U/:&HJFL#O&T MA0G'#<"G!6XBZSH D[ZNP:]\US(T!6Q)(F\XBJ,:BI4 AQOH-O@$_WM$3USD MA68L?_X'_'/X.]72%0]B:_IOS?#GEK+Y$>WW_J.>:H2C3P??3R.>^(%])VGP MD[T8P;#_AN_S[+&_/2NEZI;U[]?\+8J9IV6WB=2S;7GV[__]/\^I M^>4;3*FNY7H_#G72SW9OOS%$)'@F>FKDZ8J94L;@XW\HUDK9^'M:T]QW\E"" M_>.IU)J,6 ]NZW\GGGT--^7HS&QEG7JV;WLYMRN6W?_9X6>1C'KZH>L;$&$_ M/-T"4F2IOSBT_9$'[OP'@4-9]OS$*?Q[^OC(S^('8YY.YS]*8NI!N?=?'3'[ M@N-WSX!? ^D!))JU>^IJ][K['WW[V8$@JRZ@DHVG?=I]Z9B[?;]WHMT_9;\O( MM318FU"J5G-\/5%HB5(CN;N"2_7L]P1?SR7:4J9=RI7X5DEH_^=_1KM=VE'9 M!L=0*8K5G !NJ:94Z@QD,DW0%!4;RK)B/2?4VT(N ;YJB]52CN^ ;]H=\)^: M4.^T$V(^\9P,*"3Q]+\3$3D1N:\]?O"T(=3'*4 M4 -JFG;IMSJ6#_!/2?#+H]=\YX6Y1S>75IG1F![)#(ZK,D6.=9E-TZS,44QZ MS# $IY#,'@/*0?DINSDZY.U):!KD/%,L#2=]O\I#LPM[N71<4/QU9I%I879V MZ,E\5BS/TDV@UJ5?KB2&4IKHC$9U0;&YT"ZZ KMBX<2ST./SKH9NG:S5RR$W?7PQTV@LLR0NF:F% M6L0KFW2F#EO.G/AX<2,)U>:#=:-E=.''X^3+Y?V:^-YII];B9A. MI:(E O$XCSD^GP3K#RF2:6Z5MMD\:*IV-EZ MJF]I#=N##SVF27/'FKIR?-9,,2M@4IM>M6A&2X\89=M3FB;=J^7 3HVRJV9C M4W'IE4S+1Y]OSVLYG[3DDA3B:I4;#25KRT[ RB/R5:-E,&%7[TGV>C,<53>! MN6CR8.41^8*F-M8L(5*F[7/344,FW!H/GWE,?GOJ.X5"HU>4&'.PU>H^D6+S M\$6/R>_:W>F@55YMA$);HW+>?&R5O29<>D0^K>86@^K"(:6%6G9UHS/T]$%3 M9H[)3\]4O#[G1$52"FJ>F WYF>7#E3C^LPIZX;9KTU%%^MICIFSS$S1GS6!577T^06)TK4IT_<%QIA6)^:0+U;L"5A) MOUPIX;*MAZW>4B#$(%4'IM)2BU8>ORE%EIM+:4V: C$I![5MUYID!M'2HS=U M*^.2U:*7;6Q3&XR\2=.V :ID]OA-JX+%AF,[M9;L:6IB9'B>4(&88(\1E7;P M?B.KE3)FNZC;5B^'R^QB E8>T6000ZY0HT::E*K6!;%=JG7'4_CI)VARJ]-I MZ*4'@D%L\'&Q5M^(:_CQQS0) EN0A[4A;H82L5)FG557Y9HR=TS3K%U:Z52V MMS3M<#@9R;0_HTFX\OCS\^WIC,[U9ENA+1=+>J4I8!4S6GKT^?.BY98L:3,3 M>FF/[/6W#JT;*\#\QR^P=,8ISLGF3,'.8NVZ%@RM*C6!2X]V=5@PQAUCN+CT:%NIB3HNBX553^@-ENG6K-&HZZ5HZ3%=&3.O9T)VB$G& MT@I4*<=9NL3.#2(\*6V65AT2_.^U+;KZ2J#6><6W/14X\(*]*\:[CNIBBT\98G M;*EVNYJ*GLJ^7)I+UUB\FYIN)44GL2+16?#Y4;3T!&_A70<7._.5H'0$.],8 MY(5F"KP!<4R7I4Q+ ;]>=(3*W 86NBA/9RD>+CVBBV:;Z>FVUE7-@BTSF5J- M%"JI%5QZ1%>FA!6& :EZ4J^@Y=VEPHZSPVCI$5TEBG9S\W0V9:;P@9Y)&_5, MJ1J]P/%YS?+2(%^GMT.A4&ZG%JDF7#IM!3^UB0IJN" MEEO!I4=/70_)8F60FFVD%%=:+](F/^Z#>P _<;=7F:W(=8N4B1G-:CW=K&AK M)M>$2X]O JL_,/OYXLK"*G5LW OUH%D7HSEDVTCFPECJQ"3I;Z&:D1EDPFFFZW./5S@I< MVV#I,<\LJ\W EHOB&@LYIK%EUX10*N_6'NW8*IWN@*-L,)@XS9ELT A39AN\ MPHGK6)M/W/DX;Z?-+#UO9\BESZQJT=+C5_"I)>N+KA,%.VKH'C34AM MO 4Q&5"^I.>7M[7"B@?V#EQZ)&K*H=*J%,U%QVQON=PL-^:'&!4M/=X#G!+H48&L MSZ20G'LBM9(S/@G>X,2E.VF2*WT5DIY 2/ZB/73D;4>-EA[159(Z2FG=K6Z$ M7N#/9(*<6=*X"9<>T96?-]8SA9CKF&X6!T33HW(2T'G TB.ZLFO)RV?3V- L M;&JFA-4HE8!G>^HN'].U]KPRRCK")JMT<+FZS%L #,2)NWQMK393VFLH9B]L MEENE23&G#'FX].BIS1IAB,&&FV/9J:=Q-;"J,HJ>>H0$E:EKFR&=KYOM%9&5 M*9IT9LL57'HL0BO92:9LSBL3"4@[U>X6>EJ1W:T]$J$KM3&CJY8]Q8A)C6[2 M#H&Y^QW;^*S M,,K>E8@=N0 #[_"I^Z?A.UO\CX$<&YC;EKY_"D5\9\C7PC;/''//GN^"9XXM M=W6PW0_?IV! Z,?.][H"F_"FS_/I]\K(=V%!$!&;@W@]518=Q(4.@OK.OIKVB X"B:9'.PCLFGHM.HC#0:2_DZ_6AJ"# M0*+IT0X"?S7M$QW$A0Z"^\ZFT4'$X""0:(K-02"M*18'P7RGT4'$X2"0:(K- M02!?4RP. AET7WL0'^R-\6;$[G)4LQ^@^J:;:%R!Y+>"3==,Z(:;\-F$[GMB MA&OMP77G%,1A#]Z*=R!T7)\S/DBRZEKPA]&@S\^1SWXG+]NX!S%%_)D"Q[YS MYQ45[#N8XK5R+5Y50SNTH@+FIWHM=.9_<>;I[_1E^X@@01!/)3I>JM)%2'[+ M.K\V[Y]QL 6RC!^"9&09QY\1D&6,+.,X[4J\T'%_EO%?VT#@=: G7[&0!?08 M5J\;3'4/'38R=Y'(OU/]!YF[R-Q%H#XEZ:E/7^OD=Y8Y-"\\](;$Y^M$U (S M<6B+&.-K/^O:MNOL.MZU U.O&D^X&TW= +$!U]BIMTP'V25N1'<3I FMHRPM^!N MF!-*CNK:>N*?5==_UOP>\4()$67%"Q=LD\&0"3@'[4@1<>P^^;#KZR4^SR81%"*QMZ"MU'3@:B5\;_M.J7:0DBI'4 M=#CY32YH9EE4UP-/TI6RVY*+67[;__QXN69ZE&T8?#)'9#Y "+' V12]P-!*XQ%A*+ =W_^+)DQ'M O=3.R6[0 MKV)%@56$E"/C$R(LA9RXNB7(1X^>@AM,]_S=FYQ >[D 7KS9J&?-2IZMS9UB MA33G<" -#=%.(*A_+=1CH.E\!=1W?GP$]7="_5?"*XR,EYR]8^4 ^T&I+;?% M@8PQ8Z'>RRS5JK ^,^R+A1;#D:EL5Q!S;0E/FYMU-0]ASP+84UP2PX]'Q2+H M_VT7P&O3_170W[71BQ?TP8?\,U9X_U7D*\+,Y]\2)':^M#WVN7ZVV""DC(WU M!HLZ7B]NQ$US\K78!SL&'G-""/A8T1"*O"8*>K@*RW-]I96(:&P<_NTGQ;)' M$N!?2 *@RW_?K2Y>$B#&E_\A4^;@--TC7] G:F;FRA6,D2MFV%_5YIOTZKRW M?H]Y:/HD]>TG@25IG$&W_OW9]E]QA ^O\=='[?6( MR"RZDIC":F1SRSH!>68M?224EWS*;3<$QF-L8Y#I!:42G"L+Q\+A#)?$F5?5 M]+BG*!T.#PZA?\H_@>/CU<@W CX-;%+"B#R5"<.!Q^/HN\-=&<$TH=MSR]WH M^G[A//34J>+KB;FE.+<0ESJ["SX^X$Q\O<,]%WH*?!1$Z ZC'1>.L?X:9URE M2E-<=51C,;WOL-NM-JMF3?[O\+[SN8/W!@?1 !OJ:CN6%_9\'"UJ[+FX 9C8 M/R$4NHUL6TEGMJ)0Z?#&B"T.>X3&RPSTSS/']_=MXN!:=_6=$WGQ?@%?)!7> M>V??@TCH*E:H_U$BG! (ZT*U&K;-=L_L65@:DR9VCJC"Z>O0A8_DP5_9ZW=. MY,7S\6]8'KSNQ,]FFW4EJQFFI*A8H<)P3#C KR\;)D-U),E,@3%UIV7/%[C1 MKT]70#9 /W^29(_-!R0?OF:NSUT0^=;,G(O+!T@A3GR%@?0@3/H E]A;TU,0 MD\;[_*Y@>7V9F^6Q%:A^P>^HB_QX;(IEPBKV-L24&5Q?Z=GH:KW$308+M!E1Z(KS_E,K^KC_ULWJN' O&]C^>1'_4KWZ;6C']>X MCV*?_8R\L:]X8Z-?BG-(C"^L=4\U_).)TFNS3ZSKW$@4-JL1V#1]/L#%B9R& MCE@B?3[#ZO$0%8\XZK7*<(@5=F.C"O-O$6\3= MR-A!ZN#->5??J\)M!JJV=;8L+576WJ19"=?R!Z9B)Z(HK;7EC,[7D=8<#L8#:S M?7$86QAC8QLO&/CU3[*A;E5!K1>*31TQ=Z@J84O*S*/442ISP\RGGM#7755D MPBB\_1P;Q[MF>^,V@V/P\.IU\?*[B]4+Q^!=M_QP#-Y5>4Y'IH:.Z^W8C69] M2@;I0(\ON^4IWZY4!CX+O9TP_.Y-=^?Z@^\0P1;F"K4F,0>XGJ/)<#JWE)$4 M0!6(04T(M>-XW-']D<4XQNZZ8^S:CZ81-F.1810=RSUTX7G2U4RZ1/0R D6T M4OT6J!&!'8B9,,XN^58L+S8K?/9T,X%V%TS-G/6J]&>@Q*X;1*G83:6)^(C, MEIB%.9;:+0@E20@E&$APB,8M'F)C8O<(2/)J$L463Q",T:3 M+H(4YH]_:)Q!$0NW7 MI%CNXA031S-B)<7Q()=W)G]%[/FY AN[UBMO#H_HQB]/^ML #L*%\NX 9ZG) M('*ZVD"V5#-\2NA_'?"N6&;:VQBM8H:C^C2<=VV3'MLMD200199XH B#@ \KKEAP,@K]79.ETLY'S_M*P>-\MU!/#95-E?"-D6]HHQ9;MK^^ M3X>;QJB2>NV=X Z)3[L)*9'B!7_#L[T'O= MQ!R97+MW!#@RR?9AX^632CRPJIK"%9,^7] +>:;D1<:;_H#Q7EEX%N]-@1,& M9CE@"DP7E>2(B#%,XW^*)[,[V;IO)=_Z75C);U2^6[[LOI5\2YY=CY)?,.W RK(_]\/L M1:$?G7OJ1D>[C2T3D:@V.JWLI+'@M +5R?"VIY+!US?=*75 M@:W-3)DU\IY1W B:45VTUKI6DBU5)"FXNT%YDA@<%8G7S]]F+J\'6O#Z>>T[ MH6-S;M>CN]?,Q7UQ^3*FG4W>B'=77(ZM2=-R>IVH44&X?*7?6[[>I^7FT&X, M<$$A:^B9XV?/# !2"JC+A@+_F)6,,.V?Y,58V]&,&/400]+ZWU_CV\DC=/IP MMN/*"*(=?= /[ #2DY_YJG*2G60[0%7UA-$N-8AM" XTR]I'40Y+8!X?8S1C) M!9VXG=V:GDW,OT\9*7CVH1X=.#[J+%PV:H2/1DF$@>-&/3D &(LLUR%'P*.) M7-!85KLIHRVD6 082008^RD^,5J<()3G["9T=+1X]>S^[$.]3K1X^Z8RD?*D MYJK%#(CY1*84HK]IUKG?S/+R'G+TAX$P*\VR+7U=-P.IIB:RZD9%R(%*JR23 M#R2Y'R" T>,$8:YG-ZFCH\>KD:UG'^K;H4''C@SZ/3-K]BA'F\3/8-5ZVQB7#+@LAX.D7@$$'L@APU M@/CL0[U.%^25X&*GZ55ZQB;O"^M@$^>&>39ADJW3^AYVUB4(G:,6 N@O6TJG M[G>Z>NA[H,!B,O603N[#!O8];I_G.(:,\=;E/=Q0:R3=ER4K)_"4VI8IK4DG M6R?>;L3-M-V2TVK\>+0DE^D3%3 *_\C;:# NMP*.K+D'ST)F MK.!EFM/$3* :HXARN&@S"I MST?18*#TC=6Z'&>Y^*"C ;/*L5DU0&B0/)1H&H,!SC!W?UF^C@ &;Q]44)NT M3.<%HDC,>4(NEZ;YOMT+S@L,[18QKLY-20"5M%4<@B13'[$(&)@__F$.\ @8 M&G"&5)PA]4;D=Q?K%\Z0>MWRNXL=UWT[6?9&4MWEL-43^GXA5U;;M85.GW?' MU$V7R[8EQD=Z*IN;+.:4VNQY(7^"&%]/I&VY65(U'!?:E14LIRNM^IHW1:6 BCS&!1]J ['(Y!O'+-PC.YET4%OQNBV M'Y4^;,8BE2\Z4<;QE] PSA+&$B((3U23*;JAT,OI;-,2R10BE"D"!^KB8V,< MJ'O5F! >.W\&$LQ4=51=QE.*GC*Z(V52W23Y=8 @(0DA 0,"#G:ZX#@23/$> M 1%>31?@N:[7=N?ME5[TQ,HTR/A*"9T;I1#+NP\-QV-X;]QL<+3N+5!9-RZ_ MNUC <+3N=RWE72&PA!15Y1?(S8U; RV8Y>C8$5^GR\RF0W7#;T7I7Q.V>*W"O:[WRYO @:/SR:+@-X"!$\!*+EU@U^[*W1S<=W'=+5\7/X,M1B2I+Q)WN4N<+ M+2E= &:I4F.1+X>" =]SYJXL%K !/)2;TYJ#V)^&Y;I7>B)Y9([N@HP7'V_@ MXXV+CRK#2HH/BJ_O# XK*0ZYP2$W5RV_NT#2LX?<7'K,Z"NU7PQ?2'%UMF_K M.2XQW[1EJTHH7S]6@%NE7P6PWPH"U9F2RFQF0--SB;JYEKJS:LF#&T@FK/^2 M>$@1I\P@%1;5"P.S'JOJ;8D>3%Z?NCP]::]BKF5HR@767L)'&-]5;NS[M> B M:*D+G!=L'9=P?'UN+;@(/NP"YP5;QR6$+IU;"RZ"B+O >;G4<_935=N>Y%NL MNQ9*,]VGN:$ $MD>:'^]8.YK;T/[-[B9XR==:76(0ND)R;'6J (NWN&FJY7: MVOAS520S8=GM0\D2,2;A%?N[ M+./2]XQ<:[O6\/:#OW<"]U(3XRP_G%!5-J MU)=*9F;+>MRO]K2%4R>U:X8*;?6S#?)SOGT+H,<*Z0-?3,\;-G!@!I -1E M0X%_S$I&F,Y.\F(5WUC'J(<8DLS__AI?:>Z=8]\XO;G*\)_(6A<5AS]:2JI% MD$F4 G[2%_Q)6M%ZV:"A*%^W]B*3 M8R: @T)YZ$CJ(4WN1Z7&KE/]S[;&G]M.GLW"OX_'R)Y[7$>W_X^NW)=M_.&C M4;9:X+A13P[8_9JB)Z.*N]$$;5W(.E8_KHZ%%K)[5(F$VL\_B8W^<]O>US7:?1O7U1NF54^/P19D8M31+,UR-)Z63TQ /ABOJIX;)OAM'EF M/%%&,Y[/A@# 0 !(,@_I#%[Y?Y>//[>Q'!T$MGSZN%"O)5M<9UA.>>EP4>#6PB>8'-%56!@)'#7,5TJA-4_T6B^ M,>-4,H5#"[%#<)#'/O>XKM,A>"6VN,:)A68*T*9 Q9U>EJ;[,YT],@:\-/UV M8T5,_-6BRA6KJR[3RSJE8BND %!<,4D]D(G] J?8$[AF#N 8TL/[@6?F7R\8 M8^#KG1Q!N:,J6Q'S=GQZ8A^^) YR#;>:][@B0?E ::[ZRU%DN8B=3Q,/S-OT M74C1_^5)4& GD(<,40\X;QC@KZ^BX.(]"OZ#]BF%TR%2( TH0DJ*4B))BHD4 M28H9)LV(Q'B>D;+E'59K, 3?)>NB6^F+$Z:%CH->M@R:#$$T,P80YCDI7LI+R7PZ MCEKNO1[TN *0>[DUX2\VO:),C@>*I,*6^Z\W!B0[#OCL0N#%8E#LN#FMW&11 M4_IE4\LI #K3UE?"O"'IGR=%1/[/4TGZ+A=H&H)W2^JZ6Y79T:NWH(M M$R];EK5,M6YEE8I>S 7C4L]VY<(4M=P;DY:=.R*=Z!,$'R_4/*7@"9,*>OO^ MF$KS89&5[2;@?+J;,X&LM]PV>NC^F)3$(N-,1;HL\$XJ2+.$,5IWPZ:IETW9 MCIR@JLID(Z2FFU6)Z5\-? M-JS$)*OJ:[WH)64^7Q6F"H^>N3?\>MHI\X0BR,0\66SHY*:VC"]0R_WA$Z-T M9YU<]OW^\(%18,9=L9K4S M(K&NC9MDN2FX 6Y)[QB>M-;HU MR'J2+MFLQ:G>AK&@HJ1"M^.%4$?MILAQ5EI8^*.F:%!!/>D$$'SWS9326VDR MN8H+ZV61V,PD666=%FR9?-ER;-*C'I"6"R$G3;6EE2]N? ,]<[^GVF@9=T;+ M9$>G\K:SU,GX) YG*GV@IZ.D+"192^L2@ZQ<*D^6H.^!:L.5^3\EZH5JHZ1Y0#4:E:;)6=P*AF')=2DV52NR:14WW)&#F*8IVFF:LD-^^OZ@H#C/"Q^W.PG/OQY#);@AY$QV++ MR4;;+"BP+;D_L%Y[I10$L9TD.. ]1T;V SHCCB4^+2%!;P*T6F MV&:U5OC4O8'%!]):91-5BEOT"*\V:CGEQ2A\*K.'+)+JE+D*:!*:OL@F!6)( MZ5"U8-/].:@$?E :4^,BEZKU5M525R8%",(DM3^NC3)LP*7%SNJ@"JU4%T%? MU,*F>^/*S;RQ6"A- ;%02[W\6%SY:BE 3??&->LX[FIAN$,BGH)>9ZFKEJO0 M8F'3O7$-Q16=!@W6$2AWU5>\(N0V M>FL87QI)H5@;U-KK2L%54V%?]^ZKP\ M[S3T<5OP,S:W60>3:LH/N["/=+T.V;&\GL_HDC"TVLK E0K(= \X&NOBDB"8 MH",1VGRZ*FR"[*C;"RM_[\U7$6Y8R/YR[7"^5Q_$O4DR[@_#IGOSI;CLN-XP MG0D7I[+K?)FA&JU):UM/_,5369$HIV=U@J#*#0MXB4XCR(1]W9^O\8CBQ#0C MS?5YO1&4B>YHT*Y'E3#W%P:^/Y\G>-H6^)R>F&=::S[A/E;-?+'>-/56P>FI MA+ >!&Y3::RD&1<6QMF;KV2U*A2;R15<16V93+%$IN/[K6UYK1>J.-18:2C+ MGM"/S]E5TU>F9/34 RLN8Y:$DE"O"//$LF0.B6JJ5(W:[HT,J(OB>-PJ.3JH MY]:]:<&O4M^;X.17Z0&5 E%*J]&K-><2%(+-=WK;0L.65APU241#[I@ MD8T+/)-05EDVF5H,,H?4) MA36T7C9>#79W[I^W51>MXJ) =10.+*8;W2,5IB '*%9N;V 6&#?8(NRQ7G4R MB2V4RAV(!2H%KV M.,EKZ40W[,">(HCJ "P'14D3*+I4SXH%.J]%?=V? V8QFP;ZO)#0%QQ;6A?* MJ7PY&9X4[HV+<;1A7RN2@EX<";-2I3C+] AV&TWT8H6>+:6,R+6[7+$^3F@B M4V\M%^HV .$%W&O3>K$]\)[8XP7F^_X6'%7%&T0DI41Y=,SI4(\;RZ#= MU.1J35)W3,L+PVDT1DD[W1A#Q[956;FIQ+IDPK8'G#K#2@ YZYI%+J?90(0S MJIM,V'2O!V-Z8:?A>D]Q<;V0+2Z47G&" C;( P1$?"6JW)QL=Z: M0&"F#M$:?5-HY=,37]-SS>K:8A+QC.6&CSVP#1IV1]*JVU:XHCXNKJ3XLL @W&M0&AFO-'DIOXBG8CZL',20MII1P5M>4092E:R7?!S]^$I MO81(HFG$#\VE53PDX\Q'6C%N@(GWE&>,AWQ@^)LM%4L0_T$4E.?LWKI]&AE1 M4Q^.4Z7>S&"D:,L#S[?@,R>&%>RHK-W/<42I_AP[0-+C 9R$OVW+#4,%?CJH M +6V!"^>^?AW:>Q:AN^!OSW+_IF$0_,$]8=R6(U(_$FYE)L""P1=R;(-[. M,X0%\4V"2/S(8&BZ!$%@:+H80;R=]! +XIL$D?Z1P!9Q"8+ T'0Q@B#>S$R. M!?%-@LC\P'*X!#E@9+H806"GZ2($\5XV:RP(#$WW)@@,31P#9](VS$)Y=P3$N= M;PXNB; XSQQ\.X.!K>/R=WK,C\1IJVC_]D;O,:OG5>WS+E;@E[^U#U,XWJ2P M?Q?A?E_ZZ1_)%%X#+EM+\/;W1K:_)R3X\/[WMHWZ$>D37U[G$S^(O?38WUKZ MZ7?]@*B(0U10)TS5>),^ ?;X7\H=9>^/:R:6]GVX^\^2M5^5T+_M+.\*_/[? MU8)=KN[856G A3D\V*6_8CO'+OWYC9K9&_%;F!6YIOO_'@G"HM.L*W;@H[*( MUP+H)Y+][Z_=R1^9Y%7K 3NW?-/#>G"4C=L5Z\&V(!M6A./LZ:Y8$Z*:7+$_ M467L_UZ3/OS.H+]10Z+MWA4KR*YDTS7IQD5JPM4O&EUK;\GXVMW$L23KJ@,] M$>7GOV09@,GDFS=/;XTR*QF2*8.8Y,7R0 [KE,5H\B&&RAX=U0;./0L[13_6 M[NC[A_-F,:P?J:^4PW+#C9+8W31YO0;:'2[5;9)CO@;T3(L]5!&+I$2:/$YA M;"^YMIENA@XX*=T@.V8 [,KPZS6UGKP@VOZ57=<'RJ%JF)8SBGM]*R]HC).: M65RGRNJH- X5%L1CB,0)"^*=VPS.5B/OS.,^1DW,*([Q-BS_AQ2>1Q3/8W(]?$/<&S#WB^+&Y?Z8>]F/,+#I+ M+YM;XF5K^N8X#BI<7]#TCM:K">I27Z5RK=.:OCD0G(T"?(?KLU0_/:EQ\XX8 MB&'%&S*5?B!H"IO_<:!0JST.R7O+SB4:2>^6"I\?D14QJP)E 3B2>#;X"3%M)"YC&DF$I ) M(O$&FC>-@;EM6&L M@UMWY&GD@MBMB&9UW!:=7):_I(,-'9\$C[O.Q)ZE$B* MH9528M=")>VCS[]+S57])4/S98T4.DH-B%89+":UW[3XB(6'_8:B:,(IM91( MZ;FM)H>-FEL];D(U=@_ 0HUGG0"L:9=+<7RA3FBC_"R.*M13?_R3W-^_7Z-"&]3^HWX-$F[W7%6SW%J2J>FU&PY^DU6[PCH M ,8!NQ +X[H>K^J=/$U$#=J7D6^D:212[DDT+8GK,_6X73&NQ(%@NW^?TCLK(ZTZOF5Z.6;AD,G_\0]%XS;RU*.0S$9>7#BEX MR<1+Y@T'Y&+]QOJ-7<(KI%D_ZL8133N7SDK!6)AO,MU1 ,H:U0J@&X"7OEU'O?<3N0I,LJ/W@N[64XS'!?: M"!8LIRNM^IHW1='F4 [P%^%?LQ)49-0_8+KAP [8=KPX;>0&^5:"J.9D-E5< M-WH+HB4RB-6DTB>\)W;C*QL.-;T-7_3&)7@7<2-G/[G_S'IU\\0BJ\Q\UT-] MP'#<(XY[O&$! MWL7ZA>,>KUV"..[QJKRG(W-PQ_5X^J"E*2F0K7$\VP5&BVPD9[P*/1[$QKWC M\EQ_O".B,L/\K=8DY@#76G9,"J ,QJ JA>AR/IKL_8AZ'-5X#!?A6 M6&/[T3C"9BPRC:)CN8>NF[-*(E7(R,**FX-2B[)RR60MK8H91 +2:1RH@8,; M[R2X\8(YFK->5/\,F!1*PJJ9Z.5=KM]AS59"-*64C\ D"<$$0PD.&KC%H ', M\!X!25[-9CD2O5F_J1>+7+QH5(;**@_6#@LAA3D$*3B7)8XCQ7&D6+WQDHGC M2.],SO>JWY?H$GY OZ\M/!)Y;/$QXJC1;?-'DCH&5N@SN,[3H-L)B\3'=#AH M#P?MW;X$[R+HX>S'SE?%#I\K@J]KO?+F\!!J_/(XNPW@(%PH\0YPEIH,(F*H M#61+-<.GA!S1 09(2VT8E:-EUV1!\/7P=[AW MC,JWU]X)1K7&1GM&U0H% 6SL6BDQH#=C"6ZRR;#.,OV0/G!AYG8VHO<*%4=F MV>X= 8[,M7W8>#/K.L5;27VC4RFQRFI%>6!U(^--?\!XKRQ@B_>FP E#M1PP M!::+JGY$_!CF\S]%EUF. IQXU/@G::]BKF5H2NQ?1/C?;3NG-R[A+5%V9@E? M!FN&U?QF);SUHNY;S;>^%U;SFY7PEC:[;S6/.+1KTO(+9A]86?;G?IBU)W2G M[3JLT6A6"Y4':5!%D:KX,M[FM?>AK8X<+_#3[K2ZL . MIS2;KW-5CQ0$?Q-/*26U8K$:W.%0<),#=S@,CI/$*^AO\Y?7A"UX!;UV-3\V M]W9-VGO-K-P75[ .XY97@^% UQV-V7JK)*CA"I9^9P5[GY^;0\,QP 6% ML*%GCI\],P!(*Z R&PK\8U8RPGQWDA=C;4.=45^WIV<3\^]31@Z>?:@G@(Z/^@N7C1OAHU$*7>"X44\.0$:OF2DYRB:H"CRO M+S1&Y)W:LH4@(XD@@\)X\1V']6Y#-M@O4Y) M!S5EE2]T9G#3UCHM=B0"?Q7XBM#F-*$I_.A=C!0.Q(DP\$0V#\^(ZP MU[,;U='QX[5(U[./%(?"XB7S-"K_:O3KV8=ZK4OF*[&QN529;A1KFZP@U:H+ MLC=-QJ>_<13UH;5R&6]WJR2W'@J=F>8TFSJ[,=/A6HGB8ID'FL);\WO$C6/( M&/O:[P/'0&Y-QO.ZR ES&K!]FBCHX_EOIH-_S^8;065FYHB<0O!:J[!:U>0Y M':BAS:>1@YQY2![@ZV.?(>PO*J!V6R#:FJ"@VOEC56@MI"MCFHGD8X)(NH'F M36-@;AO6&H!M0]MWY*GD@IAM2.9UGDCB=(D7*AB<+A&G2\1J>ADY>7"Z1*RF M. _?:Z07UM+K%>!=@"G.PW?M$L1Y^"ZQ,V5@>N@*[78O?\PM M_/W1ES@1W7W(&2>BP_I]RW*^C/0D.!$=UF^'[:A/18?W&^GWG M[LEUQD/XJ"*D9\5L:1WSI!6B579\BNI(IN=>)VUY.Z$.?W\BP=\G;A4^WB9. MB-3C;>+TL2X+3?L4S?L]K\A17FW054:3XLKXC2#&<%SH9D'!!D"=YF6A[^L9OZ]5,/)M,YCH>-6Z)9 K=0-POKW&\S)\W M#M@XF.1"EB"LIA=VL'2'P22?6:\^G?KB"(O5VS?5"EYG-:$Z-4DHCOJC;C!7 M&3/[]87K22&I-@@3476MKZ]?[>5L'N@;>T%H)9>W.^E@4DV$ZQ>ZTD;NQ^CC M%0P'\. GIL1X%TL8#B Y]HEB -XKLI]6FGUU&K$:W-.*\XLHJH(78$^2NW, M([@\\50^'6^KA2P7'V[J!\);2VS[/]40 M73*@X"-:?$1[5T>T6+]Q!!F.(,/J?>_PC2/([D/.]ZK?5^J>7%L$&=IIQ\>( MQ0L+5>YHO!A8H<]76JCR=B+'\$$&CFO"<4VW+\&[.!8^^\'<]]7WN>(@IZ[U MRIM#EG[\\L"O#> @7"CQ#G"6F@PB1K\-9$LUPZ?T),,'!RC\[I2*&[QJ+H0^ M5]*[&7FP6>55D63"2*B']"E9_!LW-!P*A=>\RQ?@7:QY.!3JVB6(0Z&NU^,Z M75S4=WE)4Z!IFX34, 7*4>J%3FF6[&Q"+RD,GGK'3;K^Z*D&\%#J)VL.8G\: MENL>+QS^W)3JZ8LN7I3=XY, '(B# W&P?N.3KALYZ<+ZC0-Q<" .5N][A^]+ M#,3Y^\(O<+]2-ZT-VHH$6GF?F*\\;SV?]JK^XNLU1N'>L1QN'6O1)0(X4_ ) M!S;9>M_HY@';KA":W"YV6VU%SLT#DU0N--?\!XKRQ@B_>FP E#M1PP!::+$J)' M_!CF\S]%ESVK7$C:JYAK&9IRD84+\8G-EXBR,TOX,E@SK.8W*^&M%W7?:K[U MO;":WZR$M[39?:MYQ*%A+;]9 6,P_T6E836_60E?H)H?FP:Z:NU]GPV90]TP MP 4%#*%GCI\],P!HX%!>A@+_F)6,,/V2Y,4JOK&.D0\QQ%?][Z_Q[62%.7TL MT7.UIJ%:*Y8_-L!%ZO7QLRRQKLA/CI=6B8M75E7;M>OZ(IY+#D"F$;>67S_H M>/*"*)52E&+I4#BA)R\WB8I?TOTT42WWIT&R9*DB189YD^@'BMS/H1Z[&3.Y MH)BML]O3LXGY]RG#M,X^U!- QT>/3"X;-\)'HXR.P'&CGAR C#4_("I@;)7T M189>":DE5603+0092009%,:+[S@9/;L1'1TO7CTU/?M0KQ4OWKXQ2G?\?K+1 MFA""']S'\*.F>EH"77:77(I(S$L-!0EY35"=P/=\4Q3#ZDT M@_'C.V(,SVY41\>/U\(*SSY2''>(E\S3J/RKH89G'^JU+IFO!")*=<_KZX2X MYJ1169_*NEMSV-],>_S>6IELK&0[8YND0/GR3+$U:3#@ K161D&(4(QXJ;Q# MW#B&C+&O_3YPV%VBHXT&X[10;$Q!-5[E"6&CGM;F)4'M@GEJR>KS7,(HR(MA M:S8)]];A[=YTZH$AW[3ZD*__RY.@R$X@$1GB)7#>,-1?7T71B7OD^P?M^%OZ MW0$@)LDH<%(RUU"-8Z;EP>=[5BQGF0K*=:>@3^%A#:IX$2MHIF3*FF3$'I<2 M]\?W]?>5>6;@'S\*CXJV_.=_\)_=4V0#2 ["BNG?BN;:AK3^&6K.]L6/*!!B M$/QY&HF2^$$GX6^VJ$D0_T&]>_+89\^*R\ P_GXK@G;WA!//(I5X$CL;36GR MR;0\^??__I^GH_D%DG'9,BSGYPX)G\S>=F*H$!15$!\[0-+CT@2^_J=D!-+: MW>%NYL?C<>?/1S!%$QPCT;3^)_;D,YJ4/9G-I57\R;QM,3AN@(GW<_NUW>]" M_'S\I>6&7,!/!Q5PT9;@A="V(O5S!_4??89 " '8>(8UVU_]\4\7:2"JLY)#,!\6/MZ:@_2^2;R)!)C@B'(/Z*W'F?2#.BC[H3S M(?!XZT"T7Z[5\FPC5FSS0O,A.CHL-W(_8FPC'^L(V4XY7V;;9:[S>$0:#3O' M-SI\K9QGNUR^TX7_UKE&M\,7E!3C@GLJF)*O0,=4.78W/[)> MTK_AEVRMG28E@B:4A)@D249,$&E2S%"9I$@P@$X23#I!)7;6+NTPS:]H.T 6;ERTIQ9&6 M_+I>U:O]X;@V*V;EY10ZB^@\\<+:6^(W12/5W:L"V[6NRQZ;DJ)D3B94MO M'1^F\@&UT7-DUX5>[3 (S7J9HQXEH4M#XR]SJ]S^7R16\0;2S,H21+7#,34_MO-9;X& MQ.JPI?NM9FKM6A4K801P0[#7TJBWU-IZ46YRDM::32>5"07*@J U>C4&ZAVUW[29R#A9BUJW M!;[/;J0L5U_$![ #]'Y3:CDD+N:4[7.230T)*T)M1OU'-^$%8"G=_6NO)K)^*TW,AI[J% MHM]:C^904<@#LDJ4QFO:T4R!ZP?Q^ +::I5V6)0P::_I1,LO^UJIF.-R5=HU MB8V9*ZY7 ^45VG'>2O<6Z 9]Z0%HN/2DF.W'!YOA:SDY2 M'*BF*?C4 ]*25B.^LAFEB@(P%V276?2IUA0BR@%II2VSTK''086C&)9M<3-5ZG<' ML ,'I,4N2R.QP6;[>E].5V3'SE9M W;@@+2"[D"=B&3-XA;S=GHQE(@YD59% MZH"TVFR0'GA$NB+$C?0*T*HYKL%YI0](2VWTTF4F+<]T?J3PI5FWUVGSL.D! M:4W(-MMGQ@E;!]VI6O&M4F%AJZAIZF73*N@5K(*EZ$+.E!/M]BV='R@SC^^-YV/4](!@VPP]*@;95H'K3,N.5ACG!QH-P?J 8$5O M&0P7K4&!R)5[IE'),\&"@WT](-A>22L,I%R&%^+=1%U:6P:[A)I%'Q#LH*]M M)IV.GN#Z4R"G58,2@PQL>D"P:Y--]I,TZW-2?A/0A;@_*P["IO3+IC6Z.\AW M^VR9 ,):=3V"Y0H:;'I ![B:$;0<>0UG(%E>E *IJA)E.%D'= ".HA60,V)* M4/.41);7#3MHP/7J@ [T_4FS7>DL6"XWM=JE:IQWM"9L>D 'FES1RX^$E48L M!-?)+9/0>6D%J.G>DK6:ZGE>'&=6PKQ250N39:^5AP"?(/?7+# 4J8$R;C*$ M)"NC9F%@BU![E2RZ9+=;W33C2=*5O/:6Z FNX-2P52IJXPBSD!C**H M)J4.R7?!S M]^&I,XFVOUMW%^T"Y6CW^'RS_80!W>ZTB;T=LN?LWKISGB/7]&-7B]/$#^;- M3)-/]JU/GF_!9TX,*]BYLKN?XXC__1E1$P&^#$ M5,#K_COY6;YK^^]O'@V\G4\?"^+;!)%\,\DS%L1W"8+XD4YC25R )*@?R3?S M3V!!8&RZ,T% ;$IB21Q/$I],B?.NW_I]HT[_2'YBW"?U$<]Y2/RE:8 ;(_3+ M__='\H^O+DWI'U3RK#<@TY\^JW@R7P?.+CK:*E:'OYZZ,F+LX/MQ=DCW9E]SX6]4Y5XTX>Y3)6@'C B7AXB'EO448C( M_K][<' T:+PA%^*(N09.CIM7KCBWY7M"Q2&/@:[?&]F?_A3>_O%/3G*G,;3M M=F,3QYK'+!N@)+.F&D/!SDNXFP;NSV-C[T5==CC3&I2\M%H$YYF'B-?&$Q&M M+7@>L&$\(U5O9B(N;F?R?*%\O*E 4A]9-0]4Q;N:W5BI@2YG:9M)-=H7.U.K+ I%0)/+K672:CC71 MO/?*%#CY:9=-+4%:YWV0]C*]I58+(YCI/_YA'HA,YE"1@N.N[MBH;\JHOY4O MO"RC#LN/D)%1;S_G"_7RVACX$Z&?'@\'W=:FTU1/;=0\)8-2OB@6!*I#Y K+ M4KTH..@"0PH9-9U*?\"HKV]7_TEGY4G59'3=U@%0J+)F@)CYTHM!?T:_E!$I M8#O64E. $ANO8W_ZZ'JN9OX7\P-X&X3Y

M@/N J ?,)-S"ANDBD?/;:82+9G"_PX^*C#RJ(MV55MS* M1FG^LL $$\U[B]8EL\-J*9WV%H(_JTE]HI"4)+4E,LB7HAZ8Q'[-@Z.?U6#@ MP,!Q+IKEHH'C.QRO+P/'C%RN5HN2D](7NM[L5];]=BG-0N" SA?]0"3VG:]C MG0==JJOU9U%"QS;H>"<&]<"%$_872AAJP4\H4R-8^)J-SH8P*X5WH]?%2MVZ M X4L%QV \V8'6BT_:3KH\-5;-PTIRJH?VNVABE']7+8JI$Q*G\L-B7':*B,: MJIA![E,*Q[E@T[]Z(NK67: OFWZUV5GU1ZN"Q MZ@"=?>.D5%B;*3Z64% QJ@@$3!='1N&-Z!5R4!<$@*+@Y4V,_INJ:"B@@G094H^$.0^"84Y*&SZU\5!79#IGYZ0 M^K#IIYAU7E[.W1HAU-A3(%3E%Y#+/@$2*L!F1-)D#VMMGXQKZK MF<"%K>6%KT6Y[8]_W?XN8?C>!GURINPJ5AI,#MW-H$_.#WVGPE\Q(T(E/LB( MA&=I*#T-T):H@B F.6YA W*1Q#$F-,YXC%0VX7Y#1/]?-G?&WWZT_;938(#EOC5 M%PF)^%;8MWI/.Y/M:]XTY[M0/,!AD?4> +Q!.J$Z]5Q<)A;K3LIG"FM01KY3 MF :9?& 8?#T,8\#E4R\7C0'G<'L^@P$K=M-R5 LD] 4Q5Z7"9%5+9 .$ =#I M23Q0J7VGYZ;NB7W,$>*]*7">L%'X9AC>0V(ZZB[HJ-#T?VT@W\Q KQ?'ZT4F M4:'U=9T6O.*FI]L!W$&FD$-%?V#[B)DHC"*8B;I!)NHS*)*G.-:N!^R"6# @ MXS#M3:HT#5$$NF09)G%O+%33 ;:D*3$097Z*HF6LT".3?<=!\="8G\)[TVOD MIRX(%<_A6VTM>Y?C;9O:C365$"[#+>N;2%E;"RE%8+*"T&%+U4TC7Y(S"MR\ MAGFVJ0,I3C![A1'BNMBK"T*(<_A-OXL0HPI#"_2RM=8[([[M&:*_)LHJ0@AT M ^TA^1&,N!-VZS0^%-Z2XBWIA1);]W+T%367/MC31,$4*_ M1F\2=JED;?(MD0Q3;B<8G&\;@P;FL>[3'WL%05[UO_BROO)&DX) I$27RPW) MJ:E/0RA)AV*S'V'9;6I\BL/TN@?+>4!$'59TE)+T9F>Q;@.<;&3*1 M7-?C0CQHBI.:X!K58B"2F6WIMR2.J<(0J_IT%V> M'0JNWV3>QPE+JX%.B0/3OI=L&T%.6JHB149U.NR= M[$\G]9K.J3('LD"UU\7RP,N$H!"&0Q'4R8[CKHB8:B,=BUN3N.\"'!7UW7O+ ML>4HP(E'W_])VJN8:QF:$OL7$?YW=_!ZF+BZYEFZ3AI>NDPKX. M-Q!CQ)S15(?ZNIDI3EL#SLUU6 0W8=&5_>N#UTM]T:F/*$ #>#%9Q/WU4 M8TXS_QNS40$_!?XP7C]-Q@WG8XF9L:.A[16#QJD\N2N>DNMTVW9[9P@"J#)G M:;AY.S7(%2SHRM%A@H>'9 J3 M:AA+OLM-N^(IN4Z?[+A80A:,^+J2[*0XT*AT6((K,2NQA; $U4()^M'-6ES<,Y8L4N<2(P2"L&C8PM?L>9@6"9450\31U#*4F#9'M <(R[AA M@@.?]./0GTLB*)K2.K3,KL6B\GX.@-L+N*'PUDU#,CW65+B=61_82V0&%%<5 M]+;"Y9*UG),OE">3'BM282;OQ .=^ CKBWD)# $7'>QSZ[S";T$ J/6K+MD0 MB\*BQ@Q<;MT>4+2*(""%J$GRP$W[6R 4/NLG.1;LH++E%EPXA\\\)LPKW,/! M^U44)[W&V)\+BL;\!H=M"R4%B"0=""3\Y#-PS5?F-JDO*5'H-S;BP&@VQ+D3 MB%28*CR-B]9A9+IH9+JV,*$+0J9O\"-_"YEHK\)7Q)K7(_K]0==:+)7UPE81 M,J&*,!] IFMAUHX2/73H> J3:_C$'TX[:\I1'$XIMT0J';%T5/HC>6$P2X>Q!$[10995)/:XRP3DV:%<75_8$0B%28L9HD M'BCB(R7 ,2V!L0 '#YWKHOBQL& X(SUE#(H30F/SE5EW42&:DQ;"@M0?_Z0> M4N1'H.#Z6(7?<)9,RP,GJ^5Q,\[R]>V>KN$0'N>T_MY3H#:PMY;/3QK([G\5 M W@)I-24:XH4_%?05D2_,+3AC)B!2(?IJ\D'(OD-1ST8/3!Z7!(9<]'H@15:U-G*Z R*7Z7%G+<:P =L>%0H?. M;,P#SCQF6/ [$TD.[26Z[@;]8!32+3M T8X>SWV7^(G!\LPTU@4%+WYO6'4- M;6KY22ZTY0,X*;&!WI3%;$M/)8I68F6(V5R)%>DHQS7QL?*2F+G"D'!U;-:G M(0%- 4D=ZQCKBLB:7V[7.1T'O!?#>S',Y%R,D_%T+_:>D\'2J4IMD+#*7-^O MS!W1;N3%3DNDP_3-J8?DAR[68BH'PP>F/V^)RFHYFRIHM&3'[R4E:%*@+HH1%^ [5A6_3+C+ <;G=!G M*D3V64/F^6C!NZ/P \ 75SOUU+@FU/6.,.QJ>I=D-\- I,-N&XYE#@_-5 KBUY?IF:J%5\G2U)ZZ(D'J1@LBS9#UF MV:%J@!5P9,W%<40WL7V\2+B\-*;I;L^V.LCP^=#N76YK]\JA2^/=4=,I\'I2 MG].I9<+UAB(S@I":",^X<*(@C!W?Z6I=U"Q<$'9\+S)Q\]33R_R/;GCH9\WGEKEUQJ)C0C"W#6L-P/:7 M]B[!MFU(^"8&3EU05!Y!C<+I3T[M%W-N"VQFPLV?6*=G3Z@%1CTP_ M]-@8/2QGKK VA:,:G\1";&<8'/=<5<2:QJ<:LETF$V MZTQRGZ7"$5(8-'! U,V<$WX)-.H+@^@U/6%"^/G2M-]HT1NKK"+0B"J6D*=+ M87BI#E<;N)ZCR1[TN$+O-<8&4.9A?#K2 AP5=>798"]R4BX]N?31[KI@J@8; M"\Z>?)V>1ICFZ"F[LSOWXB>_%LUPS0R73)'4BIC$N@>ZA-=)+N.JZ1=,)WT2K;[P@Y" MGF6[?XG4Y3B?4"P]*>M%966DD\D64QJQ(LV$L4\/"?KTU_LQ#F$EXMM 'ZFWJI:&ICKE/VLZ/J1*T%FQ;"(.0M)A\HZG0Y,;_-/_R82ZB9 MLH-N L3^A#,>?OHO_%WD*2***OR :NDNX1R>X&#P+H'WDO'AYL*D;OUP#^$A M^A_WRTA_[9[1'^"V^?DOGK1LPLFT((!&II_?0@#\V?"1C+B5/)5,%;0E#W"3 M"9"]-V&UO2@-^8)6$[3ZC)@98.#7UX%(AUG'DP\)\ANR*F \N3#CNKG8JUMW ML2X'3PKNH-MMUY*!D&K6JAMB7LO7+1;A"7+3F(=,YC:9O0\&<1URSV*2%QL# M^!P347G6)&:' L%,'MY!8R;O*I@\UA7YB4A2*.-E"._CNI@1-+FP)CK5@F1[ M3+;74=7SP/NANXQ>*54IE9R-L*9Z9B\W6[7+K9:8B+*BDW O??J >PQ'&(YN ME-"[$#@2MV#4&'=68RJ[Z E\G*C3K0UC>O29?,T#8)3TDWFJ.I!=H>.("=MI MYOH%AD5@A')5, \)XF17 *[%.P3P]R?S"^\3=9^!!PW!0['\L0&^"ST^HQK_ M/G&,V?>/_N*Q\Y'WL[M$1QL-QFFAV)B":KS*$\+FS'P(6925C9EI TBGC?(X2QM 8,)X0.Z7IF'Q(%$87=!U75\VS8 NDDA&3%% M=:WA1L"0SD[QQ]P;Q.F5]N#,%%#OKD84F7..H[WF;? MVZ!/'B9S<T!O$@XSD;X86IXJ)Q#8A(?,!8@QO=#$L7/Q^]GI@ MX?1!M._#0K;HE/("8='"8I'U%LE4R>99%L%"F*PP\Y$\I5>SS?^@4R1;\EQD;!?.QOQ]7@\RU2ZRU-<1SIJH=-[E^ZH FD!.IQ=5MD] A LS M,2?(TY>YP$9_!T:/[P*=U(TY8.>OWM>9.X&MDTNRPTDEL;'<#["5[MP/^([SL&Z>!F)'\1')6JD^V7+U5K*LEE.LF(B'1VS)&A\ M?0'#P U0#A<$ ]^1B^33,%#)4]R:MOIZ+NFV%\G64A@U P0#J3_^2:8_>OWS M+T\:&^ (TF2>2U,&Z&!H)T[ZB8/SIC"9'9$ /1L9&L.6ZT1.V!:'NR)9\5R M%O1S3)39%WX*+R]+J.+ -C&>9,2@H+V0@G!_/!WR]QDI&D'X4P"02D-+,Y2/ MVNQC+Q7-M0UIC20(_C8T$\2GT=,^T(LO#([XC3[_I6C+?_X'_]EU0H;.IX, M9OKW;ABAEFW[_7@'*AP*_'DWLA\TFKH=_!#_08-[\MAGSXK+P##^?LN#WSWA MZ-OWYZI-)?9T._5D6I[\^W__S]/1_-I8Q67+L)R?NWM@3V9O.S%4"+XJB(\= M(.EQ:0)?_U,R FGM[G8KF1_T[HK9S\>K9'2XGT#3^I_8D\]H4O9D-I=6\2?S MML7ZN $FWL_MUW:_"X'Z\9?0!0DO\SC @)BU!"^$MA6Y9]D_*?)'ZKG$$R1< M8_9$?FQ+C7*'/X$>*39U$,+_J\OG#EHQ^@PM#V*W\FV QD_>\M3T_WCGWZY5LNSC5BQS0O-AUBYD?L18QOY6$?( M=LKY,MLNZW(.]-,'RBL]T8[$34C_X@!Z#+9L+N>XX-3HA F$@?(3:Z M,:BSEN^@IZ-O:^;$D>##?-D+C[!"?DVU=EIH^6XLRO'W$ YT.\+8%!@V?/@3 MVX@>!]MH3EBK'>U+4'? TC*68/M'. " RE-$A\4@)H"8@UZ!.OMK3AXG M 6XO8L"$O5JC-#[^KY?]&MB+8?R(=:=0=NH4?@_*& !TS0C-GZ4ZTCP&U07. M%OH>_!VT9WD=DQ3H!EJ[*76MB1=(3M1K:.W2LZ\\G0<%H//3J#L*,.#P'"@U M!XH'* ]H'FP'3*$C#__P #MI6LL0Z[:2@[, S">#@N+6YN%O8V RT: X31EV M"P>?+P$P2;R6E%^Y^WT[ OTQ_=8$'(6?LU*6-PI_;<;&SN6!(=I M.=X$3K.%Y/LH531MN?<]7"L%[H\4FZ M4&*/2W$1S[:V<1?(:'L;0/\3HOY>*G-_/@8.*G6#QHL\IT[4U5^WZXD(^QN2 MXXCI$9$9;EH]4DCU94X0^=%Z.@S^^,<+K+T][>[X&!J%$SX]PHCHZ3]C?Y+_ MC7&_%.!/"OWXJ/;A[W*/V(), R$(7/@GT@X$W#7Z.K+6,? " '42ZK@+'M\1 M0[8 -1,-#!H;B Z_0W#Q#H@=:A^4+.P.U.?(0)[:Q]?- P&!!E\KP^];<+5W MOT^[G[G/']PQGM8OR4JNYO(35I;A[@I)MADB6?3OOK>1\#N)F2O,)X)46BW[ MDY;4E)G@1/[#)]9:I(W2XQ@B.-9"T#<,*XB*&3T%7*2)+O"0+G@HRB+6E!PO M"D0JE^%:#1VOZ"?F(=:P/!#]0#YL8Y6T UL@1$EI,NS+4U1QI!%1]:F!3R7D!R"@F4L* M7*Y9^&+7EZ?/WHY$#3LHQ:(-*5H'$4\8\F12M,SG@(-6PJ?Y-J)X&\OR$)?V M+#HG>HR!%LQGT_ZIGD/ LB4G^B[26T<)#R+1(O9,CV$W9-')S"UV MP-(0L$&M@ZMN./?6+R@)ES&T &OS[;7W2-=A9Q\M3@O55(&.,%H/T0-VSX+C M@#,%5C8(:] ^]LDWHAY%:^)?SQ:?4Z]%A7!"HF3ACRN.SJQ;6HNR 3$W2+L^ M5:WV(,Z>:,5YQN2%2\[3-2C^ZB*TN\KPYKH0#2\VA+/K(N0_SZ[TB8/]RWF. MK KIJQNZ1E*DPD\=QDAMQE*(&H]^]H=5 :4N)J*?7,<3VP@MV)7FAC_5X3(R M]^?U4/E%T4UWNU53 H1F,77&HSV!!:U])UKQ'>ADZF]IT:XK3SSF^8JJSFJD MQ^K\JL[)C;(YX]/L'_\DJ9?:CL#QN,.45D^&69_Z:^ 529Z34D;9\3TR"";J MT8:9<[MU;30J$:E<$12H'&($F_'&80%0$3N_JTL*'KA5 :_X;ZO2(S!^9\$1TKO@<8E9:/;4:\=J@V6--9Y6W#+LC$0Y1K&A$@<]J/2W5^N-#B)A^TMW,HWKHJR5Z$:/;[,#;I%J9QUZPS"C#;1+V6Q#G^<)\AX*2='7?6SGBA M^^NBD9>S$UDXG@G,A&K3TX:=H4#-Q%'%R&1KK@414D_&D>S0+713+0:E"U:M<7$D5E"Y#U/ILZ]#*&>D- M>H7[L-W3P(%N%P(WI*BUZ%:#-?E-'1NP*R7?2M=(HMB5;%H0TV-N>#23$9-, M=Z(WFB-BWJ8W'9;1W9[]01@]PRHU)D?C.=Q+UC@@Q)>E5;+%3@3UNM)L1&&3*56UG*C$A0H M,60BNY3YR=&T5EKZ*WEML0I7K6+BRI-=R)5^M$$*'TY=)CU47HOE!&$P_Z>[.9DEQ6*CG#'X=)+C. M4LWR"PDL&X6C];>OML52CQE(7+$F+^JY F%6@H_CRD$;J(C&2B.MG*9K+2]= M2"Z2/ "?L)!VY^C/>@C>30RS8%NYJ4T M%^\X3$+K+QN*'.P'1QQN=]+@B*=ABB3Y1>Z)^"CW!.<'^9:/,W1D_FEO,.\2 M4L0S0BJBPR/B'67 ?E?S(G87V1XZN@Z7@D?"&ZIE>,O'?7(H@?1Y+ND@!G8S M$&[I)-?UY_;VU'R*0A["\H,1_QUR&+ #TAS1\2']"ML#+_JJH44'YSL*_-<1 MP78$:!T*[QR]\IWH+6B,.U+]W6'_^"5 N/*YUGO==< 20"T/WXVH7A-N8IYF M2_UU#!QM?B VR)[_A)^10TI=T>!KG-C$L>;P:W G]&L6#]OZWL\XZ/5YT&L: M![WBH->+"L/\< 3L6P_YW]B)_?7/N\V^$KX:QL:1Y-^Q/W.[M?N_Q^K/*4)0 M(0)NG8QH57LS6G/G:'PB9I-Z_1UO.C,1.#_]VJE=+*3^2HST'EOJ#)#0UT(K5,=\GVOYU6".U++>0S/S*$K2M K*,]M M":[/ #W2U#@[Y9> +DVN&)O G4T#S0F70X>J F(.=(2\,$IE^^P7SXV"6W)PZN% 3$T* M7X/F=&@Y>A2TZ4:!%M %C?B89P&MDAN;/DK<0)&=*%@5>F70_9S!WT)O%2X* M6KAY"IVS!^2E0I?/;1'"F![4CSZ4@1,^M0D'Y#RJ9XW-]W^%O*#.SW]%:GA3 MS5%V?!%ZRE;XJ&/ALQ!S=D@E#>E)YUS?M2,.3H&^=7C++IJ34'40EB#E?7@< M_T'-C9BZ#T:K(C5'3<3E8I)3Z.1RI@-W6,KRU&)*E-\)5R6>$1F$N-TRBX+I MN]#7YYVR.7$B\:&PM_"L!F&WN,7N[6%-+]X?];.]9HK+=0.]4:[9FUH]>!KG M6FX4/A+I&JX+K[P\MQVHFT/A4(8!E"@>]F#LZ]C,&8RYZ@*B$Z^!8FE"C#%[ MWWFNQ&+V'1P@7Y"Q#1B,#39F^_5OG2K;F#7I- 226)JYG9#"KCI;G?UTHC2? M2D8RB]#PGD#-;PKJL!L,-%B&BY1#&Z:[C6?K/_Z!TLH35;*'*<9G4GEM6%LB M3; W^NJ6-M\E56LHO1!1=H[!NU80OA /^PR9;M, 3L1+ 5CU,)$R,."DG\_)+D97& MH_DX6U\K602*T_+EM\7)@>ZRNYAO)%>P!? @1K(3_"R;2Y ,^1XZZ"K=DD=I[ M$_"/7U[[";Y_Y? _O7%\4*'5;"S(FJOL:%YHU06Z.;Q6/X* TY#@=;^4JNW& MB^!_2%HXG 5DJ:QC!1L[U!$?S;!W6:.&FB;B9!5(B7S]N'QG\)*LCO,!=E.* M;P-F992CN?H]CJMH8-<3"PS[X?6/E%)2> 1;>\R MHXGMB",!JFW%DN*"G9FT$UK6-:.9"^R6/320#3SB12J6@I-.*+S7-OGTU:CKYJ(I% M=4,V)@^2#]JJG4M-]1%*(61I2"[%DT2Y7/HEU!K* UF :IB^*0Y!C1U!^2DB.<-Q M3MC*,E:Q8:-]::.I1TH(+)U*/"D>6O 3*(O4J"DZW] J@7)O7,(1/>-(B+B] M;/]%&[!#>ZY]'3ENSNC"3_LBW-W4"@DB/VYKA;0 Y2WVPDX1@QMC5TG-8]8\ MK"G'VAJ(#%W&SK&I)B(P2^)%/Y^F'_GH?!8*9QJ(8U P+"PAGD?4XP0N=Y)/ M1/2PP9**I'?B8O"UE2QT<(H]!^),,Q8S! &G4E5%#++[ AP2F3XX=BN0DGQ$ MFAE3![)$U(R^?19V-N-:-3M0[4XJL1!YS$Q= +<>OF>F)$G8BNRZRY]Q$NI> M7>-0EZR]VF>9XC05V-KHZ$5A_G_(&>,FL5^V>;*]$R),4;"'9 M5&==5"#H(1INVVZ8N[>XV!@SH$XD]YFB7[NP&V\?28&%@K^B:@ D])%*A-AK6 M'%QI*^Q_QBJ9;)4?XL^MDFW+S'ZB\F?@ZA)I;]N98>*HO_N+CBA!&L.4? _L M8N+IUT KP?3D*G<%WD4(!';K\^I$-V<+:)-P+"%M8>J\ K0C\(7[3A_G34< M2@36@ML!]#HH/S65 2BR=H<)\@S(>=!VG>0H _UK#/##X::RZP!M)-O/Q:HS M_,'6>4"KDQ10FK%>]Z9-@O]]I &+ 93VQ,MY;+[IR;9D^:VS(Y5X<20^^3TR M0#JSCC&-LW",Q>Y*M 'DIFH\EE?7QI(E+XF.ZGX>%LZ.6HD>K=C5T[L<%JNE MB)5_8C^/1!.@)<$4=S1Q%/*=\GVZ1G-GFD(MK.Q8MJ=++;'I(TK@]:>(*FJ3 M[<#" "3-H9N_KY$.!+9-0507>]&1UGN*/C6D@4.TP6T!(&5'LC0%I,A9S[/E M]&5%L75.B:!&",Z000L!''X@(>IUM!0H*\4!CA-6"C$71>A0 I$\DH$$;1@( M$6[V?':'ZWS(&-(=D\!W!MRN40=N!#V! FO?/I@:7HF;PGJHZZ?R3[BBGPHD MGFRH@49,90ABG+OO-+.=K.>E]DIY+]?PMD<@ QTLX!@AV'NJ#1]+ZSM'K#MX M_1;9[E],,G"0364(E:)LQ4IMFU8'+6SGNR$FG>U?W:?<E?^WD%7MK70=I7 MS$O[\M*^O+0O+^WK()'KHU*RG"93TLK5\$='&K>)K%=L-B94T7+SY57W&KL/ MR7'N5K4>F,5[_71NLIE7J_G>,Q=OC$XT(#R][F-S["\X[2Y1"O.$">2,/+ 4 MCA/? MF+#^H5)J]K51WU1OU1+JWC]@^']#H0H4A%38@:M-4!K?%:\4+F]WP+ M9WID!\A?\^X,,*+<91+-I)T@EFAR5$5[PG_UTR&?H^G:I3Y4 VPD]"NHKS]; MV@Q142P4^^L7&!1@OSK*'SR:W3DB3S\!%&%''6W8E02V+FWG8\&NK!WMN@"Y M/K3[6D+:G^7S!T>LN'-J2VMH=^2TO(&2:]SD?%?O06J5L#%KN10%ER4QDL0A MB6Q8/8Q&\LRRQ9PJ**J43U8;V#6E$IMM]R?H:K%KE$/ZYKC<6^#V)28M-E;W MOJ5C2)T^KP_<>8Z)"+T+A^BSH2F33E!X?_N'LB0UL#SPQVQTRE! WP3\;;T9ATL'BK8R]AO>.'&ZL]=RPNA5 M![M[V,[A2>R:TV4T_9(N!ED]SK><179^D<'-(&T)4$@'K(2?;:UJCHT@/9@4 MX[V"SJUGE2RW7_V.] X-*;4JOIO7\M@.G O7/PN<4X8UL9< NS3(@F^A%AI,1+Y#7B7 MCCO%OAM7B#'2Z&G8#/HCT@2MK8:LP=LS86/&S7W#D^D MMIM>((O'\>?S.U>Z75&@G7++'70Q_,T)*X=PNG5NZ5O'DWB5FY==>''/A>>Y M\#P7WO=SX5UT7WV\"Z]!PJ(977/RK]O(!$M924W';AH^EJ1KS\4-,S%'BVE^ M,\V6^MW$L9ON]+J/G!,2>QO=!Y^H!OO,5CCVHUQDK\#\G(-L/&Z]/(>E:'(2 MH9-<)_;2\6];)R!_>MU-(?_.'#XLKW"86#M,GL(JF979A'T8\'>PS9;(P 2E M;K&9D4I"R)LB/:XU4$Y(ZH$3.1_(:^A)#;E5/AQU]"-=S6]K9E;A(=1=^$EF MT^XI^U8:Y+,.571@8Y=)<*+G-C%L R$_'?=1%IY)PXO4_OEL9,/8 2MYC3?0 MUU.6MR-"1YQT$3L)$1&1*A)GXT^D#RB.V\6QSE/P/9=E3JIE#@*X@"5BH_,[ M?Q?I@N4D,_K?A&*VY]C!UL^?_$/J&_]@! DG+(^4^_XX/*QTZQ M!JFLQ1XTK#\@)43!_M-3 ?UO-J1$G49C33&:F[%,HA@8K6?M>A8:1YX<4J([ MSW3-#;$8RI$=.ZZPF.YQK"4F4FJKLBZB!*U^6M-''CATK'U:VN]CRPWGE\>\S2YI/CFVFEH//5TLW"*VZ+ M[;)!N?LF_/&-YJ6%5\M*PB8-6$@*/S.D7_8/[DT!XUD; MU-("JY;6QB"X8W M%YK] 3%?\"=[5@[MZO*@.Y-!]TV3A6YOS(X8DD._>RAP,/@4#%T:"NS245VO MA!QJ<#?:@+1_QXG9OXB9"'SYJGEFF>+XQ?92OH_GX$@'9]^S9_]H$O*W/73@ MDQX:#S;&__]#E%OL;.TE,%M3V!U&V;X/Z^_$ZW#NKY;_X=R?P=5P_,<;CMV^ M.*CY#4:*)=MWQNDUF,N#] E(VWHZ!??K%>$=\.!].FW%4J@:1(7'>FQ96HPT M<1_XUY,OCE/UU[\$09(&@S\#_ UA^Z8!OV=FNL_^8+;X16*?HF\JTEMA>AMB MOS/,6T=^A/? +>#!S;@%?W]B )$BK/F',[QT+V7T[X9<+SKTKLN[ZX; MO@4A37NXM2(+D #Q26[21P;I;>7!%Q:DCR$/'T&G)NGP,63Q M: ._5?B,[.'?X6(;9M_X5O\RU_8#6VL/?3<_,-RNQ\"?&$"LBGZ62.--W,M< M4Z% OWJ79F>Y7M[3?>/[\@O"4OO#GU,A?=[ >R-.O!_<0;(PY8_?'CJF!U% MLSJ_+*'SCWM0Q.6F>[*QRZ 3*4@?P*F2[HI4.^5.5DVP,R_ _1U/L M\A8[A?")D0;)A4Z_T84�WOH S3>U7[J> FL8N%_+B#G%M[P*: MWJ'76(,]% 0+W.T)^J_9:8>0T[F K$NK[G"FR2JI$P7HHW_M D2G52KN^DJ2 MU>RASU8O5/&@!9S5VNIHEL3KVY=)8B@DP-D?N6; Z:XXK7RZSQ B640#^N8C MTB@#)YBA#-@Z0_1G"%%=:@JNV1HAL4B)$E1\X0:)NP9I>);>[LL6*G!QJV[E MZ))L7-Q*$S>+M-+]?*2Y:']#P="4W=0\:*:*6T%JN%,^PHNRL:G37F0AR\'L M'E<=YS,?IC.?XS6KW2,F1O27'3V>R&G&E;S0+G @"U;E'$ZDM"NDW=FXKR=- MXU97Q_O>;91LW)Q9?&UUEAMIIKYC9[O1)W\T>I"R4L6MCG2*UB#9/5J) MGT>0!_,/K4I @_"<->P0CS>5IWWT8IQNN"]1SF_AB4K9]I.QT C_)?$_0!^TDS1YVQ'2(:2__FSP.@1H>0:9K @TA M6D4\)9IV9CG^$>C>!A&&E]54\' 9 I\H0;OO/43;Z'7R^B&YW)J2B44RKOOL M2^BY2$> .0)]*D=<'#)@G$0FB%\#]VY28=: M:!)IMUDE7?MPPS_\IH$$O97SIRHD<)'"/FXM^6/@7G8&>I-ASV?"*=G.\6$Z M%ZE+V%RJ2G!5(>!EH-$ .Q_7&C@]F)WZ!;LZX7QQPL47[U4C6-4;A_1VII0" M<[Y5FR >J!ZX]:U%^;IDR"+(1'Z&< 'P03<+&2$F+US3%!9DQI@J\@JT7C8D M12%U,G".O<85UJ&(.G1\9AAX1IZ&Y(8ET[0^H-Y*PS[]#M)&$'=P@+[_N&FG M0R]HYU/9V(W4VK] ;,HCM=$6^9%?7$RRV,RLZ6CNFPT4JGU%"D/>UE+EG?)J M\1=^/2XU\ME@Q'PJJ[N+\L0#=U^#P2&@'5K-NU7TU84]Y7;_"*^>;D_P]*$O MQZ[\9\=KI$<^:0\"[T3?&IBJ8#7# #;3S(6KN;.)B_;1#T#MDC!2<8L3:/"* M+BZ09^0%ISG;NAL!:K)JN^RL[[I7N:;8G:4Z?#R+,T57+VE0)6=HRU;G4-QW M9?_"!SQA\MQI[V2%=?Y3]@LZN$%T >M6!67!]*1WN+-'WY/%7N ]LK8O3)V MKXS]^Y6Q7R[O_HUB\ L#B"\7,O]&V3-SET)G[4 +)2;^24>*Y68!;?2,]2.1 M"3:DKI5TQ5II<)]/0478F6V[QFC(*N@3%0:LW,,N:?AN!LOQH)+6>?K(]01G MQ86V:_# ,]6T5/M@#-1%;R1N' \W.F\/^)E"<'"FO'),7*+)VX0IOFDPQBQ\)QY'8YOPK+#Y,7>H"6T)<2UZLX/L6?-8VM4=8PZV_%+VIXAN4)LD6,-7\;=[!UP*+O*X=H M\1!HC$A)L=I-P? (4I!OC7FQ_X11+ VUA6S9)PZF'FY6.Q8'X#.GL O8S M6$YK:PP1L2ZA)2?&A"A-_$-@CMTCNQ7$5XD; M7+C'H>V!UKZHB1//\9?8^+&??3QIC=A2CF"RM@WS(>SS[0Y/AC%,D06'GH0$ M'G &>![6^%G*80?#U[H1S)"!U],FT7JR/Z\7V=163S\/#?]:G SW6Q$<=-0S M]$6O 3(1=\J#W\IDGI'5#:]3#+"Q9;W5XOQI/9"2R^E9*KK7FR"XWQI/-:>B MMK#^O%=F;P4AJX,6@,ER]Z4L$(C5@2-7VT $><)#38O\:QB;59VU,.RT,O S MKEX&;&1)1U)BM,I%IFE-2L?,4:R>@!;1]%$O@_\ R#\>NL11;$%WLNS/#95_ MKK%3\Z46G:\B=#GRL-!=Y@/)\$B;,1.YF-1GH6)F)/03T.OG%'3/QT=W'M0C M5KF/]$_MBV\!^SIV&L61\+;/YKK!['L1W"#"!ED#U$\1@I/:C#2>A6,O=,LA M?NC6=?E^_L*"H7]2KWA5QP$@.FZT#?%HP805[+T_4)M(@."@/]!K;]B_&_ZP MY0S,32'AN#XT>;7%J W OG:;7R)WK0_1E0B0\3< MCW9>_Q<9VP/RB&V>B)AEV:!2N>^L"/0-)/)'.A0B( %E$ M0"9%;FPC"S?G=:4!7/16DM;15B - H#43#$-W-L36-1QP=OS5'<^4/L8]B"F MTQU\]IZ-N95$ #9.Q.D4/5IF"0[LDY@); -M&HYC[(2*-7@D=EZD5$N4PQ(Z,BMW-V<2B#T3&KH&KU3&<5R0G(D](1X;1E7BZ MJ[*GH4)S9FV/O';/MWIAN9C43J @X3C$$[PUH!?;$O(NND6"S7X<;+9CYJX> M\G9FA-,R]B 6Y]"\+5.ML*S3L&@?)/W7A<"=T(SX&@]I%$B[=C=#C'C"/WM3 M(:&9O,*K$Q@8;G?;/>Q)ML=B6*Z""")C)T$3QJWA]UX%$ZH(6'8)#-8X1.=F MM&.#I%>Y34C6MG:"F3UXWU[XZ40/>@^:]CCEOH_I4+SH8)HNP#SC#<6?8BNT#0X+5?=6? M>8UL6"H3#VXH2UFYG #B)[ 8:66]XD3')D>J+-5(+"RXB J.>SISN4LF>#XM8$..*^0R_NDS%Q6%KO MN69 A]8-'N?#"2;22(@1>^ 9A5@>3G(#@:@)@JGO J_0-AV#> %30 U-("X( M)U_I/*[ !Z$L#P/L.QH[CVCBF" 4ZTPR!V>DD MFW&7 (%WHTA#"'O:8@%[ 4X/,W5= 3XKMTE![R96&;STYP@I YH.4LOG3$JU M'"U829'$ORR_$ "*-S28](<@O.1EQ9[YYWKS+FIZ,+#/&^'W:N0TX$5.OA^.)/GV$W;1%FP-PK#R 2_$&'&7 MYGWUR%+60']4)2?&2XYE2"Y=A40?R%PBV\WG"A6\KGWNY]6F[_>C2$.ERD,6^&*%;:SBRHFWHZ\ M9-Z9/%-PO-9V29+WPJ\"Y!DZ MB60(D.@ZPS:.O37KB,A -.Q!3Y)@NB=HO1'I3F#7T>_W<6O/NV(3J;UNVK:/ M$H]]L7;L.[53M];E-"/W.?G >-(])F%0U!"FS 7V"(#J/I$VKC%T/-21&+[= ML1?:"OP&[MT>]@G':WED\UK=@H\6N*97[2F^3O3*)GED%Y1WAYN:N*IH(F$? MR'2V ^4>"? X)1UIM'U-=Y*KET"06":RR.'@-? MY,N3Y MW=@I-Y:=K %-=?F%=QG]+F-,@-(EOSFSW*9/%&>M@F"\E=^/!#@H3?/5&Q]_@]@0OY$()5($.!FPX).PQU13,, M.V:[2S6_4-TP,,$IX>1][/"'G[0/,?D02O<.3?'XMD(JK^6WL,H8B).,)#GM M!- NM^C876I=G%8:@IO4;#^$NBN]W+E/![N(VZE0"X*B M4UI!KL\3I73 [3N1A;YBJXX_+3HC:]!YP*E"-#L=5X[9A4>[R_P\@ZG!C]ULN?X M5PIBG N,1'I.I[0=>$+=<#@(.!-N(5O!55[G./YDL. !E FG))(XB &5B#Y% MK#[MJU,D/@%T;AT',8@/)T8+]X'H;:[KCWE,LQ85D/;E\W-;^ MH#**%,&[-^"R!TA\UR R@61K:#K)(G47D]X)WTG9Y@ 0GW9IT1"VJ9X M%/Q M2W(E+/O-5:^[?RBH3QW)2*K9M7SH/ @9FDI25"!?T:K-M0T5=&E:6S+LZ*PJ M@8V%E&P%+GV=B&#BYS\1+MCI=*\5N9^N:+\3'M+N#@1N]=+>HE5(:Z4R "PP MR2'Y:84S\>].GB40N@KWN5/JQ<-<9LNP6_%#R2E8-4B]JE-G130R52+LN@=G M8LI9"9B >H2N5W?N+J]V5]H"8ZADE+=;F.P7E!(3RUZZ%_=_SVZ]:,6[HQ6, M%ZWPHA5>M,*+5OQQ_.$^$877KBEI;14Y_]&=:OM7<1A GTC$4X ;Q>!4#\$. M.8QP7O'&?1&;_1-6B;P*_AHNYKJFDW@9"0/J5M),DI M=R]I!'TXP1[ M>TT*@:TZ:/)(][42[=?I>;><[032$[_1YNM2/S#2ZD-WHKT_^)89BSC5O@0^ M>#PD$!,F2R#+KJV 1'.A"9,DZ.^ ,/0GO$$GI3[HRJBOMK;K>DGRQR?M:*-O M3'ES$,\.?_RCGAB]:&5;[\(RAM,\QR"96^ 7>(4EG[X6TMXT%Q/C+.% KSK( M\(+5[07>:;0T(LCP+[M""UDL9Z'9;!Q2:)8 MH:R]A"];R+RZ$>R>N+.AGG=)SL.P-!'U9[I5@4 ^SDD?6FC#9Y\Z(>Q9:M>T99K+1A/VFQL)V&F-WTL#Z\*!M MRLYY"#6+FH)K9BWO/#]#[$@<8^!M'MJ9>X!*5;-ZR1UF0AJ..G GNDW8;E"W M2Q!*D1$T94)=3K0 >O!AYSWQURHDQK\+NSDIOZ)F]A<#4]DY65TN*-[.)P! M(9YP1]9M_QQ>-C=Y?8$[[A&WNCO0[9IA#3)Q!4$!X\R[[4P')\'<#L3M)*G] MWOU"J3[.8K7&>#ON20UL+QFZ^$!)JE\;#"#X3VI.$'WYG=2Z R:BH+<1*A#[]V3ITZ(99=A"L$U MI$WB=TJ&JS<:B.:IU:?(F2U/0ZYE[SF2K41]\YVX72D."Y&E$[[X]K7SG4T1,=PZ-&03XR/M_O(;; E!!3) MR^+!HQ%2$#'L^,VJW]?M1)(%*?A9N*H>G52M!:DXAT,3UI!5D ZX218P#2Y+ M5#1U"%T)2#8!SOM!V"Z8"* M\?2_KWQ]'M3USEIT4W[I]*-:V^^9$^ V%N_;$]I2K.-16/S6] MX3" 0U?._1EQW9^!O!H6L_Y$:^*OQ9?C3:71'"\3/_Z)/(6.+] I4):5W70; M( 687A"#*>"H]DG2*+$)?1+W='_0%WJV^-B=MR(M4D1$6I: U&7+.:V<+M&1 MR+R1' 4*?K5Z+WC7"^MF6:CF S2B\TVEO5J]*"$$[]!3^"R\?7:C%MS,]IS/ M_-9]MM\];NGS[-2+,1S$&()>C,&+,7@QAB\<8^!)?$#HE5)J/9R?F G.[+>? MVX/DP#\S5J"S_"#$X*SL%/IZ/99LKKBVSNKZL!KV2XL$6AD^7!FOL_PVHBV* M[#2DIXO/[59DVZOWF.-GOJ0S9KHC)R9T.UX71WP^K^2Y!%IY],QV;CBL1:IS MA3.%37J>TONK^3C1"QX_?' MB7*--5\B*6.;? E%Z#I:>?1,M6KH.2.US+-M=1W?=":Y,1=)H)5'^ZR;A4QN MTFI-Z4V!XTHK([U2']$JEMHG&VVF3,Y;.4[1N%>B]RO/(Y8Y3\ M ['/TU-C+H[H[C 78U=(LSQ:N2D6A[P@]9&J&9#;\6TFMISJ]5[L>.5B7&?S M+WUZ1/OI3J8@=4HI]-U>_'AEM>&G>ZV7@3KAE3 _2!5'SWYNV O0QTO[M7%M M3E>F/7:>RK?&^19=E%[JO4#@>&D\-8M$Z8F>F&STHC(H&4L]]KR"I4? 7Y6U M=6446"TF&Z[173<[FVH^.(2E1]!_+H1KZBBQV4XVD8P_QN@10XC63U'SLC+K M!Q5UK7+%&;(J:5^9\6Y7* MO=0DE:@.BH(17[3ZJU/4G#4Z!?;EF<^S4CV4&ZX"R]Y869VBYG'L16ZM^VUA M(H7S(2Y3YZ1XYB0U#RJ5C!Y(1B4NF^QMC+C"3N/*26K>F(U1.LQ.TERQ4#>* MD92Z:G6&IZA9S?.I?F^5BENX$ M1FEE>(J:@Q%S/6T5>&620GHMS:97A:&<.$G-_1R[HAO9*#V?!TOMX,LJ&DN= MI&9-YU\JC4ZB-V$46NTGS$J73=1/47,]6E\51N-RDT,Z>#K5FK%T.+8Z2)?MB-,^$<0G3]7HJ4XQQ2Y5%Y.)VH#K5S4\5(;I'O] MBZ_@9=TW3IK0L$TBOANWX926#4'1(-/6:*'W)15-F/RP0\/Q9%FK3QFCP15K M]2X7+FU91AX>%Z6=7F&#U1:=.9XV+(:VJ*3CPR*$D%;X_;5;2_+5$6K::84-X! MU27G=OB&-S"VVVGOX-#GYORYK?$$V/6(3T*JV"12-7-M-\L?AW+>XBHA/>6L M4P#]0&"V.F@!#(X=-B?])-.:66C(A37+^>M!FF6$N(D>5VX&\7$C_^H9]BEP%+DFJD/;K&IH5M_D5!%9VO'%WXC6=WZBQE:9,U ,35> MU=N;II"XU17N=HR]P7&'OPE_?*/7;F%-/"&^*#))$4)$_,R0?MD_N#<%UYVU M(;"0!>+XV'<4T;M9BY:7B#[R[BQT^ZW6TP+D1&=G2>YY]<+,4R#^GPNS'5TV MO>OY$.P:*-K*!HG].^XS_(NXU2"N_JH[R_)=XA?;2_D^XD%S(=W8C74>[8&W MHWW/*7EQA*<-]K.S99^B,0\1#X (YBGDX>$!\!"(X+G 'B;NC@E/-#T((CS1 M]!AX",2? AXBKH<(/+D;__\Z2NO'G1JLMG<'^F\JE#\7#)"%!!_^OQ_,C_?R M9.PI>E$Z_C% 8J]$D%_S!UO>OUW0U,/_%?'/!)["#XU^=UK@/@UXXN\!R3]V M!()+R"4^RN/_'C'[U02=Y6.R=(' ;$UASR5EIST],"> ._&J4O#.L'A(,B'R M\'-32<"3DP\O)^^C)H3/L<44/461SL,C%'JBF;OK"1>C.3]EE4@%B$0;O"H: M?SG!FS_@@UV"[*]_"8(D#08?2Q894U=EW(X1-Y:7U_"S<;T[X,['VZ/Z#V%M M[ VZ]['_?86#6)[>.QS%Q:@62_X(__@GYZ,!QD-^3 YX<(&[5;R@&3M2; M74D0Y K;@)HV9A..Z0G%JJPF)N;S!PJ"L9J8*_XL4^3D5J4T3SQW5JD49*I' ML""('J=1?2IU'Y+K3!A7-D)(7_&6;F-H@P7\\@74]X\38!]Z1MOJOI;J\M4% MU+OT%%P9:W-(SF(0M+9IL8Q70KQ?@Z_?J7B\D;.S MK:"_59VT!':>B5?#\W#"6&H?J'QH0BC8YZ<+>B)5YC56C;"MQ1HX&RD?3,07 M8HZ+W3^[DV67^ROOY?YZQM5G-JZNK:Y\0Q/KCSPM#E>Y$^HM(=?OA#8M0\V+ MDPBK&O%%+-51ZHF/$W*!46%13HVG36Y3?E&F:Z[>9 B_ M8 G6@(-5!YPA): K75*"8=\)P1HP)8F)*;0[WYYL_8PD3;JPZDV+C-:9\"%D MW6VRO7: J:.=XQA/.'1#Q<-CSX=ES^_F-NF7>W%.%C(;NEG,\+-%+/G<'#X$ M?V8R3+DUCXX:]'1:HT?S:K62Z4)C$ZP),+'(EW-^)$RT):T/PZ1\%#1'G%@3 M70Y_WWA+P_0$A%Y.V,(OBH#7B3^<;EB4U ME*LU=2NNL^Q4:-2[:I^?E9A+#=VO;$FM_5RVTV#-^*3Z,@C&U5YV(CQ#NR?L M6 EXCA5/KES=\7+OX]Y;K/Q)/.K-@F5I4# \Y< MTG@>C@KS",ULQQF_9/1R<@<$"W'1Q"_%FQ_=1>.T[L7];'[\TS3["VW!*Y[I M]_5-/\\S\R>>F;-B!(NQMUN%:1C,() 1/.BKKQB)%6[4"IMTNC:9ZL\:Z]]D MC&DIT8MC)T[8%PQ=2M#S6/FKLK+GQ?DC+\Y]>#G%K\)J*+]6VKH#66^U00]04>>-28U&C F@ZPC)#4@@SCH"P2/QY/]]7F=-?MMA)63 MJ<2XL[)G OZ.%-R3 4$D V!6J"+=1^9=LU[[W@>[MP'Y:,H1S#%[MZR3DG6E MSO;[39J/S[N)TBC:B8SP!!RD(07BOF",\5Q!GAPXH?;<^USW%@./I^_\D2#( M+8:94:502;-FO1@<-_.RT&SA^59(Z0E$?-%P]#4_TG]Q-_Q_[&76K('/TLK_ MMK-M8L?#'?*N04.JVTD*=8\/Z9%^R"&$-$ (*82R#$ I'(6EMNAS0CY6*!4'(I5 >)N\!, M:$A-MDLSWK8'T'S1PI2F, M)-&$P4;6'EQ;P&-5CP>OE#LO7"/3&//*=9;^0K5?\P:O>(-7/G,/<6^Z MP6='A#?=X#'PX U>>11,>*+I01#AB:;'P(,W>.6ZB'CT"-7Y4W_UCMJO=9!^ MY%$B'Q<='OC6GX#6%]M7,LG(1QO@(LG2[^3' M/\J\_VTNC+0$9;)^,5:39GJ8&Z9[O!EA[%DCOFCX^H/.[JUOLM.9HFTDB5K) MBQ'4":+7>6;_)SBO[61HSK M2CM!AH$@JS]T0UW@WI3K,:QG^C^($O$['*LVQX%-,^N763,ZT@+]4;3+%ZUY M'8PO$KG^B+(/)4\8$B>IQJZ$;<9O=$U1J 6_]N9U? =#Q/,&O/O2=S-/0A5K MA'5:P#GG#9'N2[09\Z=$@VXJU6>]%AVV_.R*C.5@?.'0I;;_'A=^52[TW 'O MO\G?Q8;KT!FB6K+2*,I1>KK)Y;CF)&M,&6O41< 7 M#7IN X^[/?_"PV@EO\O>LU4BJ1O3C3$Q*T)ZM>+HXHNV(@,GHKYHY),G%MB* MQTK3)Y)N .4&HG\C3+A<#[)JF#IT)/&,G7>W+/LRW5I/M2]\J-ZLGUKI:!,V M=%M-=@1U+%&/C]_4?O#[L?'M MU(OW,7)LN@DM9G0JR_FWM!X.9)/<\]*:0A&^00[CO37I%HRW@K9]6 =1W/V_ M/!/IRB;2W5N-?F")Q-W/>F_!=F.GR)NRND*=L$3'*[T@9VYC&2-4Y!:5K#TV M(ACRQ>.7_+@>WWM\_V<3([XAV]_<7?(FQB_1\1SU/K:_MM3^T/7VF,9>%\HJ(2E335Y)+-?#J? M:.39)F[(<.DA_^OKU'__>759I=IBFU2K2J6JE31;:;)I^*E9+>73B1;Z)9.O M)"JI?*)$-5OH@S);:34I[)H-_$W]!(#**A+&?UUK/S\YE3=%=-M:C]SQYFF9 M=<@)IPBE:8S]+9YB15 MC++F>BO/N#2L#!^N3(G/O#)>; J3C2DU9\]YH38 MAIW6_<]&*AWLA4,KM/+$1G.MV3@W4@>SZS6)E M&%7#7/$E_I)/-K*KO#!$*X_>7J@%P\EF=ZO1)E=,,:*TJC93L/((3/'1C&UG M4_[UA)<+G)C*Q2MTW"H .0!H+NHW(IF7"E?M)1O]>FC6;:UAY1% 1Z%@9E%/ M!Y-TEBF4Q; 0DIL2K(P?KE2&&24H(3JB_>&!W!BHD4:[ T5@QZ#O5:J9:+,U MV;)\;U3K##8;<<"L>I%C,+4V=+$6K9D5KEFN".&05LH5Y@F2FWI HHL&'=T^ M-]NLU&UP8C>8&*4#D,5ZM-%I+KNNMH+K+EM,&Z.\UAS(E3&DIQV!OE5)%LQQ ML1%"ME>8$Q9*I1;8#M'*(]"O57W=:K>;+3:2GT8F]58D'^P,2:[-_LIB/C.N M!;3.AIXJ;*)H^MN2*,#;CT"OU/6EL2XW1I-BI+0<*<%D6*K"RJ,3-08O"I\- MIE-<,]M1"F*S[C<"L/( ]+V ( ;#L1A2<2.#2"\T$(4>'Q,0Y4C]>(R)T.% M7SI\^-;?BF:3[G)$^8BQ8:O-P(T:ED)&W2@ZHQ2YV4 M)[DNMPX@U;="3RN1827)2R$]-SPE)%*"*:8F_,B8S,6-&6AJ>2T=/RDDC%6Q MT>SG%CJWV?2"2BXV%ZNQDT(BT%LEX]-UU^"*$X,.29-BC.Z=%A*3 M^:#UUZNWXQ)]: M2<5D:V#V)9!\1V?2*M'^.M/,FQS?;O93"W::7])0.G[\T*@PV&ZGPK-_TAR$ MA'PK-X[-UZM30K)V$Z0Y/R8E-1NN'IIUVCY.ZG7BG M4!@TMQW@_J.-5N-T953H^A='6F6KM3R2;;8I1EIW*4']4U7UA/ U$3J^?(:5QP_UE_-^?IB))>EY<[V0!^-A M.DO@)#_FAI+]52 GRAH=-R;55NFL^:[(\/L&CBBP%&\;SSG9RNTT71V6E^- MQ6T@@=8&CS'7&U!"= MMH+B"I8>$7:C(HTTK4P'.%[H+CAD8T02+%YZ1-D%<\JQ=&?6F?A+3$>GB^UU MKHCWZI VLM(%HDM;>0YDPD<\6=;J4\9H<,5:OL?2<6 MKZUFKFM;7V/42E;3Q)6L*!\^7\5^\?% E6D]$XYQFWZ+EI?Q>.4E.QL6:RMO MH,H'#50YVQ@N]A2[V!C.:Q?^47W;G^(1#Q$/@0C&XXA'0$3\*>Q-,G@$1"#1 M=+$UN8>(CQ--'D<\ B(\T?0@B/!$T\,@PA--#X$(3S0]""(\T?0PB/!$TT,@ M(O[DC?.](A[>7@SP;N_?=Y@>\IKC[6-A\/&3Z.A'GT1W?O#8S>[F;X#SX$/C M/(&V Q*:5SR,?R^,&]1_*0_G5\%YX"EPVY96-YDQZJDUGT.MB1V"X/S@OULH M+%]JZM\?BK@[P^)>5!"\^\G_A IJIBZ,>$.B8-J-1P[?G1P2XM@T%E-20^,1 MPQ44GT],#,?SA#VMZ'-H11]B$@0"[QX$&W_Z/G-@7^&$NS8"#?WQG19S3]_W.38+!W^_W3^W<[MT?EW M.K='Y]_KW#A3Y-,>^W/:ZJPJZ#\ ;J_ M>G=C-;LP]D0?-7\V,M8BV0(S23'M8;F<7]8GTSH93AU@XKY@]-* NT\;'/_ M^]/CTC_E4MR5BKE*1VJ/[#RR\\C.([LWIX5_#97$::GQ7H6DE-,::C8=7G#% M=4_9UI\S]4VI?@N%9)!,+&,+MA.AF1K?+M;[6IV?0_\C:!7SND;RFSWJ'R08 MPZKH9PFM4X=X"&]*4PU3@0",%W:Y?MCEWA,I[N[>../&NS=<[BTEWVNX.;R[ M8]NFI"]E03(L\:EF\E(X&LJO6'XNBDU>B!;CS<0MQ.>ZE-6>QZ(ZHJBX;BM[/EOJ5\>4P^\N3+P^G^'G<\#!5XW.%QQ]VIP...WPN] MW1LL]U9-WV? OZZ8KCF^T'S9:/%)N]=?1(*=87\XNXEB&O-/>K5T(KADJ[5^ M3PATD[-M!G0K?)?1Y]RE,-W)_W_U<]Q9TMYLN=4$V54K" MR*_TA"K;S,7'FWQY.Q15:"8.0= @[0LP-YDB]XW" G>G:X]?O7B61[@>X7J$ M^XD)-_X Q[JW@G2KJ;L7U*.NU)MFVZWF="*-_?/R9-AB.Z)&NXMVB,V955!!KR_#Z,L]HX(W[$&$4?( MU\E66R.HYY^B'S?40C(6!J"?DM$'L@[. 1_%+RB>FLJJ/#6G/@K1) __4TU> MH?J\(1L46B_QNB)+.K4:22HE(![E9962EN!<@#\+(UX=HF.C#P59%\RI@0A9 MP!^(B)L7$K48H=<,+7JBIOR&FFJZ1"GR1%(V\%>54K4%U9>LK4GB$^7>NK3D M%1,]2$1K)4H@,V I"?&"-I4%_"5A00F\:: E_0U>E=*6LN@/Q"GT!%&"90N- MX@U#,@QTXID&$R]D=,H=,&!NI+-)"+JC/>%7HLW+"R16T)'(-A$TEA)\AN!S M\B3[!U[QAG,PM 5XC]5JA@+&?;KV9,IKS&S)JPB)0QD$:0(!#;H ?/#PEH0P M-P%B&42<"ZDD+R5QMRFRI^2FS(\U/:4@O![/>%DOY<0V,#8G[*9>:FM%*=WM M!!+>C)W#-O1_OUNITR3\&+'=<\1%P)$:_U/ @\A6)W M1,0Q]&$&=!B!?J'SJ@'JX2_\$_JV])/V^=&?_OIF&**?(O<A^V/($W./C:'X4_">#= ]#+V!A^XZL\'#D"?E/CV&/"GWZ!CR=+G'QY G MY1X;0[>#V'"GD8>D,0-G)/*>?YWYS4SZ?(/3W2'JN\X;JYZX0T#T.>8?KI M,?3:&"T/0_?&4.@I[AFF'X&AW^P \6K(^J&;LM\F.'SU3+F3C=BO!@2G,WWX MO3,;F-!3-/*I9S:X,XP^U0"SST0ES%/XJ/;H4U&)>Y@E==5!4)>MW4]&*N\# MPFN6YK< PL=T 7MX('PIR?D^(-Q\LN]G ,)K6O]G H*G6'];Q?K]P]"8I\!C MS_?.ZIIQO9EW7TKD764P8NRV,N"/!Q\*@CDUP>DA>F;3=R4"3P;<$/VW;K#[ MB!+@2UG#?^XX"02?PACG'B/N$9 G>[XVZ9SHK?*I0'43R1/Y M;N3SIPK^)P96#3U0$SW5_]%4_S\T=8\P_5[;-Q XQQNO)G[%GYC[N\ O=G_Y M*:M$-"Q&FFGPJFC\Y?1_^=JND*O1QUG1^6IN[4/X1EXC#VHC\?HA5;Q//MZ[ MV3MI,/3K:L+O#N>Y'[V_D\9Q0=GG ]0>'WP,I$@O$@]4;ZTC]2#EL=_U($6J MQSU(O;4DR(.4QWT>]WEWWR-#RN.^W^DIX$'JS9[A3P>I#[?[2$7$YP/4/<34 MF7EP'J0\Q?.=D*(])>&W:K._$:0>/;)E3]&@R'B#),*,H@T_3;SJ/!(_2#^Y MW+_K0>>[O-J'^8L-<+%'>;YQX@$>[&E_IPJ!]JI>TS71Q'NS6,0:Z]E;Z33+ MA1H=3AY7UZO NK8(I=\_UO/"#G'J_*EQGWPWI97-=G02"75C<49H#2N;H36' MWA5+CBRC_3 MZ&!A+483B-TCP.Z1<-B;G^FQ^]=C=]>TVALRO%(/\ZUFH-R=,)E>N%)_CH47 M@=5'WN:Y\FRY4#JC$IUJ]+*2/GN.!,HPO#ONW>;?DKU?:T#KL?*\V(\+@>$>&_@-2?@EFCJD)KZ="3A#&IA*21Y( M#K&KA1!?G,U':SHB*SDME)R8[>9K7\IAT8HN,&D< +^^*!P.T4>D\^/ +[ M7%,^/$+>EB<>;FH// O%;KG2[O1H:2IPV<)\G1,G*P2 R(]_XKYX/'@[_YXG M+QZ!GSQY\3C^A".)L0VE]'6SG^^R4ISN! ?&2!ZO/U2A"(6TR&+6GC4XIL*V M,F)43QD2*!1Q3Z'P!,3[O(N/=3Y/0%Q9I0@F$KV$5 L*DVDDD%2F4DXIQD&E M !=C#.D4T=NY&.\M,J[&*8^08?L*I[S;NVCHBUX#$9>$:1M^*R.ZFYI3BZBO MRB$QV5 *TTZZP)IM*5RO!S;5YC)Q&W_CIK$R1\-Z9\-.97\[&5]S2I#%E!]" M@H5Y"I]W./YA7_;'(I0[W9V/F3_LOUK+]<<[V\=C^6X9O=<)K)P0??SZ5J*/ M:P:+4EF7TAPOMEH9_[!1D%,W$GUFR4< M[K($VLMJ,69:U62!YHL]NM5*1Y(BY+B$TN**_E)+\B*7JZ]"C.97GM277=30=.?91J3#ZV@FD27P8JP'+39 M9C/2+:@C;FJ403+$/1W"DPQ>RO;7EPQOUR*826;(%QJ=^(0I!0JS&4WPC@2[VW79OE& MB=S)5F\\X@0Q2$O"IBNU5O%(T1P"&T!@)73)N_AY!MX^Q&7R$$/NKA'+SS"F3^30U;&6"[65Q?"/!]1*>C#O\4FI,S'I9KC7\J:$H MKT!P05@D_+5+4-+24E*TF212"TD8J9JB#3=>-1RI#ENV M'*YLP&%L^9BL:I7.*C;AN6SJN2=T8\UI9U[_2 _).MCF]%1BV:6SV]5PGN\M MP^7*L!>WJEAB@1NZ2#RY\@C<=$<7ZV,!PA,KMW2OA$*-I91^GA3H36O35<=Z M,A:JK)"@@2 -[0O=*KO=*W]Y%/[R!,TG=.*^)FHBF?Y$'ZBZR4VCQB 6R=/E M4OE#-9B1H3[3Q5PM,6FNVMFV02=ZLPEH,*1L)DQ[&HPG6&X5"GHL0'B"Y;8Z M3#+]+*56T=&(9;C:\V J"'I53R!18Y7;A&\D:AZAW.8AFOP\8%K^/?K^O,8[ M]:H\'W777'325-IM7@HL%DQN=1NW*Q,M]Z4 G6.XC3':9)K9]':4J@-/A!!/ M?*%D])1IH,U(.J5+"L:K,9)G7C+Z[^D-]QMN_)!*A.U>?5RP?!ZGB,V?#3=[ M6@)1:!?;4CA7WDR*";HNA?A<9DI_:'%_-1#(=Q>+DC1ANL/"+!:/+YK;82] M@Z,U'/,%0G$O%\V3+=?W?#PN5#S1IMB0VQ\]DVR:Z&_3Q;Q\(F M\N,?AO%%@S=TMGK"QA,VCP>5S^0:N21NZO5^*#NL#TS6+T9-?W":JLW+'ZK) MY/EYMY=*CEI<:OT2&22%5:>VK8-PB7N:C"=<;N=J?5RH>,+E=KK,=J44U-6: MB=+^4;+MUV/5A51,@+C!>?EQ7SQX(WGC)>9[B?FO<4Q3X^I*1A,'DY29'P:4 MS'CH+]RH[P>7+D\LBC)@4CT94XX(?1:AJN7FO^ EHR7FN^EYM\V M-?^2Z$KDXM*P*:WS-()$;-%>=%YB[1N)KGBN'E5K6J/-\M)\/9AN_=-P&#LD M<'+^#<)$]PZ7MK0%KU ##"1*=@!$\1AA7FK^YTM N?>YO4S\68MNRB^=?I3+ M5D92T5^LTMSV0WL2E?O!MC&=^Z=L.Y+-)U>=9\TH(Q4L %&<>-S'!&\XQ>T; MTOPWY?5OF[1Z!U9_NR="70U9(1Q8K-F-POG[Q0D="XR'P/R1'_^$&1]SJUH9 M+X7].YW[VS*_R\'9+_?BG"QD-G2SF.%GBUCRN3G\T)M>[RYXR93-*ML<]?WR ML##>PG0GQ.QQ=-/'?''&N^D]9O>RR#\5L_]&M5I_S<:&Y9<)Q[>92D*.1H3P M? 7L#U&'4,079FZ40O'9<[W_)!#Q_)FS:Y")5PKQ".DL7BG$F_1B $& N^GB]\>O1_5?T >25T5I<-X/PJX%Q01X9C5-7,F*@5[CO_X)WC+MF">1/B&$N'3Y7A?\Q[T,HV_ M*%5[V;/?Y]0?GFK[$*>^1Z;MQWKQ[NVT))FD7@KI!P2;]]6/(%(_1,T$D'^4 M_K$'F'_?-&OT[F>]M_5UJURSDQDF;[&XF&$B74_FGI.L*?>-:JB123PK<)J7L[D?]JD+@*DDHS20CA8NA0HJ=#KO,5,YW4Z,<%@A>PJDG$#R! M\-E\LN_4"Z;]3;\GFK'V9*K.&L-A>B2S:AW$0-S3"SPQ<(OLT[L?]>N*@:MH M!M%^C\EO^NL0NQGI=&:[7DO/!2P2O/14+SW52T_U5& O/?6[I:?^=\&CFP0! M ?ZQGV)=Y(*F*/S,D'[9/_Q]A5W;ZH'K$SM1%._!K_ ;S5S\&LAK273\D;0= MY;4/O>^0MY;%R-\.L/K>39.TUA/9J^<%0.P(XSC/=7\_!R3A1M\?P9?\"@]" MNT)ZA4(^69&47.NC-Z7Y@DE!J=J"ZDL43W0*240JTD)6J)FY@+""1IF&].30 MU!$]/0BA7U&OE%7TE@7!\=Z^TJ:.T$DM1HA_Y#4U1=\=&92$EHM4P50V5,!' M@;?(AY>DM"G:W0;!7H#&*_) 1LO^?65U]&3OF)#]Q%M/U:"E 9UO\+,@A MQ9#M[L]1#U\O;:B&0*JA3P5=X@TI+9%_D7J*V F]R=%3(T1/K?"ZW@N5&_2V M6'H9LTP]MMX(XV2KEU[]^(=^.AZG3B&<*@ S;8 (\U7:1I2[1TC0K<8OK_V$ MBG[E\#^]JKB=J&(]D&.G?#W[T@R6A'2P?@]V%4_.:+4H'/^#3RAHTZFD"F@9 M[S("* V)+TI>('(T%@AW"V!CW&B'4N2!]$1=D4G^_%(ZZ.5SZVVY%H*0M^TB4E__\#_W'?JZ@(,(#Y6'TMR@;,W2?_<)"\> "#.+=H=^MF@E$ MVW#?N&Z\'WN/W7N67Y 4Y?!NVHM#VT^X<:\N)N2J(R% #H0)I#!<7/_]O__' M?9R=V@1ZAJ;_LIT$+O!9D&'PK3J4_'TD.B9^?H#>_XM75OS&L X;C3\%=QJ" MO3> ,!4 N/Z'>)5H=3" MVB(2N"FX=%3(*[!8A+_ZO7NF0QP^58#9G:J_]TIKQWU-$=$?V_E2*9VH4-E& ME:OYJ'PE]40E*FFJR26;^70^T '0I XF/J]>+*LU:>,T>"*M7J7"Y>V M+",/>["4^7%*=KZW^UTB%R]M!ZUPBVN.M+; T2&1#]0/%9,T>NH2[SFO&@O= MQ#/F$ZJ8DT1$1,,$TA^6Z&R2D98-0=$,4Y=:Z/U)11,F/^PS/R"EU2-0MC*C$XL(Z?/; #W3]"OP,;0WM0KH5B[^5&<)/5)IMY)\3 MK?PSZR+'?*79:G"8'AU"N;[^'(QFC 0T8(V]+!6FD]P^@V*"!>M&[)ZS*6:=:C M^HLGJK5[+V;/Z-\&?A@H^TC+'.K\E)(-;">)$FBS6+U":C.%7@XW!85^-&:2 M8!+&0::3CEXK&4_W 6UKW_K0ABIZBN&&F[QC$XI'.J.,0*];F6-P& 7!"%0D MF0 .$,,+ GDDG!?!'6=>8T#T>85'"BEEC"3X.K^@!KRL(T@KIK0'7+P9741X M'4%#2P-M S]ZMYSZ*3])3SYJB+!.-J*A/1E_P0T$*W='0!@?H3>->'2:OB2I M;LR@$PF\,:(&BK8B5(%?!>B_N'$##FF[V"D-PP0.K4LC234(W-#O:)>PK;^P M.KY[+L*,(8G[;S 6Z!\"9G2"_6=9#[$>"2_'IX53P_$![@>GP##"PO).A%55 MJ0*/9+J^H8+8U@W$][D6W]V22/P&_"'C&BM^1O%#7<(@(0AT?_LB"H'#!\CJ MAB\X3+S_? 0QGIJ!442,Q,4)OFY)^I1*4"4-[>XG#TR!+%J@!0G>A,!>T="3 M(D_XHF;HO_\GG]"8Y 72503P""#Y057[2'$A_5/1S8=M"2;P]U^$]"]"8,0C M8P_G;R+9@KZ/?D!&G8G^@G9_;5>!%;DB@:M W#4M\/CR;,C&9*]3;-XZ1@.= MHHD.<=!\]N0%G$547$(4G=Q8]["[S>Q^'UJ$Z@R"O[7.>OBPU1TU63XAP^B< M5JV3243"R>&[O1>[/58L8")=!(__@FZ MVF@?.R9 ( !.>0H[-='OB%F40RH=O#4FB:X1J:=-HO5D?UXOLJFMGGX>&OZU M.!E^>=2&WH79#(#=?2 'N7[&A=U9.=5*C,:K]:2I5BK#]L9?RW6'/_YAGD+1 M(^S^YRPCO\&]Q)9'M6"R.(VRTF83;E43ZV)R>!?W$M*$9"2:#SQ*VJ%$9Y@[ MW2V)!7%?P38Q*?DNJ EGA/M%8;M"?Z+D*?C&T.VA8+7SQ#/.W.3HED"Z GS/ M=:<#OY/'JI"G@R\^T"&0[B_NZ5#6"T\/N:JK[L_@#UN6!@-)($KMY8OU M(NSW;W;^Z&Y?H4^OBAH?Q@VOV!>J0?"TYXL?@ 7R1HT/[<@Y( (1[.)NB,*Z MY/EX UQ JN;6]G< ]]KS7 MGO?Z^WFO+WIP3WFO'S) R3N]B)ME4RTD^]Q$G@:+PR:_S$Z[=?"@_R"4[JST M9]*C4=@H;2>2/Y=6DG4YD1O RO#ARE$LDIQV)MOP9)KANEQ;>0FG&HD><_S, M6([NM24U4V WJ4XHF JNPIW&$*T\>J94#J>:E5RS,C%;A5 IWA'YR"31"QX_ MLRDU^N%M?%"99$/T2S/-T(5Y.=$+]>C#E73V>:1RQ9;(%;M#?;*I,6U]O$(K MCYX9K?2F*SE3:K'3$9Q[MEBE M7TM'$8-NIHY7!PY6)8F[=X%K\>L)OILW&4.TVFPUX M9N1P9?)%GIN\VIAS<\4<9CJA>"<>'/8BQV]_7JO^JAS64UQ[.1 [)27X$DHG M>M'CE:5(+A14FK4^5]P.EDR]/"XW9O5>['BE'C?%>-:L:_1F.4QFU)ZF*:-A M+WZ\,C'D&*7#< MX/CTO##OUH]#3Z?7/6+H*0*AIV2+JB9+^6RBE4Z/*:3D(?N/6$L2I4#VDD']-"0).X7_OW\%(O3?41]UV258.)7_ M\F%S53:PB4F,YX&FH+] ;B"&R&VIKRD@(]M4I.H (%UHF,2G HK-9.(- S. MG]ZDY$)\/6V5Z[KRVWM_6D- .,A MXB$0$;C88L9#Q$[+I(3#Q%+_85\Q#A">;OADBZ*?HQ0:#'B9^#Q._ MV2SM5;WUXTX=^XU3WU1#_.,C'Q4H$1/U^+][AT'V#YSP__U@?KSW8,P3<]LY M#+%7O.JON1^LZ.C.D7S3Z_3S(A*=[+9M5_\4D6E)P!E#D)VRCTU/ -U? -WR MR%<34W=L&OVGU ].OJO*L'LWT'Y<6B&2\'/32L"3D-]20H;/4?T4/461+G3X MC3P%;J^BOD;5%\,I/V65J#Z+D68:O"H:?T%HY4^I_-Z]/*KFPH T;PA!(:&C MXV 0KK5Q%2AU6\X ]@)<^Y*$?J+71$"+C-8 M*:+: Y9)*(AA#DH72IHZ1.)FBL.>FYFT5Y@ (5VCQF]P.%1+\NK$L+ZN&$)^ MR,E\99)=-$L1?TH;5.CZNSNZ[>\ZQ>LZE- =U)[L>K?U*LEFH]B9#[GF6$TO MY+A,3RN0IQ+\\4^4]B$MY$9-7;]I)Z\O(R>(A_,;R@E7,\8/EA1C-J^,7I2, MGS9'H>=R+FCDYS_^IJ10BNO< 7IA-&B/>Z6G"=":F0^Q9!DB+\BJ3X M!,;!>1VI(2TU90F?IW1)E!=4AA>PI/@")L$'BKVO?LC7XM&?>BC8C5W2#X' M;T&EKT4F[T^E7\W$3DL*OY%$*JWS*V)O>];V%]"B[W;#?$.=^\VVN<5KP&K M:S"V4HR)-F+3INLZWQ,VB#.V.']A=(D. M+8.352\"UGJ(\84]:]V3,YYM_R&V_/F"]"0;=?KG4PIOL*KWZ M*"%9[F3EGG^>S-%,(OHRJZ\V8=8<(I @=2S@"]QL(-YW\<7"\TS;3T7VIUG"_^F M.)NN:SFV(0^SG+G@1NET=EI<-H>]&%:9 D%?Y)9*TS>D]^_*YYX+Z^JS0G^3 MTQ>IDK\SR$1R'!-)<.H@E9VEEM %""DN 3IP-=7E;BZDO&&8N'6+H!E6=U;L M3Q)E0\!-0#UWDF?L?2%W$HBLGY],-QE(NBZ)&=)C*05\6I%.":MQ1R@;Y4E/ M8,U6B,UDYXE-:YWHQ7%@+7JLDOSE.7(\WOY"CIS;\?8M]9&W_ 6& MG?BG#98)%(/9P'J%N!NI(N'8<0_^OSY7,E+\DKOD3 %8' ^A_?%/T^SCD2#7 M+G+[AB;'=S6U/)?*E=46\%:W+&_U"6DVZQ<3V50_FV4W;% H!DU-*(_JT K5 M\J$$0IX/Q6-LSX?R@#K+*ZS=6/:J%296++/S<5]BVNRBN&FL@+6QTX3VA:.A MS^0TB5^DXF-MI 03M@43:77JPCT!1D%@\T, SXK[?)6"_.]J@IUH+_15O29? M1A-)$;8\(;7:1289"L?''3K%&JO JK>5ZVP=&JZ#0A+QT8&XEPCC,>\G=(M\ M(6WC//O&2Y)2Z$5GM4FJJL6'/)WCN/40V!>4CK"/#D:NKG-\'@=):4_UL)42 MSUUR,ZMJ7QP$D3@0-1,:[-]%V-VVI\K=SWIOV?<1BDM%4X6SPB^HK@.B65JJ M7&JUIL?-5G7!3O!8%Z2[Q*.^ ',I2NWY4CRN_WWWR=W/>F^N_QB-YR+?EB9[W]UBFR9#A]]3Y\0%-5I0JF*E%,! ;:!N+[ VTACT= K,[+V/4$ M4XH-LV_(HLSK,%P9]Q3$LY<7&EI,)::2*N+IZR+5D/!,8-%N%)-P1A+_A$'$ MULK^!K\P(^O&@GP=EO@HT9Y8C%Z;,(CX^6)F2XK5)#&:P-DW#$YP^#4\C*O"R,JYIX7 M#!3*T'\? @9_'/C[+VHEHP?QE+%1121DR>#Z_4G"\L(D@[/0WA6 I$Z2KI+E M*I7C=5TV**B?]%&5I\03]=-Z(?JK_0X?G@8M3F55-A8Z&5;,#]$FR,CU(YS- M=&TIBPCE2/Q0/^6_B.'+4_^^B5",]!CT/X2WCVXKU:+'3%?M)OKTA]^=)HCX73I($8P0(5Q!*.NUEZL7H9T?ENFB7\FQU898SO;JV-?] M=!S$(@A \D$!J!L2$N^(V+!Q!N"@?KH(S=78JS0HOO51ART72ZESQCYLK;IKX\4_X=70C<2Q:G51$Z*1RA'YC#_^GNZZX M1 &2'(@<'H*K[3\YC<8.('P54NB$@IG>J*#2K#E-3*K10%V@2_7[D4*C5>AT M]%3VF6U7S$6ZL>WF,L+J3:1@HUYW&K,)1'8/K(WL4<+9]FT6,0 IP-!$19$$ MN!.4#;F,\.VYDR+.G7>:LD[=42)1-< #6:F2P;^*SK#P$0OEY#-@=0I M9-#L:3<^VI+GN4 M4:\JUQ(4C(Y&SIRZ"-?#@8T T M@>:X4UUXH):!SS: K:P'?4"]J> G>\K9!Q-JX'$T!0=U#@QE9P%]!UB?0%?! M4'_.@TU4@Y_:\*?=%@01K,&# ASM/0@;@J())PY219%/$VR!$F8.ZAA*9TJ= M'(74U6 "L)1SX "O +-=*#3G@.)&AI)L9<:+5H7.;LQ<5[(B*P'6K_R3$]1; MU791\)GKB,MYI=F8=#;E"$TVN46F&BO5EXT#P[14SU\@+^$JCZ].!!2!KC(& M^$/H\R5H$ZQ7M@$^.N ;CQPZ4]-PI"F4%F0"*NQ;H8KO"=5B +\ -"+YMZWBJ!!$.+V8W'+ %F+%DC&7T3P0EE6 MNE9JD64+>2.CQQ3+D7- 84X^)^-O(WC[!HR,AUB^$P=S.CB>UP0\C<[S\"2I MEWJ6:"A..2K'K#&5G4UXO=C\8OT#?)%[):2B4Z_F-R4 M:"[5<^EFNI.MM9&$)B]@8$^9(4/R+$D.)6:>ECEZ M"8S;V(6'+] AR7T'6XC=C\5N@[<-L#PDF2E= $:8*7(3L+^SV!XQG9[<9)0^ MFUB);167Q&PO A@Y>A$C^^\*Q'1@7/HO#+P3_P [8@54<'X*+"01F1+[5D!@ MQF2S[4NU_V-%7X49EZSNF2O0<HU=S8!3)T%*T+K(&X [S:+%9M-C+ MGD(VA&[8WCJ +:2'5/\G5%^3=4CC"!$>'K+&'@N<)>1F<6UPR7BD0#MF9:RJ M9:W14Z /]IE\R1'C4S.T:#V'!L]9(@8V#BEK ?0/ !YU_>3[#S#!\4U=$9N+ MP*(7L(EI:/O1!X!E&QQL^S+PP,@M =Q#8SK8*-8655F<8$TTW8[LW:GH49KF M,3MV:!UC+J!)8(4#-K/\D T<')CHD(;WS&_- R:VXR_TO"G.50[RBA^R>./I M"TSKHQC-/\]8"";CQN6E,Y3%R#"'\B;K$27!E8!O6%#J> &@<$P@K"\Q@F :"OP9 M/K^5NAC%+QS9ZTE\F8QX!B#T0,&ID*A^ QQP#">!F2084>)0' )*'# 1(%E/ MTHG[DD[C!#&(SP5;]P 'A10D9[#0>T<-[BBA+G(1OR*@_#/8/V7V#YFS/N)$ M8J&TFFO+4IQ&Q%&K*Z6J+Y"U^X:+^.DB MZC3Y$S]8CAV-B<6Z-:H)@\ 9.@ MPUB2D?=8G$Q$'G&YY0"1=_S$011YZ[5594#M G1)NP'_[8ZZ:Q-2SD'GO+Y' M2QWC$0B+)W5N:@UE'1>I6^C[#\(ZX: !8H;Z(U-52!!@AI.';3 M1^#Y^)-;M,>-?+*)+QB*YWJFT>D-8-#AS9B#8;XJ34[IYYPHN5AT^=1R(X'S M/>C$$S54@+ C\L@A5'A ]V!^EF"8Q*C7*53%-2O*;:5NXK);=Z4+)) 7,#G. M#?):VH-_@D *KP+*@;EDTW\%V0**Q?HG2BOR8R+;)#&4$@3^GGI=6/'G*$Q/ M#C+-\+]@_LW>M =S17A15?]]+2L[F.'JZ66''3C)V%[VM1?@(9(>G!!<]O[] MO_]G?SN[)+H(;ZB&^3/(E-L#GP\9$B7-26)D#)0\)8(D^$].=;FU%:2@IY^W M?9I_;I/MHBCR!.'Z%[;W&4+E!&E N8SL <[/T8NHXL3^Z3\6?(?RZ[9?&I[> M\],$.AH,-1YAS<>Y;(Y>8KSFQ1;C.[P\U\. _(5R(S_Z32R M9Y/E49J7#EE2]:;U&P7[7_WXU8$T".5D%HH@5!?)SU+CKIX ]D+?UY-4M==: M&_=*U6J.JF.%=H-M/F&E>A9HH/4T2S:#6QZ]-\M^QB?WGUYO# MZHT.S6"=!I9MU'-TG:%S\!/3J)9R5 ?\D2_5J7JV1%4QI@.^J-'U#N-US"'^ MQ?Z& )5U1Q3^N=9Z_F9USA&@AO3/KKOS*S+KF!/.$3@0@;RW4'3H>!F8X]%J M3B#%HC.)3PCBNT-!&@K>XB4"(B7TP.9%*87"7J 83@F@#:8P(0O!B+#G _8<1^3.4P1' MJIP%K&U@5L,X+_A[(L,C+;#(H87E3F5^>JB3@/4MO5PZ3#9A2@6/&%9$Z1 M7W"[T'K3H=9S8"Z;WM8DE&RPRVL\#M/O&_)^"N,+!MM>1@9XK22B(OW;9(Q+ MK#W_-4%2YNO^ B_1XF2]0-$PO+/\;^J?/7?!*WZ%$TMC:^[N.P7 Y]MXMV*C M*'Y9A>2;J6[KKA'-Y')\1$D4)XEU2A/:BM6ZNT\7AK2C^(LN^V&^-6[$U+5! M.\L")_=ZBS:N(9?]1;$V&"_?)<6&N+U3O/P5! ]Z"2)EEB>2TA!U)U6Q2_0Z M@@R^2[STNWAYB.5[83DG\F\AF66%Y;I5C%7P"#4?)]K]&IY>MR[EXN %6/3& M,?,0QR_A&-T7B,+ &WD6P:U)LF32BF6SG-,G)IDF,RKV7(C@2[C8NXW@8Y>\ M96PUQ/";YS#Y=F1U)1ASO52-)A2M-XM2F\[2L*O2I9'5_4.9/(JK/F%_9_[! MX"6=L2I;TT"G>R%28P>>Q;-QBN.@#;HE@F*M(E3X!$]AAU^\KHR"-67_@0^! M7[WUS($2+AO.SE\-"?1RUZ&AG_5$<]Z=,4\A5<07XD1[O4O!PG+W6-@?A(I\ MPP$+HE!/8/D"^ UZ;PU(!JYLB1C'HSS>LXOA#4V#&>:VP2N'X<,44)^-K2/XU/.^TUI?NQL'1HGPWCXP!RP;XVS$0C9:,=(./7G\&_E%8 I1 M1D]R6 :FP+71S743 ]0K *XJP7=%('UB#2 PX-TQ-"+(W*R6,HWVT=W M]5< M]-YS1XTQM[>Y+P>9>7/50?Y];CY79<^][\'YR0\(G/R F9PN^2$*O^#;E2WF MMXXIR[1';;@(Q/GP+U_F'PF*#Q)EL,L,PXH:'O+VGG*HN0>_)H&2$K"5LPH? MAD8^B8CPS@=T/(S!<_[A (>A(\&?9I&H+5-B>2DIBW&&';N);FEQV'GT(TEG MY8XWZZZ4&+-BJC6=-E;K4DRE(.F$DN,CJ2)1Q">N$\6';&^RBJ0TOD Y]-VH MHASOE$J=2J&AB.G$*!)=\'%&;_WX15XF4-#&#IR.@H@T:J\X M1R#D/M_VY- M[B?/YO9FX,_;UK=V\W]U"32+"$M[U)RMV,C:&'<;K#TBQU?374J^*@[?RJ#" M64"QALE; -OGJ4WO6%,EFIV0M+.);C+]Y+2M."VHO9RY8O?702$-E-8!#&E3 M]%RJP%)'ESL7#7@S;@T4W&SA,D/7F$XQPM2B!Q07^\,J-=DMRO.B^!;!#:UXV66% M>HQV5N28R1#=,P0#6!DMZZU3R;&X@0:S@=\#Q!\XZ((!4 MT;9AHAWXTZ]79#BV!6D!SKOS6[PH9KZ"]-C2$P)&@,SK$)O=KQ1G12Z&T]E5 M@LB+!LO;N'LW8NLL2:U4&Y9Q>M%G*3E7&7:R=41LJ=,N+I]2=MP2F3UID(J6 M6TZ$7M=%)]XL#-)$[P"9?UJN[+>0F)#]VL0\NAG!;8-%&-S%&&C".K1AT/MW MOZFRZ,T 3"! %O! 0*G?QR_8I0YP^QD4<#9O_;*^!(]X>0?;0HA>U3=N.PMG M6:*-68 5@%6FB:84%%S=G_09RT-?/$RM.>MR1W-:9[W5?J@,%7KU2]+)T+#3 M!;^9-JS2*H^=W>)/+QD?1KF>,>8T16-7P^[2, %\"<+Z7L*'!J6N;0", ],X M6#E*L_B;^P>=[K+?#MPGH+$-N166>0/F 2I8B"Y6 XR-O?$0L' (O*KE7YM MI "A#H?Q,/7< K(;T@@J2@PL-E'3O4L4@ )@(,_"_A8@_OWZ?MYO<+ +9!8@ MQ?7>'-M'T.4,SPC:^]5091[>_(;[\&(/X(6Z?P? N^I^3$Q_B_\@\,*F79PU MQ2:JX7X'<:."PR2XED40KU?)?K,P]E$)Y9>*&F)7KI?]ZA[> /;>5/#)^XKZ M_0+[$_2_PY4W]'/EJ .G@+A?S?M,1>L7T7%01_+PF:/K)4<3;F__7)K'=9B^ M>LD5(4^/#/*:O;\.,B)W=9 ?Y];0$9@.:CFC5,MWW1FZ)+G"?PL=(.:M2T-7 MHF;RG.!XBYI?XL/=+<[@RG!\]PV\4!I_>$8]QRSH&/Z;"HHT:SO.^8WR*D>3 M_K.?V/MBTNX;U( RB5]+]40YTL?7Q"XKI+3'9O*+5\G\;."7X&?5X%JHDM/>S""<]\F?6C;#.ANWJIN02;'R<50 M9IV2FUFM-F*Q-W]G)ND+N?/!A_V$Q*#V.[7D9!6N*@^0CL@E,LTZVU-A/T+P6%5A-.J"*FP*D)8%2&LBA!613BH<_ [51&B5V.#M_0V M=)(X-M K-ZB:%G1: N80/>^6&>C_7IP>Z!N[H?!KQN_ET "26(= !^H:\G"" MWP]R)9E&OKW3P2]/K_[\:=7?5B_ZS53KWGB=C9;Z4YK69)>)1VBWP,>H%W2C M,\6:/H9=]MHGW\G0.BED0JW-TA>H@1D;F2$F=C2MQO!'ORW@^%;'G,R]9XEQT'> Z1+#W@W\*;@_! M[1F(4J.,B;G]I028;,6XW'R/'G).=9H><>62(E8F/:TX*46G!>K^]%#I"(56 M)!5+LV*QWJFS+3+;SU(O)L^WG-% @DUE(OQ$:D89RGZ M8=.X?E>D5=E9:FKFE8FBI7O#VI*)DK3Y#A*^3E)KK98I2:Y;K;%9A:W$4QI5 MZ1+N'2])7(K\QTCZ^EWD]VH:W]=R&T.I5"6)W7#YE"7?[8;,2$@3?5NQYTHV MW[>Z2[NZCBQ0/?0SU60>YHK$%Q,/?W8@)F.BID>%N+$%Y,F?T8K,T'6FFVK6V69#)<>9JHQ,Q&] M&ZW4ZAERUN*X!;Z05\U(BX8-LIS^Y38$FX#G]@VY2?'M)M21K MY1S5+O7P1D*WU8B(JE^BW+().Z.IBF9':=%>Z7_(T M%XE'[/RZ;M*5++\8)E,-IAF3[G?QXG.=F?(F56_8*76%)]3I)$O6*NG*ZG[7 M+AHUWN:X:JFD:'/+J:4D,Z[T$#)CYY!YGVL7+TJ@KR$];IFK'\\;&38[<5B< M,T@Q-U_GV]V^=#=R:T]9I<+6F@-:K'5ZRC#*K7.YUOTN7EQ;=MP2E54ZCLN1 M1;Z-,VU%M8LNF4R:TMVN7I5]TJZZA"5X[IN>XF@^H5I,XTO'VD:Q=A MFN!MHE<4*L/UA6-31!#N!=*"(/UK6IZ\0#H\7#0#F 88),96=@1?Y U3! 1_ M+ P>SVPZ<@&.L_)\4'7:*Z7G+OJDE$M$DO)UFB/^64AKW6(CL7(#5PJE_$B+ M5L>=?I*Z2TCK>]#%GYG3A>0DA2^S3%WAJF(NDDXW\[GA T3":-95XG9^T643 MZ1*;QU5FK:1>MF;"2-@[&>$UW?B+,(\BQ&DY%ZBAR.!@13O9L; MDW>Y8MKNJ"F

LYJ6Y)FY'2NF, [7*:.5#"OS;-9$V)6F5JT27>:VZ4WFH4 M=\GJW>)NC2D3*R['0YZNS)IXG"9R0WGP\*7)0F'TYZK M/%XPE*7&N(6EI-PQ.)B2>FLUV5DE%:??J$D-8]C-+JDP.!CJ#2_P1R;AX#:> M5KI*86X)0F.RP>=WK/Z5TY:J0<7,$EM0N_DFI7?YE>S>+Z;X+0[V.,4N.NUD M.Z*(=B3'<>#,B^?O5]!O,S)=KK[@IFS!F+)-8FXX5(]ZL IP#Q:*?!!9=+_LA_PH[D1:Y6@);]B-#IG,K]=]\8X1S >1 M5+>D@$R*GO8&C7&+7:R =JZ9>W:_>W!Q6'.T51S&\,-9B[;XT-02N]8WJ MS1W'/2\*#G[BN.?+][(I=&"@/N'$N1I&L%L<*M>ES55YURD%763=EJ3S*]B] M&BD Z/?J/-RJB-=1;:R3"^BO%LIJ(,J%7+U;M'7EJEB_@94#4O/K+Y $&2?3 M0VV!=D\=D-8VM5M$S79T6"'P=W/EC&Q752H;@]_ ML#:?=[T:&#Q>C4(H%7:%[> V )' T(,[!\P]6']E^U:L[#6G&ZAV+IN&:HL MH 7FM\)@*]6M9Y\WKMFMZ$'JO/WQ,L)2)V^7.DF'I4["4B=AJ9.PU,E1\9)3 MVKU0^/=#P=N [, U/FW[9;MF4TJ&*ZNIETXAV6F1H]GL5C D>T#E(_ MJJ)EB6(#Z,)@'EVB=,$[^L0JK/1F=<"+,JK!*S^"S@F\E$#3[3;O;$I MY.Q!13JMV')^'-HT\0,3@24P!VL -H]X*]Z^E N2SUB5IAB?U.^B8NW[CU4$ M^&U57V,RD7DQ\(O NK6>]T0%QE\$6G]/&*"-" ]QIGIUSXP F\%<*!0BKN:P M%S3XM(2VJ&.AVG?608&]-4P.!*0#0 ([$OJE9PZ5<& [&6,@?)">Y*W%5]:" MUT$7=[#\B6/JJ)*)5Y39VPPL%CSWBH[^[LH2-[6Z+C:Q?OS*H[)R8'JD68+_ MGBFW:GG55G?X0>C9@Y(%]%9X7L#*T0>>_AV$=%C)&$48K.VCP. QW(/7V:AR M-]@EK,X-*Q2/US#\@,H481I8^U3U*0OHX#JL^',0B[#0*O9H[' -@)JV32/] MDM1^V13M(/:Q:P7LK7/*@>5 &K60"P\^@VHH!6=C_O.K[%A &K6T4%U 3!I@#D;U@-K3!IHH1W# MR][>@RD1%38Y@V]D6*W7J:=6_0F?5EMOPA1-\RYP(B;?$SO._%.1IRZZG'I$ MERXWFE>;I5$7;R0[$:XL5&=VX4VZG,#N!7]"EJ@X_]H'F]$9K.5*JAE&5WH+LM@3V'Q,H=.D!Q>%/ ?@6L<[ZK5A/',@]A6S&ZYE\ M,SV2NNXEQ'I.;]Z*3@2#(UJM]L26%*]VZRRWFJ26Y'=PX"!2?1= MG[$LZKIAPZ*!T#^ZK1%X]J#V?:9 D5O!G 2_ZP,ZN0^3&R"UPT" @-0>3ZF! MSO-=!73.5S/&X@0VH48UVY'FAY0<3V'=%EI'/9N/E$M[/8?.&ZBOH%23P',' M@F_Z@CO56R0T6O7\!!B5'^!M'@XZK*;X"&*0S16PC@CYL%2]3Q/8TN:,: MB?[*O(6B?'2DFB'=,/!(PD0D7USL'-1'[T:>E(@QB4"]S&M. J;VM@EA@M1$ ML)(\@8)0VL:7HON'K<$ZUBS)#>C>H,18R61R. 1\_DLW M3F)+EREV>V(*IJJAM0##!2P&DQP.U?H7(=<$9'R,%"M0H7?GA1]'WRGO[+3WE27(DF+X,I@\/)1O;"R9OB]"YH5B)=V+X6&G1Z1#&0T M^!&OHPE026P1A<]L&X%M"9BJ;NA[L;1(X.0/>@MM0S-/&&\:EA4)?D"Y>I;7 ML,;O0 //Y].?T7*VGGQ.@/T8 "-.45H KW+.G@SSV&H[V..:71@""!^4H?"T M:WXC0N0%80E!]$29N(T@VE/#VKV%FTQ@;J(W+?C2LF1@TOKN'F R\SR@VEUH MRB_I2C'9H'M#QP!T@:5B9(3 (V3\&:ON1 M\VD&](B!F.&O/DM\%*+=F_9EL M2,_6.A!YUPT6D!<8R?O!K!-WR^/&)G^_G4V #@^#5PS0_9EOXG%!_$+'LO.. MKR-I>$+^GA 4 =L;&N H($!@?A$O'I"_Y87Z=\\"J:5;_CF'F&S7Z@D^N'LI M%#EH"M@^ Y,U*(W\."!&(2X'TP72_?3$WC;4=S G$[-\&1RGD>.R\P#H2B"=.I#4]*^#E:8!@,"7FMKSPU M<3\/]0C0@;?/.ZE,Z,WZO8>\>/L3H_2O"F1=T^.-C'@4.(@BVA .@MV=KK,.3!8Q^* M7E5LRU_P[LXT4._@"/ @O)K\)*M@]FW88Y&GC+)&;CL1,+V05D,,BMX0](1TXP1 MX?L:@=\OSU=0@[Y77A?"H+/0D0&U8SKT/=([.1OEL4/O 9)- EHB!>TDRW[# MN!0,9/7X-S-0'RV8O\/+ME\S'QJ2*H_$V.%Z#U7GK6H&(P.RY3T,3## 3\"0 ML(-"WL>K0%V+-,_IO;U*XCWLWQCVE;G3_77.BG9/:]RVU=P>73L(H@+ZGF0! M& +O%603:HT\ )85=,04X.O/O!JYWE?^Y-[OX GP"]"-K5?<[;[R]X(_RO,> M'IKJN[TCL\#+BX,=GH!]/ 9697 2HR"-[->/V%H:Z%OO#;X2&T@U=/2]0%SH M#5M2?5$LGZ'!QPC\/)9R=96\G7VG4IBUCXPFTX9&2#-9J302LVEE:@][[=:(/)TS-G KYC39FBN-PI*/QZ9V8D:[ M8&3L>*3-UF9U8I/.X=FXXI2++=MJ2Q08>?)V@9E&9_UU1J.SZ\&P[I2[[K@# MYR3PXZ$4R2U'V01#X6*DM](HKKP:X:U1]'2A=HXHC-V)B'%IU232<.3)0BUQV*]JE5I6:9"9;+_2K#$;&KW] M9*%62J2'BXS!T_)D'=>+7$F1H^XH=KI0(8X["[O4<6E-ET8BD:K7]8$$1IZ\ M?MDEF:A+C]9T1'!9NTLU-AI-C>*CD[=SK!5=J;-AF6[D9A$J:EO*J.N"D2=O MCU@Q;9.L]#5%[K3ZTW*OKU;R$AAY J9%+&^-9Y0:IR-6JR%-P.[*53CGR3K' MJ;X\35<:%;; X(58LIA8*!IJS=IZ51\G3D:I-(N_BZT6'74LM<#_)<*]9JC5*G(W.5 MLKSHB;J&,T1YD)U'\54BXX[2IR/-GDM/Z]R&5L@>:>6TN=4NQ20P\@2@TQI1 M*'+BF*37F6=5DMFW1!<6L2,V-G$YOX,@3@.9RW:%, MV=TDS21J.NG.)G*I"M=Y"M!1(27:0F6MTXL8MQ@X665-IZ%T($]H)!N+9?#\ M@L%EKI5K]%.&N^E08&3\>*1();BFELG%6*?.L%:-4ZGB$DJ'DSF[O7RLEI>B MKB(.*[4Q6U#I403R_,FWGII$X MWE/:)>O#TNV2EN:+$9MM">.,G16M4* J3ZDQV9*]?,JJ)1H]>Q>CVV MC+H:D6N=(]"U*7:2P_[$9'OSYG3#4D #+L.1)V]?"3,Y&^T!&=I(LBX@EH)8 MLN#(D[4$/TYWUUVIFX0$>K).C4M'5OUFLZ,D1I6:44LDE:H)V>-D MG=URJCEDA;2CK*O<>IR>B^M.&E =<8;CZU6UCP^S@B*/(NPR6C FP[$+[[N= M#*U%2\-,+D?'Z6R_3>*KBNK,XQ0<>K+4Y&I",,)D2=".W$\E\NO-.!I#0T_6 MZC:Y6D(;ZD5:MDUJTA 8FP?G$A$]7< \5Q9)(JU32F\J:MUE;%X=XV!H['0! M$K<9%(9C/(I76L-V.]Z.==AB"PX]64"RG5#K,A=KX=E4C"NV:)YAUH"9SXC' MJ=/MC2NB:RG9REJ+*4:);J1<./1T ?J0R+1*PS[=&]CQALPLM.@U9 $G: MMI 5M0:>T*>D-L3;NEX&P#I#U"Q79=;=D2FS)%%N-POY. .TO!%QA@*U:';- M]PAZ2D>2Y7Y4)^I%HR+!H2=K;4EM?=VSS#'=R["D74IG\Y4UFO5DK?(RM;(7 MR0C'1MR!6LS7R$A[#*04?KJ 2D PG&&"!.;<;'0 M3JR+]**B#S:124'3"3#K&2(LQO,=/+94IFRB6]%[M3;-Y@$1DF)HB M/\AV%C6AWEG0O56>H^>9D2:7W!LEO?^&*^M"GQ#RR6P]&\@- ;T:*C<'X T^ M["\#OM5W D![B_?,Z$.W SZWCWP.^(FOP#:#M_JS$=X>;&&[@U=\1-'D,QG[ M:W_[_OL"4.Q9B'OS0T_C!%!; )+@[XAK E1[3AJ8B?*F<\3WA*$7!T.YL66H MCBW>V"GRBL_RB%+ M/ (F0I9X$$1$GZ/I$!$/@ B""#'Q&)B(/N.I$!$A(D)$!(A(/\>2(2(> !'D M,TZ$B'@ 1(2BZ4$009#/H45W143\QS:AX^E/6.,MO].CI'KY=,<;*OP25?E[ MIU1./R>(($,IR CYBL,U<_"@MRG&T(D]48^S5LI-)VI*8I8#5[MLS :%H+; M99/<5$Y^'%- $)WL_,-))8H_XXE/32J,O'J%4+ZQ^"#?2Q/@"(N_JE[?'>?^ MG=HKR82W?'^W3R_\("GQ?HJ(/2=?]04]!D60UZ*(+WI*_)%$B#\^_J\H$5XW M:T.)0,2?8[=ED9M(A% =>+OKO"7RNIC5\8F ! MPB$^BTKQF0C#4R<^-V%<3Z+@G]M7\Y&$XVD=GQA8IQ+E&ZLD?^K@O#.>7ZV: M\#>ZEVTX%J<+UC_;@@D/?HA_5]B)G^AYAZWL42I*Z]Z_U!R%5\3W[M)?VG3UTD*# MVUS^&+PQ=YS+OY)KB=6P(6NT7)@9>$5@.VR4>J7NX.M]K@Y+?<+L_^-R@_". MH).89QK-3DHAV[VZ5K1:I:[0\FZ_$4_QZ&E+LR]#QG]R8O])*N>]]WT5]B7N MM94'8=\H9%G"8U_2^SS?<)*U'+2Z;,_)9TM2N[I0;LV^)2JGS)MF>HA'*C.+ MSF5&Q?C2OY)*/"7BT5NPKZ=TW9N,[\&^C[#O:["OER[X7;GWMR[2W9)[9].H M5$LVXQJ]*!2;]:4X:&U,6!PA]>-7](D@R-L+Z/N^W(O>7KV MYO*UTEKM.Q.VEQP/^IW6AFE*-^;>>*%/KF?&G*+)947(+!>=5-,KK$) ]HW& M3AN7_ZE9^Z&DFM_OD80LV)^?)K?DSK+FS6N,7V*7WP*5;UV_^Q*;?/-JVY?8 MY;V3F,)-7FN3;UUW^A*;_)B- MGPL*EP!3AF_N9AT\./M_ZF#/^_F?(!)$E4WG.=PI5_"" M..SJY:Q?%I2(WH3_'\.3^ET]R/>RMKXK^W]$M.C][%\SBJEXR\T.E$:J.DU- MUE(Y)\)2V*D?OV*I5!A "MD_##<]>KCI_>R_GJFY^529.?1Z@1<&3BZ:3\WA MZ0]C4&3\-?Y_] C4L55?"CK1 >2>=!3["A>9'H+7?4O_SE#XCF9_0-^T5Q;Z M#+./J^-5<<35VWBAWVHW1Y5E@>W 9A8P5_.&EOX7IWG?K/_FC$\\!!0>XLC_ M:(/_;<[G27F0W13S=661*F?'*5FR&Q+LZ &,_.3M3/PO3O.^0O^]&=\W[D.^ M_WA+_X(37ULL:+(82=!D.UOL9>9=8MYW =\#ZYY,W\ZX_^(T'S+^SJP/&?_C M;?RW&7_3;9A%*F=-E,A0[;+S+IFJM*&J#^UZXK5;'9\P?@_F[!BPV;4NVA]T M7_*0[*. [ 7#@4UD[L+\M[U0>?>]/@2/?X0Y_UJV>%G 2:HVM_IL95&MY3EU MV*:6DM= CWA*X>%%RX^(U-^=%S[P)N;=]_H@?'][8_XUOJ^#M4Y2@Q1/)P9R MTDX75NVT[GKM,(FG9#J,T']$B.[NO/!Q5SCOOM6'8/N/L.5?8_M>=*%/UJZT(.==='5SL0MC?>0[1^'%S[N[N?=M_H@;'][2_XUML>KF^5P M4JN7V$IC-)O78NL)U85L[]T)31")MTSW_Z!FIK^"87Y'V,?MO7K_#KN>QT#6 M/01":IJ;H@6+4 DP5^!< UY .\C-Q<$Q8TY%]URMJ2C:M^S&ZZJ"#JC'LD0Q MX[V3@:^D=*$!%FF6=CMH3!"162^TZVU; F\FQJT:+:>TS'0ZE[/"LA6VZ[UM MN]YXZCGL*+2;]HX=A=[HQA BXL.:G;U>!#]$Q$=QQ%OM*$),?!A+1,/^?X^ MB-ASG P1\0"( !9K]-7ZLR$F/JXE9GA<7Q$1?UZH_"V3XDMXY]Y2UQ]LDUNZU)3N1%;2R:6/1J!/#6P?(05?C?VQTL ME/*AE']%RG_NUBO7Z]D3O6_/GM_J'_GQM.*="I^;5J[8^"L\+<+3XE.>%N_O MPI-XA(:Q=VG0] ',?I?2=QZCWCO;YJC3D'6-<>=]Y[9_>HN(FZ,'Z[?0=] M2;_=QGVU]=OMVPN.?+]]^[&([[=Q[QC^M/M^U\E\OU(UJ(9/Q)A$'$N\7O79 M3Z8S_]$1?.]DUNOG[9YK_?W-LG0I:]28[)(EYQV)0;>GYY@\JW5CXSZN#$:+(FS?$H4W;)^BJ9L4UKAYK.01 MF-A7+^Y-Z[=(OD?JP[TW=G\F)LA1E/"RZ\>U49J5^?P:9RIY;FZG,EU&^C@V MQK4:'A_&XP.\P-#5-5?A%LNR!-@X 8MB/1')6]7'^5@?YC&>OYV?XUX^RN^W M[\?P@@01^D_LW+@1^X;>CD_I[;@>0=_-B?%H!'TWK\8C'";UVE^"HL^%'NA0N8T.Y*?^[V_I/]@9:MNZ/R+HCY%B^V)DK*J[ */C!HI8LAJ*JRV#/2MU%,Z_EKM MEM I[_UEP(=K>Z]*@KZ&GG"NDVRBM\ ME9W5%+%,UL:4YCJY,BRD"_-U8D_1-!&ZP\)\G3!?YS%4K#,,3 ]*)9E9.*XB M#@:MS60V$+M16 $?*E:)IVCLM;86H2OMD[G2$J<[]T;MRC6&63QA%D^8Q1,Z MC,(LGF]-T*'KXZ/O^_N]R/P;P]C?LLZKCB *F*QCXL*1YQJ,8*>N?ZYWT_B+2ZX[)/S<[0[Q)^79T#_P8.DR=[L;_-T(.+2/ M[YIJ0E]ZW(:F\"73?,B& 6D>)Y1W-4V"N&TF#N MUP;U:#GCX6SH"[<17U,%6HS$C:XXKPS*LQ9ROO[X%7N*QVX8HK@W>7]7A\ U MXQ3?D:UO%YFX(F,/ILLD$5U,%W2V%3=4 E_3-"7!M2=@6R\R=9/4L- Q2;,/1=5+#+ M65KH#0@^N2[DV07+*?E6(AM7',32,''D*1T[K?!R#98.'6/W<8SY&;D'6X]8 M(A^15Q%OWS^+Z#^C1"*7SQ7,481EYDPNYO)2JK1QCY_]H_5Y?\*) '$ HE'SK;H"I-KXY74UU7FO3/6:N]1:R52VF*4)@W M]*G5NC-\GUV56<=_(,??% M-QFF%GU=W(:I15^7@$.GR4=;$CUT)TL4, ZLE9-$S!0U3M;!2WVGB2V:&JQU MB*U%SK2N6+[PWCM_(,_)%]_W0^8DW?& _GX4\!AI.O>+!H64']K/=\URV?:; MP)!_)6S1%%K+CV0MGS@O?=]EW=' 5/Q[H@][?D=8!^&GX)A0@WV]$4N@#5.> M,MP.=&'T8P=HPL36#1EM%N9ENTK1-#.8T&ZU$VW/T^Z()&#X >PGOFUQ[&\B M-/!# _^1#/S?Y[D+?/^WYKHITTT168'&62TM*=*Z6:M59Q3DN@3BNF3Z!EP7 M>B4>XL+3E367[V>-A/Z'!S(^[J?R[ =:?T/T#MOZFJ(CI872J-.+;D?,4?T1 M4'A0F6:,?$[<3N'Y?B0;.DP^-:M>3U-Z)[/VNKEFT6V6EKB8&S/IM$+B,;<% MF37A,2MY,SWIL7#WA7T\88Y$Z/7YU%Z?,$6Z*)K]_ M9S]";EV8-:6;F$HQ8\TR.JYTW7YQ0>O4B(RCMI#/7Z90QU^AO?]9[/T/8LK? MNF/YT6Q96I8D(IM:\_ABGLV*PJQAI(829,L$9$OR$Q?3>(DM/Y_3(DRA"!T6 M7]]A\;EUI%*XO*T7,\)CP';K*NR,2%9H%E'J3B_"/X;"Y MGM)T[YV$+I@OH5K].3=WYTD\-L[FI_BB%NTP9+U2*%H4Y.8$Y.9;5BF[-P\< MZUK_L;FQ*OXZ25&Y(A7*.N N^VW+VO)%PF.+.F>:HW$[JTUY>590&L0Z6YD6BM2PX/[X13R?'G 8 +T* M@0%[2=X00E%/AB (D=[G^8:3K.6@U65[3CY;DMK5A?)!$%KV1;672RT5=K%D M!I/-(#4S)>K'K^CSJ9-D"R&P$LR>BN#_IB@B>%GR"M/ ?J<6)@(R%+"RHZXQ MX@F#%/"$F:(U%\$D2U%=/V& GE#FW,F&&<;MX,U$5#@/C52Q71U,^G$.RPS M-7H\B\<$CFA]"*QG?85IK%5%QRL-O3"94ZGXI-F"U'@JH#^&&HF O>I,9>O ME=9JWYFPO>1XT.^T-DQ3^A@(&2Y'JIH8-UEME*XP"X.)54D)4F/BSZF11-1( M'%+C\X=)X4<]'>ZWKC]79@%)0+J6=8?SU1I!7O[Z+_@GF(E71WLM+@(;ZB&^3.H2K<' M/A\R)%+K)#$R-D5.B7 3\/Z?G.IR:\O?;#+]' W*&/_<%K:+(I\2A.M?V-YG M")43I&G<*K('.%^+C*CBQ/[I/Q9\AXR![9>&)4,Z^&F**@?Y^PAK/LYM8_Z3 M))X3ARB/ :7@%.O]%<\-E0!YD25JM4<5<<*[0;;?,)*]>PS M1M5S&,-FF%*N1+5+-//?_XQ?G^2_8Q/[SZ\WA]4;'9K!.@TLVZCGZ#I#Y^ G MIE$MY:@.^"-?JE/U;(FJ8DP'?%&CZQT&@Y*&(/[%_LYZLD44_KG6>OYF=PE)S]+D4DE&(W9[V!%<>,C_\(AA.[+J M5J/9J)HTZ$B+7 R6NJ!JA 05@..1AD4>IT9#S"QS8E-V+1#7E8U56A1-"V-"+PTZ&MA,SE M2HM4@UVGU;4^K]6&Q4YK1!"G0[OV*J;VC,F278RR^FJ5F'-6#0T]V?ZD,^JF MR'Z.H4ERW!)Z5J(QH20X]&3_DZ8S6P[7E00>2=I:39PLRU:W=8Y&99WI;-(# ML8^O&:-NZ"D>,".DYI,YZX,BS10GZ[$BVPR7S:[)BL91YZC9P%FM.DF/6)R) M3D?<)BZO-092WLGN-[E&,B)-UYHB+NH9+B4D)!/0?>QT9%73TG6QOQA5%2$=.15&TT6\0:@$;/4%ZA,.'+VI0=*8GIIIM9)^;6B)5&Z=.1 M9J$VRYE5OJDT4G0J/LO,.C78/.,,C2,Q$99C(:=LGN61@<- MHJVMBL,6VV@Z:;G#QR,#I05==2=#";S:=@9@XTI#*[NN4=/%;H,:$6=P/] K MZ3$?C1HTV;7[R7S1K7)C%S:6/AE::::,89(<)W"-4>:F-13'92#*B#/87ZY+ MK6+!%MJTME!B1::?5Z83-&N _B-MUGMP/)I1FM!-Y*,&GFBW>V-3R-F#BC2" M0TG/KD-G%&6_-3IZ70WT18NB XRQB:&JA@MSI&0+XS#+T<"0-=12P+$FFIBL M>P9D8.):SGRNBAJ8D%,QGK.FV 0\?S ,G7F>RR HS@^?-+;96*CJG/430Z?J MR_?LWN)K)@#WFPA;T1C8D71$4*6PWM-E#W7_/9>RK_CC)PJ[ M;09O]6R&?\U>L+(29^#Q.7IXV^A)(W%=E'">'<5$E\ ML$T"NP=^^?_]B/]X;])-]!F_;X_(U!NA@+>\_XR\PFI>;):&L=F=&SPD_*]/ M^.1["9](W/H&QY\2MI_Q_ED2_W&R78] H@^IVY[1?(J!$ ^ MA0(M%&B7"[1/?))#=_EGD79_NM?_]S]$ O_W]-^3_5]-T'UNPB#.2L$C&_"E M<,(!')-;.!YM,Q2OWT"\_JFA=&("'N4"RCME3P[$X7;#^^>]_ MY'>I#?M$?._+&##FB8ZK=ME47K&E6Q/'J_-SSN46/SWO>'[[/MV#>]7.LI3M]OW]^5SCU'^Z?= M^/N.M4>H]+1+29J8AG:2=/3]5+2;1.QNL,?_O=[Q\DAWG+%'NS07?7#3*GBA0O]9#-<'D7&W5S;VRZN4H(].M&Q?TC7TJN]V6I^1>>55 M3:5(W&RQD=DBKA3DU+@\A!=F8(FD].TTCV_(!=^4^>]FS3\(\]]>P7DW\]-= M64T[]3&ND!6W69B6>AG&:H%U H7GU?JQG\W%X4'HXU2;K\[3WZ&15^@.N9F& MTC1EP(US3GW%&).IW-I6A?:$741S:W)H6Q-ZTQJE4'7K6"STB82\&WI0[J!@ M7,*[M%F/]=,V6\0C,9RNL@7!'B_@W7I8J9%XC7>_@!OE@-S]8CS;B[T?F ?S M#4V-;VIA/:)[)4P4" G_6[H6OG+F )BS#;<;,281QQ(QSK)$V\*,L^@I=_=PK[C(?75CABT52M>/Z_1\5E('5[+CNV]@0X'X MY2&,3UH;-4E\T]JHSW@\.+JV'U\AE=^(95VS$MZW+(7W*5!#O'H1/43-_5"# M/R>_9=W"SX";4*(]+FI"B?:HJ,&?B6]9)/HSX"9DFQNCYC<#-V\:-/>$ RPO MA/[:KZWU48[0VT8H4Q< Y5&*L1'/Z>@#%V-[#_BVKK$K%>_SZ.7.(/H\]!0E M[PZLZ]*3[_&[&C6]?DH^( #.44MX%'V*H^C.4'F[SJ$&9E'%5Z*U\6!2\A(KS@<0\!\2H*YO:YQM]WZB=!M4>-@ MLH<)=@?)]E"?2I6(I4&SFZD=R=!OIIH%UR!W_)?8^(I^0.@XY_)@2Q*\F8R MZ@B6(D^*&KTQ4M9LYHYB7J5/@GBMP&#(R-^7D5^/=H:,_+LU+-[-P#F.;,_- MY29).VJNIO8*2LO>2("!$S]^QCU8CTCT+/Q1'OI*%,%%Y?M":F2,PT? MNZ,XJC+V%(_=I/9Z* 2^DQ"XD^?HJPN!5_6YRY@_9Y#="&=D(C03,9A:L[0@ MJ;8$F!]H<^G8C8RQQR3X;^8P P09"TWK3VV27%M/"^7QQRAET++NN,89<3S( MN74R'67+=-:("@LE81?R;3?H@X-'7[LB'++P)V3A.VP[]*5]A.[U,H^KC?JB M-EVR [807=BY7FZ4*Y32*Z859Y0.Y?<@BH=.N"_MA$N$%OSW-&M";]WG4>SR MAG,N%V;>6N>H5(=Q\%ZV4$U%*^FL6:>\!DWD$Q&_2?/(D-F_AL<]],)]C-;U M N_2"[,1;[F$R&:S.:Z4)Y#9INTV_^(2@X],(!.DQB@(IA;4U3Y":V M:(;6]D=8VWX-@2\M/-Y2)-\2&OD276_,&M9 6=2++E%H MYZKS9@L(#:A-A@Z\+^C 2Z'7= R;4_V:['.?7$(;_WM:2*%#[W,X],Z([Y9> MS>>Z0BJGB#FUH?W]WEO@:?"3ZRDS1T;M><% M>KQHV:'1'AKMHUF#5T]WU2 MKCZK=IWAZ4+9(1:C6)QEY2$?'[7:"C]IMR!/>SX^/+Q9^\5]?%G'-$7=OHF& M]7A[#FWTT,WW;0Z!%U0[G^//G :C8;Q3-ZAVC.7Z%;TY:',ENBJ-B"C4\.)/ ML6AXY3:4%8\!J<_JS_OT0N6L9OFR2%G45J4.EZ,V-#DB&XME Z<&*R12@(*9 MNI7%&/KO'L!_5S=TWEM<^( RD7!5).,)RQ*C[*B7#%1A1WW^I7E^@O MJ(D[]CTCUC4F1Q"S1FFN.$I;$TAY2HU9(-911XK44SI^&ID)63YD^4O5NGMO M]:NS_%DE[E6&EV>QA#+JSEIT82$LVY6XCH\$Q/"PW,I3C @O_YY7V_YC?;X7V?T<3Q M/CI3$9./4A$AK6,3CXQ/U4O,%.=@%,QMA1>6=T_QAC8W=.3OG!P^#@=R-N;* MJHJ-13 !;T@Z6*" <=;N>7$U%W4+3HA-'-LQ10P4&.!'P,_G(\27!S!K,-^+ML8OY$V))3'?'YBOC9H0.Q M!R2U/V$.0/I0ULFZP_F20I"7O_X+_@EFXE78[!90Y_1? (:YRJU_(CXZHMLH M6ASX>^JU",:?HY!V@\,$_PNN<&_:@[DBO*BJ_[YF2 4SW+@O,AD+Q,X6K$$G M/@27O7__[__9W\[.Q(WPAFJ8/X/S<0]\/F1()#PE,3(V14Z)H O\/SG5Y=96 M8#6FGZ/!T?MS>\1&$;XA7/_"]CY#J)P@3>-6D3W ^;(ZHHH3^Z?_6/ =.E6W M7QJ6#.G@IRFJ@""6XA'6]B0323PG#E$>(YZ3ISB_"=E'=_CY+X=-37A._T^G MD3TK:>%G(.#!@:P>=+'VOP)2#=(@Y/,L//;1#3B?1;BKB]:SW;C/,//XX)7[ M?;=__.J5JM4<5<<*[0;;?,)*]>PS1M5S&,-FF%*N1+5+-//?_XQ?G^2_8Q/[ MSZ\WA]4;'9K!.@TLVZCGZ#I#Y^ GIE$MY:@.^"-?JE/U;(FJ8DP'?%&CZQT& M@Y*&(/[%_LYZLD44_KG6>OYF=1CQIXHMWNC4TA9P\JT@@.C?XX)SL/](@#'3+GF&@,4")]-;)C[%1*JIBN M;B:=>(=EID:/9_&8P!&M8TTQ:VB:;'NW1,!YI!H6./0ZX T9U>"5'\&JB76] MV.'M1(UUEK,2N6:D&&ZT/)46H8*R7QF'=D?\P$2@=L[!RVW3$6_%Q)>2>^H9 MD%RM5NIXQ 4IO0MHG,I4:4#[';I-,QT,_%3J!'1_/9X]D)Q(']I7D")'&M)N M6[[C[;_R&5$DVT (\.!76INKQEH4L8RHBQ/9QIHJ!QUR\@#LUK&Y8UH.![0^9\MCQM%$.J+0:!Z:R#%54UQA0B:'N"7514T1R M"IQ8]@YE2.@F_[6PL0',6T]M!;JS;9C@%7.?T--P/' MD?B_D!/01^)?'V[6#F*8.S4 @2Y%I-NK(K1&WBU\??$Z:@.8F@B9\-UU('JI ME6R-8'6%43_+7 36.YL.HU1-P MC:"=92N_HMQTUBU1/W[9L' KIAFPB=*QN0L)Q?+F0[RZA2UGVQS"U(7^E,&H MT&T,)"<_:"@)/2&V6F(_T>>.O"GO.PEWSI52/7]I38QW ):2Q,8D$,N[?E/X M'HQ72B^QX06:I+5RQ2#P ='A.BU@)YP&T+ U4$,L"&"@[C]CVWD!6Z\Q487& M)1 76T80,6<.O[@0WD#DB"-#2;8RXT6K0F7NR*#; M?8.$@N8U_&-S#OHG9(!%V_*/LR.L^:0 %_CTL,S\6?!W'G%B;+"DAGDIAT=P MLN"(.XUR;?$&=!5Y*0N0H?90N%5(]IGZ"1V!EC.>^<*9 PR*9 V< M['^C3SB.0S_C5A=YQEC88',P?S(-Q//(P>FK?3L?CS/4UO8>_ MH;L!0@O!OO"_B%(KQRL MN3][1.*_SQV^_0??Q ?A>3YGCF7+D_6+DBB00/NBJ*%C-<[DIU@, M2A@B<2AA_%*X)T(7&#*JNHX8+K1A@$BW9$$&XO0)Z]$,D//\PI%-_Q= [[8, M-+81!K'H>$M6/W@+P[3_T M-P^6$6#>6WE@XSI@3YPE;NW7A--"9PVE 3L.H Y,ZNU#P?N>H)**]@2$NX3U *D*X+4%TW#F3X F M^&$;Q=^O-VO N]?0%' -!8MBGJ$GA0/\M:AXMGIO[ MN0LP( N?T0T3_(>S (1UC'UFGCW="DAK [Y!UH&& \F:5V7H0!-7<^301H-@ M;-<$7_.BMRUP/$$/$.*M#U*'@-@)@!-XSI'"-@8K1,Y0T;*@?J8>T()A2IP7 MJG:V:B$T 0,* R>KC2)-<(T#PU2>#L448$A#%Z&743, +("8AC%N80MJ8$LV M]R@XF 6^XU H"@98KF[8&)@7(@?*? R@U?V9-.A80H]OB@LY<7VD0CB H[8 MD><>I^V+N7W&P!H0KV0@ MJ7/PFJ<@80+M#3*X@40>%*H'V[:<.6 E>V\_VX5PX!_X;F[KK)R(XI._*(A+ M\#;/U;8[P7D#?B=[N52(N> ,8"O!VM$Q_P)$P+#MRU4'_ UDX=RS3)'+U$'O M!2]X@C+6!40,_POA[FW.>SG*9$&Q1M%_\=YN_8W 7:M0:X"0 :^P#%T756^" M9R^ 0,%@#*!N1[6WZLE;F#S2DL:688[]Q)855$6ARF)8UJ&V8D_!Z2]-,=FV M_$ 'IYZE[QT2(!-ZIP: [D=%&MZ9[_*A.3A!BHNL _DF1L8P3'NP)WR;+(%V M]R,(->TS,5@/)X'5[2M:4_]0]XYA '@OT..1!=0T/244T9X&J @8\)(.E%0> M<#+0<64P,QA]C%) >AM>&P'OWH #YH5NBGX&" MMEWHX1O <[SJ0&\%ZI,!WZ@;4.3XDA>>.;M#PV/1K3-W]U(_SA:\>"SRG&.) MAX)=A%HD4HL1R/^6__%TKO,GY>$Y@,YY\)B.E$PP"Y20GBL9/","E0RI5$NP M2"2>H3B1+7"T_"V#UR")^#&PL[7 ),VMLJN7 -8.,^@(.5 &-$%I=[Y($.J$!M@R_Q EH (^!TF: 3 M0@^2]B ,($Q.7@K? /XK6J*(C&0OR_ )IOPA11I0TQ;<8)3G8#1%,$C?3;!' M X ;$$+VG6=/1Q"].-@&U"=MQ"MX*H=GAFLE,JI'. J/5[K-UG7C;?AI'%-W MM'-QS#I2UAJ3P*L0.!603V%]-I966Y*;;M;4JDHB3DWL)._JBB+]^ 5TX%-7 M"F!W+[&(_'3 M&E]-^SN7U,BA)T>Q%#Z.C\?Q44(@$Z-8+!T?I7 R-4HGTV,\E8['<&[RPR,W M+KBIDN-54Z'L(:_(DYPJ\+%"L6JVP-D3/Q[92&ZN)ZJEZ9N13+,57%S!2RLTR$ M@E&)XY%YHAA99&,]D\K;N:B8+N8B2C8Z=T?1H9XP&M(H>KJG0K45*7/"J* PS-Q:=&-+JK"@ M1K$1?CQRM:*=QD!,.4I/[[;K]4K=%@ON*'XZ4JEQ8H3-2+:R$"O$L-,9.3U: M B-/WL[.C)I2(D8T3E)9'#=$?2$4*##R!*)SMK0JE,DT3CO5@6FK>FI3';; MR!.()NAX7C57)HUSE25!$;-\CVK#D>GCD?B"<^,#V8G0\D)E:S%B/9K'X9].149DNB(Y)T_V:RC?1K"=H MHNH#-Z8U4SU%&ZT6V<6(:+<3TBAQ"M+LNB6,BN.9B3=B:U[K-SM?003PPR1F^XZ,B,"QMRG[S> M%/(QMK FF3%R==IN=1L\EW):]U].+(E-54&[VP&;**_<7OUGBN;B194)4]> MGVK&6IE,1HO@#;;#F7,WWXP >DZ=OCY?ZE8%(Y"C/Q@DT]'3:B84W MZ0ZP?UAGDHT7^F5X92*K)9::;W^!,@S0X)EOTZ&3BR+ M57-M>J!P4XEM=0=K8):YL(##R5#*':RGBRS7HS4@HO-1M3MFJA0<>K+6Z:0, MSH*V&*<7LVJO6,XW2C*#AIZPJJKT)I5E+;ZAG4*&;ECK9%?6T ).Q72B/^V/ M,GV"KJB=H5QO()IUI-\=M F>$95.<6QNJ$D.SGG)KAQ#QU*(L M5MD%.\DF'#>6-*?>V).-$8XBZMT>K[&)@$M,RD87$M^"=RA/0XOVA0PN5ND!KN5XSTFR6]<$<7;\\V5F:+T?,0C)N MT8Q4%OLK&8]'ZFCH&9:M#A:<8/1JN-91.(61E34-R[^=D<*\MDE8\7PWQ?; ML5=AQ40TXTAPZ G3%A9>KL 4-K/95"U3+-,Q MJWR<[#?6/0#;,T+K_V?O39<35Y:UX?]?Q'L/1.^S3ZP=@7IK'GJMTQ%"B'D& M,?U1"$D(H1$-"''UGR1,M]O0=ML& Z;.6>'MMLM"E97Y5%;F4YE%8SBBAM7% M-MFP5+C?:6I/57#-+\UP&^9CE%X@!N^4*^G6?@2,2@,7BC6YAL$Q M"5S&X,5GO=ZJ-;7I''SV"!V-B42@7O-'0T >N(@4L MA,:)?Y8,/7A7-M@0V+S.R0(G:5Y4G^!6EZ/<$KW17;H4OPJ.Y$ S**.PI M:/;40\M==9C:7!UL54/G&)[EXJ;4FF0B.+((3->)W#*J&RM='VO%BMY&!MDK M'%HNTR=[#BW698&4*M:<*^"RZ"?O< 0_W8"VH,@+>P*Y]>::Y_5%A6;3H0FL)E%S<6K$T4B9MKMUA]:T=.B!Y2X57BD52R/9:$^:UGAD*4:X[J9##]^ M+>O%4M]C?+@<53939%YLTN7DL4?02U-<-$0-18#U &XY%;AM.G8V]/"Q)7=6 MKEA5(H:MOAFOYY!?9Y!D[!%(ZO5":LH. DR03*%?%"2EN$U7[!C.]&,&%^B& M;?-UW)"W=%/GV-39/H(SB--*X,@LS&"T.W14#7,MSXG2H8>/A7VA.(!K"Q0. M47E5A .(Z@^2MSV&,^/*=C&Q%1V&*,*;)HYYOY%X9^@1[#!H&<*F(4HF9YUM M*;80F]L:R<2.X$%$H9U^>]4G8+0$\>ZX.M>BQ#U,AAZ\ZQ02<;G>C89"3+B- MHJW$[F"3#3VPW,JRT%J3JI@<8NJTH,#SJ.":V0L<6&Z/=LNK-N\5^=6B(6L, MKDW[32T=>J#?KKV)YWJ17/,Z9Y>=>:\_-KDH'7IHN=5*9S2/($4WVJ.5KW.6 MW94+V6,/%R$@E*D4,YLYKQ+4,P=$^W0_(%<,D M&REV!#_)>J_H+VD#@OLENH88Q;@3EK.A!S,3V;7H5VG3$\@-4JI ;G/-1%$Z M]/!M"X(.S;L6Y?#0I-983&(Z'-2Z(G8$EJ>HPNF#6=7C]9'?I-!^/=BZ;#KT MP'+#,:&I/3;T\ W496=E^RZI"Z.Q)R]6]0A9<\G$CJ$7 M-(?K"ZE \:L*+#;T\+'B>D)1%12S8720@/.J$BFM8B*$(Y TEL:* MH:GJ&JZ3%EFN\]AXPV5##Q\K<6M7)Q5_8UA(PYJ@ NU7)\G,CN#,*AK$I>( M2W818F[WU>6@/W.SH8>/-69SD9PE^ZF@*SHQA)*]"MTD,_N),^>]6-E7M301 MT%/3W+-N:\_=KL0#3K-F"[L,ZW,9*MIR+ ?>D=N5Q\==X^W*'/,UU^?+:=0K MB\"5^7:YQW8J58YMY*JM4KO79 ?5=NO$%RN?X2T>O/ZS),:'U(E&& MJ[A!^2.A]H<9'7\W#]$/#8TP>Z'%UTN39FG8)K!2A;U 4F=O'ON\SLX^TCCS M@\B/WX]J\[4ECC<[G%$G87WL\]MFHZ=]^1Y$SF%=FL>1[L>E9UQ/A;+B,XE^ M/@AFQXSG;=73=JQ%_A$!)OTWY]@I/R*C$OV.$RHO='7^J'S'8YZ-ZCVBD_Q" M^$K3@[N_5#>J'&8936<^U^7T3SQ55O7U WO#4]>Z&OG[ZB.2F=-_JN6.&:?[ M#[+_FLM]:/F6([J:"#1*OWPH'=SW I%[G%^O!JKE9U3P/5,\2QT^K#N?WK.R MLX$/;'!S,D%"QW&F?!W3]/628V$$[CY3@>D%!>^I:S59[9+G6!D//!'"2 \6 M7.@'3K+C\)N41Y!H2\K'3?Y3!M+FJ.8;%HTI2"\F8)+U1^:LL6@K9>W+]P^] MXO!NZ0ZZZWZIBKD;8R1T"2Z4EIN^]%Q]JP^2;A?MAL,1T4Q 93KK\!X$#3SE MC-+%TZ#ZR76W'T5DO885(*%.N3TGLN*>/6.O0+KK*=$NEAD75FL%.^(JY4J; M[9Y3NN@9=+<",?AFC;9&\(B4_%#H(!MG?@7((*VW*T*C9A5!%T1Y8"\&\F:4 M2-<^LB6^_@<[%M.#4')^\NE^3OEY>VMW^3N[U_:J>UR_D$G_< ?-J6G!JXRJ ME=&[?E+*,C:3E&RN^_><22FQ.72S?5%.Q)E2?E/:THY"]H,QFG*N4AK.?E0@ M;;*:"?O[%P^/RVYK/-EM'U9G5RI,T5/ZSHZ9D\8\(#/9M97]+8^44I=RLF9J M2O/<%>]Z*#@6[*AC*4U8R3YAJ6?+<]71?35.[ M/PA2N90IN.,&IQ0];Z=_^Q?0]XRV'Z^E6VZF!7*6_D_>:_>..S?CL3#266?B M3QD>;D9@38S'E+R?7-O+>"&EHYY21B9^N#*UY^1Y/_S/GRZAGE$!YTYZZ=K_ MELW@S&=%>:$JH:FVYT]/C8_.'X7XX9>'Y\#\T)7&:8:">F7GT3"G*/U_V7WAD9ZTB M#!;BPQ;B^>JN8"$^:"'HK]BSG13!0GP<-(&%N(Z% -!T%0L!H.E*%@) T]4L M!("FJU@( $U7LA FJYF(0 T7<5" &BZDH4 T'0U"P&@Z2H6 D#3:1?BSWN# M_FY%7LQ,G/\6[^]%0[G!+W>/,_[@!W7=^\AF@^>6@>R8Z0__[POZY8WR8+X2 M.-"2UV[P0$M.+ _J#Y3D.>;Q(P+GSWOP0 7N204$.ZV7+Z>EEX *G+A+[7W+ MX"7G%NR1MZ\9=P"0/^FP3Q'RST\;'WFTN'KU/^]!@CH0P7.+NZOM>?CU8"L\ ME:+_VLT;<3>Y3+D^HIGW^YW%].+/29V$"TL#Z,DY].1_) MVF)W]=M5H"I 59Z7U>/;1T!;@+8\+ZN!$T@F<-JOWFF_S)D5P=]J& 3Q%;WX MH?79F@Q_Z0^-C]/V&[YD*_Y_?M1D>(<=_*Q0_.U?LJRJ\_DYI7#83.LY8R_I MZ;W/W""[;-ETLDN6_,$ER]-M&O1'B^./K81^10KU!&'.>Y?"+M!Y[U)X<*/N M7@K (H!% (L %@$L E@$L A@$< B@$7K!GFTYMN^L%O6&3G-JQ1" M7[=5W]\7&"AU-M"U^;8IL!5>;7#S#C78E^\TGB?*Z7Y$0BP)FT5 M6ZR42(@)H;F1RJ'$K]*^5^27[PB59R@8( ! @"M" BH'U"_BZG?X3+N/Y3U M=,E,/J*BFFLUG6/Z<9+M0P^?N5/=S\>+!QI\6QK\L2[41F^2FVE;MWB]O'3@ MNB(,!.S2/L\P1GOEH15A!JFY<\Z63;3'I#X/0B1.#XSF2?RY<\_M<4&>AF^* MJNLE MZ5+D[+:$M66A-X^]",!- ]0)CVIL.TUXV)5Q)!>@P"K*VPCR#@"&:V M!:F^U2=:2:A+DXT]DLF!%Z?-?+$OW_$\0F/G.R;>NP4!' $X>U MFYL.%+[.^^Q$XT;=L9VF8%E8T,<&>&O;8Q/O,PT(XGD<)4\>#KQ8["^[$JSZ MP:[)G*_F<[8: /[6568DKF_*=Y[.^(.&G^U]/\7]*?SA>/W6J-]V/&Z7C&:; M,=0"947C67?19J(W ^/>_*M95A MI;42ZK5:=UR2/&=4T1()85^^(X J G#ED^#*=9T:[DH7@/I?7OVO;EO]4?0H MV:L>=LR'#9+BM_C:]C!?('F\8C=CW=DTG^NA?=X-LF(O<:9,8)H D:9?C2Q) ME\)T@V22#3(/HPS8) %*?!*4 )LD4/\[5O^;CI"]=Y^3YRU499%5S]#-0K&U M&E6*ZW&4OBZ1;738M![B_3\?W_Y&9J(G\UIVP_FP,CUQ$=D->UPU=M9JC06,V MQ8E(I-,8'IG'".H N?\#\I\ OSXW?EU_".0D8/8R#] M-/"R.K8]@2Q7D=6P M4N^RA??XF>?$N*?0%K0#;CR:*5M>WY362V+,+5623: MY1'F">R,*8I[MVF M;%>*;%?IF7U@//7[3[L!2L-B74VB!%,P4B)@4BA#JD- ,?"R#1 M)T>B*P\@W[O& +NY4KOY^!W\Y,'FBVS"6X: (%*=QW!?VK+MH6-N=$-+-N$T M1DWD&>8P&?N?]P:I+TCL?!ITSOTU4VUUK@R0='4E_E9X2D,:6QBK RV@,JF@L63]EXB@1,D"4/\[V G/$I%\U69F39T.%K#1AE_%#FPL?96;,=UD,]LQ7LGGV;JCNP)2*TB\@,3+;88/SA>.3&#B9[KG.3PMBNMHX_1@%.:$[2J$ M&C6L3F@B N]J2N(DX*$"R+D[R 'AR_.$+Y_"TE,T8N2MA5(T7(?CIT,C=).*'F*H0%U%(#1G8'15?H_'Q;P_&-/9H"Z'&]"3=D(+7,SD;8H-]AF MV)%=^B?!C1H 'O<''E<>(KUWC0%V-TNK6LDPD'!HM$V[WJ\/ MG:8R[:;[YJ[P)G:D\.;M$C3W)0,DWU<#/_>/'[J'BD\F0\WD; 0MU%0M$HN! M__UWX+C9.SZ97?+CY+%_(8E(DF>="!D!R?/33_G2R:.SASA87VS/+QI3'1D; M3:XKHQY,EGJ/0-^D!R%S[A%7(2Y MGKP*Q8Y@K!=:BA_IA7DLCS)G[+US5[8$X / QW.QRRJ#>TI_1AB\[G>V8@M> M:7+P]NY^O[7XV:9=HKHKK,WKYHC1VO:X/NYF'D/*R:3S) $5.W=#L;^&#HQJ)2'7'Y=T!W->GXQDEE%L+ MM0[5V[#PCC:\O]VH,<];$*.YYO-MQE,7*YU?EJ-LHTZ#HQB-Y.EGN^[>'N$T M?>3LET=&NR#HS#&5Y)+& MV%=IT<$T2)+SU+5JAZ?KR'*+:W>]\_^E3XG$9=G2>;?CX-N#S_Z M\CU'DGDN&+JUD*<&BH>3^NVH]8BM'L)\T&H/ 4# M\P'FY2_W4J:OYYTA\(H+'%5 MK==8&>^X6M7;'5[W5?33*8ST8,&%?K((JL=O9#-,I9NR"I+_E(&T.=8E:VZ- M"J6"UA+*F ZYORG><2 M+E#'R&K*M8EM;21!+_I-%"V9PV3L.[IN[,Q_5Q[NH?5&R[&=_6NWU.=;ZI95O+@NE.,HP4HB:UP)ZA8 8/DLP )RY$!W;U5WKVU3_'W1':Q M#$8=N;V%]5!GQ>8*'KGERVUO#7CFMKHB6^9718XEN$5GBC)1NKUE=<3A<_8@ MN"N; 3!Q!3 !MCB@N[>JN[<M8BV8"MDNM6N$ M"#/,IR:/[>MXNYXSUX.'7HBYF9HL@+IOD!A(FWV("]#)0/3^]N&UD[D5,D#YT:=6]?E-X$F.EZRLY,79A!/03F7F.::9 M_.D>UY_MN8A7"Z.X10YAJ%A&*+(@NX[(B@BYZ[G((,_VL 7I1P!@GQ' KC^$ M\4%EQQ'$VLPJY45DH$VRIG=*9<>@W\Z .R_(/<6V8:T9H%9'ZQNC6:/.5+08 MGLVT%-M2!EV>>C:/"J -0-MGA+:K],T^,"![$2\+,76XI??Z15B?J*7ZQ!YI MVV+F93%?OI-YF"* EP6@Z-Z@"# ;@=+?G=)__/Y[\FCQ1;90OMPI;\Q)3!EE M!&)#DI&E5HS=?K0]N% M4;',6N.N5%#A#(VRP"-.G?'RZ[V;(0"C*P6CJ_1_/BQB^<>>3$1WM)Y8"G"A MS;6HSA Q#3*]DDBG<4HLCR&'20O@R0#P^.3@ 0B70.GO3NEO/C+ZQYN>79FK M-0PW):,\M\,)I$Y6A-U--[U=X4@2?I8)=&,4R?VM>\GWU<#/_>.'[J'BD\E0 M,SG80(M=$SX$AO_]=^"XV3L^F5WRX^2Q?R&)2))GG>@L 6B6GW[*ET[]G#T^ MP?IB>W[1@*BT&(_PSF0V%49]#$,MQ*Z9N/9F1&4SR#B"H"5-J"UT&=<$M=7L MDX%;:\OSY-C 9#U=4#2/$HP:%"\NTZ M7U57TMLCE[_%CS7--IP*K7-PZ'2\=JN, #P ? M;X./WP<>6YQ!KK<$TX%'ZT9E:*E,V>V00[-'E M@@8V?QLV_]&[?+-DSM30Z',PZD_K;$TLNM#B[<'2WV[48GD["3:J'ANK;JGI MTOIDLYAD&W5&%J7A/$X_=Y/I]MBBZ2-GOSPRV@5!9XZI)+\LZ:F0J.;!_&@ M_P$!RE>0.Y'D_],@V([<^?#]6RE, 5;CF;1*FU&N#;9"2 PZ!/7V/$5O9WC[ M$ISIU$=ZL.!"/UD\U>,WLAFFJY+&0Y/_E(&T.1(4W=2CJ-8=-AIPW1$KI=%D M&"S:FH@B6?M<@LD3)&BB"XP=&/MI:$A4B36F<*PUX?:0:(O#,NRO2Y?& $0O M#X;"O.#P^HQCW/4*I3"ZFV( ^>4[AN<9%'"6 1<$P2 JDQ _8#Z ?6[3_7[ M4 >(K3"-[7Q #(3^PAG) HPK$G)ICV5D^>-"C^Q,!=*/?8S&_4E[$:4>2]9O MEL'S.'U8^>N6J1Q/XR]%U?42"6<+ETL6/"=93C*!;?8#P-< <=8;C[->-RA> M20CH,0BPML(^@H CH%G3-2&4UCQJ<+9"!ZKJ+G0O.>:A::B'SF/X&7GJ]VY" M $@ D-Q>>.EU^*(H=&R,&I(KA!3",V-8*G976HHOY)?O.'/&:[/W;E< 76X& M74"Y':#T0.F!T@.E_^Q*?\M1NM0[N1EF,[ M^UHT+?79MB,-K%*<%[6V;L0FXT3\S"1CK2NB6!I) ^6A #I\&G0 F6Z@N[>J MNQ^ZL[VK5)'=F+;-K=:@!'0P[0X-N4T9Z.6VMZGI2\0BG#MPO8VN%W@YG$P7 MV?;&I&T7*(H$6QR B<\"$V"+ [I[J[I[RS&F]^Y2S&14&Y =587KE=X87RC+ M9K\2I;M4Q@'+4_1S%U=NGP&VKW[N>LY<#Q[:/^9F:K( ZKXG9"!M]G$JP D# M(?C/'8+_^YQM'JX[G+7O#;&GU>IVF C^H;1R MR8NSHTJ"O.G$/<4G1>JGB*4-EU3G&)34]CJRYK BQ@62&R*4&36 M#0<#_2,!/MT;/GV\FW1=L='+^$H*)9$Z"^$\"5N*VBZT1[-QYBLQ7[Z3>9AF M@*L$H.C>H @P!8'2WYW2?_S^>_+ [46VT(4J<:HPJKF"[H_,27,+:]GU-7P7 M[T7SR)%*1;?;W+)Z$,'-_353;76N!R?R# #=\--/^=(9JSL/R2;8]Y#7*NPL M]SE\:Y%L;<3W5V.8FYDZHBR#!1Q'(DIDG2?S!'48K ]90 0W 80@*#HF\#B MX(IM@*\'<0=;FC M8@+")3\D$"A!13*-Z5%Y M!'L6%$$&%.#&9\0-$ Q\!;8\A13=;5I%>58;\5;$F?"\8H?%991"2MJL(0_3 M@-,($.7>$.6^8X=_[(Y,Q#Y3CUJA X\FO>%@PR)-S\ZP@\G.:,1A[1+@C@#P M^.3@ 5B(0.GO3NEO/D;YQYN>(\,,/JGH)(_6!*DR$P275]ETT]M5)X299[GW M-T8;W-\*EWQ?#?S=:*S!* >?OHI7SH)<_8@ ^N+[?G[0Y.-BM.SRT4B$.H;T=QVAZ5N MW'@[++*9W1^+&XP5H5=SJ:4!89W)-)1#GQQJ(DIE]$(4R\/4&?M_W)7J VL' MUOZZ&.)&D&K]:>PPQDB!)9$-['\1J*7)@79ZBP^9\JR4 M[/-%'O6\PFRFU(=U.K-XYLMW@LZ3!-CU@<7?J,6?(XCQ>B//+B_Z.^OF3=W2 M[6S@@Z$;BTIUQ''SB4"::XSJ!M6)V3F!H?\VWN%.C7;?ZJDU(ZY-V]K0->HJ MD3GZ")IM\@AVSKI,=V4 P.8__2[O#N"^/AW/**'<6JAUJ-Z&A>T9-FHSZHY; MU,3F>:FK4M&PBL/K4;91IV%*C$;R]"=K:9P^"BG7 MUS>Y9O+;A9_C;455G"TG>>YH")&LNE:RY/BF ]"6P M"& 1P"* 10"+ !8!+ )8!+ (8!%W:Q$WQH)*B]*E(9*Q(/^YQ8"E-E"O29"^TMY/Y>[O3Z[[,>CJ% MD1XLN-!/%D'U^(ULAJET4U)!\I\RD#9'F 4E?4GW8A8BC'YCV-#J:/08"U%?81!!P!S2'#(@:A6A$\ M0LQ&83UG6_18$S%X5[F)09YK+@SR!P!( )!<%DA>OG2U58>U@'.5I5 OF3%D M09-NN/PH?.F2T6+,%0:XH%/!M+&"VE8+[J;X0G[Y3L!GO)1Q[W8%T.5FT 74 M80%*#Y0>*#U0^L^N]+<#C[OH[[%H;YG*T&@(QSE?F ZYORG2<3KB1NMK?A7;6UAXX0+<=V=NU> M;:VE/ML9 F^/Q4U'*G:,]J!767:E02(,5L20-))V6' 49 L!.MPH.H!,-]#= M6]7=#]W9WE4YI[8NTSZ$4S5#F@A+E]ZB$%)]>ZVL]VYO&VQBRGVC+PA]:4 [ MILW0/JREVUO6A0\ASEB/_ZYL!L#$%< $V.* [MZJ[MYRC.F]NY06$L.)QIE; MN-Y>T;A164&4':6[5!IU2K8I\G/5EOE=66S7<^9Z\-"A+S=3DP50]VW[ FFS MCU,!3A@(P7_N$/S?YZW_?\WAK'W3@#VM5K?#1/#M'9(FIY)"A@H_>J"J/K\) M/,GQDN61O#@[JB3(FT[<M=P *W1T*W5*$_<,)9>=%JJ< %8\5 BX%*"+4^XY)B'C76')L"E!D MVAN,QG! 20/X=&?X]/%>TG6%1B_B*K&G]!^_ 9\\<'N1/51?SB4A#HI5@2S&Q(H:Z:HP MS+SY[,XOEL>/] F_W:Z'U8,(;NZOF6JK4@VP;Z' MO%9A9[G/X=M@+5<*-;0Q$,CQ./DC9Q+;_03?L#2E..2Z:\YG#P*3I#1@Y! /@, TN TT #Q-H+NWJKN? M),+WJLUH:#*S,;\)-",V1 [297E1[V:;41J=(_((^NSQ]?;IF"TUV+,N=U1, M0+@$F0R0R?B4T;W$UG\F09Z]265A7'N]DB;PBI7%LB'[TK@4B1B>QO3P/ T? M,I! VA_@QB?'#1 ,? 6V/(647A6*BC99+_*CU:2YPJ?R1&]I*:2069J 80"I M$2#*G2'*?<<._]@=F:*4KK*\'_&KGM[7/$RMF.T,.Y@OW\D\0:+ '0'@<6_@ M 5B(0.GO3NEO/D;YQYL>9W:J0MNJJ(+EK;;+(=9KD-@^-]_!XZ;O>.3V24_3A[[%Y*( M)'G6B%R;D=8;7J029AX@TT3-$0:BL10-(\2H'(AL'9@[:>W]I=C MB'5X*4K--;LUPA'M8W6SYP_;;_>-?@L"(CF&>(P @ P & P( C&/"N$&"+,\CUEF Z\&C=J PME2F['>WT%E]CQRV_ ML23'/#??#FKKHE00[-'E # 8V?QLV_]&[?+-DSM30Z',PZD_K;$TLNM#B[;FZ MWV[4I&M-6AQ-JC!G-T)^1LW@U3 [GZ=A2HR&\SA]&*A\$J?\;R#-3/7[/XJ^ M?K_F??VI>]!.*[X]^LD^7)C W8\PXE>$4:V_7 M\*Y,\JC=O]+G)"^5&)BY^TFT4XZ''QW$O"5/S;F>ZB<_4I6T.T_.F>?T=).6 M'2MYLSCGJ;*JKU/Q^U]_(.-S1O1HY1[B['MMVMEC*[22]Y?/#_A_"O%/7FOW MLH\F))NJY*58O_A;T7TW4<)OV:R?:"WVQ,+AKUBJ0+^UYU^>!?_TTR(RGV'R9+,5^QGV:]?S9W=#P\0],OOM!M%OI*_+CF.[$#C'"OV)(V%_5R? M?Z3.1/VSR.64\MX9B"2YEG M)?OIL,% WW(1I&/VXT6WPB#IN;KHB+L)/1[+CYK(;]>L\K[9Q M.QBR"+LTNR)Q.)*4VL)*:C0K!JH4]! ISGMA/4I&'GRZ.*.I<#R6-T*]UV_0 M%CM?NU4V&7DP=V+27"^I0:EKC$RM,0C7-#44TD\_F'MKO<(-T2KP/*0K=7-# M532\VQ7)P_>D6X-93 ICBT>55M^DMZ;:WG83#_]@I%OV(C%V\8K Q;2VG<>3 M4H?01/IPY' E;A=M@JC"5K,Z+VL5BF.'43+R8.[+4EF.(E&6C!'A+Q8EO6=% M+IN,/)@[MIC-MJ')VT:?UAZTEV(Z\F#NXE3K&#VOJ I0[ M(@(?OFBIQ1.#1:';,/2VTJRN6G-VC"5#D<.A;=ATX5+0G\,2'#>2 M@3RN/ 7TAZ2(S[R5/1PW==AE"-[B&MBF'- JRRQJO->CUY*G8X M-$2:9"]V71:V)CX]GPQ:];2;#7)$]YTZU"D4>]K,6 V'BT%KK)4[3I0./9# MF"<76K6XK//60H!JK38T'=>[Z= #":CH?!J," LSN#(]VWA(#QX+V0L<2"" MT>)HR,8XSV']*B2.E_IPP8K($:U>+/05XW/JB@_9&:14AER<\L"1(VK->76Z M0 03&JZSPY[+2IL56>NF0P^F5;0+5K5-1D4^;K21 1V*W=Z438<>3$N?P],A MK+ ;H=V BS[3'S**FSWU8%JE@B1O,<*D^7YSBM#^9%7F]>1=F<,7L+$VW!3" M:"&L"%CPM1E*-(T$_.##H>VZO%@I2Z5DZ'RUV%"G/FN5M73HP;OB:L>3-)2: M"N4H%%BA7?(KHR@=>O"NP[K=TB##,6!HQ6R&G()59XEEHT>L0%:*=:<6VBQ? M+ZK<@BV,Z&("@.@1?=5*BE8+)RC$UZ?JQBW&998L)4./Z"NLM(JK&!R'JP)IE6I,_TH'7H@ <]1"+7"3F=PWYVLFH65$C*M M[*F'^VI+"Z+.N(C!88 VB$%G-3*PY*E'-X)QNY[L@R;?+U%.45XV5DJR#:', MX=#Q5EB/6DN4%M ETM,;PL:D^]G0@VE5XL%*MA8%ND$$3[JO(E,B&'IIA MR2P[,8.@@HZXU'A=5+$1R:9##Z:UK$-ELH@L; MHKUHKJ_@MKCL%]<+L55<9RW #H9.D=S"4QU=ZMQV%*UZ537_&33HO1BI5!HEY15EKG[=5KB#%=E&<\W KR;FX)#'C MI=!7*Z'-3^* JD7'/-SM'%_&@M:?"O6^T5.% D_T3.V8AUN;\DM/F+2GAJKQ MJ+'$QO!T<-3#=6.[Q(\6DFU82M ;%M7ZI%G5CGFX0=F!BB@?$7!_S&*Q%SE% M;A MS@8M?U%=<'7!HHJE85-?B&1RMC@"F$NHN2E@I3YFC&AQ6!2"1CQ@M&,>+N-B MNC%OM$PA[-AC9T9U#"_97H\ VYPFQ[U"!T%A"4T<2'TR:IL:>\S#G4GE%@K' MD0_W^W6Y)C6TVG9PU,/UY/5<V8A^O(FV"B(I4)7UYI M*.E/$]T8'?=P=7T8)%I6I0PN)N4V.EE:?3K@.7RJLRXP:"B,:D2J357W:_YV'J\OSV::[B UHA8P@904C4+-[U,-5 M^)H4%363@F-,:GEN"QMT,/:HASM:) Y[&YZUX'C.55"W&L&2'!WU<#VL"L-> M.1SQJ*# ?=OAUSC2/>KA8C$1]E%3:1EMV2D:FF]NROQQ#S="38W#0PPU+'13 MA[10GVO+XQXN;Y6& B\M92&N"5AAW.R&;.VXAQN9RS(^[C8%>#4O28K3FH3; MU!D^HM7;*F%71VVN)H1-=UC!&*D8AM%1#Y=8CUFKH1,8O-J2):I:%4/<8(]Z MN(G_WZ!+R;C#GRDN:LCUA5$'*A+HA18;5'GNX^N:; MO N&9"G?W1_.1#S@-&NVL,NP/I>AHBW'$3-GAI-'K:X*AN M*ZH=?,/(IS'FP4+-S1W3="+=UG)9]-9/&XNM=27M);;+;J43E&9.&.04W9^I:3::3F\79U-+45"Z(736?DTT]C1QH.3 M/]/2D$TN"_;\$J_^W:4"),W(H;M+!0_?LQ6FL9T/B('07S@C68!Q14*Z3Y-N MQ9_OFSRI/>_MWCB+$ Z2#RJ8CFQ\V:^>AGH-E^;B@%?=>@274;ZE%MG#=3L^ M;K_*JB]+;O(.@1>JYU_%KS!Q$.-^2^+@%7FQW5NE+_$0*4Z#)TN]%LO\WE"; MONTB^5$BA!D#/(_.B*>N!S"2R2K__T70L)_'W[]R3IZF)KLF.E\ M_^\+_>6-1'F<^8H2>\+?GE")N)M<=I]I*P!@M/57-6\HN% MGU-M155RM=",M-KORC,IP(_[NSO1"+9RJFXKC^+ 5>Y>*(1>7P[LV5R>03+"%WM<6 M^J(S^=ASO+#RZD?N6^B)SNIR2MC7[5RP<$(_ <:TU8'^;C6^9"^'EQ::VZ>U M![&KO@6U=XI[Q640/\!XL[35%8O@##/>!73O:\X[_^2^IHS>W2H#S;Z/*=^C M9J<1\D\RYS]WQ7X;Q3S[(>/ %4M'0HE?"5E2XI7JDNF?H&S)V8\.UU>IY06> MT.D7[G].\=(O)<$_O+[,N8IDX[L*,[_R67\6CMN=.$9ZL.!"/Q&9ZA4D7_?; M\XZGRXD\?BE!E4Z6M97FWF#V?_Y0@^JMM6G103S&Y.XV@"VV;FM(:U;1U+?7 MKGJ@W98\QSHV/WXCFV&ZU&F-G.0_92!MCA3*6;2I&=^GACV!7%0W9084O/DP0^)WQ\,/ #_/@,^/%RM5M\5&JPKMD6>+W5T9G- M>*8+ZTO#RJ ;*"U#\7Q^U%X0W;+A.J-.>B^+_/(=P?(8?J8ZF0!7;@57GF?. M %QY Z[4;6P_-!/<3YN /C/:4OV^HH MO?3)?/F.PGD&?;$*WRD.7!<.AZ6H+8:&QZ3DZ M#]<55B2SULEHGL />R>?S"&[>S.]J\ O *NK!ZN7#Y5J45Q-F!Y%\>7%+!ZO MJ;%>>D=#A=-@6'LH*1T/XF!>@M;C4([MC3&-$@Q+#I58GCI7QR4 80#"+IC. MNAL(6Q8F4*3P7D?@#%N$BR6DNHC>7AO^-)A#;7F,'UJ!#TL(BQ;"$B5J\Q1S MDO,K3N;19QO$WV3"L)363L^YR:JI(%/X]J/IY;BT5RB1!]?O:OC%-PVB^^&9 MH::_4$]T<.6QBN(12S,6H%@(_-&069>=MS?// T TZPY[=#=-D:V M)A%Q:7]RZA@BV60A1)#J@=#7PB4[::;%)9,S+$V=,0AW7X8+L.QW9U> 91^" M97$?M^QIUQT(Z+#E:(Y-2(A[Z0#:<*",^%9=&0AUKLU ZY+9[QEI[X;D,(L1 M>1SYD,/LA9.QNZN"?N@>&F-:?M%,]I4?+=C2ZAG[!F-'^GRE#3/3]EW)PTYA MHB"S^UQF]U?DPA+D4IPPK:]YB6NZ)R377>%4KQZE7WNR7>C:'-L4N"JO=CC. M'RJL%&TOC<;D9").&QNL*/2G3%0KVJYI]]/JX?D<6JT2.B6,ZP&,3GBUML);U7KQTN?02K3!!8RGN[ >RJ,N2_1QLY2V MW$H)NE2>HK7@L]&;Y&;:UBU>+R\=N*X( P&[-%I@ M$Z2[F+:LJ6$)C8KK!(CM(2E:) ='!$;SY+-1^%M(@UX?2MQKYO2^9GSV"U97 M..=[C4??UY2!9M_'E.]1L\]\>>T**EA<4<#^^6)BNZ98H)08*"4&"BZ!@DN@ MX!+0[+N8\CUJ-B@E=MF; 9QC6:HGZVFE91#>NK[P%B@!=/IPO.\%8E-:.MX^ M8OXH^??3'MY)O"\Z<\^7Y4X-;F.F:AGA#"W'ER;>!X:ZZ#!#)^91IPS-PUG5 M%%$M;<2-??E.YBD8 635VPBA %RX)5QXF5 0UQ=]*;2A ([[W'8PK6,^/KIT MBC H1T8TY+T%#.G3Y8SV:<3!NBE+7J^!"P)8#JKF M5O!H5$>E25_N:-5+NP.5LM[T/;V.P1 J#Z=(IQ72],(7A#B%DV[!@CLK58K!7#U* MX0(4V@*%MF[G)N(5SAB4([J/*=]C.2*@V?;/?3BG[$>&<7^(2:69 M91?E!) "+TX^Z\VLAXK2G@V57JG -E L.H/)E$W77+,,ANO]2;-_S9 ML'!I((F&D+%"MNV&T+8GVJ):5+?XG$V!Y%T$!@ DGP)(#LGL $C> "2.RHB= M2F%+\?5A?:Z(Q*J$5"Y]JR^.X7 60H,93*KLS"S 4%R ,\L_$1?A@P]*'P\" MX'CUV69\S)$Z]P2?P;R8Z7S_[PO]Y:WD7.8K2ES3[6$Y.=>HWBN$ MU=W _0E.]AA._$5NVPQIO6Y/_IGYN7^^_W%83_C MR4#%WJ5B5U5%Z-4JMBNX +;0N]I"7W0E'_N-%U9>_==E3K__IB="V&+"? 4<4<$0!1Q1H]GU,^1XU^Z[8SYJ2Z8/B@9<8SH?M"E]%P4)V=..CM58.L8#*DB^[K?G M'4^74S)0RDG:#T\GR]I*4[\ M@!Y*U;"M"'%#ZC"1UO)+:B2B6?5RA,SC\!D+Q-T;@-QFYU* (!=%D)>IT]V@ M5Y<%D51YKJS)1E?$4:9SZ6)._1'5+OAKP^!CF^G&=8AO,4+]ZIBB[,T9E:+;A\?R,ALC(E+45( M7+)=,7 B3\"@M3+H60K0ZC[0ZN5SI;:L4[(WF,6&ZL0%=E[&Q+Y[:6^RT6MT MI!FW=>$5PN#PHH4-@TX&8LFYDLQ3V'/]40&& 0P#?9>O&L/JY3%7:(O%NB42Y10DRN+3LH3^E&/0.=Y C+H'D4_Y"N5A]Y7BWI M&U7)NC_!YJ5GCU["&4U$B?3L2E!YD@!Y2M"X% #7W0'7R\?8 M:H^S>$TJ;X6^#E/N8*(B%>;279@YU&?J5;)4X5>$T>L,&:15[$4IGJ65I?(T MC@(X W &^C!_ CB3NX,9T<;[+<$:#&B<+0]KU/#2831W(90">*S:AK[&>^OZ M0&^T6QG^)"=:@LGC#'4'25G0I_G*D0KT:;[T5*\>IE][O VP&L^$K@0;Y=I@ M*X3$H$-0EPXPCN?3=J$Q*E)P?8L75%+808]XW$4H,\=H0]HU/PZ]&$K3&,['Q #H;]P1K( XXJ$7!HNRCW"AGEL M20HCR/7(D6@7Q^L,+M+BR R>QVGLQO.AUP<3]YI"O:\9@W:V]S'E3U>2%F@V MT.R[U6S0J/EJBHN9>G(F!Z7%0&DQ4( )%& "!9B 9M_'E.]1LT%IL$> < MRU(]64\K+X/PUO6%MT!!H-/'X].NADUIZ7C[D/FC]-]/>W@G Q^A!:/5='L( MW->'W2[WPXAT1W4;9-O5!!#.7S M%/0!P' .8'B94R"U.$N*$)DWVFW&:V'U\:8A71HO2HW%S&^98FQ _1XY\C:E MV!FR*5ZD!<#R#($#N+AON+CG^E^O@HMA;<#7O=%&$TA56"^A8F.UT"_-(&]4 MB0Z_@D>4,&J$J$G7*J%J9/;-9+W1*?PY _\L#/*RD[RVG6(V('V#LEZ@4,YE M$/.G%?KO/'HQ!6PM8MRV85B-8(2WRB(V+%\::DN3@NS2<[DMZ.**BJ;+3G?; M8T4,3H]>.)U'T3,>O>[>$N\JM@KPZ KPZ.43W[C;FMF=<#87T*#*F2NCSX^7 MEX:I38.N.9VBA<'M.<1H1:LBL4J4PE3*(D?R% /NL "8 K6YKABFI+*C4DIS MC1NCR(F$:JMD3^:7QA4U4"KKLC+QA= N3\/("A27T%)<24Z:-)R'D>=PY293 M:T*06HJN^J>[G(R>^G+R?0$+J.8%BN*<"G<3Q\W4Y9V-Q^\\L':,A3DE>506 MH"GK\$:E'KN+2U>W"8>.UX#961$N%^G9..K+):V>>()(>F!ER#Q!@.8?H+P- M *9/!TPOGUQ'A7&+ZU0T40CC&)%G0FDDKR^=JXSL"JX5)8;%&=1B]=NS2DT:(G M5UJI7"\.?JM:6'K>0 MJ4=$6[[LB*&@UA:H=@-PYF9PYD9K;=%-,M)6$:L*D*ZU8=IL M=GLE+84?4&L+H,\IT0?4VOH$M;;$R&,U@]D2 F=Z%09O#[=(&*5P 6IM@5I; MMW,9\0IG#"H2W<>4[[$B$=#L>YCR/6HVJ+5U+;6VRJJC)4NSB'-9J:T3A?;_ MPEX?V;^-,/Z!"$'M+E#A"%0X A6.@&8#S;ZK*=]9[2XK>82I7NXV0=%)1B8O M] ?K],NKWFL8[-(1\EO49A+6QN C!N$C)<9#&VS1^#^8-R!U5ZETJ :JHS,+YV2] HF M-^(LW^;Q[T6G9,4W)]]=O^F\=OE;[$0[#;DC90 MIAKV#S6'3'4>/-9[*%/0["HOL0R MV,^C[,][QD#JYY'Z\UP+('4 ,9]'[ !B ,3]__X60\-^'7P^Z9\J.F<[W_[[07]X8X,29KRAQ3;4N9-4.5.\5 MPAHL/%7-6 MU:O5?I?7D MMW_I=BY8.*&? */_GW_^J[];C:_YZL\^AYP;Q*[Z%M3>*>X5,X _P'AW::LK ME@&XTP#N-( [#4"S@6;?NV9_FBF?IA[.!_=M3T="B5\)65+BE>J2Z9^FQLW= M50]X@2=TM96\[J2Q-BYB*4L6V3%FT=WW>T;],=IJ0?)UOSWO>+J<#I9UE::>XO9__D[VVVH-<%H*]R@+TATV$=D215\^-)7>YR:(PKVAF5@B/9G MI>:Z'%4#5LQN]C!YF"!!_?K;*+@"\.-3XL?+]WS6'9FSL>2L#)[=E-F1Q(9=\7LF@^"Y6GR.:X_P)5[P!4 *Z>%E9[1 M,MOX;(SQ[6AKMA48F>@7[^8E:;Z#CCQW(T KW5F:1AEIE%,<8+Y\1]$\@S!G M+T!Z^7!XJD/03$J$=+*SURBHKDNDY#T?R)(R# MRO&@OS8 J[L JYJ6^F>L57=P$E\:PL=E?+V#+%OBX/-87 MOMW!:49+,"PY5*)Y"C2_ !!V?@@#"'8F!*N/V$E'&=>' A?V3-SEL'AC7#H\ MWK%;=,%N5!VX+AK1VHN1AJ=W$\A)SJ\XGL?0Y^+C-YDP+.D;5!O*'&&T=;\:.2XG9=3JAQS*4CB-H6QP>] M)28;90+U46R*L/-I-Q%>5GHP3]$@0PDZ; /OD,V^S'3GU:[DX$JUFS MI75,:IW%I1U*:+40=(_JC$DGVBZB1*9I8C2/H" O"M#LO*=7 &8? M F:>0U/M"JG;@C0=^ENS%#%*<>J2!U@I@TU2D,H24!#J5MDZBEZ)/68"3S M#'P/Z=CLLF#N9#V'D-?W' *YW3?E=B]=&O9<]+HKG.K5P_1KS[8EJ6# *[HW M-:Q6N+6VW0B/[4O#<0E9S]Q:06"%T6C:9X1N5^WAK$BG9UN2S./X&<^V &7N MJ)TW0)DSHLS+)]&P.3,:9,F-X7:ABIAT1=SJG4MG4\M.>U5J+VH] UI"W8XC M2*45G8)/>A*E\A1, _ !X'.VE.FE9WJUV.-N) M2J]I0WV5FZ^%N%;EL (S]3132\ B.3C2>!XAGJ./W4(>]/HPXFY3I_N,+P%:@"=/AR?=MUM2DO'VT?,'^7^ M?AK$.YGWU8TU7VXEL<>/"C#;ZFY[8=>_=(*P[;;:&Z0,+8UVG^\IIAAYD,** M")+2$Z@\C #F_8V$4 NW!(NO,PG0#RN-1X'PY!'"P8##P8;9KNX=(/OEM12 M:7$\Z1JQK#8ULE[7Z[R6PD5&;<>H,U[/!G!Q$W !T.*/T((<1MT-+MLC?B4' M/9EM-NF^=^E[>!-IYY(3V:D3$H;"QX/ZER59B:=[7 M%_Z8A[D-TB'"[G9#$\G!"\WN/&-YDB( -1-4N@%X]$GPZ.4#G\+72E5;I!V^ MCH;-1MCIUXL7CP]U>]KZFL)+6C&;R MS+,]*6XRL28$J:'HR=^?[%8R>NI;R?>%*Z"&%ZB%K=O&&-;Z<$PV&XBHM3JMC28B6%9=FLA3 MH(T0*&L#@.GS =/+)]<^7=_H!A^5C#KE] :!$H5C[=*I2H4+):PGZPP,U<4* MMH@\'FM$*5XE)U?BC,&U^S),@%6@!- M=#XCJ&J%)(5XS:#=&F[4VV@WQ18F\X5HY+FHV&=)E((:6U<.1*#&UL6G>K4X M_*EJ;)GB8AM3-K^"T>DXDMPZ+&[$!(]Q4&0+U+D!,',K,'.C1;;ZW7H4Z)0G M&I!5=CJQIFH;+4K1!U39 NAS4O2YRIE>+?A<996M;A J[K377?'EF;6@:V/9 M4E$V10M09@N4V;J=>XA7.&50C.@^IGR7Q8CN;LY L^]ARJ#,UM64V2JKCI:L MS"+.956V3A77QUX?U[^-(/Z!"$'9+E#<"!0W L6-@&8#S;ZO*=]7V2XK>82I M7NXJ0=%)1B8O] ?+],NKWFT8[-(1\E?G GY9MJ/DU^L.\^<^G%/V(\&X/\6D MTLR2BW*"2($7)Y_U9M+#I OWN [36, ZS*$;=AAIY?ZE":YN7=Q6.+DW-[BR M5IX86%>&9Y&(4.\C/?RJ>O<:A+FTL0'$N$'$>)F_@/(J"1.*.33:A+3AZU%] MLBQ>.B/9+!-XA3,JCA"/9RR#;M7*9---@>1=_ 4 ))\#2"X_AT^ (Z2G]JFF M5"S";2M$@]ED:KA(GSP.>GC(0"< MKCX=R>"8'W7N"3Z#;Q\^XWO=IS_5E($2 R6^^2D?<40_A0YG?M-_ REQH+_O MW:M6F'AMNKS[=^I^ZG8H/?A;BK[^_D_R9?_)LJE*7JH0B[\5W7=-*?Z6/>SA M97^XZ=F")?]^R-3#7S$B^311][]@X>/$CM99G)Y]/7__7^/I_,S&0')CNEXW_9GE4?B>Y ,FJF3 MID(S3Y4,2)HGG_]-,B,I]A\F2S%?L?TQZ-N/XTXJX1R2RO7?N4??IU(Y6#1+ MVD"/!/>@O9"ISE,.1?9G^Y]Y#\2*W0\=7T_UX)NGFHE"K-4GJ_:PYBD# TU@ M[]V>.Q$88QL;@S'@[0LAI )D MA(2UL/C7OY4EB=TVM@5(J$[$Z;&Q*%5E93ZY5A:7R*SON=]00+9&F._//R+3 M,\!U^D^C6M@H-? SYGKLZZA+113N1S_^;0 /,GJ' ><&HBPS(1(=0=HQUWFK MXOCYJMZKG+DOE/*F73DOYVU*Q3FIJWAOD MG[;!_/WOAX]5JHUBG6E4F4*UKEZ+J+?>\6_\/AAMFC0^->A< MX$>Y]4?9U%7S[NSZLMM'UFGY1#=[*;,ZAD=3:X^^<@\#=%_)-?G^L\DVLVFD MWI%'LZN/"DG-2/,VXIOW4U[NZ6?<7;=0:_'\^@0N>A; M%]P$SU5HL:N/:O%<^6)\USMAT]?=4]:\$\N3)GXTN?YH\>2^G^][@I9%O2\WI M?>7^49?OJ^OL].XWLF@ MF_YY99JY2UJZF'TFCZY1(*]46.4E?9'MWY>$ 3JM<.5J>0R/KE&@<*VTIMS= M0[SY7NXJK[U7%A,KMS[7GCS0 M^\)5Q6B^]-1JGV]>%-A:MR6PZX\.U7JQ<5\6U+Y]T3AOOU;2)Z/K/#RZMJS; MJB)6*T:R7ZRK\<;-(R<^I9-DU+5EG;XHPFA02<6;]=MTIM&_G_8K+S5X=&U9 MC>(%ET+7IW;_BBN>G"5/XF7U!(_*K<_U;'1:R5\/T6-_6NU=J*FL*I]W\*C\ M^J,ORMG]^+'&L_VTU&G?"$V+[\*R-DB!WA_=-H;*6.FGAYR23C?,8FDXAD?7 M*%#ILI>YFY&LL]-DO54?37JE[@49=8T"YY>L?:^HE9LF/[H41^U\X?I*J,&C M:Q20NO?3YK54+;&#[I-J"FW6JCSA1S>P=OY2:SZP%U66/2^5[()>L6\OAIA8 M&UB[EC/.SL1.WV3MHBXW;L1*NFCDX=&U99V=Q4?/EX_/!98OG>3KM=P87=?& M\.C:L@;GY6&.+W&7330M7;3J9OXN:9 )>,M:,3*=+[9;2:O0';1[VCFK=*3X MJ29-)!1WHF*$M61MSYZ6OCQYCNZO%$>9@M3JXB&5V/VG"]6T&F>?(O# MWR+6Y\R&<^+.V'Y3Q:&)?GL_+.IQ,'E<V;DA];GS7?_O/UR: M_;/^[SQLXRX-V]FPWO_[D?WQ12E.YA)\*DA-$-?B>Q\1JZY,F '^N&2@B!ZOSY::9WBI[7Z+#].9_#+CT8 M+" 94-Z6H%\ZPB0;Y3T1BKI]LF!D;SUS]_*]]FXR#WA/"JBYG&=(B^@MJT MBP/MXA"5-=.S[E%8,N7L:"PYDIQ]-$L.0Z/4]1LU\)-Q;%?&!R*V2A51-6GS MTT"F\W?97CY AREW=9:2\\Y/;FH5O^E XXEH*F:U+&1>'[B,-.9-^= 6QB0UX/A>,U=F[U\*[>)%\:J>?R! M #<;"C$^R4;@9D-@HGA;Q%2BEQ'N^C+":%'A$,'#8\)68F;!/$Y .GWR]>*W M%^?UEY)NI=KI43$/A^FPKY?E M8CQ';Q7;_ZUBT:("1:N@H-7'?N73H%^U;QZTQR)?OC":=J?X7*XYOY1J &/8K4S$NG:$81C%L]Q?,4 C;"82E1]EL^CI] M\]2<9N]N^Z/3YU[S_M"8$;"KD M%RRN^:MGR@3)S!!O&Z()PV]XIX>KJ0T@23;UD#YDG7&H8=1[G$@J_ 'YY+L6 M>5.:Q/&"^R_22]NLMHK%7N?0OFOG*EH_5^4,WRKXH94X> MNE+NMH\ZQFN[K]9R-:$&> ;IT9@@T+(+"F>[=6 IFNT%S?K%K-T0JM)=\>5A M;)T\#RJ9<^O0YM39_6F7[?2&A6;]]H2_5K3:ARU..NW7:K%XU2H_5=+-N^MICC0$A3)2*%$9%.HT5KR?AK2 M!FO-40U*1VO)E+.CL>1(U&N!W:OWBP\Y=F'DT[N MLFB3RSU)B4(LEZ0-?4(20Z' $"9@^+BF('_9$%^RW=-IL3YYN5&?>^I+^O;0 M%>[#ZPY7YY*\U:Q75;7PK-MG^@/!"U+AGDS3 SM1APN*%ENAQ8UT->KIO1.K M>35,%H;9Y]K94_'010 /KZ\MY;Y3F#9?E)OT^*QT@L;Q,8AWCC0.37+O%2P> M2P7YN8ZGK0%DTZ)OVM:+-LHY$&3.Q=#\INN%RH]53NRT;OHOJGR.[2E(B^)D8JM4CP* !Y] M[/&U%-&^S>0N+YL%?5AY?19N;X>I0WM\W:?AQ:6>39X4TT(69=IJ!MWR>8 I MJ"+G8SSW7EDHA2D*4[0WUV%1*B=SU]/+N/S(#M2X)MWG%55$A_8T1Y)6O#>U MI[OFE#.O)%3A3.V.P KV-%.Y6%)XS_H)96JM:8&@*/C[OAU.YOT^G!PM7*'= MO&A3'-^ ]\9NJXKD"/GTN[G"4?WAKL#:9\VXG;T\;Q:XG"T=VA*\>N4Z]ZFZ M-"E.J[W+:OTRF:NRW9; DT[3V1B?W:$E&"TII.UM*# %!YBVR%7&I](+>]O) M%P?#SE2?9,S1-'[H.TH&A?2X6VVFI&:U?MO-&[JDO?!CP"OLN7+L#MOB1TLR M*5C17ER[Q"JE=I5\J5QDE6)A."WDNU;CX?+YT.#"-GIE367KS>;TZA4I2JLV MO MO1(=B2*W)HI9T=AR;375F!Z;9TCO8MWIC=E2*LMOR+[PN5S3*,GA<#U"3910DCDF5,\;N^7/:0 MDA[."J5.^[(Y35]92),K _/AT)F$9N8*W:.SF_OF/;K6QLVZUN8NNRTA_BVH4YM#21B$CA)#Q<05#M]KJJ\;#-=NL]F_JE?13^K;+'QI)BL]RLYP< M]CI%OG[3O;Y Q5*>'0.2?*N"@0+)<0#)X==P!#ARBV[NK"EW^U2LLE7EJB;= M7)C&H?O0/ Q;=O,\^= OQM5<35"$3JL\)H+O4S'")D_I2-S$S[A1=%45AR;Z[?WPYZLSSLTF[#E$\R7$O5((,H6X*DYUV_K=429(]G@# M"B:<.7GK7;:@G<>$M/.W%:[[ZIS3B4QJZ%8LD*%^*Q;F$VE3R<;;DIQ=XUMR M;'-YBBN,K?CA_ZW/>['V0@.G2<4ORP_ WS*9@3AE--UB\$P82V>L'L+_P=\S M&=F&'QDBE7B2">S<;.)JRD![8R ^2 Q4TL!MQ@,#RPQU@\0/] YC.-XV_J^* M77W"5";^ALJTW6 @,S3 ]1_@'T1%9MI3,@+29,;&\_E;/(!EV#>8$N(_$ H M3-%LT0G][%K=;ZG@?;26%$P?S7)896E>S HG+.WFO%@2>)$I:4[@#M/((>6> MYKC!5%J2E4-1DX#!TDSK=MNT1,Q*G#$ GAM5-'(_YC;1*(3CKX>Y8Q*H; MOW6$/R.RHF MOR 3BD;&:B;J":8Q']1]A. Y5OG='B,R&K+&NM&'U^N=#F1F M&'-H(%%F1,G0,9)O&3XV(>C;&A?NSZO9RWN#37>*8OKE.MM-"_GE '+>;%4[ MK0S$C['TM88-MJX\/;0SS?-*#UW%KZIL\W4I$%RJG'TB$ERQ(;%4[9 HM%G2 M[C%+]HJ8TM:TZBY_%OEEG5X-T/A_;"N9U;0Q8OC8Z)I$H+X_HZQ95%B-TWW['/;$-NXXUA9 M_[__<&GV#\$<#++28&UI M[VX5LW\R/4&:U,-D[I/!O0<_2.9\/"QEH-"W=LR^%\G1<3UU= MC,:U_;&$UK\J=I+#QI 5"]717;$PFC]OE$3NMJFQ>5H7,_4U^ M?RRL/_7T4J^<:3:5S,-#GE,?;LQ[C&K)[.%0[9--^#Y$M9"QQ'WI16W<7!A" M\YPKZ%6S+ G:]1X578E+IX33IW*GK^04M5"\T\X;=S7,$ND$OR-4"Z&%R/2P M_Z5KB/&@,\:4\Z?W-_"0: 4;1LNZF=>Z2$7F*1J*A@6%0-7./?@O>4V^TW72;\2Y[F4V>Y8KIVST")]M7+XWFZ#+' MGI<>RL/)X^EU4A_#392)]>ZJFX 30D3O J6Y%#U;S-9VR/\PIB7<,-FW#$5& M5F02T^B)(_CNE,&(JHP4V1959FXKKB,='M^ 5^))!N_&0\ M$XC*4&453HZZO*\--PJNF.G8[)WE7GKUQ!=8+E M+KCCV;O:UEG$["R-DU:8':A96]@6:OR3ZH"+.9/?H!-<[\/-GGWXYN"X*84% MLZ$H*Z:N53O8$GC4MQ' 8Y/SET[N7GT\OS38]!!37M5ZYRUNCYHC+M=>7ZIZ MA2^FE7;)O*M6A>=!##3I0W/SXXJ+T^B/FG^$V[ M.7BT&WJCT[UI2./]L>R9;'!"Y60B->\E[:Q7*I[;%UU@63:Q?EOC]BS[!1WF M0#!69,O1]ABSR$:,PTIOA"^,ETN@T+DD2([-.U?>%(12 MF[?/3)O6T&@5\D&(D<_G]A8XI'OE)Z'[TN+ZA6Y]/'X=#MJ75WN,DO>ULV&U M(/72S>H@>2^RSPI[7H6,\T:K[)!E-$>RX0.ND)$5+NA*DY_DTKQE=,% JGQQK^[/6+9A "U_ O'"7XL#;LT5EQ"JKI: MY;_<;,X=P?GK?*B;"O#!;W+H!3/0RJXMG!_AN41Z M>25J$[:/>T M/I\U"UQV4FKVB]5QKTOR1&]D'@-J]H5EPPO27548JN?39H&7^J.KNEZ?EO<8 M6Q+;CV:IG5>OV8&B7/14X;SX.(3#.NSWR@B_6P\=6+?SC9#JD7@ATNV@>'LR M?4CUI\E4_O7EY)Q5XWO$G[O[:B:7KO/3IJT^3"9EQ%[>G]:@5^"F(-(AZYR/ M9,-/JJJ >C?)/!N_E^*9S*A^G[G>H]OY5._SUP^54JM9>.T4L_6&F7NN=LF& M;TA8?A%_@FS/? U/PJ+>XE>V8]!Z8Y2?=2UCRY/G,=GP[:I[M[)GWHAK^1J&X-;#1%_I:$!C;:NQ MM@R-M=%8&XVU'7>L#<-\Q<9*3I$^$5?(7^3*KYU&JM&L]_1[J**:FZB6V !A[_1-6E_@\OKH=THW[7XK2+8CTC&Q?MVY%5/G,; M0!,"YJUWGB/Q/ZSA$%9Q0_QJR[#1KD2/8[=C4HPHP)G5ZR+3R#]@'IIMU\[; MO*P*D[,#C"5.D)/W7B[^Q:"-G'"#:)K((M:_JHB.LF0&R.KI3\Y-(->;&Q_X 7.']H(VN,D--+IJ-HHB9!!Q(#D4Y@6M#F,ZO[UABVR>:8PQ[?8S M-F3 J1&99ULF-1#X)2+ITTT*(MP184%8-7OTP)_*ZZ38GCX#)(((0$,R6 K2 ML*'D?LMID8,F8&$Y_I8X'*I3TCI/G!"05IRM=/OL3+&8$V=L#+UF\$>ZB=X@ M*;QZ<>3V;&'X=[Q/>+Z6BF2G;0_"WX.>,MJFI:ZM"E-$9*2>J'6=B$;H0G9 B@AQ-C.C$35S0.(JJJ/,4,@;W0#7--Q M#W.+8L%GI(9=5?H(" ?GE.#$%WF'">]V-W73NKQNA80T6$^] CGJ6%TI'6R6 MX=EX; *O@9U1O#<[3 /;"6-KR.7]#;-VJ+>\VOEC>'(]!7L;!FEFY5+K)\9, M\Q3"/DQ>L MO8V%"]Z,^3>/UTP&@QNM!F[2Q9DGH]L&D5Q%=AL$P7-SJ5[D3(<3,8%DJ.W4 MH /?"/!+<3KK86HNG)9S9JEK71WF/31L0#/R60=/1H%OP/Y@0UG32*D2N#:H MJ\#!,JQR;%5>XCQ),21[ .VM@- J])(BXCU_8K:#8ENW+4(?V\)\_#I;U2;& MP%]T%TL$;OF,VMB9!MD=%R^**B82,\;>*"Q' M-\ -TTGG3* [[!P"(<;#&%W26-/9C7T<0=^@;[#50*!-Q)S04<#M)(1;IILC M,ZX,B"-140F'. ;*R(E!::A+C!0L(YCU0.CQTEQYP=3J?"CR;XGZ6(&>D8MR MGK=FG2*!M^>S9GB6RZX>2\3&*S;\D0=>%FF,!M.(.].(PS3B2]/ =%/P-!<" M\1K6M6[++4PMD')G7BX&.8R)WS'$O&*0E4^&BB-_R[@T5)"K3G6BU)8HYI%K MACKR1CWIX Y1;RL2\>Z,'99V9NAH(X GLO/>V5"[C7%#$0VB=D5H+::"FB5_ MA+:*DDA@320]8PF:K=-E<4KP @F[RB)^\8!$46;*WT$T/!BXHD.\J1A@(&1A MJQ9^M;<9F,V7]W.F1L3-BL:1V?D$_[NSFTWXEL!BVYK+@)V-?^.S\%MV%E": MV=)Y&RM[ ]LC%6QK+Y?1SK8+3T^3\+["\R%+K ?,"DVSQQ,6A;LM0/B7Q%L@-!+S(1HNED^ MMI5I0+P8,A> M\[-T)\/%]?154:F_INV6\GPB+T>[XZE],&)Z@1'3_# SO+Y\Z;)BO9]4U%0U M(S3@Y&>"6V_'B#6INA,T'AJZV_78L0-=#3]O@(PY!WOWV&USFD&Z(.?8 YA; M9$6U/?Q>X$\3&W*2\VZPU1; ^*V>MY\%9SOA=IK5K.$K]^S]QFB+>H7H= 0>3N>'?;YD\Q--INN/W2ONF_J%\*Y M*TS('LB:SA.9>;M)AFM(NYDXZ.B[M34]?Q!SQ4SY@4\+V!)SST?HCOWCA+<< M^<6JSQN$3,9P1'"CJ[6@I;_F;RVW$L:\-@-.Z$[R!G4VH83G.:\"W48/020^ M/L9A0\'3=X@+V$KTLP,ZX([EZP7G;YDDFW!^*G@Q+@MT^(PZG\J4?D%??R) M^Z;PQ4TD@0".\1I-I.W$U+N<-)X+@M2Z8Z\N&]UJ^^4QVSK%IIZFOV'FN3SE M\L^FC94=X^X3!W5VUF[X V&&PBY1>K$58+=9) 9\0R .N,NSGJ@%^Z&+!;D$A;\_0S";2XV0%SD:)NP)+(LANW<&-+4WQ[0.C@NE (BV=6;1G.<#A0 DV&XF5,;,.R J=N9 88,R-;7I$ M@&BF%Y BYO&F29*0#'P2FP7#ECT^Q^S1.QT@'%Y#5]=EL-:7 <=[EO1*)S;7 MPE9LNP.K,=,MM@""038>>[XB91;')Z%:)""/--3!OA-I M=/+F\K:+WBQ_R8O;F'AG'?;"9$83O&(GCNE=^$%VP_5,B%PM:3(+23V-A%@A MXV7-N,Y[C[/_BRN!:7IQ^Z6AO%.%WH-DWCVB"KO8:+=(8@6O*<7^Y:Q1Z6$F M@Q>V$0B8%X!B["$H Y6$7I$;C0?>7>=%E]@*9%#AUE;-U8Z7/6Y"=Z]G].H3472 11$I= ,^_VQJ-K7I-++L'S MDF382-ZHVY[OD]?)YL-YM3]HUJVX>/,XRM]MUFV6"RR84^;)-B<=MU%@YD4T M\UPM+5=9+U?)TG(56JY"RU6.NUQET]&P]TM#/E%(POL+7-N95">+5L6J@^JF M9%T[TG/49SXTEB G&0S.O9=^GWF[ZZFW>5AYR0[P;)A=AI4W'DB;*-?IR5-5 M&125\V>=O9*;C::0_W)@;::]BXYAXVKU'R3[C,?:&%53^ Q_6[[KC8MBUBQF M^$?#UE02]\V\X9:ZH36R)3L,PW_-K=\YO2JI6JNG#B#<_'2@G- &[B7V1/C;BC!ON G(6=Q@=A3,#;,4= ,_,%(,VV3RBAQC;I&J MH(XS0!'C@CY0)*8.E6G@W?XLY&^+]5],7K*8GQ>)6R:3S/[R+1+[7E/T32;[ MYMNMN5G+]$M;0]AIV]1('BKI2&-R3<14TF*O0])777*2I;.8UGK; M%\=_V:(..]WBV!FNSG_Y7%H>)D9FNIZ9SVOR&2FX76T41X(A$(5<&@Q_^HB9 M$"I6W.=?D2IGIX7',EN]?K@:70P?.^.'\3O(/8O=P4!-*$5>^&P)MSL/=U>% M%[5?:)B<5*R8#UR_]M$^PLQF[N%*[.3=+\:.8E>RWNT[ V2_C$?LM&BSSR6Q M,7[M)5_>KM3??E?018'M"2=VCE4F2B[UV.KEA9ON%KN2_>*N+#9A#//.Y#QY M29K5;FLJCIN#>*V';+W!B5K>AYVIW5P^74U2+Q?%0G[:DRJ#YSRO;2,ON2_M MS%S7872T;,.[0]0Y7+ 0HG/\[&W[[TF7:(.SC*'". M1H%I%)A&@6D4>"6NNXZ=HO--J77"6:>ID\?;9[;0>>:>Y-ZX=2/F(9#QPV&J MV9/EY^[+T.1[A:9]G,X;G3@R=3JDQ+[G%%:RN"\F;[3Q_TZRTI] MI8:?7'L[9U:*:?6%U5G^^>SV^OFB>]I(P9@< _L0%#OJF6-O;U0[W?O"J= MWSX9IGSZ6JA!7'GUR5'[/'DVTEOE8OSA^CI_^?AZ6JJ.6ZD6NS9FI79G3UO% M!HO,ZO5E[:Y?X^0:?G)M3*':V1\4X,FUQ5=O+MOFR"YR_:MIK772/A]>M&HPSPV+/V-O)M=B MY:2/;M.MN]HPQ3;O\]BN75O2;?U:*HHYO=F\2L6YUFVI4'UX[;8RZT]FB^6> M6+V\N"Q.:\/>T#JY: \D>%)8??+QIG,JB#>/5WU^J#VA^"5;&Q3R^,GTZI-J MO5R[>"ER^>8]6S%[:C?%%](P9F[UR4NE)'1;+V?3YDNI3_&7-RK=R MZT\FE=?BW>6TEFG66Y5,JUZI=?*8F[";L/;H0./XD=#LM(KVJ60K5>Y>G;SF MB4>Q^JAAJ,-K]!!7FX-!)1.WZT^/[289=8U-SOF7A]O,M)AD[\W&P\M%[[HM MC'1=49)I^Q2N=8\;; *F^FHM]/[ MVQ8F*\>MKTL99^KIIWJ390=CKJ+IIP]W:38/CZZMJU2J-9!A/U\V7QXP +:J MT\N3*GET;5U3L\E5F^/X57]P]_R4*O2[S39''EU;EW3?E+C+%%MI#OA M]>:P4H-'9^O:[0'UHFC Z4(3^VOUGKCI='JV.+H=I+HC"4-N5M9?,P]V-K/A M=/KFY_9Z.GU+:X3C$DPQ?ULI5<[KS$WQEJE?Y&^+S$\P GCV3_&F3G[B_OPZ MW+'U$]'$NXVG N57$/NT+2?T2&XJ!"<1#B-X9QD62YDAX.G%5GMXP7#NP'4 M'3(@.2["F>XN=A1M\,/!D/2^!3Q@,KIM09$BO"?!G,)Y"KC,9+O)?.-=3C27 M'-\8044:F+80N%W^@I>/< H#$\S-&\]Y!W@WSF;VEH63Q(LS<4+3^M IO8-Y M0?D3ED!8N?-'<2Q"::0]._ML&:1,;NK^W6T><+@JQ8X.-9AD=LX!9.2<.K1Z MSE'MV8:L4>?M';)-MQF:PP6D_X TWS>'37Z3->\6N.I2#\FVBJJ=50@CHI/7 M9)=OB:^T#FOC3&5TVV-?\BP:6KQX,WQ(9HJU70'58ICA_3C(_)OPQRVC(N[^ MNIX]<S\L3@J8QYT0^!N2XT8NN]WLPN6KCL_-KOG*EN&]U1V- MTL+XT+BA@SG;(XGW>WQL8,9P@A10 M\_AA<,"-!)$7>X^*;5,'OMEQ4."=),SVV[X4XK'D+PWYH' \@07P!R.4M M,Y&C^Q"(?4C3?0C"/K")3(;N1!!V(I&ET!2,C4C1C0C"1N02&8%N1 V@D)3 M8#:"0E,P-H*EV!2,G> 3'-V' .P#A::@; 2&)KH1_FW$WY8!X3_?0GW[6W7V M$ZO>95!M]S4ZOM) TE7X\/]^I'Y\52>E$FG.*Q/SRO"XX83!8J#(C%> MD.* M9;<@V'N9PP8Y9[%XOF)>TK-35V*_TK&V\OVS2IH8DB%FE?K*09QE1J'H&57T MY+\J$AR?$+([I#GWXJ%OR#AO_Y4- <6K)YNFZ(FNPV+ MAJ3YM',*PKT%Q/SUS]_*MT5D?O;^]W\D":%.9[]24YF?UG$OV/-+% Z]LB^U ME/A^Q?:&92]K @%K EFWX93&'E3!.EW^Z\=*G9KH(*YU0?S)297EQ3,_@];1 M\S.WOF!A=3K@E+&DYKV3?@V]0,YHU1>.^9^L- (4?WFG3BY*<;VBMG-2< M3E'-S,I:+V7#66_AQ[_)F,"GUYH _O+/^X@@,J0VK_O@XN([-#@ER4%U"*#!09MJ\(#N): M#P4-_MQ6M3=H>"SDE9[:KE_U[8$N/NDUY:Y\"2U:]D,SA MWU;C]:;:+Z/;>C'=N.':U3+JYVKY X8^/'G+.^)6(0UKJAW2Y<6LSJ7-0Z95 M0'H]:94RKY>%7-,V'TK5:DE3DOUQ*PWQ#DZ(L=QZP.,(RM3V:)<A^=*+Z MV"1W]Z&)[TJN,;9*V73M[($M7&LUY8ROVN7[+I;<-)9K;K5KA/OL\/1^I(+HY(KJY#;'$L-0&!S,X M<$2B'"5)WKUK_UU)+J2[_4I1N>KT;4PRGFV7DB,3)!G\>2S*?#;YCBB'LS2B M2-J!0E/,68?0K5N!TB**W191[+6<[@"A@W 18!TNR24*O"\$H8G!T/"!_XYX MN-9/Y8#*P8["0-/!5# ^D2,.U/JWD(NCRGW&W9L : [T$[Y/L$L< M?/=T KSLQUJ)!&P)!*)D\.6]NGXDO-!NFGN5@J_5_Q:@.\ MW*AD+51R0A_ @UN M-5M^[ ]%I5]X?J@J=XIV:8I@#!QS3MB]8)#Y62:'Y6=- 7[3C*_?&=]C7_:; MF=YC7SC-9$5JW6]F;S$*\[! E64H5+ M"G.OCR)=X56JIA^>) >T4WO MNOA 9#D'LIS>C5JFJU5ME^]3K8JHT;E MM%@G%C$/&C'HOM%&X/X8,HHD!D6F8>:]_M\,4=MD"!T6.WJEA\4,=?UO0N?M?[[F*/<#$EP*CSGUD'47#;[%^"^FE>9$Z?8Z?%>N?Z09C M]1#^OX$0Z=ME*A-F@,?KF0S"0\B,>S\Y YJ!/.%>60T?X(_AVP5]@).$),&R$- MKI=3;9A!Q] 'C&E+/:@J5W3\4!M)HFTBN* -/P*#X&D,F+%NJ_+""*)F*7&O M1UG"1PI_'Z!7^.]O61G]^P_^QQM'4I%H 'SU_LB*.53%Z6_"NNZK9\!$9H-_ M[SD7&&(3.84_\<"-_0OFMS#LTEAQ":GJG_>"?MX(.[ZCD4_.3Y"XC"FP#IT( M71;^_=__65S.'+CCDJ[JQF\/G1?(YU*&)T#=1?&V@<1^7.S@]_\6U;$X-=W% M9G+SVTE_SP!>(!(#=/V+6?@9J+*V:0-Q$E\@G*L7XBKJ6+_=KWF?$4R??:B; M"L#5;P.I(O#JRJZY>V[IP]\\ET@O;WF22V36]]QO/B=;(\SWYQ^1P9"!=<9_ M&M7"B@PX@\#/F,>Q.E"7[MAT/_KQ;P-X$+H(%D %:98Y$Q#1=S3/5:J-8IUI5)E"M7):K-2+I_!3O5HNG>8;^)>S4B5?*93R9:;>P!]<%RN- MNM,RA?O#_ 2"*IJ-Y%]^S>=G4Q,QT%K>D'/9W(Q9JY*PB<$Q!$K.1(G1X6CY M=BM;'-T.4MV1U$S?967]-?-@9S/C%CS*_7"0<_%K@8'T)43WP=E:-I?*J"NJ MUZ*%^=?,:[*SPUVD20HR&_A%)ZHN]7]X-%0*]_5!-5NN]6U=NZR+;'MR9]0< M8X\P1MYZYSF7U@S"%M@0S\$R;.0;I*B*ACSHXKAWC9-W.9+C$R 2C5+EO(@E MP14]_V!C;9[+:)Y=L;/BY)--:R$6V-L(Z=ZPNV&%!554!DXSU;(X-K&19/IO M*ZXM\Q/&8V/!]%-,;*&UGZ$OK*4STGSJJCMUQXJS\&3@ ?AO;,E\T[$YARU# MU(5?AX;>0::)9494&608NF$RV%+5!PKYT,3/BQ8C&@JQ 8D-2NQ+T9AB'K<- MD^B5MFWBU9EX'EU1T4R+Z2C&P/VNCDU)T9I]&VGXO0A3"+\<9HTEP+15:WDN M9H)97+(D&@:6ON7)JHKH8 4>V<1RKTEXG8N4P=86G@QVFF0;NRA8 SID&NJ8 M"Z;XZP-,JQBX48[%ZU$2IHVF[I+A"P-QNDY2++)@V2EF#_KO(F.$1X>A\(24 MKH.R9/5XMV"%V$4TL'V-%]#V=+%(K'8_;>7O<%A)^=TFX,>8 M[E%B$R^V*Q+_@LS>A3D7'9==%/QUC&9 <^PQ8VN8#(9I,-^W#G&)@!V7AF'& M/4PL,A9F6]LP$$QI1C$@Z8R.L#_PH',?-F84#?LC>)*BB7FDC;TGO$W8)\;O M==PCF <>!)F+WW)F*CO^DS;["GDE\;5FHV'M:@(GN1,AGA.P/7YR?3PL=1V' MM=RWVGA5>/(:@N^ '5B:NIG*> ##73+5X_R.U)RXGK# M"U*._6NXKPSS.>RN!JRK67@1MC;$Y%,DXO_%-FXS&HFJ:Y%A!E+![@!:2PC) MY("WCCTGV(F1K@*\B PL"!%NPZ\3"GNQ M%G+X9QT&G,\E$B$ ;L6/&L#+>+.!2W4->?*R%=\#78'-/"Z,$3:$3S>P#&$Z M^-ORTW-.76!/R^--3W[&BJK.$(+\11,)^=SI;D0\O8OPWPP7,I?1 [ZT#!DP MN_GB'$H1B/"0#::Y)DWXZPGFOJ>HSJQ H: 7&V#18097T]D:5D7 *_(2&\T) MB!45X4T9X2W!CJU#(++G\Y>B]24LHNV;: C"*F+"$%Y>@T<',LP9UL[4[N), MY]LT$&4R,T:41X@8&8Z8+4:H%K\X#T>)%"+)E*= M;;#$/OQ9T4!6'/4[MV[PHTZC# =-8"BR2W-H)3Z? ZN.WK26PG^;;$67Y=!D MB"3WJU\CXR;9I8' 4 4".1H(I(% &@B,7B#PW>#4ID#@;B-P=;OMV#=6D=BM MZU$W9)OC?H[YD:J?DGH(A2^]Z==SQC M_-JJQN3MKFU:;HJ:7X[_$."' (+F;L/FW7$:^*UN$?,3O@$+X]D_*U\DGW)_ M?B68QA(I%VM+.N1_>)(;WJMH$C@QR(D<#6U#ZN'?(!6/()8HHS;&7">:B2WE M@C@D_/6*GR_#UYAJ6W6=?Y/Y*9K8F\*V+UGH1FXC'=I(.)6X2A!V=+P8;[\^ M7,-_?;[1/6^VJITY*+NPVSK%"R]I)L9.F'9^HIBML2IK+6=!L_7P+)>[1M"J M;_;-LJYUP:.$$1K3(2+?]?Y8T2UDWHA3YR+W$U'KF^[7[\X5OIUY>5*:=FE\ M,IF\HHO[X7BIG6!JBSH7F.3OY$W1'+O'%W]QHVM[2PMY#9F>\LV=B% M?9V5Q*0=E5,1#:,UXK+"8_%E]-!\&9TC;M2KLL/R&.-Y(K6AR>"6>\M@R51) MM%@_-$-DO=,*!V,([XD5 V!MA)6_N]^^O^F[O M2Z/K^%Z(?GN#:N_6[&=2"T&:]R>FN5_OP.^87T"F-9N&%QO$W9[QJ+1T=7H*$^CHU&/CGXW_"82ZZ\EBY+4R>3XEHC89"O)"NE6&V795I85 M6);K<)UV,O7#>:OSC5*C>)VYSE?RYT[8\;14+S3K]5*UTDH)0H[UGO:'QDM< M@CC^,FI+P,!ZA_%@O MU9GJV4+8%N*ZI08>A#QS6ZPWRPWR2/6F>)N'/_@=A-M H2V"WE7;\((H/L_G M$Y4.]XCDC45(L\(!%P/D8K'^*L982.II -2K=5Q0#J5 ;AK[M+;E5J#$\+>5 MD5,()MO8LYHZ*<^AC?TDB1&]X@&H-E-51D4CI)+,<1>RGAJX80DF#P5(IHZ] M,+=60=$ZA@ANF@2)>A,JC9#1U;WR2]TV&>RP:9 S'2.FA]0AHQM=45->Q?D% MZA8&+H/<( A^-$P"D9(+]X\&7+O>GKJ4('5K#)9T-$]WSRDQ6SKDMY&&YS*% MJQ_M^P9U M3J(E+GT%KUY&<.#'^3-2\:(,!K_;)+404$]BH![23/PYI+@U?41@R]TD SS@ MA97@G54&Y%-("RMXYS0)SP-O =YNYV1Y/UO8,A\<8R$OZ* MCLTU7Y/'GV!\D+ZVH8M0*&A8'4QI';9XMK%N.:-)^/68L'YN/7!V4#;*);!+$0^K3,8<(BA%@%C, M\HJ6%KLNH%"/YI:R F(M@!C]'4B%K?@X0*1BK8",&QEN M)NH)!J8-U18&B F29\)NQCP(A4"3*SZ6V.FXJ 44!]&R +)TO#SID6>\]8A MCD@A"\8J+'78^B1GOESQM%R4-JVX4\@!!%A:N8B1W014PCQN*0/EE7S='7J( M--F=O//)7.SGLN%4&:,5*I,LI@L'Q@A-S3FH.7R)J8EQ /,D]@0TC:">C 9. ML1&IW=7Q(UU#D;V)B?4UV@6B;C!-Z",&2LB]U6BBN>G$2;R*EW@H0$2H:ISX)%W!$P-Q7'P&H\L M;H65/!(UAT@;H)K,'GL]AQ6FM^!I7< D9:2HBR2.>[5';U*Z;2NJ[(UMBAUD M824A@5I8WBGX9,X(SHL\/NDB?:9K8PN5A5"QYHZLDVJ\Q2KS-RR3!8GR&'O^ MG366-K! Q8A*P+H4WHM?KVC++UTC"M +RM'Q"\">4DW=HR"#\*ST 1@^^.OS MVJF%N>(IKME&JNX5CVF$QTC!*!IB5IHGK(@6(5K*U;IS/G1-'(<_7;XD],2N MZB(.)I@R%D@X08K-!M,>#E6O7!%MIA*I8QR#+=1!QA)682PB'Q(L =BSO+)Z M&!>3RUF7BY9M4+%)&O4H(@\RLQ&ISGD6O%.>IY9FVMFEC>-G@O MAQ<#TA#6G:OQ^9X:<&;6\$I135/'VP3/DDUP]/%LPLXV>SL\WU3/3ENV#F<: M!'\LV89C>$*QJJQ[]:YD'&+2CN'O"Q1/,#[BQ$I88.V\S0979ML"G@NL4; > M\IR$@EN56,+>#902@JN-%QGG*>+G)A @]3A&E@$1PJVI)B?;J[:6X^7I&;PPUB9N8*.E2;F, (_3B(82C!- M+,+8W-10E^@7=0I&G4BJ,4&2%CA:MHD6<\'ZA'W"@I'>[,=)X7&X#S)I)KT&7]J33WKU("2=!O%7.DCTM&S M+5D?:PP)>&$#&Y'S$J;MY-:O10._AJP56^6J/L8?@U?6(ZE\ \4QH9Q"7H)& M;4Q.S?G>E'PKMOPU]WP[E$_;4#ZM>B).:J$!A.%O\)/1G55:S[A5$DU/L9NS M9.3*)!QG;K8Y#EE!T:B8-['&FEE!'@*6=9/)8Y<23BJ= JI;!'7Q>^]!XY!1 M;O "C!FWE?.G]SS,!GL ML@V==@2R3?#56S-A"4 *QR+RUK>1$9V&!9I;ZD_T@6M;N=LJ 62KZJ:W["VO MX;G;I*3>!::5U9"2%O+0TEKA A65T8[(Z%Y<)5O5[-/IBO MR)K[=*2T'>^+.8 HR.Q ,@G.ZV;P=P\Y5DT3D5Y@Z3X9VBX$$KQAHJ^U?D;<9&^R( M"SY('@8EZ[:FL]XM>\MC1'?\C_E1@/G1H@6C>';,QS8=F'",Q]D1I$TU_#X6 MR[V?U/JR*G:X;[%YBA/N4F1B1SG'&31'JRH&@51BO6&N&[IG1;NZ+I/3/W"" M4P=3R%%;0%AS\?0L-JY%; "3PS#DCPG&.Q,&0M.Q\1B.:O6$39F9.N*"-ID5 MBWE2IML6R0.MF@DFUEB+5H(#-7T-]"0YO:>8[A%?F6 M>F!N8GL8\,M <,;; 7_W;*AK"2>8 DF4F)X!,#LI.7N0A#8]!>/"V\Q"@5/R MKK,\"P?,S\B+<],1:Y<%Y006.7'?O(Q=@R)([,0,U^.D2\8(BO1G 13[Y$#G!8Y^-]&RZIRX52CIRYC#G\X M/ C] V;FL7,2=,$*AL AB,[1YD=C"CF3/7RS/IB>$/$VVCJ:ZM MF:[ .0V.7.-Z-G$GSCXSNV>Z?C$D\+<^\X47Y[7FAKYA ML6-W:9$OW\BMY]5-7LS<) =K:)Z7%(D KD;*$?&>K@."L M:0WQ F=9, US_7R5L";L?Y$POS1K,W*&G?\>B>9",L4CC2=][LEIB)LJELN# MLP,#8%-"#'A@#[R." N)PACL(0PF>G72YBQH." CMTG@ D#0.^@P&YHH>M>O MAXF[?W?3).XKYB-[3^(]02IQQSSF< ME-(YI8P7[K1BT$A<$O\EP3#[KD%T3HDL!2#&R.EC )F6=82&9,@%W*3B"K)6^MKV4;2&X'0:P%AMIN):9,X^>(7 M9Y*-M?7 ^1XXTTZ44 =;GO#%/!9(1 MO#$A#6]3ZACVTH"9@'; \;)N] GP* M"+3%G.EO-67@(/=L/K&-(/!NJQWPF;SR"6<,&^!CX82,B?]K=LC@H"=(W G- MAB/.&6DPX9H5X/(@E9PSWWIN$,/KZ2 10(PEJ9]OTE8C>0+_J25B_]!: RUQ M:7>](T?P%TC!.HK'7N9)M]7",W+1RO'3%H4FHD)+K!(7?""TZ+!.!OHO.]=D.PH,7HW.ISC@1Z-G3L#2JO MI0B=?4F Z>=!/]GT]Y?.P/,WHF$Q)2P6%M9"7#[A40UL2>;,V8^9XG%$)Z]I MP/&W)#L&VWR&W21L&L>O9N83T>X.B4Z11([C,((3C.&\SB4SJD./H9XH+W;W MF+>66*;'I[B1J 0G/N)QC]N"Q_%GW+", 1;+/.3E^#9>A'2)RP)5R4ZC,"M1 MF"2-PM H3 "C,%M6^=[.(:PZ@[ =UOOFWIWI^\?JP7*4F9J;200 /E,,K),O M1!7/?@3^ AH?+A !.MW)[9*J$9&T>H24"$31>[&9EO)ROEX#,WF>AE,TYUPH M2=RY26MR2-OUE$U=59PBD87.9&X?MGFE&[9OL#OU#[8GUT]U91*IU1-BP)<@ MLN18SC+(XH^A!0CW"[.\/?SWMQ.*)TN;09MS;P*&-54TL7A'KAE1"CZ.!] M]E2E]SL)=/QV@!M[;_*'@.EJ1_)B[U&Q30J@T(Z!\IV#?Y\]GN7^^]T;F=)T M(P*P$6PB2R4B"!N13O!4(H*P$7R"I1L1A(U(D6NJZ$8/"ET: MY,+[:YU<=%^$&L'Y=28[!:C=WV7S/K.LT>(SW$/1(KIHD?HJ6'#I!+?;+?\N M&+BGM'U"@(^,]E C@#\?E*#"*:5*'V-K6W]VUO;W'7BSY0*I(P3+@!%%S8R[PWK'B-_Z M=Z=&>8@]>&BI1.VS_5KLX687CK++SLWY W)(:,S]$$O1?]U^3%22=F[HAYA+ M_O*72Z)@XJ\D+=DW;.7E_$UNILY7*$*=A^ Z#^%([1T87=X]^?V3M"G5;>Q% MR6:,01,)#2TX1PU#B5UD_IJ=^J; 0V,+%!Z.+DZ_! A[LMS?/WX;""C8/UE" M8<#OGRP?'4V-*%E"H4^I$ 6$+%3O;'& ,:*\047F2X?[(DH6JG>H$%&]WW)?8L([G== M00T2;J#"@=.82T3ZKV^!P. M= $%2+_4A?(0GV'^6PRQJ62 M%.5]B;R%FU\HRE-FCA;*N_6X@5NH_\9\-I;,<13E_:G,#36_\/QQ@GP8ZMG6 MYG^J&'#%F'/['KFY93D^]9N6K(4_A7.\5 M4@'<]O!B>OAJG6;WDJ?)\'51%0T%#P77)(_AC"RM?-IUY5.DJ/!F652 (M]; M94IX+L9G0YX/#QY[O%D$%2#VX-E$)JR)D>#M..5[JAP^+*8*D/1OET9/QX1T MF@K)+N)=P68/+I=(4N5 ^9XJAQWU1 RT]&^E')*Q')>E,K*37HB!Y@Z!37!4 M-_@2,CM8?,QN>Z57NL'@[XX4R8V6Z58/&8R\4*A%:[*^H>U"TA]XGT&S\-2. M;J<'<[%,QO=:XT@QAALN"P]C)+.)E'\J,%)['4'VIJK@K1!9>"1^*U4@I&,Y MEJ>R\OW@6'@8 UOR.:H**'M35?"]@%AX)'Z[U D?RZ9S5%:.Z%Z0CP-CR:BK M@A 7CG%9,GY#MT1U*?RUZ9PBK28[XCY:P:-29)IP9;@8FPIY#Z[@L<\QM.1* MYQ(\33I1N:#*)S#5;"%"CZV43TJ(\6E:T;"O:K<0L4]:2 A4^5"YH,HG,-5R M(4*/[>*%F5@FFZ%"MJ=RNA"QCR#04FQZFR>]S?,[:C922Z:MT2*9+J.MT<*< M.:.<3C&=MD:CG$Y;HU%,CR*G1Q#3:6NT2'(Z;8T69DP/?X7;N:&;)C,T](YB MT3HVFLVA=6P[. C$Q5(YEF9S:!W;AN8)69K-H7)!E0^M8]N5\F%CV2SMVD;K MV-:53YJV_*1R094/K6/;W0D>EC:3ID5LZ\VF:0$UK6&C-6PT-T9KV&ANC-:P M'6=NC'(ZQ71:PT8YG=:P44R/(J='$--I#5LD.9W6L(49T\-7PP9E:TA#AJB2 M.PI$>:!HBFD9HJ6,$(,F0Z29R/Q-R]EVG=2)%!4.<Z"S0$S$&U"!41JD4.?6UH"(""BLBA;@T- 7,< ME18)V06CHBH:BGNEZ%CL(C/&#,6IH:LJ8XD3]P]H,%3U*4),&VFHH]"K1FG> M*2CU83LICN;96%*@EP(%ND+LLQO/Y:)^Z0]E7PK5ARS[VDT_YFPLP]&K/ -= M^/7I0RB\GW?(1&HO(\B^$83JG5=S[0:J8QG>]\[YD=KWG9=S?7;??;WL*XQ; M&;X2K94 T)DHP5*]$%!G_JN!5-%",JW5HOF1D-=J[29&%!,R DV0A+]8BQZ1 M/[B_$G4J4-5PJ *LG:D&W[,'E#OV7X'U>=5 >T92MJ>JX2BJJCX0_FV5P<_T M+RH3X2^C^I@;?K()X1=%_U!70UFZU(^W11/)C*0/X+2B:"FZ1LN=:&+FB,N= MN%B&\[T;9*3V/7C53GXV$([45D:0>R,(U.$L=DK%([7O :ITR"8X" M->5>"M0!+77:.LR3C/% M40T\3R^+BF Y4RK!4M5 V9ZJA@B4,WVU48;O1Z^CSAL!+&[:X#/0.M=P5SI5 MK1XR:%G3-U08O35W+0H6GFM.M[LB-Y83? ^)18HOW/A7>/@B0\NF*'=31?#= MF%=X!'XK19".93B6BLKWHUWAX8NLGZ&O2&UU!+F;*H*W(ESA$?@M#TKP_B?) M(\47;G0K/'S!9?W,CX=QKT-<#\9ER?@-W1)5IOOQQ82T.&S7:1ZJ)+><-Q$)P'6P$TV([[Q\6@FT/;X:,0TW?>:BP$VTXQ/0I+CB"F[[PM60B$.X*O@J MV?"0)4W2!XCYJ>JF^8OI&/J T8?((,W,:,$:3=O0@C5_TC:I&)_+TK0-K5&# MM$TJP=.T#94$JF%H59I_&B838S,\U3"T$ TT3#:1I!J&2@+5,+3T;'>W>F5H MVTY:AK:U?<*GR-4'_L8)CX1A M[=[8_;T8U1W&BA>Z+UUV]:>48S6K3RC&:T M:.79,6:T**=33*>59Y33:>49Q?0HBOG6=3$Y*B!'?RNDOJ&Y:'WQL=^%*?"^*[5(<47H;L)DHW[M#>5NJ@:.^";,K8-; M.<'WR%;$&"'85U^"(\.2@Q\4["E#4[#_1N@JL#+^-9L_R?-44*)TUV7E[^M( M:X$05VDMW72I;SP*2$NVZ#G[()1T!1<0M_:),JR?!Z5ICB?$G<+81(;F@*@D M4/T2F(*Q0./%M@5E7(YV"J.=PMR",]HIC$H"U3#!*4@++EY\,="7XZB$T3YA M6-@W.*LGJ0.W)M@B15G?T))+XBI@<95UNZVB?!W [&@ M,0/V@'RL'H[4]D:0HX\4M365HC9??+;P"Q19;*_-TPL\[RL*+]21"]+9(-GC$Y;UQ,?;QN7HW%?GE4YD4ANIN,+( M>(;O<'%VC7-_@L&[+!HKK*WX(='K\R:?C!&(-YZD,1!5_+(;9$A(L\0N'ELT M$!0+&L@TD>-Z$N2-.Y##]\.L*VMLC\'U/!1!H@4<-D MZ=BJ,\_A<2#$W[(R^O/?>\XV ML@D!9&Y!LG\L#;LT5EQ"JKHJC4O!=V\$WV\N!IE AD=T?L%LH9$+B', MD=";FT X >CZ%[/P,U!E;=,&XB2^0#@7E1QF<+_F?4:,A-F'NJE8BHY-!Z2* MEC)"*[NV .4\ET@O;WF2A,%/Z%VG24#95VJPOB2,Z_E?5RPI-Q- M9->(;QG>6]W1.%>O?M662_*)]+O&W *1%EZIX]=T5'WL08_W.S$Y?SN",,9T M^9 !%\R*V:-BV]15VT([9KRW 9C[++RZ_W[3JDZ^>]J/;L2>-N*C4VQT(_:T M$>E$BJ,;$8"-X#XXY$@W8G\2(="-",!&?!0"HQM!H2E:&T&MIH!L1)I"4S V MXJ.,&=V(_5E-*;H1 =@(:C4%9B.HU12(C:!64T VXJ,^3G0CJ-44K8W(T.AK M,#:"6DW^;L3VQP2_G#0-;@7LBVKHJXS_6E0ESC3_NF4Q1DY'\S]_M\%2#?K3PMUEEC1*[.5), ML>+8L"+U5:C@THGL7ALW?QH*+FUURG QWQ!@QSUP#XD _G!$)K'7KNU?8PB> M,D1TNF,?A@8[;Y<=2L[8S]FJL%'EHP!$-*E"S6UJ;E-S>X.Y'6+/G&=Y/E2F M5]@L[W#S!AN?=(WH1)0O5.U3O4+US?!5&5.\$A"RA MJ#&B>N=0 <3%:.%^+TE;ZW,/K2P7&_SZ%A(\\+K6=]D;M8!7T384/,H%4D<( M5@8CBIH9=X>%+>;2[)_U?X_[$LX=78) LK>!6^A[UR((7[A%,Y>,);."W\;H M_J7H_7L!WA8,GV*$8684CF43+!/2ZS/7A/^O$#/QOG@V0BC^!D>&1CBW0_&T M$..3(;\->6L!\!.Z4^'F#@K=%+J#P;,[@.[P763_!>@6.(S6:S(SAA&M(JY:")]EO M9D4B184W:Y8"$_7>*B629&-L+AGNDJ00:((W"Y<"PRT\FTB'-4<2/'0XF!@$ MB@I44[Q;%Q48V=\N><['N&PZW,GS(#+'&V51@6$.+I?(4,5 %0-5##MJ;1A@ MV=]*,61B.39+]<).&AH&F#?X)'48?(J;'2Q(9K>]@BS=8/!W1XKDALQTJX<, M1EXHWZ*56M_0="%I\;O/R%E8BD>WTH$Y+I84.HXME3:5UHF$?@$CQ5 M/%^.-]*[.6E)7K263)NGT9(ZVCPM[!FU@+-^H)8<29"GS=,B6!A!FZ=13(_& MDB.)Z=1HC2"FT^9I8<;T\%>^G1NZ:3)#0^\H%JUOHZD=6M_F^\$@/I9+^7B) M&"UO.]+R-H&G109'(":!H@+51+2\;:Z)A!C+T?X]M+IM5?%D:5TU53Q4\=#J MMBVP8UME\S.=_4553>3KV? [?K()[A=5+[2&C=:PT508K6$+4M(WV#2@-6QA MSHT%G/4#M>1(@CRM88M@O0.M8:.8'HTE1Q+3J=$:04RG-6QAQO3PU;!!V1K2 MD"&JY (#41XHFF):AF@I(\2@R1!I)C)_TW*V7>=R(D6%0UP#&@K@H^5HGRE' MBS99CBJ'$SZ9"105J%HYU)VA(0 *FO _U)VA(6 .JD6H%J%:Y- 7C(8 **@6 M.=0-HR%@CJ/2(B&[CE1414-Q+R =BUUDQIBA.#5T564L<>+^ 0V&JCY%B&DC M#744>C$I340%I8)L%RU <[%,SL<+Y&@%V1XJR#YYD3:;2$7[JJ" N7$T*T03I\A5LK4: S48*E>G&@SOQ7 ZFBA61:P463)"&OX-J!)DO& M,AD?KXJA!5R!*>#ZI)OB9S IZMA D^E43QRR)&L'>B(58^E=EL=0D?7);EX) MCJH%JA:H6CB&&BN_FG'Q*8YVXSJ"LJHMNFVE$BSMMA7NZBA+E_KQMF@BF9'T M 1QG%"U%UVCY$\W/'&WY$_96N%S8$I%A"&$%A@UX/[L,1TJ>:58]"DL.8_$3 MQ\8XP4?8CF!:/6#%3VD_+YR/U$92E(["D@]=^[1UR"<5XWC6]Z!/I/;ZT!5/ M))S#)E+^Q7/"N'VAKW,Z15@P)87$<)R.50,=S__5WZ#.D83J:)*"UCC]RV1C M62%U!&F\, 2(@LPL25KC= 12$"@J4#UQ1#5.V5B2\[$6EB:VPU'CE/(S2!7U M[:9J@:J% -F(!)^D2N'HJYW6E )+E4*H"Y^J5@\9M,KI&^J+7JZ[%@H+ M[-6H7\JWIV))_P-C- H6(C[))'(T01]@9@_4DJE:>"OR%19QWTXM\+%4RO$8+V6@6AQ:R^9/%X=A8CDW[F,BAY6O'4K[VAUP%0S,[X1>- M0%&!ZIPC+5G;7N=P,3Y-;Q.CA6I$Q:03.:IBJ(JA*H86I^VD*EI(^=CMAFJ: M$)>I"0F>:AI?@H/[C 22EFZ,XL8#W;.LOW[38C.:LZ+%9H'*S@:;!K38+,Q) MK("S?J"6'$F0I\5F$2Q,H,5F%-.CL>1(8CHU6B.(Z;38+,R8'KYBLY4;!$J: MA0QD6E[7-%IKMNND3*2H$,#;-;?/V\B9G* ML13WHW,A9N7OZTAK@!#7;RU=AZEO/#5(B[GH"?L@%'L%%PX_40S&IU*T&(SV M#:,WPM!2 :IR@D*E8^X;QL=X/D.+S6C;,*<8+4DU#-4P5,,$IE@MN'CQE;A? M+D.+V6C;,- T28$Z,Z$M=G.#@MYU F5RG4 ;=70#>=%!2YSX?M@SC%M*>Q,$ MJ*F8;V$Z.*'C_Z%-&I0[\.[_3/MY&"=2LAO96H5(+7GG'<%\0V@AELQF:7%9 MH/N ;0'(60K(%) I(!^NG=<.@D!<3. S%)F#W,UK"V3.);+11N;P%77-0S8+ MT1GF9QMIJ*-8M(Z+ICQH'9<_[DL22?Z[HQ9D^U^6'TY2-L;F]QX+&'3^3?MY2'"E,BVP=P:$Y>@Q*T35(I^^" ML,A#6_/'<;0N"(NDZ'HLBXP(ND9@)R.!KCL_'A>$188)74D@Y&]+;*O(_XFM MUK*\$;S)X3\ZO\%??BL6)K/D#A-74<>\DT:S>@CC:$1 M.(MHGKX<^S^8)Y'1:DG?H%RXHA/JKN/J-?O=4BHN01=&N &W@Q6L/D,_89$9 MEL#L5^&N7!TW?7/+T'<)@XRG3@ O^\)BEX6I9(Q2Q+F&0Y\86 2\@2+)='MCD)USL/MGD(7Y=___B]U.GGX)\K3*'XICS(4 M\@G*V"1'KEEC%#/G>\,9P_M?.L&MLTBD'3!LMG-)*,?6)B0@77\RE+^1*BN+ M-G5^-!3"":G$P2!ND]_1"4CV993XJ1^%+V,6.*E_PY9631'E-NP@BDO>L;B< M/<2*+3%%6SFW_.&' M8YPZ#M-P1J"&#>!&Y_HZ9M=."OI"Z@2@2#2/C?0V,A)V/47*F,:[D,77"](7 M[T)X/8.QPCOP,Y OF0EBQDS##7QX GV@JZ]9= WJ=8(L#Z^\ M1J+M:Z1PXB M! 9Q-5R^BD74*Y:F@'QK!:II+-\JGF8)*V2W6.A!L[_1?%?P MHSP_@F>.8:&D5):?ZQ<:+UULORSWU&F+W@MA* M-M-90>P;'O1K%5HO%;K5F%0MQR.#=V,LQC,_--))-$] ,&+E'__>,#YRD?-M M(IN?IGY;S-A=I#8'[@G7J7H YJ5CJQ,FP0%FS!VZ]9ISK0I?*J[,>DU9([L> M4ZXCLEN/IQU)!=4$#K[)6#'%\,H&V)6-J0-6J>\$235)+'7K\[4E3N@T2]=L M/00_>&D:N]DI!"'WS>Z@_PBR_HZ#P >6'8\3@E;;;'=:&H.UPN#F@_H'QZ#= M,H=V_P"FQ9$=/W^&?MH8.0GS*K,R'HGQ>#_#H_9$.,86>5^F[MAFM]/1_4XJ MU36UI\(Y(+]M]KM=#7P-_&J!__"^H[U%?L^TA\,S=Q&]Q](%QBSV7:9]0W,M^IT6+U6FRLLS0#GS "#?G5;EWHMM4;_.MOM?-#? M[IH=ZQ"&W)$=MK3\?!/1W'QH2&?_G1:=\<]JL[.M7PKQ'\ MUSCSCCW5O>#?LLV>ZB0X!W??Z<&^KA[">LWXX'$_)SCGNCH_ZC5EC>QZ3+F. MR#YPG-P)Q.:?D'-N M1-,IBUT?:\AH]];IN;=JDIG6,_LM2^_63W*W7A,(6F:GW],0K!4$3RPW8&OD!ZSR'V'M(!T_IU,B:)8C90W/0J\ZTJ?V:UVJ7?-;(MWIFNSW0R-?( MKV%NI'7VN9%_IKB6/DNJBZ&WJXZAKQ?T=:[EV:>:=6"+9^ELL_LH0,T Y\P M5E?[V#3ZZYIK">+?5K-('HN'3^=:GCBGZ%S+8T]5YUH>6W6>'B8T_,MM1)UK MJ>%?K7/PV%/5N98/#ONZ>@CK-6.=D5:/*=1:?F#1 M-2S-9&%0JF5%+KQG[?T]>.?AKELAH<[=U!EN.L--9[AI9&MDUVK*-W[V=VX55*PWL.6VW=6'5U;69Q:Q!J_/D MM2%/-G==ZB)1ZNH>.#8,-);+L"R/*366:X7EU9"SQX!E>>9XZG;1P\-:6U./ M;<9EVNG0$]S L0\^X[JJGD*SGW*9;?4H0'RW@\)36=L'..0ZN"&U MWS'HW_]F]5JO5O]=J3_K1@'.]Y+ MN]2C%N=AQYWZ:4"@?70ZW \"<"&#IX;7G"1.Z!%5-MWT\R@V7KS>>MF;*$SF M00J/UA"[%\1.*AUZ;XCQ1$JM0FNE0K>:DJK=>&3P^L5EQK]?^H!9W\6P/S\T MTDDT3T P)L]_?N$_ZM!)$-EI[+BZ484.=M0A83HD3(>$:6379,IU1':M@AV/ MGT^\6F(&KFR 7=F8.F"5^DZ0Z!SA4SS.KTNW@)[9:557HJ5N$#S/=@$GAD&[ M9[8[NFM*O3!X8BTK.K;9[_0.8%L$<*O_\$\8Q;[ M+M/.H;N;:+K&^#E7V._VS5Y7>Z;NH[ T YPS UCFH&-K_&O\U[3)1'=H=H:/ ML(VL;C)QXIRBFTP<>ZK[=6(:FEW=F5:7V:\I_ML=[.OJ)*S7C'4M_GI,^=$5V-#(ULBN+;)UEXF3294,?!;J1$F= M**G3R70ZF4XGT\BNR93KB&R=*'G<(+@WT73*8M?'.C+:O75Z[JV:)*=9';,_ MK*Z)=]T@>)[):2>&0=L<=CL:@K6"X(GE1UI]L]_I',"D.+*[YT,$PPZG+$QU M_)3.CZQ9EEAG8-IV=;9-[=>\5OODLT9^VP*K7L<,:N37+D%RT#);EG7FOJ$_ M4UQ+GR75A=';58?1UPOZ.N'R[//-ACVSV]5EF.ZC #4#G#,#6/V^1K]&?TW3 M+4'\]^W!X_/PZ73+$^<4G6YY[*GJ=,NCZ\[3 X7&?[GG4*=;:OA7ZQT\]E1U MNN6#P[ZN+L)ZS5@GI=5CRG5,2M/(KL.4ZXALG6YY*NF6'UAT#4LS61B4;5F1 M#^]9>W\7WGGXZU9(J-,W=9*;3G+326X:V1K9M9IRS=(WI_"(@!TO'N]M!%?" M@'98I\)0Z^H&.[;'=V_G=F'52B-[3MMM75AU=6UF,6O0ZCQY;61'F[NN=9$J M=?4/'!L'&LQE8);GE!K+M<+R:M#9(\!R=NA89AB]2!V8VT-BTK+W *7GW[S^ M&?Z1CW$#YL2(QLDKST]F@;-X21,0;\Y6C08#GX5;J]5L=^$;L<[HXWI2>&SA M60V7!<&R\ZMH((LG5$,T9<%=%J8LEF2TE<66\1-]A2[*O__]7^IT2/YEE/BI'P$?L,!)_1NVM&IB MS=%=:8/,+2YYQVKV5]>\:IC3TK05AG2,2$@RAG"V,\4RJRG_4*>, ME!54Q>>[?%S%=52DH5C$U@KQTUB^57J;.TIY MRD4'X@[$^C:)&3.F\,,D,5CH,<_X;1XL#-LT[)9M%6FF.>&QM6'-?V+\+67R]N$L7$A$"==RIGP8$VD>GP_T@ !&IXS4GBA!Y19=-- M/X]BX\7KK9>]B<)D'J3P: VQ>T'LI$K@[*]/V2 MLTD?,.N[\.LS/S32231/0# FSW]^X3_J;!D\;8T=5[+:).#()6VQSTVAJ#M<+@B;4ILVUS: T?7Q'C/T,_;8R M^S^89\QBWV7:-W1W$TVWE3GKIDI=LS_0GJG[*"S- &?- *9E:Z^8QG]=^XI9 M/7/8>H0N.0J--"HK2JS[BNF^8E5[,HX]U7W$1*]G=CK5V8D:_37JJ_0(X&_U MS7YKH.&OX5_+MF*#CFEU.^?E[SL]U-?515BO&>O>2_68SZ6$1& MN[=.S[U5D]2TOMFR= S::>[6:P)!RVSWJPOEUQ \!PB>6'+DP&P/!@OZOC1G2*6.V0WS/M@:61KY%?M^1(>V@. MN^>>'/EGBFOIP_V5A=#;58?0UPOZ.MGR['/-.EVSK\N W4L!:@8X9P;H5K<5 MJM=*:_"??Z8E2/^!93T^!Y_.M#QQ3M&9EL>>JLZT/+;J/#U,:/B7^PUUIJ6& M?[6^P6-/56=:ZDS+LP]%.\$9ZWRT>DRYCOEH&MEUF'(=D:TS+4\ET_(#BZYA M:28+@Q(MJW+@M?=WX)V'MVZ%A#IS4^>WZ?PVG=^FD:V17:LIURQS1G E#&B'=2H,M:YNL&,[?/?V;1=6K32LY[2]UH555]=F%K,&K1[5E#6(-8C/?LIEIM6C /'=S@E/96T?X(SKX(;4?J>@ M?_^;U6N]6OUWI?BL&P4XWU^>#)[<-11OV+2[IY2SXK(P9?$>Q+KT?QA3^'J2 M&"STF&?\-@\6AFT:=LNVBA33?/#8^<#>Q@=;[>.F+M\7].]"%E\O[E*, M6AR''7?JIP&!]M'I<#\(P(4,GAI>/%ZZV5OHC"9!RD\ M6D/L7A [J5SHO2%&:91:A=9+A6XU)56[\/YUX MM< ,7-D N[(Q=< J]9T@T2G"IWB<7Y=6 =UB?4^=\GA"!YDUP:#=-^U!1V.P M5A@\L7X5G;9I=UJ/KY[=GZ&?-D9.PCQ=@N[ )>CJ181S*-L_L$S;TN6W*HY[ MKSL5S@'Y7=/J]37P-?#KUJ]BT#/;@^Z9^XC>^S^89\QBWV7:.71W$TU7&#_G M\OIM,-[Z0^T5N(?"T@QPS@Q@F^VV]LQJ_->UQ42[;?:L0YARNL6$]N_I%A./ MIL:^/3 [W;9V=AS:V7%L4&C\EZO)CMD?:%^?AG\]>TQ8O4.=W-8*]G5U$M9K MQKH4?SVF_.@*;&AD:V37%MFZR<3)I$H&/@MUHJ1.E-3I9#J=3*>3:6379,IU M1+9.E#QN$-R;:#IEL>MC'1GMWCH]]U9-DM,LVQQV='+::6[7:X)!V^ST="1D MO2!X8OF15M?L6.T#F!1'=O=\BX92%J8Z?TOF1-KOJ,/IZ05\G7)Y] MOME@8-J#ZG1BO59;)YR=/P-8K>IJQ=1KJ37ZSS_=$L1_>S!X?!X^G6YYXIRB MTRV//56=;GETW7EZH-#X+_<NDM'I, MN8Y):1K9=9AR'9&MTRU/)=WR XNN86DF"X.R+:MRX;7W=^&=A[]NA80Z?5,G MN>DD-YWDII&MD5VK*=+QWD9P)0QHAW4J#+6N;K!C>WSW=FX7 M5JTTLN>TW=:%55?79A:S!JW.D]=&=K2YZUH7J5)7_\"Q<:#!7 9F>4ZIL5PK M+*\&G3T"+&>'CF6&T8O4@;E5CTDY2,,:[.1WH5]>^BE,W!6/:01LG')'U&X0 MIJG(=XAE=*,@<&8)>RG_>%7!!"4XE&^DSXS&T B<131/7XZQ$Y5$%WK6^* D M7(I&Z5W'U6OVNZ54+''?K>??P0J:*5:OR#U+K@/OJN%4_7!C%4R> EUU, M82.2)L;461AAE!HP$B.-C'3"X#]P7V)X<_S3H T+#++Y\PN_#.@:))6"Q#XE MD'P,W6#NP8,1%K,(9A:%1C0V8G;#0H!'S (G902@)+/2,.8SGA3M/8"59K#%5@JG[(JA]2@CZ*I RCJ.I$8Y[ X3S&ITGDVC4QQ'L@4(#/&A]F'*5]V M81M8MC0,[-R,*2YQ89F>O/Y&=/V=T_/=*CW?1-.9$W.V7G>M2FHT%:J?8[NW M:O_L/,4W\%WLN*F45,T53*PS[N0ZPA,H-X+DF[OT.,,/W9AA&W/CJ35H=O_^ M-ZL'=JP?! !HTP#\VG:S]9,)URE(7HM@$UZ0DWS3#8+L)G;C!-H D:6:IA%A MX1!@(#'*!%^///0^>25P9PO)<9W5'X':8;9+&D M/2R;,V[]=%+^:GHT3B5FR7PZDYKC373C>PUK:"3S M9,8G)A]+?#^7J;3-X\!J&3AK2%A<_[916/I^L_DZG.AB M-XT/ZB@4Q$K"+DT.GYZD3IPVYC/\#!-!"MPZL:.7/#OQQ"CH2 M/V9&#']"0DJ*7XU79)/-W@3RPF-3WR5-Q,: 8W@7+&?@3WW "GQ(0,0XL,03 M!S[#>KNI.BQO'N.#\9EC/TY28^($8QS)V$_ $*!U/SE^@!L8HW'CK%%<"OI( M'KEU$FX@^C<,EFH,?RVI]NJXXH&HLU7OO/5C6%$8?0++"@NXK#CVUT.%B]43 MI#']K_R=.VJN?G-0D%SM=K-S2,DEIK2BN[@+Q?-O7O\,_\C)N@%S8G2435YY M?C(#2_PE&51+IGN;;'?X+")N6LTV6M&*K?ZD\-C"LQHN"X)EB[MX=B>>4"&V M^%M+);ALQ0\E4SL&"EV4?__[O]3IY)# '5(4OY1>-85\@C(V[16N66,$ M"/C><,;P_I=.<.LL$C'9_K#9SO"DEQM*J*9LSX/9><E.X 8C M<6Z-"="5Q?(";BC ?5PF2H)(.95[+]SH.H19>MN%;%/UBSZX%MZF5G:R4CL% M60\\VFM:# M[F+QKH),694GJY)C:8?B3IR03XT>-_5_@/<01;KR]Q-/;37:WEIF'PVV9TFX)J&PP:),#3MK4D.0#;@Y^,:[J-C]6\ MV_;D6GTS+-E3>/(2&Z&4VO-5F0CZ!A=) 2CEO/HHVF5\L#L? M/3P8CZAAMV"2G"@!\;/C@>7I)VG,Y\-^H(N _%7^:V/#A<_P@-5NO?KP=Z#I MJPOZ9+UZGCU T7(DQYM6B5<1(+NK.-Y?V2TC38PT'R'N+&%"<". P@DR,7+$'C6<1^J#DDT#P S9 C,+;H_$X82E.V0DSOJ4G6LV6^D1N M*Q2-2*3R+G=MLS!VF'N1RYPT!<:9B[,O+N*3-'*_-T:T@DA[N(\K!?F,\FD+ MMEG5S7CY(HY ,Z3.#_$#F\Z": '+. *@C=&S5.19\3!\/0PN;L@#NFP:^! 4 M52Q!MQ8@55@7QI@=S>?Z%XR\A.0F+5X!9)VFK2[N6HK38NT$L7[A>7=;@V47 MZ>I;"J/F)MSU=I%BE@*\57R:QT /NCZ?-UT_Q7/:_Z,OFL9[QY6U*?'',?^X M,%: 08=P#^:N6^&WK M7Q_9)(Y9,HLHOL&XP9AA^"^8:G[D)7R,&>GO#H]E!:VQ,FUL#G_EGP!1>1-1YVLU/BW9EK[+CBC'M M#1,,W9'F6].XP.N*.XWE#8\I!RD'E5L=-(5!LT/VCN^R(L7^ZX]9CITWVZBDAXI96&^DV#?VQ[PJ&OH9G MH4&4*%M78E*0C7)*1=D+C_-G=(+G\4-$ON%@\11N=X@3'MRLWY.%079G2GG+<>?'UW:5Q ;*$CC'Y\1Y0$O9NV[8D.19#<0CJ^1Z% M'0)UY_&..YI3.>3[@Z42"5SZ"VD/$P%F5V1]9W]93^Q:A$;V3&X!]^Z&"W\* M6OZ&";]P<:#K<:%/YDI/YH;Z9$Z?S)WBR5Q.@W3)<"]X*8O[5:[FY?8[5_SI M6G.F;&\MC85E#7DPKX(UN(?JO_1_[!@!67[EF<4_[N%(WSGPL0V&ZZJ+TAJJ M1T8; W=7;=GRRVL5]'A$'_C^L8]MQ;7%'=1@\AQ^]>\=]WCH535+3E>J%(-2 M4*TFNN>1 MG')7@JO[1_.T[24G4GNH1O-4RI6'BN195AT]"E,YQ Q.;?WO$]YCMYN=5:.K MW:' W9UB?/I+P0F@L@\$'1W?\XCB>QY HRY'_C2+03T/98=D#T64HC];/6,Y M,XKN$+=BY';*:M##ID/A:K7,GL$FW$Q+>5L !XSWBU.8^?(%B4*>,^8 MDVTX[U42,5,>V=+9([+E7")(U#'NM<'.*'\NAR.8G:V!; M@ WP*,-8]+E4V;F4;(2BSZ7TN=1QSZ7*;-MM*O@L0],.N!^XDQUSWY@UOA$H M"URSE*R&7?< #QBXANXC'KC6^TF[IS>$LRG[O9WBU92 >AZOUB9_T2%(O#%6 MC:S%->%J54:K'6D/4G'D&E_@W<+7.LJ.9J=EW1*[UMWY>9*U!!R/';ZV#9QG M$+RV'XS*(]F$#E@)9QOLBY-MP6Q*3G+9 [<&L47+0UR/D&*,2UG\2S71+I7& MJF^(_MC4I^:3_Y^Y[^'&D-Q.S@S7V_C*$J"7RQ)J7K-G>4\^)H2:,*#1E'2Y M"5HTV57UQNWUUHJ=G<;RK;)+#I_4VK*R5 ./'M$=-CL;:P$KEJ_R<#SY'\.: MR7*G\C/%O;SDNYM;H,#6747VNS-*H@!LP:RYSV&W$NLKON+T=BU)K&X,-];Q MW5ATL-VT-_:DTDM0Q1)LKQ#=/>(B*'4S5]>C7NO0;0YZ>B5.8"5LS1$GL0Y: M,IW(.H!DZNN5J&XE[M]FA"/$CSBFT&XHE-$K8Z^.4O3[I/[CKA?M/N M+G>ZL&8_#(KR?(A&%YO/BG;8-"ZG.62[1(W\&B#?OBORK7ZSO5'''!_9PB-5 M!/2AC,R'F>Z*:KM'E]UJ,# X/E&V8L VM5#30FUWH7;.ZAS=[U5*O%.GQ4E* MQ%,GVA8 65I9ZE;>\([)7SIV.W-[/+7GV3RAL^SG+W= \0XG/,>>)#^'7OVWDO::W>//[^%%DSBK MJ-_$[9JN=TVGS1W?9SOQ.RBDAYM8%G/>H^?GH:*8$WE#R0W5J)^C3>G0>N=! M0;A+U^9['W%7;N M-VI>YJ9U)1B?MJ)?XIS;*POB*7:-_^Z=IX.ZL]2A4,WS'MOE6U_CEM6FAF M>(P[F6J,L5:W7XG^.YH:>.^'3N@^JNW-J6BV(Q^.G !G]XY/A0UL;K0Q:UI) M+]^)Z6VSTVX]JOW7L92=YH_3.H._LQJTNJ9M]\Y_'_@J2QCD*9K/9++FO<3^)<^FIEH\ MH/%6*NS+JE%^&/@A:XR"R/TN&;C+G_]@Q=[+9O<7UDH(?(8%1+&H =5W7J?# M3?Y-7E1]M%#JL>1;8U'8[<;Q THN!WC&T2UKOV5 -7C#V]BY-;YA98Y/$5#UU@\"&+"1S,=CW_6Q D :&6/:GC-Z M;-EXJ*P 3 XKI*547R $$@$91(T!47HFKS@"US.8:DJ!-+(&RFT4?\?GNB*5 M/D;*Q*)1EE)?!$?Q!N !#PE]Q^".\BAN?+[%6@-_IGR2LA2[6O$WBJ^=T'>Q M2\=M.C&-*#1^=V)W8@QD)85;9CA37F*!7L,I=Y%50$DC$PL>P2CY$[&?F)*[.#'AJ@A]@)FQ! M!5]&0-R0)8E:S("*=GRBNSXK0WM&M8/'5-E!5.58?N-S(_"G6*;A/IK5AB\V/D>\['(^2F!ED%3O;A!NXGGX-%.65,)'TGH"LCRL6^$5FW@( M'Q8LUF4*7W#8 MF#N2<)Y2?&O^8P;Q8'"^#/600D P"D8 $K<:_'J0%8YF4 MNB !6RPJ J":."!EC/$\H([7SFV(]:GRQK\D-BZDX$@GQM-^2^D+',W3)'6H M9B,PB/&TJ_ZX7CK1D\)("#5&!<;F2$OE>8320D4=H&_ 4J L+Y[.G^DGR9QY M0EH6YU$8S%IAB'/J*%7@BW/">I5&XDZ8-P^X: * (ZO#A;_-0V;8/2)F!]95 MU5DE%8KPO,] PX$SB".4UOIE>0JV2CZJ\7J=TJ2.:;QDR\+@Q4FH>'96OD36 MA"G*;'K8B"TB+,Z=+"NFI:)F_.*]M%"5E7J6D;W&F59J*ZAL@O>(W7!/M1W* MV*-TML4YDJ9F/T ")%A[4\@1L">I##E\G,^ CB!TL-*>B8\A;.(G7A,=X$N* M 2N1%^KLT>M97H7+03?B\*>F<7DHR;IS>\Z'DY:F053BTY7S'8CYKF88ZPJF M>0532U'BQ8C+#]N?:BY0L='441ZBK"=Q/BEJ58H8G-'7[^_SRJSL8#:Q@F59 M?'Y>=E TK4AX:Q=97%'NPM$\A;>&4=B@H<-6-Z;RZ\D<['7:O&XJ84SM?=94 MN0>. 6,.Z[."CH _E"8YRI"3A,G6WKXSDDT'.5UV7<$=EXJ[5*@GGB1.5HJ3 M!H>/%;U[9+.>Y>8#:K<@#X@SI:+YV"1GQ2&3^6!6^_0A]\^%[V461]>Q,U5K MY>?=^V#&U/^%TQF,MT;6:PN<>JW/597HU9[ALX)5IY M9TEQD!$BT_(F7F"?><(YN%0:'D^*7. JOJ5,EFR1?'-"+^DIKM=\S%DA^;PW M#]_82%AG%L;+>Q=%HA.4 M[-VTI*O46T)J0H']M!;2)_'44ANKED%MN=,;\(S+F"<$5^($3#1)G4ZSH>03 MS+HJ\1\R@3X+'&[?;WD\W17-1%\K%KM^PL[-\/H\'C=^=0+R'U].&)#U(H[1 M8IYR;]"QQ/Q?H'TCJNL_<;!A<4C+#GLM/M2$AJIPIS)HW'>I.RJC<&:""S^+ M8/(+/*_ %]#9:\J[543&>(YG,_008#,TIC/;&AZ%NA @2.R(;A(O.6X':$^G=P5QDPYL2?)23;3+H0=D'H0VH )F?8 M+Q4&R&4/;94 M!#<[&B:IBPTLDP5MI;+&J$)+9;_1A5%X'=&J%)YKYB=!HNL8]P[A#KS866@^ M([^8' >-&O"%S6CD>Z@AHG,C#JI%SP#9JQ>_4^0UT6R*AR.)?\T[EH0IR!&P MSG#')!Z);CZK_PH[WY![#&!&C7@E=$A9,O*M<=^@Z*(P2J)X1$T*7/P*VQ\P M(2'$DYM@.&'?#[A70 <7D 8NSMMXOP)8K!AA7IBDLJ;Y]Q@F<0/((DF9-UE! MD(@3,WV8L7R88>O##'V8<8_##(5"%A@F!\P.VK6UR.4$I20*B4\@<1MDK_V9 MJ%%PHR/;(8-=S1#1&_F![8U!1F<1_"!..>:"B#Q:(B9C?#Q'A96Y"XM]\9P% M6 .WA;@/ T\UP& @-ZL_Y8W!?70_H_P/D@C?PM^ ?>]8,..O&,T3GT=8*6;[ M+I$AGS>%#-(LN+[C.TIJDN1/29V-09VSD+0Y3"2?&8;3C0.NUJ2%0=Y4>8Q5 M"+4!%4?Q-]* )X^YZ\9SI8O@:5C'.Z-2!@?B69UR('@\JQC;+HVC(* -NR%: M!C'>K![M+EB3[R$"T55&KL8+.BLA*B_/K/M0P9SHM)O=8S8@>G1%]>^1!M'2 M?5=.82&L9JNM%^($%J+?'&J..(6%T*+I1!;":K9MO1 GL!#]9FMCBP"]$%HT MU6LAK&9'+\0I+ 1835HTG<)":-%T(@L!HDESQ"DLA-[0GT&/X6%:#6[EEZ(ZA9B]S97NYT'/M+H 05L)CXXA[F\E#)OM$S"A-Q'C]RAFE5L)VS;L MQY]VV8K?;5M\[/+MN\]9";SETR]$WSXB\[!*(5C%3F$X/#Y,[L,LWZ(4LP@J M1,BI4^/4$(1[S5.GV28$65S@_"]S8HVCH^%(--@X<9IMQ)'1,-HYEJI56Z=. M& VF:L'4!C!U-9A. TSM]NG3;!.8#@"D.NVB].'BHQ$"5N>N4J#;;@Y.P)>X M,7OU&4_:C>:)$WK)\RQK]3&P>F5PN*,GY4='T#S%#CG_FL0NNBAJWB,!CAV/.NHM,5/R@XK>9F M=VN$:EEMT^I4V@JUKN#&'+YCS[L:<&,2W*, =\]L64.-[6H")HX][XH$]R/! M]K!O6K:EL5U-[,.QYZV-$A7;5''0KGRK?NQ%/DKOV4<#[OYQMI>G#V[N>#CV M(M\9W&?@;/PH"XFJ59G)P: 6>JO0V6!7[6PX#RB<>)K#D2?YX-&)U8<7%T/#]P.D4U>&Z;/;NG\7R" M"1/'Q_,YVAL'5K'B44QR6S6(NB#Z84(5CND>.+8W)&][2SWO$NW# M/+^H@0U\K,3-:;=]?MS:,=M#?21UOJ$$#X;XQQ)@T#4[[>;R#"@P'^L80GM(<5!DSJT(1#SXWW MH&=5NQG.8WWNZU,XG5S%!U#&ISO9NVKF=JNCO?QW\2R<+A0.X&8XW#?># MZEULCQ[UG=,6@ ?P-9SN9._H6S;MKL;]G;P,IPL%;>5LQWU7QYK=R=5PND X M@-_A="=[QYAA'>MP/K$.5%JPT%C==9*)VEU=.TZKCWXH\GP;>-Z+YMBK_BA% M2P^:OWCTJ5:OU=M]L].K/.JVCNRQ)E3BZ)@Y 'NLB9HX^E2K=^WUS'97G[H= M+J[BZ) YA/*H"W=8K;[9Z^FPH\-%81P=,]JVNL)[.8V; RL;1+3P5[HJ-F&5E6)Y%Z83%!K8],IS4F#IP.?#^ ME$S\Q"#Y-XS,,B^8>P$@2PX$7).Z$>?, 7@K@IZ&C>N =OV"?&&[_F8 ,I"^C: .,1.C]3"M6OE*X\.@92U;J8SV JP!&Z>TK#OJZ0JM*!_6,DQ? MMGNK4[#LS(@"&83T%V<77![ DAFPSF$#."M?/U@#-PI#6 24?+=^.J'UM%O6 MT'#<_\Q]KH-Q>=Z%++Y>D+Q\%][X<13B(YS > =/B*:^FYC&Q]!M&L^0!';K MU;LV_X(^6J^>DVPL'==\AG\]M6Q%;./(\ #&AS>+!QGL!UAF7F*XP*P.7#"F ML%$?QI "+1C,QP/)B;6S)PS^'S-F++ -@N&,4Q*P+'^6&T0$2H\ ?K&"0-.X M14GN*2B.V13>BC?A,1'\%^:/?R:^1WFR,&J8#;$-/.QIJSG,9D,V#)\P"7&% MML!=$1];XO\PIO#D26(P6&=O:3RX,*"84H9TQS=$,_':1-%]K::5:[(QO,B- M&0WM&5 /KB%&=/P86#R8PWIX_YXG*8'A>7&4;.TLFQ6B6DA)SE,$:Q7GC;5 ME\RZL43^9T63?PS12&!>R)(DJY7_X)QY"9#\XL2I\1%@""N)J_M'E#(#U+-@ MF\U3>HN63J%=GO]:,)C)301&#TQP$=]$.*@$5A3^HL-T6M[W&=M<2CAE"/)X M5P& Z+_F,$X6 P*_LED$0P8, 5)AR*W&OTR2 WPF%?O-@/QZB M4\[RUT[,C<@Y_I+#SQ1CP-_4.YP1RN80<*>8BDCGW%8TC1D(.->?P7"R;\D. MI*<*]4SZU02FO6% +P+G\*MS.]LP:\G"3*/"^:N.LJF81B'U6+$P^MY93-Z MLFJ&7V&RQN6M,SL>5[^/HZD!6H(1"N&_I#RHL04N2E1<&2.!P1K.-:@GCDBT MUB,2KHQ6A/T BQ_M+?AA',PQ&D%*^:4UYK9=L) H*YAMM"OBVF4:D?660DU6SCQF.MCZ3PK(;+@F!YDU((HY%/.'"#%KNC6,P<_9VV0A?EW__^ MKYUL<-MOY=E".K4ULB73]R5#^ MSGU RG"FSH^&0KB"&2)ND]_%HMXI_W+%*_5DZ;G9?M:VFKWBDGVXE)U##"%Q[\\^=NWSV]*]S=;=Y/?I%&+G7N1=3+%X+S>RA3+I"ZC8$4T M4'R2=K.$*JIVV=1.[.,4C ZRL3^&XX!$9M9;[,&UR]LYDU+. 0D C(';'$?N MRU#NS^+HW["'X]8"?N'P;2G>%[+K*/51'X#IX.+6/,G"W&BC03>AU9%_.V(P M%K[C4#89Y-<*HQ1^9B$ZF&!F3@#"TB=R@1P=+5#+<((UC7]$MPP&;.;?.?$" M1@'&!6H(U0P"E0?C%^^!28VEPT'<:,+KY'OXW@1V+=&4Q9D9,T_YC-W YX82 M6(_NA&X#*-*>QA/N#U"('ANS.(:_/>;"/@S?FMMK.!BPAU)28ZB]IT#?&U3H MM -FX['OPDO*P6PA.S)D?'^$3I!\SP 7 %7[Z=;\D+O!MAA M('/05N66F>/"M#S*#Z;))R J?&#!?!LCG17XZ')?CFW_) 5%<0PE8U:6J]-? M[]Q+>8&\?0;?.KUK_2MO@5:UZI>%=M MOED5ENS#>S] 8HOU2I0A2CL=^/"M8!\C&J'BQ%V%D.5SCL2I\^\(#V'* MAHOO137(E19_*W=-BEMI?$TCDU1QD4]*UPEA[S&$- @##R_%9P$CH/V-.A\& M@N )N#=ORM))! J7\)!+(7$;:6R\P_-CI(4;)9S,\UA@#W=%-.[,NYE2 'SA M!B=57MF$O5RXD.RP9@[A313@OM"8@*Z!^: 4PUN2^4A>Q0I"1*X,$I_+!&X4 MPER2"?X D!:.R97M6!D!&!99([>&/:6!'%<$Y!G,]K B8G)BP0AY7S8L5C@ M(O>W(ODS4"/!L\7@$)LZ'N,[4QJ^'WGD >!V#;FEB.8Q^\_<)V(D<_@!L"8, MFA&(5^"W[V%T"XOWUX0);. %+/=KH],'% B]%0B+[BEZ$/Z)H%2DM!@,H0AH MR0=%7@FR)%/ 3KH W >./^7\!,HNO,ZT73H!1!6M2'3A!UP%X(D1.J6E"SKC M!I@R(]\5R#B\T9&/G:!H 8>CE. X0'*!=Q!W'W+QPZT1 M>B-?(;BGN$#%Y>:*%UX3X**21%!.".9A@SAX>9%I';D)Z>&LPTSNF&(T] *Y M?>&0#,0!"Q\H#(,+-B'.G"2!/0.Y.IT16N)PWRHFRM:C )&F\2Z3=B GQGXJ M%&OY1(K$B$*TL% &!X$X+D-#)8Y&=!Y_'&GRN6"8$+O/9S0I8%!V"]CF/"H, M1!*R7#.2MQ+(**_#?=*(H9S^-RG/B'[A.T?"-1<[ -S 4_=AG(YRNTGKY:0J M1Z%R]GS^#/5T#D^?\7Q*@?!L#DSJ@ND+>RL\0\8QH72C4VGQ$!@JS8[+L,S0 MSC=[RMB8/)B4.(/WA(GC"FV&$G?%N)LAZZ:J@6URJQ,@PJ$&[^->1\'DK&!^ MDM)$/4D$QCO1"^HZ\X2A#/9!*MW*"!$CP%-+ U3F?"KT>V:T<;:@M3$-59Z0 M-U7?_RO/-7E3"UWWP"'Z]A!X9\DD>O3B^C5GZ+$N #F"F"Q MWJ*42N4IYE]H]/+C)-3J]-?;^7.:&#I0F0DQD-ZL#Y58U2#]8 MS(2'+>&URDCI"I/X(&;)/"!=E9_6@W)P@G2A.H#P4H7':2-(HQ""B5LY7/., MY\'8#X+B2TT<4&[-"N,#^(O;$MRL%7HI*;=D\N M:=W'Z.:AIP'9?= $R':A M-(^Y/DV*U#\4W.[E,WG+I\]UN'#C'L>'D@_&E8-QE[=)%&R0T.X/;O0#L0D# M,."9C(!NXH" \\6V[=9!\RPW+\FTS+8[)4$N\E4 ?V\N'2'D0FT:6\<'&_1( MV;,*8437F_J,J/R,J*//B/09T4F<$:T5H8J/(LI]N*:!FF?&-Q]9%$6F2$CF M.'14<2!IP\.VV"X"4-F=3>G+@[YE$#DIA-XR*S M *P#F;.(HY0SSL_R D8A?-$S)>!%1,M&$KZD.%&CK\4=SYP;W8L!MLX7(K@ M+J,!A8_&3ACA$Z/P(3[[&ASGUL8:]?Q6 ZGS[2ZY'8.Y:8*MO])(AP9 MV\9M)+G35EQ%2+QEA<=L("C=1+:5(.WV=Q;S5A6KM2A'"P!Z*[WERC1.P:\E* MW%5(VR=)@R5J1UF3'LEHH') Q"T/-(NS(HD@MN]YX' N]L364J" MAN8-@\,](JTPFH:XV46XF JNR3"6Y9>A*0P!F#K,7FQ%GP,^!@* MPYS.$_0B?&?J\0I""1.T9OQ$@%MQW)O$/6\H9!BQZUR$2* 36N U\+G#DR0/ MO\,3SC(>+EPR1"F]EA[-?;!Y\,6RAX)?3F03/@KT^8H*5=RWPG6ZY\/P8V-, MH:A$J6RZ2E*:%ZVLA@ FO7V&@I$?7 MR$!R_DE&DS>-+U0*'0^S^9E1,=2^+[7C+F\OC6#?]';^B?0PS7=.6B!S9NY, MMT.(XF:KN^)=0,M WJ4!VU=$KY8>"'K#$"6^Q[@1"MS+TA)\V'^IXCCB4 L9DT\6):/SQ[ M WDM'+ME8BR.0OC;92)-0O$LX\7X,"\3_5G@!C] R-(8I3PMYE;QL"C]7JF/X MWB]/KAQ[/!H,.X.K=K?/KCJ#8>MJ-.SVKT:]\=!QVP.[VQH^X6_E=WS\]N[W M_L6__KSXX]O';Q??/O[/NXL_WL+'3^+35;=GM_NVN.>(F[ UJ8,X?J/=-(S[ M9#%5:C14D_XFTZN.8W0+ZF <'GI$94P> IB"R-*L! 8FH&-6(P50Y%G(%(F4 M7T5YW^,@NDWR(V"NFKDEKACR/ 0%XPCI-#M7TWX(6Y,Y:C\>3\T#JM9>Q-VB M//R'CMW%^]!?E+]M.<&2_1"W9 F74XS-H#B(_.P@^ZAXV[D71#Z[:2R1T$G3 MV!_-A0<+O6%3Y8($U+Y/2"V;2L'X"0HE4HX4"K$AN9Z6FL[J\0^D%BR43$IX MVFT.9"X[KB(2AF^:8W2K)70=K]*,@5XAF3/5X.)'.&$ME$\HV'M4>RPC7 (8X[X?%\Z$$84;D& MM19)(:4U*8_N+Q;\N<60/R6I.1^A,A]SJ>C/^IO6#3R,!#T4-]$M>A_4Q_#J M0DI)!J"TR/,@V<()1;>)_4T>I)G1-=X*R*S._RT+) M>D(RF4 I*93%;E]'8#&'/ V,>PKHZ5DJ"Z4B.%/R/U3F(++OP!/K")HK9+F+ MZ.;?H(W9?? M]YXS^S*/$S1M9*#P>W\,O'R!-.+;P2W5*):+ M-)CRX.#AMJ//"X&C[WZDO 3#&U'= &X)?#8VOI!_U%1K)^2\) H474@H@HP# MI;I2^(CYI)T=4 T)XZ856":7G]]_-9[-@GEBM)I6ZR?\#OZ ;8_'*%.0%PKC M/E%9(8E&\US(-R+ZF!([A-&R/" 37\_S+44<.5=G=#OH.&8:- "4Q+,9V( D M$_G:R^#B5/W#R3VWWT -<)>;* $FT(TK[U$REMFB"= MP&$=(8$X581A=N%ZA,E%6;<$ M"OE:S0Y\FE'L:SB?;J.32,3#XT#Q.PR'*><)&*VXJF16M=M&&FP9_Z"C(FC0 M5R=@+@&W,!\9M\]S3&B4RB#1Q"O$FE):FQ0A*Y?+=2H2J$GH%0&O=,J5D693 MP9.2,F28SH&9E$H:UBP"'D<)%I.#7F:=D",13?*B=75+\?(RKV#."43FNKA* M'G*"R@3VC:,?Y#J'$3RUBE:#J(JF=6;E.A.WAP5+EQ_1\WP?H99H\P>H"8)I MMCM1S4=*F*?28"0%E2,7\0Q#<, E'J%1Y2"[;U*=-9%?P/>E@2S-1GS,8YQ# MI?!8GLG+]8- D<>3"WE(!Z\>F9U(%FPU4]T(9$'H>24A-4TJ2\'A-6E/8O113"5',8.^TV'CH7UE>8YWU7%<[VK4<:RK07OD.*$A IWR)(Y=Y>&9QU;>MP:'.8+963L(3EDZ3;PP,.3Z>WI>- M\&!G*'<4; ^1]?07:GC0^ZBWO>R B4>C2@K-,@J92RZ#K_. B/P'Q1RZ9"[:%.BZ?B?/*BYX82MKV.ZH#CGC&=X@2_(&FL_BMX!:Q DB\(3I)2.[8ML_2$F5FF<.!/_51$!Z^[ MZ5[4+:/G+2-ZYN3< 4)4Q-B=3^=!GF\93:?ST,\BK]'\S"/%U6,IJAD^0:_= MNQ_P?-HX?\:R6E@M[-L$V"TQWL(V/O:3D2^<8?D]N4\QN^=-3%(()OY/W)G$ MF#Z"V,8M-9C>HM@)QH7?TK+"OJ.L\E=&M9Q#3RH8YB$$U\:KM@+NWY\&M>K *=R!D!S+N.$M\N7.3TR!W'1N=(V<1,7LH?_5112&8, MACS'>0JW63J9!P/:\1A@R6(<5AS'^$>DE'3AQ9^!2[)*,U%@X$&9XM?,@[RS M:C;*B8; M^XVU4J3LMB(G)"7UN'2DY\'="WWM7M#NA4K<"Z-.J^7U._:5,QK:5YUV9W U M'/1;5\,Q1GF..L-A9U!P+WRY^/KMX\?/W_[Q[NO'/]Y__OK[Q;>/G_^XLGI] M>]BNU+>PEB/VB_A\\AJ'S/=@'S]*!P1-P%!FD+D>\H#6]J=W'RX^??GZ^" /2D51K%;3,#Y1+B;Y51ARU'&S"Y?"S-R\"F#@W"9S MRNU=;9206_0\P0H,$CRKN2[FG[(XCGBYW&CJ)XF2M =;Q.P4EJK588UI%RR9 MA/@J"P=TKAT\P<-CGZFX5^2JY94#X;V,UY7DV]E0EB[*Q\*3Z5PGIDK6R@AE M3B >: DKN_3,!FSZ.9CGHT"FW&'JU(+O^Q/>182.QB7Y*)YV(>:)-V"DZ@H= M,>D*1(F?4 0&;*X83Z3&),5K43J07 1)ULJ'%\$;20'$:S\>*4+TXVH.J9+; MD\B$+66G3H'%68,BS#VCF%)L=T29E+C;A T3/H)YRN+DR=Z%FS$L@:>8RD3B MT%7(HI;ZRX(.Q)&E2QW45!L[JT+%'1>WN?M%O8\/520TA7DY3A' H3P/!'N" M@!%#">69GCP>+3R/(C,)00"RG/.Y1ENHR*43%"K]%HHJHGW*ZPA24UV:< MAV\(L+RO]'M1U<8R4E(1P6F4'LB_J92 H M3T*&^=]D*<_('3'N."?,N?%YA>*U>=BR &OA/;(\+;YJ6(5V##RZS&;.GJ'*T*1"D 8)GW0]&5DT^S M3(BET34/D.)2L"@8>/D+51KPLJ]95SBB1:%\+PYLA8>H@RBO1BF*5R989S-T MQ7(+734/09D@&KP"4'*240P^^5)%B4HB":VJZG=:F8(J2M<*.F11'C]+Q8+.7,,DX7)6NWDAP6JXW*>\MUIV422T\DF5A M7*-3L21Q7VF'P:V5F1^N<7/RT!/% "$P<)9%G9;PZHH@Y9SO/(Q-*2NU_6/8_#+3_ M0?L?*O$_=%RW,[9:G:MVO^_"_MH:7@T]MW\U<-JNY[C]]L#Q5C)-K0O,:WQ/ M]?B2$]^-7\!V'$=KB.$:Q]N*\QHH7$FO5C\1B2&4]C468TT854('%;.2$')A M&EMJ&"B3QA34/=IJ;NJG>02S?$CMM>] LDW M&#@MRW5[;"5@Y^K$4Z-M0/&?8/1=^TE*'H)+)^ FX3N>R*I$ Z!5\"=WL@@/ MU!'=3]O[QN9JZN7?QO0_+$682P!CQF039V(4,G$ MB5EVH$P9P3@PV.)Q4S.O,0>6L)?R#W41D.9"PZ&L=[F.*!2A M<>9I)+_@^I2^*:C=UBQ=TKFM%5V9QG)@,IZ8KVOJ9>Q9;B,I:QU&M-+\P7:W MV>_\I%J%8@C20E1TFO)*M)@Q3%J* /F90/22VRVW0+JM]H(P#NG%\E)G!+NI M>NQ31I,+GGOH-D>'G%ZJW-"UH=F;Q,?D MFD=+X:WBRFJVSE5[EUOXI=W;J? M$4^K/ZZG>R4"^10G=OC3VV6F*C7!,@MET]'N-^I-]\>F>>Q M\>+UULLNN;'V11AP7F; [K;JJE*J[Q)O(O"%R,O]0C5ZJEJV+PY,_PM @=;O MCHMVHO+F^&NVS&S+3()GTN0DP)T?M>R"31)L]ZEN(:Q+X(3DO/\B>D'MN3Y; M-*1>L[(U^UUT3A6K5A6C/8-EO,C3THVWN$F,JWKZ_V!-KN<*Q+[AZ5553__= M61C_R^CPIRC?*WCVGUDH>X;VRF1;*==49V(I.MAU&0,=7%N.NIC%?B!Z(MN4 M^F19KPSQ[9!_O8/@FH+I'; E@^^!R7QD2A+M[%=[$TN83II8NVW+-:%V094T M%&I.K$>]*W] _=!N+2D(-"QX\9:[JX='#$3;[%C[T^4!-M%'ILM3>]CL#NXB M]1\Q4>XIXNM$&;T%. "5298/E@2\>NI[)O;_*=/8,GM#ZTRV!J=,QZ=VK]EK MG<&VX92)>%Y[BK.BI-YP'-8M__G;Q:<=?>D/ON-K!W]@72XZ4UTZ_9*&/_0^RH.^':WY542&FL-+\WB.A MKFW9'=9R/$"=U[WJV+9U->@,1U>6W6^W6Z-NQW+;*ZCK7/T.Q+ITQBQ=G#;N M.H ['*O!!ZNV7SM>0L$?F.N>]=,X!1#MAYE1;]0?]GOV5:\U&%UU/,>Y&CJ] M[M6@9[E6O]]I6\/1"F:Z5]0;_F,XCDX;,EV # W5^)C7O*Q:.&VL;6X-5M3E MQC2I2_^'VHA'IF$M=PVIL(G?]OKL)7,XB_KL>W+1Y]"XF%]C%WA;9O(0Z7GC M>X-L1DJO$6M2OE2\H-!*'R&U:N[2C4H3^^UAL"7OE3U&>+41F61D3$&I+98: MEV E26=&8,.*MI^H-8G2M4FT?=K8@>@Y)JI3<1W*P,=Z-#QCZ:FE-+H 8CSM MY,W6Q,(>23Y^HT2LF%U'U).AV#BZ;"E]ZND19'5\,:$=OO=CU#NC!6^W3J5? M!!:H/02.:,T399<5C M(B>V-%0&=D::Z&$&V=,M#2K-^1_JG'^=\W^/G/^BR=&5@R:CM,_Z[K#?&5WU MK2Z[ZHSZ_:LA;%ZN>CW+8BW6[HP<>\4HM;KO_M\_/O[Z\=OE5:?5L4X\@[H' MEJF0_LG66-^\2,!9IN9.RJ8F8*;(''S11FDW $8ZQ]2WR?UHH+B^F[UC9NV> M2M+E-E_H#BF8]UR2(BR'S9Y]IKC,SV*K9=)MQP@'=/;C9I7\?Y+63;N[P;01 M$GW'VK%"9%>5Q,'3<)1CA0<3%=7PZ+WH7,[2N'QW]8,>A*\?.92-M_EVN C$ M[7$:.=RVJ>:#P*VOTH*LDO6D:#=W"2T[,O_T*Z@TL./\MBJM PF(]5AUY L; M"7,;L+"QXZ8O&4?I*W44?__//$I?;1T+O^S5$[$1FJ3I[.6+%[>WMTUX0?,Z MNGEQ$;L3T*?)"^9=._$+STF=%U:[W^IT6R^ M:U6I]_I#5L]^*O7&;QP;*MO MMUN#_V,_&NTKJSE)IV5B;$]:;=V'O:<&I!>B_18U\F)4&M$SWN#RCGG94]BH M?DWAZUJ8]XHGD$^][A XJM/O=>T7Z=1N6=UA=^!9 M5^P'\-)#":A2T?3K DO!WDT(2=,$E/8VF?1&E*-=+FG,PA*QAJT.&4!N^1$.H\W"&T"6VU@19 [8'EDE4C1^J MZIU55$1NE\8*/U_ELH(76>1W:S/H5&23-H/.1C9]4^(A' P(H.JDXWD<8D<9 M&1=1K/V:=8-%]N,]>7C4(#91!6O!< PWFBV0;YF#1^0A,-><6(KX!WAZ)GKC M4*O?A-?Y#Z\;V$O P/"&52M#]'="4X,.S-,$>^PDON<[,6^?@-TCYNDDXKU] MP28(L9]H(!N+P!/YB;T7,5G)'FO7&E;K)REBL.X^NH)X8]LD86F)O;-E)(^5 MK:U6T_K_-&.?"V,?W.BX#;RP@4%5K7[+^L%^6"WOX>R&U4"MC@T#DX$:F(!)<5UF+W 9\V'NH U"U=,! P[\16W+8Y9&_(I/.)*RG^GQ MO_[^V?B'$\=^8OSJA-^-/YH736XX>%,_%'8(MM6XA@$W5T[H'Z-X)[&65;T^T.X!/(I-9PV+%?Y#*JUQH^L(PJ9V]*R@>J[>M?+;/&3P:"XAG]= &K4M;>5H.;3>RFE; M#R=!(./QY,_'9&#@>MF,D'CZ/X5<68X1X,G>X'?1U'HB(=:OM-*S.,^"PCV1Q))M,#DH\VT&J6 /.[G\V+YMOFE*^=%L[R8AAJZ=E!+E( MK.;'/RZUE#@?*;$U[?,CE30P_M^O7S_!)AT;[[I89=^=Y\FEOOS:DU]G1Q?. M;(8M%$5"YT<,&@4IA SZUDD=@XX>1Z)G.!Y0T&M21[1PQH:+GB>V^]DS\O'( M]SU?68M'QU:7;_ZAV>J1LM4WYT<41M,%J*^4A71,>>E.V-3)^.SQX_O-Q2>- M[_K@^XT3N/. [_L^^>'W$98#J _:W[Y[K]%>'[2_Q;H6?EW!_NGB5PWV^H#] MDS-B01UQ_N7K.XWS^N#\2\P2P'5-;9B.AOHC@OH;+ %@?,$^J.4^FF>\AIV( M2?,5SD '*];V<&3EKCS0PUKCEWFHRK4[KJM2T.#N VGF0VDH91&4^CST42D] MT[2&;%I28F%MA::U)8V4T@ZKCZ-7-WM,YI;;W68KJV441B'+"(A1R9'1,EJO MENHU[%;Z)2N/]&2;G$,Q0^RRKLH^5=$Z"--L7:$GKTL%V[$&\YZBG3 J$UV@ MR^<&DI%JMD"GM4(\!4&OTA)=*%2V6QHJ>ZPA?8GB[+P0CQ*R^$3/$,>BQL2Y MP0,)%AK1U$^7S_P^IFQJ]%K6LQ'U!/[*KJ4/Z[+Q3^4:SECJHY@.%O#J>#J>!X8_AG>*GM4>+S3,/(TI MCBFK=UJ0N@@"(\&:FO- )!T))"7&+6!K,XJ.GLF*>JP!# L,.$.O@AXN6[1VSB!&-,B,$'470JO\#D^79S+.M.#\S3@IM' MK;G:;BHZ7US%O]NQ[NIV)UFWU1P,USG)C':S.Y1\3G\N":''5&.TLAKALKCF M)B]E0:/:+>H1=T)K<.>"HKO/>=#LG^N4SP%Y^QQSW$$&'.CD8\DZ6E(_C8KL M:H%2$-SXY2]/[">[(+8S;*X].GE0(JTG -UYX\0^J,>7"5A40<,%U027_?7Q MTZ>W%W\8'[Y^_O.+K$CQQYOFO8['-&[."C?;VA_N@J1]2*6A=!@HW:T<\?%$ MU(ODA;&CF'H3TT/ 8/]GTWCGQ,%"HZH^ JI @#(H: S4"P.;&^6M2R=#[___ MP%\4&>1[:J\\C1Z-'H&>9U^R@F\K$#*-_,<+U\5R<'B"H )LR4]D1/RWYQIJ ME41QW=<_\A#X$N7 .KS8S=Z3VML!<@+;@KW-_U-ICGZ43NCZG.^.YWS6 <[Y M5-^[.&(K>-^+WZ'+N=TJ/1Z\B7RO_'0P]X:.(F\!_YFDT^#U_P]02P,$% M @ UI@$5?,UB77Q%@ _B ! !@ !W;&1N+3(P,C(P-S Q>&5X,3!D,2YH M=&WM76M7(DF3_BNYSLZ,GL-=M!5[/ >1MGE7P0,XL[U[W@])52(Y%E6U657: MS*_?B,RLHK@)(G8CYLPX2D'>(IZX9$1D\OD_LMFZ.Z"NQ6SRM7MS36S/BH;, M#8DE& WAZ1,/!Z3K^3YUR0T3@CL.N1#$G.:*Y5PA=WJW=QW:B1O6P^ M_]=A+9^_[%ZJ-Z#W(ND*Z@8\Y)Y+G7R^WMPC>X,P]"OY_-/34^[I,.>)^WRW MG1^$0Z><=SPO8#D[M/?./^,3^#^C]OGG(0LIL094!"S\8^^N^R5[ I\(>>BP M\\_Y^+?Z;,^S1^>?;?Y(@G#DL#_VAE3<G[EL."'9] R#V]/?>9[]HG; MX:!2+!1^/?.I;7/W/NNP?E@I%G.?CL?/!+\?C!]Z:G$5P1P:\D>&O3\S]A!> M#)CLX? 87J?&A(9^W*SON6&V3X?<&55^[_(A"WX_D\\"_@^K%$O0TN$NB[LJ MEN%!R+Z'6>KP>Y@,/CU38U?TDK'Y1/>/5'#JAI5@2!TG:U$_@(_5_[M>N^LV M6DWR9[W=@=^?\_AAH)@_AVJ6PZBH]+QP<#9-P'ET>H_<+7?![S'\5&N*%?XPV=H@;0R\&E53O!6/XP1^/U",.@[L:OGK>^'E2&/_ O+L# M'I!U)T_V!TPP[F9(.&#D,Y]8AOR[PD.8F@4#_?;+2:E4.$L&D:^+9Y_S_/R MP!PD@6$,[L+H-"!>GU2C>U@0*66(U''[.(CNYOFQIM=3[_>9A>@FE[ .'%*/ M?I A=.BY]^0OT+@V*-\KX45^AC1<*Y?YW)L8(PV5O7/R.=\[I^02Q.:)"D8L M3_B>H"A+:J(K4>/"$\)[8B)-#$7,JXB"1@X]$9 6$OAKQ%!:H>>^L U\F?. MNY)C%S>MWWXI'A?.OE(P)@&YH.Z#>M#,57.P:.)2I>M)#]X"=0DD#SR+RZ<9 M8 )H#VY'("PC9 ;5P\G.X775!@7)@U!(G0& D&!8'01SFJ=)D-L&(2^>S C+ M+6A)#E.G0.T.B@2B*WAS$2X\*\$3%L/F@>_0486[XUD/Z>[14&IC=GB4 M*QYJ,RMM1S6WO"MM.J!INF47&!]#>1J^DVA%_.#KN0!".?*I"#D+4 6% PH> M$A,AY>Z*^LB6CY7V^%?D,E(Z1N51/"7[B&+=AR^X)]0(3#:1HN/U7Z#&ID>> M0"]1HE8%)PY *)O^ \,"MH8!B0+X4ZE-Z?9Y$4R;]8$:4G<$ \ N&5 @"DXF M@#F3(:,NB&@0-X.E!)$UT!W*S\)3_/CTM%XN2%N#S9,TP"XV DT@54 $^[\( M\(/\0'REP3FD#RP!'(VM1Q C99JXF03-<0<(WK$>!C0_@5E!Y0HO;8\$'HFD M%L4VBGG8@^6!MD7F UM92/J> .,E&0J:.S%B;\_*)9["BIYITWO*D"[2 !;" M,D3S 5Z0>\]3 OQ(G8CV'+2:L.D BFBS@W01S&(G"])X?!-LE6C6/M$;, 687BTO<)V#\ M/_8*>\!YQ]&;A^1UX%-+OX86 G[LF 2/ !1N44=35%(2]@]G,,N09;$AJ\#T M!/4U-$_*N=,C(*4>(W;X-V'F9EBM]S/@\H?>,"6DHW;,M5$"H+4-//(C[QDXT\5C$[4^QM(&:N) , <]*FD+:(6GZ5$W$> M8[>3PJZ904JDQQP4(9;XK"ES=EA0OG F^?Q)[M-^[R >9\8@IH0E94!%;$!A M8!Y*WYN#P(QB]PX4U=R/*^,D8/N>%JHW5TS%DA*<- L^E30/\(^U+,VT%5-" M6CK,%8X6Z+L5 *^\!=<3 /@)YU,_VCL';B5[=?G+CX0%A@G,O.>R$;K>K ?$ M=EF@S$,MY4)<,_Q@JP>KH I.FO'7'FQ>;K7VTV:)"P+0!/W*00KA,1HUM&M> M!.MR/0E8]MUBT.]_EC.%0@%_8D^"W@.&[M$WHJB+0?\"_$)8. &'!>#@HEXP MBG16D9:V6I'6QHKH-E9$6ZA2T6M+%*"4!(GSM#^$JBUX7O.BLM+RH705NF+S M5/';J["W<9-+)Y-N@'XTWF(F8KAXL]Q;H[)MSS'$Y5?"@S_/7,8LB6KS5@E6\@IOZ,3 M&_.7-%4 X,\T+1WBOPM'_;[^J.'RIGOG@Q?W'\^,K#.SDB)_=9VV*H0U7)^6 M;*T9RZ;N*K2TU^F_?+3MRUH!1U/]%W,G1^MC9#EZ-4'VSKT74^VMT;N05PJ] MO]&A?[8*T=MKR&7YU2NKK<\OL0Y1BD>O1?!:,K=<*[\"_ 7M,:S%A\/U :;H M<;]]''P+];7UMF =I7FZ%#>+V2";[J]%2L7!O]Y8D)SU"?Z*IFNI!]64KK*J M%;"PA@%:)FVE]5=56*NM'K>XBDT^>/'"$O.SGNF23E@0;%BR3WB%.EM!22_T_]<#M&I[](IQ MUU+!ATOAE-BDTS1?5;PK_?^!B!OVJ/5P+[S(M;/QLN4_9ZF8V.0;FNO3(I2N8=6/)DI8ITM4?7K/LCW!Z$.6]H$(%>H\T5&@(V6?CG/E3[^>J:R, MKO@LS!2]ODTQ[0O+33]N_J@PFSXZW,[TD1JXS7S! N:&*OFXA8FCADLDCC#> M#2TBBST?]IZ;XY!Y49F^2,?:I^+L*C\R+BU267814RA8&G%/%P[)4B2:9'-3 M-6EDGQXH9*CBF D&R'Z>J,!2.\SPSJLH4(V/%U8(I OCU"(.9.F2K+^)4PFJ M"F"(=5&AB)@N6Q("DV_[F$/VPW$YU?0D+> XM%3E!I.SRAV-Q[!Q0C:23; ^ M2^KSAEX0RJ(@F&N?N]2U.'5(D%1?Q@M+.)%*-BWFP$&&[/=2A$U:1$P).2?T1/PM]Q,^P0,VSK$@(G3GCBGS< MC3!W.:X>6VE &"&NV BP]\CW7'+/'[$KE5U5))J$];YU0!BU!N-LX$C.*Z0/ MS)4Y51>X$018!*MSK5AJ%84#3X!8$QZF!"B32 ^NQF<"X#F4R28O5<00KVLR MOPN#60 R>QX;M'!(.?)D&5DT'*+4R(_@618U-44^!MR4!2R*,JIP;]\^F!X2 ME]ECL$H[.R5B*U8.3X%(4SA+E &HM) M6SAGZ4@RM?18W.*T8"B3A+'P)=UPAX=RII)00SI"&>\X@5=QF C2?NJ5Y0RQP!R9'0PDMZ,NA@CCT"0B@DO58 MZCB>Q%"CVY)@]42 5;+%3V=$>A,! 4%D0I68NW).^@$6Z(*8^PZ3 H;J.1SE MB"DVF?$6RMOI+>BIWO N4%=YD4_Q5GX,=G_\@:K+G3E*I;.+BRA>,:OP#< M()% V1\;!VFT=%VSJC6H>0YJ1!2V2WT8,8CKUN?.:;+<5A4*RNK:<14U9ZAN M]>E$J>Z%]\C1(&'QKU:;\P:.31S#M04X?1:?RU&S!37MWNN*%+D\Z#-=! =X M#9;8QQGS>)8X87.G%+^I595V@*!3EAC]%3T[&$W.2TW?6U*[E_Y\TM?SE!TW MB7TT^*\?@:&66E@VT.9^[-1A_1\Z=O(YED_SH4^E%PP] H#Q$.=]0JP8&DU/ MLB(^B##V[%2GLL)P!,;&=='BJS&A/]6WJM#&LQ>(3KUX1ZY-SBO&+9**54Q>-/7N38LCA&PRC4X$[.A"SQCW:E9*G\BI*ENO) L%#89Q;O MHSUU1A/R%9\)G)%#!91$X!3P)<:+CPW _1!"4L.=X0S>[[EVCN7/LFQ"])XN+8TIHX?3)[H.,R5]^G" MHP%3\0MIS"7+?(K%WN!P#*61E](::!/(OON@KI4)E)C36U6MC^=:Q$G0)OLX ME]U[87S>U!?,I_$IH%4K'7&S8CF1'>\Z^HS-SE+7-,:&PO\X&3/#^LRF/7/%T7K5E]O!X5GC2 M07"F:C]-D3M?Y#2W;2>+;]BJS81*](1E;1M M1@OH1L,>FERE>8#!>"0QR,01#AG=Y7UI-L/DN"*JV^1AJIT^W!_)<]'WZ"[H M(PW*F541N="[9])[2%PK(&B(P6L\LA/O(>1!8CKMUU3=Q!&?.CJ)RXN#X%-1 M,E@&SDM>&@#MI<%/3UJJ8.V13;\9Z%FB.L;?X'H NE@P&0"6$>?$UXLG>YFR M!'1B1!WD@HGUJ27C4CH(. 1/1P;C.E[0H67$L\+ MHY44X\[P<)\Z@4=P"^RJ*Q%6.BA^>_DE=39<]G0PCGE/'/*S)]8'UE==OY @ M;';%Z1W[$^B,(+X>(S&A&3UX_ 8R#G9[1Y 7QEEYF:''-@B<(#YW,,9W3DI]]5KP5#IQ^0'B-(03T91*-5PED=F% T MU!%7N;,4TU%0R:Y9@HZE2SL'4< 4\7WJ@_[MT8#9Z6D],.9+UW44@(.;D5M- M/-TI3^])?9"9BLOJ Y43FU>M*5(!6(<^33LS7Q@>BW;T_F:*2)TQ':&S*\?K M 1UPJ&9\JT<-_'V&6ZJJ%>\WV!/YYHD'=7'%TG[5/0N2%ZJ/B8U*'/N5:1@5 M 9;$(FI;0NYE9(]I8Y+IV-.,,K"00Z2FQWP#*6(^&:"B_+)2]:A^R\L+B81\6[RR_U M6#_B-N/0;#/,-F/FIKV?>+.>ZJK\3-IK S+]L_=2;WK_V_Q[VY(2%FP\ DJ MVRL"<(9Z'GBZ3X*'X!MMP&*MS-X5V8@,E(3\8P]AGI2FQ8*NQ,7"I(,?L$K\ M1WJ>2&P]162\+#YPPTGI*8RSR5IT9N4@3-1+O&"UR,6);"].6)=/7VQ:?6JWJQ](^UZIW77KM4[LXI;9\F!;X%/@*NY&ZE[<&V&%PMU3FX7&EO:VY XZ+5;K?^ MJK=348VIR@[#Z)_ Z)D5OI#7:]'#L/O]L7OO_*_&]?5EM4FNVJV[VPQI-&LY MP]D=X*P19,-NPVY[I54=Y4Y/MY[#>^<7HW465R[G2H=)>$='DXK^=P);"&Z3 M. SUWAS0?) GW0%\/B"7.?QZC*#'7>-_OG<]EJZ\]P636V0\AQS_TZ1#5H'? M64XNP.85L?&!SL [&$G[=N/K:!?$F\J[K MQ!/PVMPPPVC?Q*C)VND7\MHV$(UOK3:S4;5,-1(KF'TCV-T4KU]&A]L M?17;JYVOP.UNJVGL\!8Q^;5LK5Y4:W>=)!9";JK-ZE7]IM[L$L/AK>#P9L6X MUKJYK3:_&=YN!6]?R\U&LUN_:E>O"4CM];=NH]8QRGF'V*LCF=7F):DW_VRT M6TU4S,!NP]^MX.]F57.]UFJV;HP,;Q>/-YR5J+4,8W>#L9XA#D>\1Z!O7MZS!R/,-Q?\7@$Y6)(D^O" M+CPJ[/D@B+][05W1L%6L?+>325W-52SG4GA*KDS";Q%)W\R3U<_TK"3&L:GKYN0-V6O>=/1OND MWN<-2%<+;XYZ[;9IYTCU%I=%K;Z#,X0VMW*]R_W YF_E&A]Z-/=R;16K30#3 ML'O%:.95O5GO?.ND#\-DR&W.I)]V@K]&G V[#;M-^FF7TT]_4ORJ34IN(M?[ MQWB@[UV'K9IZFF+[AU-G'X_SJ;33G]QBY%:P@&-28Z?S32;%8U(\)L5C4CPF MQ?/>P^DFQ6-2/!^!T._&]_X1<94M]M0WGQ"J7MXTFHU.MUWM-OZLR^O1NNDO M=]4?NZXW+^OO/6GTP<%C@I0_FQ@["8Z]\XN;%OE:;;<;'7)1;?X7:>:JN8SZ M,N5KW%")^.N-#3H^'#H61XBJ]I"[/ B%=*M@?[TP+&0 LL, ,;9E8^ PZ;+= M3)?]BV+#3LC\ 7,#XWQ_+ 6Y6G9M$B/PV&A+@Y3YV;C)3)Q\Y\W3<4O2,YM, MT,79)]=S=0!]];D6UI[J3%+JQ>$XDY4S63F3E7M55FYZIAL,P:>0+*>TNOZ2 M+^=<:KX!Y6!2C[N;YC&I1Y-Z_ B$?C?;DIW;:&P^F;@36<*=X[.)S1IVKQIZ MQ?1=ZPNIWM3Q"_ RLZD\P^@=8+21:Y-%^7!9E!LJ1N2"T3 <$>.:O'<5MEI6 M),WS]YP2,8Q_:9*CPUSNB9^2Z]CX89]Y <4)!;"9E-Q7&^)0K;2YRMQ6$,L!9*^U7#0(>A!1&^1F9/[W8 MXU3.8F-QJHV=;S*GF4Q>S>35WD%>S9QF,LG#74G4F.2A21Y^!$*;'>S[V(B8 MY*%!Q9;0PX!CU\&Q=WYS]^6*W#4;K:9,(>[4N2H#"Z,S?C8X3)9H-[-$U]2U M&/D?9O,')M[KJ2VC(-\T632)D?=\RLL Y6V30Y=<,"OTQ ]-!FTXUF#R*B:O M\O9YE=1[GCV"7X-PZ)S_/U!+ P04 " #6F 15/Q2/P-,( M 0*P & '=L9&XM,C R,C W,#%X97@S,60Q+FAT;>U::V_;N!+]*]P4 MNTT OY,^(JRNTEFG*7FL9CP5CYXWV6:/5.']>KU]>8*E>.4=E 7O9/&MV6IT.:YT'G5;0 M:K,/;]GQIV'OQ V^?M\;_N=#WV_ZX=/KWP8]=E1O-O\X[36;U\-KWX'5VVRH M>6:DE2KC:;/9?W?$CA)K\Z#9G,UFC=EI0^EQ2&6V/N(3FUKS+?AKA):CIUTWVLC_"BR- Z8R$_5$>#D;[?.N%?>VSE,Y MQF[4VO4J"3"8T?]VQW\A$<(U$69^E5"E,3K[]XD,I?WE2?MYJWN*I2^:(929 M_QV"1\"UT%N2MW>3_&._-QR\?U=*WNJP7O]V.+@9]*ZHF;V_8;TW@_X-Z_^[ MW_LT'/RKCR;T]F^_]0D?/\^@QH8)%C7LND%.:T*9U5@DM)6C.;,)M\&W%&S- M!4Z?8X@SALQB&"*HNY;'A6\WO*K_^N> )7PJF!93*6:@)YM(P_XLN 8:TCG: MK5D5>*Y?+HD;W7G/C:)Q- MYNPN4[-4@.]K7G&ENF*%0V8*@0*GX3)C/)NS(K.Z$- *PH"+(E A9Q,\:.8 M4TR+63BOJN& <7"Z-_]Y% V"C60&?9/I5OJM 0H8CFY=Z9?9"-[%*5[A>Y06 M,=:$#2O*K,'^DCPRAPD(/80JI!M+>)26,1M; X&Q"X0U&E&D& !,*!C.;6>< M/!$W"1NE:F86@-%B+(U%QN%L)L27O IC_;F^F':WKZYC\V)4^* <2VKMEFN%Y!3-AAW#3+& W;TM^O=(YS+DH5=PUMLB%:;D M[E->;S\[%EZ4]K/8/_E'22E YD%#FS!RZPJ6O&U)H*_;;;2VVPB[T8DW8881 M%(H.,NJZCJ-+?K(O[%P+@ZP+VG/\^V7[UB@T1+PPNT\AC@X%S%3NY%E?%1H+ MP'^GTCA6P"B1N74HYUGQ2963? X-NY>TOS);K>0KZI3@%LAB5"IC5^J8(C0R MEEQ+.H#TP;E",1D5&1EP?* M"XV"$(:FJ!E%2L=. )?2C$6&8)@"7^@1.0&7AB!=\Q@"P&4.2CMD%$5[(Z;^ ME*>%\UY2M!B-D%.@>LZ0=6[G!LN8MP,;^<>'TP4''4P$DQB?E(2JL(]+L M? M\N5H01G7Z,OY*@L7N9SS!N$U 7FZM/@!6S_>!X=XE6Z;ADJ7,KJ[G@?M_Q7, M04%&15&AR0 51G]@U8DR%NWT:@)KF0@+E94I.WYDR@A(@D]OC"X%1YHK7-5% M!5E6+.4Z\5(EW"S#'[&!0YZ('4TZ?904-D=M=2?2L@3;&%_[RRHZ6+3Y_/G9 M]\^?W1N+> '8VLIOB4:JH%FY,)G]*P+C5IZSE(XCU[%*FV4L<@U8Y&RJ'&_RO9E/NE+M << MGL>8:,32WQ_%29G)8 J,C82CYJ.306@RQ01ZA"'<84J>??!MP,%RP1ZSURL$ MF)&&&]6@>^&<']9S+Y]*,]<\/\MLJM*I()+.^+A\AZ9+OA"3/%5S@=Y9HCQ# M\#40P>A[B6"-[_.Z^AJZ"-A5,2Y,>4%P5F-TA^3$$KRP:M'@;V9D-5Y#(&-A>/M=GFN=!"%^_J\^@LR]>.2W[>8A*M["B2S=?FR?^ M&Q!"F]#HI<90=7G269SQZ)+@W3I%Y4(#]W71\F6QY-H>[GL@+2P9H??X W*^ MBZ;TXOBKPO+3QKM!H''V_/\ ;L?+536JLGB="\;[>\)<"^,WWCKI%\X8=-J M7AU"UKUN$>\H%[1X(Y.N2_D?R.5/:J.U_-@ M!_D?@G<9GTI5M?-[YMX;LB,?#O+/Q$5E-:Q]_Z]V3+5/BQI71D0R1RU]9;()ZOR8.GY35?> M+K+-0ZVNJAEQLBQR0Q[=C;4JLI@*HP0,^53(NU;;5/;.A;^*]IT>@LS<9P7:(M#F:$AW&:V!99-]\[]J-ARK$&V M?"4Y(?OK]QS)SCLM;2\LM&&&Q):.I"/Y>;[39I'@7M9M \(%>?R-[G86_?"I]=]H9_7O7=H%>?WW\<]$C- M\_T_.CW?/QN>N0KHO46&BF::&RXS*GR_?U$CM<28//#]Z73:F'8:4HW]X;6? MF%0<^$)*S1J1B6HGQU@"GXQ&)\US\-S[RU(&&X$.SGVJV\G M.Y+1[.0XXA.BS4RP=[64JC'//"/SH-/,31=:^E"])G/K37EDDJ#5;+[LYC2* M>#;V!(L-E#0ZAXLRQ1%!%4]F\3/N+FMQ>M MU\UNI]5H'_LC6,S\,10/ ==,?:_F_^[WAH/+BU+S9IOT^M?#P?F@=XK%Y/*< M]#X,^N?D?'!Q>M$;G'Z$(JCM7S_T#.^>SZ!.@)(H*3/RSP;I4R5F=1(R97@\ M(R:A)K":&3H2C(RDBIAZ5VO60$2($JWS>YW3L+R'%@K^HVI"$^PQI*)<:+OF M0);N-.&&>=B0!9F<*@I%%K^=UZ!@.4!0+OZ#+H\'!#(R#7!UNDMT=F.W&G89 M?!,MS^KIZ#<@"9TPHMB$LRD86)-P3?XJJ (\BQF4YU(9,+OD7*K4(;35]/Y% M9$S^ (,=@>W^7W(9"QD&E-U0Q%4GK#8-RE/C641: ,#"EP5C@&"H1<050!8A!G:- $ MH$4 #V%"=($?B_93IEC9"4X@Y1J\'ZZ\BT,4TSD+K8+8;PZJR0BF":"#11G- MEI=A!_#M .H\5X S$O,,((1H7$"F#N@&<:A62_4\B\$24HR.X#H4101] BR7 M\%$'2'.TGCF@"@F!1('@=H[X$FQZ;6@@563#KCI*% ($ .82L&B'TU:?D.J$ MQ$).=<4!Q<9<&PAE#:%8Z/0&+>M+4-:5,AO:[M"\'2T'3QS-PY5'_]N+M^W6 MFZXN\5H&8FC>9!QSN-W3^Q87 T(5LP@$1'%\Q( 4PC0^;JX3;(%B*5AWM/!X M'W$="JD+:(=V7TGAH)@K"=D=%&NR!\B+&$#9P:M_"_E0!HG<*9C4ZT(P788. M'>JU#O>84Z5U&+D[=\LQALX<#W 0@L9WB1X.KJC0MXT6KXP6PV@XXW7F@ 1& M0L$#L>%NB*\![+G3ANX_;=J<,0WK"L"Q <+7H5W'V"6DA;Y_$PPB1@P06H[D MPA)9*.@ K/&$:VOC08IEMA],EQ;>8=G#N/P;(%_&)0O$UDOO@Y4(24H5IF%G!4 ]TP54 >4155F :6<3KB@IL9!E7;AD6&6_A;9#MRKH@N MI1K6H=Z6$\H+E0.SM T"PQ @;Q6P2<>891#;"2 8U+ 0[N M;$>C'X1I^,1IU)]045C+C1AC<0S9 9\ .O26*'\>ZMW#$[G;[8&_90TT!"^B M77HQDH6Y6X/[^$HZEV:8.\5?3Z;)J,K*K"%@;B5 GRYVO@/^CP$K>N+ /W.8 MVL0F;BR54;VMV4J ;_ :&&'),"P4(G IG-G2:RJU@7+^-#S]:D.4[-W1 M) 8J@3U?DRX5AXR=V3TQW"[+BKE>^TZKA.IY[(>>P%*/1=9%VO4HW=>,"'[# M1+E!MB9?_^$E>DBZ/7<6'?ZL6P%V[S^J.%A?V&)T#,WF"< MXV)T&^G8[,*^M*@V7[\)]F5J[#;:MIAO&D%#S>;6^TZ*E#D)- &< R;K+MC2 M$&GI(H4YPQK9R91><^LV]2Z0^@42\5.(EV(%)K0.X&/6\ -\[9NN$N=U%V[P M;"+%A&',D=%Q^<).E;Z"I;F0,P:UTT0Z[T!76 2H_UL"LL8=>'R<@PQOY^<8 MSF!Q G):C M=GAPYJ!,\7&3UVSRG8\_!1K![N:2XH4)[LP1+'CZ.CQE'G9=F5<5Q+J,1=)6>*JQG73A#SS4[WV$=1=PK' M'=PJ/[]L_N9/X+#1>@;K_STS0VP=/,>Y68/TY03F_@1Z".2V#[^ W V0WQ>\ M?P]@'V.^[V?!-ZE<(K&TRI4;S6^)?6%"7C3MW_]Y4K[VR:8)FD"(!PXVT"DD M^UX(3@1$>]?]P>\?AI<7]N3=Z?7'/S<>Y [#3QS#CSK?50*@&7QJZ-\\3+K# M\@[+WQ56/,J,^6J@B-5,,<^ M_VF,]N9*_&K0?_P5> 9DV+MRK[&!!QN,V-^"_VHGP 7DCY[X?4>JE\SS[Q$- M;\9*%EF$N;]40>54[)RQRN_\2F+5G[BL_[SH9R.F>>2)!H; MI@(ZD3PJT?+FJ-&91P&NJ&DS(/>K)/LSIY/_ 5!+ P04 " #6F 151U/7 M1C ' !],@ & '=L9&XM,C R,C W,#%X97@S,F0Q+FAT;>U;>U/;.!#_ M*KITVL),_$I2'D[*# VTY:X\"N$Z_5.VY5A3QW(EF9#[]+>2[,1)2H&V%"AA M!DBDU6IW]=O52E[W_K*L_2S!64@B]'YP^ %%+"Q&)),HY 1+:!U3F: !RW.< MH4/".4U3](;3:$@0VK:]CNW:VQN6M=,#5OUR#,M\M.5TG);;:B%WVV^YOKN% M3@[1VOF@OZZ)]X[[@\\G^V;2D_,W'P[ZJ&$YSJ=VWW'V!GNF [A[:,!Q)JBD M+,.IX^P?-5 CD3+W'6<\'MOCMLWXT!F<.HDG6N OP=%. M;T0D1F&"N2#R=>-\\-;: @I)94IV>D[UW] &+)KL]")Z@823?'442SH9626$*+W=J>M7$Z3&:-S"CG MHGE,1H_Y*$A;(W.HZAEW"$LZCL>TLS\":*TVG?2<%% M@<&C)$/>EE'\W#ZS^S;RVJ_J4 M[!\+S,%0Z02=DIQQD#Q#;QD?&24]U_JH=/D$H3""J/B.LR)OFKZ#++31FN+Q MXME6J^5V^VP$D7.BOWG==10SKJ?X.ITB!ZU8A @('*&_"VCQFDA%SB8"B\U)WG%!)+#4#\4$TCJ'I2IYWY'7E%@G[E&0C7_E8 MM[9KFKG7O'5ML 6U'HZ UCOTN7C(@57# &@J?*VJ0=R\K6@G*@<22A8G)G@ M40%Q#:\KE'BOUJ+U*=1F3CMUV!)OWG:[TU4.-+.+H\#A:$RMH'5S:+4> ;1H M!N%_9+()V'"B-HO)4I1\H4!E"I\&XD*QJ,#FP;IE+E=T9K$H:U5++>AM(0Q028YW-:,A7 M8,&,8I&_L)C2#/F'ZWE(/X 1R# MOEACL-FUR?VT'P>"I84DW0HQ=8WO&+B5KHIZ:C$J($]/J9Q4.C9V5-+@MKL] M1Q'>:0IWM5RUD=!Y0RG-6:W\^_VX-T.&W=EX!,#X(=6V;.\Q@'Y)-QVEYC>X M'_?LNX!N:W/QW \D]?.(I5L6#R2S\U<=ZM=L,^XM\/^+,']')KO2'&\F_NWD M-\ N=ZMJ.\XO$<",1NB9JW\>D(*.<-!R>+O L-$#6,0(-GXKA(U6Y0_OCP]W MSY ZHIT>G+TY.%I:X)5W/"WON&]SS#F;BN /V=/,-0>:W7"L_&;E-_?I-P_( M'G0^N5:??2I![E#=@7_[$K#GT+L[ ?RXM&LGG,)Q.(?S\)+(ZU.95VZ_ _U*-_SP/>&#Q\+[]XRG>-?1/ M]P_>O1\<'^FGM+NG'SZO /]4 7_?YGA4UP?+Y0TKQUDYSNH@<=/[@^4*(/60 M^E_XA$XX$53!\.%?*2QIL;I26$6"5218N%) W[Y-J*I+S//<)U;0<(N:U($J M- SG*H]Q&.J*'55!5BL5^JDJ1QV 1:)*BS(FFXA BB+W2(4 M3*XMF@P(B@@9 ;&I62V'E+5&NO 5!,Z9(+H.::Y^<^N&I7*FR'.D:V5MM(L$ M.(1ZWX!3,":$9&UL4$L! A0#% @ UI@$5<6" MVPLM, ]-L" !4 ( !!BD '=L9&XM,C R,C W,#%?9&5F M+GAM;%!+ 0(4 Q0 ( -:8!%4SJ8; +'0 ..$!P 5 " M 699 !W;&1N+3(P,C(P-S Q7VQA8BYX;6Q02P$"% ,4 " #6F 15B $T M'^50 !,W@4 %0 @ '%S0 =VQD;BTR,#(R,#&UL4$L! A0#% @ UI@$5;QRW>T&L0( HI$E !4 ( ! MW1X! '=L9&XM,C R,C W,#%X,3!Q+FAT;5!+ 0(4 Q0 ( -:8!%7S-8EU M\18 /X@ 0 8 " 1;0 P!W;&1N+3(P,C(P-S Q>&5X,3!D M,2YH=&U02P$"% ,4 " #6F 15/Q2/P-,( 0*P & M@ $]YP, =VQD;BTR,#(R,##,Q9#$N:'1M4$L! A0#% @ UI@$ M52@6%O@,"0 N34 !@ ( !1O # '=L9&XM,C R,C W,#%X M97@S,60R+FAT;5!+ 0(4 Q0 ( -:8!%5'4]=&, < 'TR 8 M " 8CY P!W;&1N+3(P,C(P-S Q>&5X,S)D,2YH=&U02P4& H ,"@"F @ [@ $ end