0001628280-24-006623.txt : 20240223 0001628280-24-006623.hdr.sgml : 20240223 20240223151441 ACCESSION NUMBER: 0001628280-24-006623 CONFORMED SUBMISSION TYPE: 10-K PUBLIC DOCUMENT COUNT: 109 CONFORMED PERIOD OF REPORT: 20231230 FILED AS OF DATE: 20240223 DATE AS OF CHANGE: 20240223 FILER: COMPANY DATA: COMPANY CONFORMED NAME: NV5 Global, Inc. CENTRAL INDEX KEY: 0001532961 STANDARD INDUSTRIAL CLASSIFICATION: SERVICES-MISCELLANEOUS BUSINESS SERVICES [7380] ORGANIZATION NAME: 07 Trade & Services IRS NUMBER: 453458017 STATE OF INCORPORATION: DE FISCAL YEAR END: 1230 FILING VALUES: FORM TYPE: 10-K SEC ACT: 1934 Act SEC FILE NUMBER: 001-35849 FILM NUMBER: 24670710 BUSINESS ADDRESS: STREET 1: 200 SOUTH PARK ROAD STREET 2: SUITE 350 CITY: HOLLYWOOD STATE: FL ZIP: 33021 BUSINESS PHONE: (954) 495-2112 MAIL ADDRESS: STREET 1: 200 SOUTH PARK ROAD STREET 2: SUITE 350 CITY: HOLLYWOOD STATE: FL ZIP: 33021 FORMER COMPANY: FORMER CONFORMED NAME: NV5 Holdings, Inc. DATE OF NAME CHANGE: 20111018 10-K 1 nvee-20231230.htm 10-K nvee-20231230
00015329612023FYfalsehttp://fasb.org/us-gaap/2023#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortizationhttp://fasb.org/us-gaap/2023#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortizationhttp://fasb.org/us-gaap/2023#AccruedLiabilitiesCurrenthttp://fasb.org/us-gaap/2023#AccruedLiabilitiesCurrenthttp://fasb.org/us-gaap/2023#LongTermDebtAndCapitalLeaseObligationsCurrenthttp://fasb.org/us-gaap/2023#LongTermDebtAndCapitalLeaseObligationsCurrenthttp://fasb.org/us-gaap/2023#OtherLiabilitiesNoncurrenthttp://fasb.org/us-gaap/2023#OtherLiabilitiesNoncurrenthttp://fasb.org/us-gaap/2023#LongTermDebtAndCapitalLeaseObligationshttp://fasb.org/us-gaap/2023#LongTermDebtAndCapitalLeaseObligationsP2Y00015329612023-01-012023-12-3000015329612023-07-01iso4217:USD00015329612024-02-16xbrli:shares00015329612023-12-3000015329612022-12-31iso4217:USDxbrli:shares00015329612022-01-022022-12-3100015329612021-01-032022-01-010001532961us-gaap:CommonStockMember2021-01-020001532961us-gaap:AdditionalPaidInCapitalMember2021-01-020001532961us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-01-020001532961us-gaap:RetainedEarningsMember2021-01-0200015329612021-01-020001532961us-gaap:AdditionalPaidInCapitalMember2021-01-032022-01-010001532961us-gaap:CommonStockMember2021-01-032022-01-010001532961us-gaap:RetainedEarningsMember2021-01-032022-01-010001532961us-gaap:CommonStockMember2022-01-010001532961us-gaap:AdditionalPaidInCapitalMember2022-01-010001532961us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-010001532961us-gaap:RetainedEarningsMember2022-01-0100015329612022-01-010001532961us-gaap:AdditionalPaidInCapitalMember2022-01-022022-12-310001532961us-gaap:CommonStockMember2022-01-022022-12-310001532961us-gaap:RetainedEarningsMember2022-01-022022-12-310001532961us-gaap:CommonStockMember2022-12-310001532961us-gaap:AdditionalPaidInCapitalMember2022-12-310001532961us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-12-310001532961us-gaap:RetainedEarningsMember2022-12-310001532961us-gaap:AdditionalPaidInCapitalMember2023-01-012023-12-300001532961us-gaap:CommonStockMember2023-01-012023-12-300001532961us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-01-012023-12-300001532961us-gaap:RetainedEarningsMember2023-01-012023-12-300001532961us-gaap:CommonStockMember2023-12-300001532961us-gaap:AdditionalPaidInCapitalMember2023-12-300001532961us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-12-300001532961us-gaap:RetainedEarningsMember2023-12-300001532961us-gaap:GeographicConcentrationRiskMemberus-gaap:SalesRevenueNetMembernvee:CAMember2023-01-012023-12-30xbrli:pure0001532961us-gaap:GeographicConcentrationRiskMemberus-gaap:SalesRevenueNetMembernvee:CAMember2022-01-022022-12-310001532961us-gaap:GeographicConcentrationRiskMemberus-gaap:SalesRevenueNetMembernvee:CAMember2021-01-032022-01-010001532961us-gaap:SalesRevenueNetMembernvee:PublicAndQuasipublicSectorMemberus-gaap:GovernmentContractsConcentrationRiskMember2023-01-012023-12-300001532961us-gaap:SalesRevenueNetMembernvee:PublicAndQuasipublicSectorMemberus-gaap:GovernmentContractsConcentrationRiskMember2022-01-022022-12-310001532961us-gaap:SalesRevenueNetMembernvee:PublicAndQuasipublicSectorMemberus-gaap:GovernmentContractsConcentrationRiskMember2021-01-032022-01-010001532961nvee:OfficeFurnitureAndEquipmentMember2023-12-300001532961us-gaap:ComputerEquipmentMember2023-12-300001532961srt:MinimumMembernvee:SurveyAndFieldEquipmentMember2023-12-300001532961nvee:SurveyAndFieldEquipmentMembersrt:MaximumMember2023-12-300001532961us-gaap:CustomerConcentrationRiskMemberus-gaap:SalesRevenueNetMemberus-gaap:TransferredOverTimeMember2023-01-012023-12-300001532961us-gaap:CustomerConcentrationRiskMemberus-gaap:SalesRevenueNetMemberus-gaap:TransferredOverTimeMember2022-01-022022-12-310001532961us-gaap:CustomerConcentrationRiskMemberus-gaap:SalesRevenueNetMemberus-gaap:TransferredOverTimeMember2021-01-032022-01-010001532961us-gaap:TransferredAtPointInTimeMember2023-01-012023-12-300001532961us-gaap:TransferredAtPointInTimeMember2022-01-022022-12-310001532961us-gaap:TransferredAtPointInTimeMember2021-01-032022-01-0100015329612023-12-312023-12-300001532961nvee:PeriodOneMember2023-12-312023-12-3000015329612023-12-31nvee:PeriodTwoMember2023-12-300001532961us-gaap:RestrictedStockMember2023-01-012023-12-300001532961us-gaap:RestrictedStockMember2022-01-022022-12-310001532961us-gaap:RestrictedStockMember2021-01-032022-01-010001532961nvee:PublicStockOfferingMember2021-03-102021-03-100001532961nvee:PublicStockOfferingMember2021-03-100001532961us-gaap:OverAllotmentOptionMember2021-03-102021-03-100001532961nvee:PublicStockOfferingMember2021-03-152021-03-150001532961us-gaap:OverAllotmentOptionMember2021-04-132021-04-130001532961nvee:VisualInformationSolutionsMember2023-01-012023-12-300001532961nvee:AximGeospatialLLCMember2023-01-012023-12-300001532961nvee:AximGeospatialLLCMember2023-02-222023-02-220001532961nvee:UncollateralizedPromissoryNoteMembernvee:AximGeospatialLLCMember2023-02-220001532961nvee:AximGeospatialLLCMember2023-02-220001532961nvee:OtherAcquisitionMember2023-01-012023-12-30nvee:acquisition0001532961nvee:OtherAcquisitionMember2023-12-300001532961nvee:OtherAcquisitionMember2022-01-022022-12-310001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2022-01-022022-12-310001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMembernvee:UncollateralizedPromissoryNoteMember2022-12-310001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2022-12-310001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2021-01-032022-01-010001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMembernvee:UncollateralizedPromissoryNoteMember2022-01-010001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2022-01-010001532961nvee:VisualInformationSolutionsMember2023-12-300001532961nvee:AximGeospatialLLCMember2023-12-300001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2023-12-300001532961us-gaap:CustomerRelationshipsMembernvee:VisualInformationSolutionsMember2023-12-300001532961us-gaap:CustomerRelationshipsMembernvee:AximGeospatialLLCMember2023-12-300001532961us-gaap:CustomerRelationshipsMembernvee:OtherAcquisitionMember2023-12-300001532961us-gaap:CustomerRelationshipsMemberus-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2023-12-300001532961us-gaap:CustomerRelationshipsMemberus-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2022-12-310001532961us-gaap:CustomerRelationshipsMemberus-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2022-01-010001532961nvee:VisualInformationSolutionsMemberus-gaap:TradeNamesMember2023-12-300001532961us-gaap:TradeNamesMembernvee:AximGeospatialLLCMember2023-12-300001532961us-gaap:TradeNamesMembernvee:OtherAcquisitionMember2023-12-300001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMemberus-gaap:TradeNamesMember2023-12-300001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMemberus-gaap:TradeNamesMember2022-12-310001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMemberus-gaap:TradeNamesMember2022-01-010001532961nvee:VisualInformationSolutionsMemberus-gaap:CustomerListsMember2023-12-300001532961us-gaap:CustomerListsMembernvee:AximGeospatialLLCMember2023-12-300001532961us-gaap:CustomerListsMembernvee:OtherAcquisitionMember2023-12-300001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMemberus-gaap:CustomerListsMember2023-12-300001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMemberus-gaap:CustomerListsMember2022-12-310001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMemberus-gaap:CustomerListsMember2022-01-010001532961nvee:VisualInformationSolutionsMemberus-gaap:TechnologyBasedIntangibleAssetsMember2023-12-300001532961us-gaap:TechnologyBasedIntangibleAssetsMembernvee:AximGeospatialLLCMember2023-12-300001532961us-gaap:TechnologyBasedIntangibleAssetsMembernvee:OtherAcquisitionMember2023-12-300001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMemberus-gaap:TechnologyBasedIntangibleAssetsMember2023-12-300001532961us-gaap:TechnologyBasedIntangibleAssetsMember2022-12-310001532961us-gaap:TechnologyBasedIntangibleAssetsMember2022-01-010001532961nvee:VisualInformationSolutionsMemberus-gaap:OtherIntangibleAssetsMember2023-12-300001532961us-gaap:OtherIntangibleAssetsMembernvee:AximGeospatialLLCMember2023-12-300001532961us-gaap:OtherIntangibleAssetsMembernvee:OtherAcquisitionMember2023-12-300001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMemberus-gaap:OtherIntangibleAssetsMember2023-12-300001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMemberus-gaap:OtherIntangibleAssetsMember2022-12-310001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMemberus-gaap:OtherIntangibleAssetsMember2022-01-010001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2023-01-012023-12-300001532961us-gaap:FurnitureAndFixturesMember2023-12-300001532961us-gaap:FurnitureAndFixturesMember2022-12-310001532961us-gaap:ComputerEquipmentMember2022-12-310001532961nvee:SurveyAndFieldEquipmentMember2023-12-300001532961nvee:SurveyAndFieldEquipmentMember2022-12-310001532961us-gaap:LeaseholdImprovementsMember2023-12-300001532961us-gaap:LeaseholdImprovementsMember2022-12-3100015329612019-12-292021-01-020001532961nvee:OtherDirectCostsMember2023-01-012023-12-300001532961nvee:OtherDirectCostsMember2022-01-022022-12-310001532961nvee:OtherDirectCostsMember2019-12-292021-01-020001532961nvee:INFMember2022-12-310001532961nvee:INFMember2023-01-012023-12-300001532961nvee:INFMember2023-12-300001532961nvee:BTSMember2022-12-310001532961nvee:BTSMember2023-01-012023-12-300001532961nvee:BTSMember2023-12-300001532961nvee:GEOMember2022-12-310001532961nvee:GEOMember2023-01-012023-12-300001532961nvee:GEOMember2023-12-300001532961nvee:INFMember2022-01-010001532961nvee:INFMember2022-01-022022-12-310001532961nvee:BTSMember2022-01-010001532961nvee:BTSMember2022-01-022022-12-310001532961nvee:GEOMember2022-01-010001532961nvee:GEOMember2022-01-022022-12-310001532961us-gaap:CustomerRelationshipsMember2023-12-300001532961us-gaap:CustomerRelationshipsMember2022-12-310001532961us-gaap:TradeNamesMember2023-12-300001532961us-gaap:TradeNamesMember2022-12-310001532961us-gaap:CustomerListsMember2023-12-300001532961us-gaap:CustomerListsMember2022-12-310001532961us-gaap:NoncompeteAgreementsMember2023-12-300001532961us-gaap:NoncompeteAgreementsMember2022-12-310001532961nvee:DevelopedTechnologyMember2023-12-300001532961nvee:DevelopedTechnologyMember2022-12-310001532961us-gaap:CustomerRelationshipsMembersrt:MinimumMember2023-12-300001532961us-gaap:CustomerRelationshipsMembersrt:MaximumMember2023-12-300001532961srt:MinimumMemberus-gaap:TradeNamesMember2023-12-300001532961us-gaap:TradeNamesMembersrt:MaximumMember2023-12-300001532961srt:MinimumMemberus-gaap:CustomerListsMember2023-12-300001532961srt:MaximumMemberus-gaap:CustomerListsMember2023-12-300001532961srt:MinimumMemberus-gaap:NoncompeteAgreementsMember2023-12-300001532961us-gaap:NoncompeteAgreementsMembersrt:MaximumMember2023-12-300001532961nvee:DevelopedTechnologyMembersrt:MinimumMember2023-12-300001532961nvee:DevelopedTechnologyMembersrt:MaximumMember2023-12-300001532961us-gaap:CustomerRelationshipsMember2023-01-012023-12-300001532961us-gaap:CustomerRelationshipsMember2022-01-022022-12-310001532961us-gaap:CustomerRelationshipsMember2021-01-032022-01-010001532961us-gaap:TradeNamesMember2023-01-012023-12-300001532961us-gaap:TradeNamesMember2022-01-022022-12-310001532961us-gaap:TradeNamesMember2021-01-032022-01-010001532961us-gaap:CustomerListsMember2023-01-012023-12-300001532961us-gaap:CustomerListsMember2022-01-022022-12-310001532961us-gaap:CustomerListsMember2021-01-032022-01-010001532961us-gaap:NoncompeteAgreementsMember2023-01-012023-12-300001532961us-gaap:NoncompeteAgreementsMember2022-01-022022-12-310001532961us-gaap:NoncompeteAgreementsMember2021-01-032022-01-010001532961nvee:DevelopedTechnologyMember2023-01-012023-12-300001532961nvee:SeniorCreditFacilityMember2023-12-300001532961nvee:SeniorCreditFacilityMember2022-12-310001532961nvee:UncollateralizedPromissoryNoteMember2023-12-300001532961nvee:UncollateralizedPromissoryNoteMember2022-12-310001532961nvee:StockPayableMember2023-12-300001532961nvee:StockPayableMember2022-12-310001532961us-gaap:LineOfCreditMembernvee:SeniorCreditFacilityMember2016-12-070001532961us-gaap:RevolvingCreditFacilityMembernvee:SeniorCreditFacilityMember2016-12-070001532961nvee:SecondARCreditAgreementMemberus-gaap:RevolvingCreditFacilityMember2021-08-130001532961nvee:SecondARCreditAgreementMemberus-gaap:RevolvingCreditFacilityMember2021-08-132021-08-130001532961nvee:SecondARCreditAgreementMemberus-gaap:RevolvingCreditFacilityMember2023-12-300001532961nvee:SecondARCreditAgreementMemberus-gaap:RevolvingCreditFacilityMember2022-12-310001532961nvee:SecondARCreditAgreementMemberus-gaap:RevolvingCreditFacilityMember2023-01-012023-12-300001532961nvee:SecondARCreditAgreementMember2023-12-300001532961nvee:ARCreditAgreementMember2023-12-300001532961nvee:ARCreditAgreementMember2023-01-012023-12-300001532961nvee:ARCreditAgreementMember2022-01-022022-12-310001532961nvee:ARCreditAgreementMember2021-01-032022-01-01nvee:leasenvee:renewal_option0001532961nvee:EquityPlan2011Member2023-12-300001532961srt:MinimumMemberus-gaap:RestrictedStockMembernvee:EquityPlan2011Member2023-01-012023-12-300001532961us-gaap:RestrictedStockMembersrt:MaximumMembernvee:EquityPlan2011Member2023-01-012023-12-300001532961us-gaap:RestrictedStockMember2021-01-020001532961us-gaap:RestrictedStockMember2021-01-032022-01-010001532961us-gaap:RestrictedStockMember2022-01-010001532961us-gaap:RestrictedStockMember2022-01-022022-12-310001532961us-gaap:RestrictedStockMember2022-12-310001532961us-gaap:RestrictedStockMember2023-01-012023-12-300001532961us-gaap:RestrictedStockMember2023-12-300001532961us-gaap:DomesticCountryMember2023-12-300001532961us-gaap:ForeignCountryMember2023-12-300001532961us-gaap:StateAndLocalJurisdictionMember2023-12-30nvee:segment0001532961nvee:INFMemberus-gaap:OperatingSegmentsMember2023-01-012023-12-300001532961nvee:INFMemberus-gaap:OperatingSegmentsMember2022-01-022022-12-310001532961nvee:INFMemberus-gaap:OperatingSegmentsMember2021-01-032022-01-010001532961nvee:BTSMemberus-gaap:OperatingSegmentsMember2023-01-012023-12-300001532961nvee:BTSMemberus-gaap:OperatingSegmentsMember2022-01-022022-12-310001532961nvee:BTSMemberus-gaap:OperatingSegmentsMember2021-01-032022-01-010001532961nvee:GEOMemberus-gaap:OperatingSegmentsMember2023-01-012023-12-300001532961nvee:GEOMemberus-gaap:OperatingSegmentsMember2022-01-022022-12-310001532961nvee:GEOMemberus-gaap:OperatingSegmentsMember2021-01-032022-01-010001532961us-gaap:OperatingSegmentsMember2023-01-012023-12-300001532961us-gaap:OperatingSegmentsMember2022-01-022022-12-310001532961us-gaap:OperatingSegmentsMember2021-01-032022-01-010001532961us-gaap:CorporateNonSegmentMember2023-01-012023-12-300001532961us-gaap:CorporateNonSegmentMember2022-01-022022-12-310001532961us-gaap:CorporateNonSegmentMember2021-01-032022-01-010001532961nvee:INFMemberus-gaap:OperatingSegmentsMember2023-12-300001532961nvee:INFMemberus-gaap:OperatingSegmentsMember2022-12-310001532961nvee:BTSMemberus-gaap:OperatingSegmentsMember2023-12-300001532961nvee:BTSMemberus-gaap:OperatingSegmentsMember2022-12-310001532961nvee:GEOMemberus-gaap:OperatingSegmentsMember2023-12-300001532961nvee:GEOMemberus-gaap:OperatingSegmentsMember2022-12-310001532961us-gaap:CorporateNonSegmentMember2023-12-300001532961us-gaap:CorporateNonSegmentMember2022-12-310001532961country:USnvee:INFMember2023-01-012023-12-300001532961country:USnvee:BTSMember2023-01-012023-12-300001532961country:USnvee:GEOMember2023-01-012023-12-300001532961country:US2023-01-012023-12-300001532961nvee:INFMembernvee:ForeignCountriesMember2023-01-012023-12-300001532961nvee:BTSMembernvee:ForeignCountriesMember2023-01-012023-12-300001532961nvee:GEOMembernvee:ForeignCountriesMember2023-01-012023-12-300001532961nvee:ForeignCountriesMember2023-01-012023-12-300001532961country:USnvee:INFMember2022-01-022022-12-310001532961country:USnvee:BTSMember2022-01-022022-12-310001532961country:USnvee:GEOMember2022-01-022022-12-310001532961country:US2022-01-022022-12-310001532961nvee:INFMembernvee:ForeignCountriesMember2022-01-022022-12-310001532961nvee:BTSMembernvee:ForeignCountriesMember2022-01-022022-12-310001532961nvee:GEOMembernvee:ForeignCountriesMember2022-01-022022-12-310001532961nvee:ForeignCountriesMember2022-01-022022-12-310001532961country:USnvee:INFMember2021-01-032022-01-010001532961country:USnvee:BTSMember2021-01-032022-01-010001532961country:USnvee:GEOMember2021-01-032022-01-010001532961country:US2021-01-032022-01-010001532961nvee:INFMembernvee:ForeignCountriesMember2021-01-032022-01-010001532961nvee:BTSMembernvee:ForeignCountriesMember2021-01-032022-01-010001532961nvee:GEOMembernvee:ForeignCountriesMember2021-01-032022-01-010001532961nvee:ForeignCountriesMember2021-01-032022-01-010001532961nvee:INFMember2021-01-032022-01-010001532961nvee:BTSMember2021-01-032022-01-010001532961nvee:GEOMember2021-01-032022-01-010001532961nvee:PublicAndQuasipublicSectorMembernvee:INFMember2023-01-012023-12-300001532961nvee:PublicAndQuasipublicSectorMembernvee:BTSMember2023-01-012023-12-300001532961nvee:PublicAndQuasipublicSectorMembernvee:GEOMember2023-01-012023-12-300001532961nvee:PublicAndQuasipublicSectorMember2023-01-012023-12-300001532961nvee:INFMembernvee:PrivateSectorMember2023-01-012023-12-300001532961nvee:BTSMembernvee:PrivateSectorMember2023-01-012023-12-300001532961nvee:GEOMembernvee:PrivateSectorMember2023-01-012023-12-300001532961nvee:PrivateSectorMember2023-01-012023-12-300001532961nvee:PublicAndQuasipublicSectorMembernvee:INFMember2022-01-022022-12-310001532961nvee:PublicAndQuasipublicSectorMembernvee:BTSMember2022-01-022022-12-310001532961nvee:PublicAndQuasipublicSectorMembernvee:GEOMember2022-01-022022-12-310001532961nvee:PublicAndQuasipublicSectorMember2022-01-022022-12-310001532961nvee:INFMembernvee:PrivateSectorMember2022-01-022022-12-310001532961nvee:BTSMembernvee:PrivateSectorMember2022-01-022022-12-310001532961nvee:GEOMembernvee:PrivateSectorMember2022-01-022022-12-310001532961nvee:PrivateSectorMember2022-01-022022-12-310001532961nvee:PublicAndQuasipublicSectorMembernvee:INFMember2021-01-032022-01-010001532961nvee:PublicAndQuasipublicSectorMembernvee:BTSMember2021-01-032022-01-010001532961nvee:PublicAndQuasipublicSectorMembernvee:GEOMember2021-01-032022-01-010001532961nvee:PublicAndQuasipublicSectorMember2021-01-032022-01-010001532961nvee:INFMembernvee:PrivateSectorMember2021-01-032022-01-010001532961nvee:BTSMembernvee:PrivateSectorMember2021-01-032022-01-010001532961nvee:GEOMembernvee:PrivateSectorMember2021-01-032022-01-010001532961nvee:PrivateSectorMember2021-01-032022-01-010001532961nvee:CostreimbursableContractsMembernvee:INFMember2023-01-012023-12-300001532961nvee:CostreimbursableContractsMembernvee:BTSMember2023-01-012023-12-300001532961nvee:CostreimbursableContractsMembernvee:GEOMember2023-01-012023-12-300001532961nvee:CostreimbursableContractsMember2023-01-012023-12-300001532961us-gaap:FixedPriceContractMembernvee:INFMember2023-01-012023-12-300001532961us-gaap:FixedPriceContractMembernvee:BTSMember2023-01-012023-12-300001532961us-gaap:FixedPriceContractMembernvee:GEOMember2023-01-012023-12-300001532961us-gaap:FixedPriceContractMember2023-01-012023-12-300001532961nvee:CostreimbursableContractsMembernvee:INFMember2022-01-022022-12-310001532961nvee:CostreimbursableContractsMembernvee:BTSMember2022-01-022022-12-310001532961nvee:CostreimbursableContractsMembernvee:GEOMember2022-01-022022-12-310001532961nvee:CostreimbursableContractsMember2022-01-022022-12-310001532961us-gaap:FixedPriceContractMembernvee:INFMember2022-01-022022-12-310001532961us-gaap:FixedPriceContractMembernvee:BTSMember2022-01-022022-12-310001532961us-gaap:FixedPriceContractMembernvee:GEOMember2022-01-022022-12-310001532961us-gaap:FixedPriceContractMember2022-01-022022-12-310001532961nvee:CostreimbursableContractsMembernvee:INFMember2021-01-032022-01-010001532961nvee:CostreimbursableContractsMembernvee:BTSMember2021-01-032022-01-010001532961nvee:CostreimbursableContractsMembernvee:GEOMember2021-01-032022-01-010001532961nvee:CostreimbursableContractsMember2021-01-032022-01-010001532961us-gaap:FixedPriceContractMembernvee:INFMember2021-01-032022-01-010001532961us-gaap:FixedPriceContractMembernvee:BTSMember2021-01-032022-01-010001532961us-gaap:FixedPriceContractMembernvee:GEOMember2021-01-032022-01-010001532961us-gaap:FixedPriceContractMember2021-01-032022-01-010001532961us-gaap:SubsequentEventMembernvee:AximGeospatialLLCMember2024-01-192024-01-190001532961us-gaap:SubsequentEventMembernvee:AximGeospatialLLCMember2024-01-19

UNITED STATES
SECURITIES AND EXCHANGE COMMISSION
Washington, D.C. 20549
FORM 10-K
ANNUAL REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934
For the fiscal year ended December 30, 2023
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-35849
NV5 Global, Inc.
(Exact name of registrant as specified in its charter)
Delaware45-3458017
(State or other jurisdiction of incorporation or organization)(I.R.S. Employer Identification No.)
200 South Park Road,Suite 350,Hollywood,FL33021
(Address of principal executive offices)(Zip Code)
Registrant's telephone number, including area code: (954495-2112
Securities Registered pursuant to Section 12(b) of the Act:
Title of each classTrading Symbol(s)Name of each exchange on which registered
Common Stock, $0.01 par valueNVEEThe NASDAQ Stock Market
Securities registered pursuant to Section 12(g) of the Act: None
Indicate by check mark if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act.  Yes No
Indicate by check mark if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act. Yes  No 
Indicate by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.   Yes     No 
Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (§232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).    Yes     No ☐
Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company or an emerging growth company. See the definitions of “large accelerated filer,” “accelerated filer”, “smaller reporting company” and “emerging growth company” in Rule 12b-2 of the Exchange Act. (Check one):
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 has filed a report on and attestation to its management's assessment of the effectiveness of its internal control over financial reporting under Section 404(b) of the Sarbanes-Oxley Act (15 U.S.C. 7262(b)) by the registered public accounting firm that prepared or issued its audit report.
If securities are registered pursuant to Section 12(b) of the Act, indicate by check mark whether the financial statements of the registrant included in the filing reflect the correction of an error to previously issued financial statements.
Indicate by check mark whether any of those error corrections are restatements that required a recovery analysis of incentive-based compensation received by any of the registrant’s executive officers during the relevant recovery period pursuant to §240.10D-1(b). ☐
Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Act).    Yes  ☐     No 
1


The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the last business day of the registrant’s most recently completed second fiscal quarter was approximately $1.5 billion. For purposes of this computation, all officers, directors, and 10% beneficial owners of the registrant are deemed to be affiliates. Such determination should not be deemed to be an admission that such officers, directors, or 10% beneficial owners are, in fact, affiliates of the registrant.
As of February 16, 2024, there were 15,916,943 shares outstanding of the registrant’s common stock, $0.01 par value.
DOCUMENTS INCORPORATED BY REFERENCE
Portions of the 2024 definitive Proxy Statement are incorporated by reference into Part III of this Form 10-K.
2


NV5 GLOBAL, INC.
FORM 10-K ANNUAL REPORT
TABLE OF CONTENTS
Page
ITEM 1C
ITEM 9C
3


Cautionary Statement about Forward Looking Statements
Our disclosure and analysis in this Annual Report on Form 10-K and in our 2023 Annual Report to Stockholders, including all documents incorporated by reference, contain “forward-looking” statements within the meaning of Section 27A of the Securities Act of 1933, as amended (the “Securities Act”), Section 21E of the Securities Exchange Act of 1934, as amended (the “Exchange Act”), and the Private Securities Litigation Reform Act of 1995. From time to time, we also provide forward-looking statements in other materials we release to the public, as well as oral forward-looking statements. Forward-looking statements include, but are not limited to, statements regarding our “expectations,” “hopes,” “beliefs,” “intentions,” or “strategies” regarding the future. In addition, any statements that refer to projections, forecasts, or other characterizations of future events or circumstances, including any underlying assumptions, are forward-looking statements. We have tried, wherever possible, to identify such statements by using words such as “anticipate,” “believe,” “expect,” “intend,” “estimate,” “predict,” “project,” “may,” “might,” “should,” “would,” “will,” “likely,” “will likely result,” “continue,” “could,” “future,” “plan,” “possible,” “potential,” “target,” “forecast,” “goal,” “observe,” “seek,” “strategy,” and other words and terms of similar meaning, but the absence of these words does not mean that a statement is not forward looking. The forward-looking statements in this Annual Report on Form 10-K reflect the Company’s current views with respect to future events and financial performance.
Forward-looking statements are not historical factors and should not be read as a guarantee or assurance of future performance or results, and will not necessarily be accurate indications of the times at, or by, or if such performance or results will be achieved. Forward-looking statements are based on information available at the time those statements are made or management’s good faith beliefs, expectations, and assumptions as of that time with respect to future events. Because forward-looking statements relate to the future, they are subject to risks and uncertainties that could cause actual performance or results to differ materially from those expressed in or suggested by the forward-looking statements. Important factors that could cause such differences include, but are not limited to:
our ability to retain the continued service of our key professionals and to identify, hire, and retain additional qualified professionals,
changes in demand from the local and state government and private clients that we serve,
any material outbreak or material escalation of international hostilities, including developments in the conflict involving Russia and the Ukraine or the war involving Israel and Hamas, and the economic consequences of related events such as the imposition of economic sanctions and resulting market volatility,
changes in general domestic and international economic conditions such as inflation rates, interest rates, tax rates, higher labor and healthcare costs, insurance rates, recessions, and changing government policies, laws, and regulations, including those relating to energy efficiency,
the U.S. government and other governmental and quasi-governmental budgetary and funding approval process,
our ability to successfully execute our mergers and acquisitions strategy, including the integration of new companies into our business,
the possibility that our contracts may be terminated by our clients,
our ability to win new contracts and renew existing contracts,
competitive pressures and trends in our industry and our ability to successfully compete with our competitors,
our dependence on a limited number of clients,
our ability to complete projects timely, in accordance with our customers’ expectations, or profitability,
our ability to successfully manage our growth strategy,
our ability to raise capital in the future,
the credit and collection risks associated with our clients,
our ability to comply with procurement laws and regulations,
weather conditions and seasonal revenue fluctuations that may adversely impact our financial results,
the enactment of legislation that could limit the ability of local, state, and federal agencies to contract for our privatized services,
our ability to complete our backlog of uncompleted projects as currently projected,
4


the risk of employee misconduct or our failure to comply with laws and regulations,
our ability to control, and operational issues pertaining to, business activities that we conduct with business partners and other third parties,
our need to comply with a number of restrictive covenants and similar provisions in our senior credit facility that generally limit our ability to (among other things) incur additional indebtedness, create liens, make acquisitions, pay dividends, and undergo certain changes in control, which could affect our ability to finance future operations, acquisitions or capital needs,
significant influence by our principal stockholder and the existence of certain anti-takeover measures in our governing documents, and
other factors identified throughout this Annual Report on Form 10-K, including those discussed under the headings “Risk Factors,” “Management’s Discussion and Analysis of Financial Condition and Results of Operations,” and “Business.”
There can be no assurance that future developments affecting us will be those that we have anticipated. These forward-looking statements involve a number of risks, uncertainties, or assumptions, many of which are beyond our control, that may cause actual results or performance to be materially different from those expressed or implied by these forward-looking statements. In light of these risks and uncertainties, there can be no assurance that the forward-looking information contained in this Annual Report on Form 10-K will in fact transpire or prove to be accurate. Readers are cautioned to consider the specific risk factors described herein and in Item 1A. Risk Factors of this Annual Report on Form 10-K, and not to place undue reliance on the forward-looking statements contained herein, which speak only as of the date hereof.
The Company undertakes no obligation to update or publicly revise any forward-looking statement, whether as a result of new information, future developments or otherwise, except as may be required under applicable securities laws. All subsequent written or oral forward-looking statements attributable to the Company or persons acting on its behalf are expressly qualified in their entirety by this paragraph. You are advised, however, to consider any further disclosures we make on related subjects in our Quarterly Reports on Form 10-Q, Current Reports on Form 8-K and our other filings with the Securities and Exchange Commission (the “SEC”). Also note that we provide a cautionary discussion of risks and uncertainties relevant to our business under Item 1A, Risk Factors, of this Form 10-K. We note these factors for investors as permitted by the Private Securities Litigation Reform Act of 1995. You should understand it is not possible to predict or identify all such factors.
References in this Annual Report on Form 10-K to “NV5 Global,” the “Company,” “we,” “us,” and “our” refer to NV5 Global, Inc., a Delaware corporation, and its consolidated subsidiaries.
5


PART I
ITEM 1.    BUSINESS
Overview
NV5 Global is a provider of technology, conformity assessment, consulting solutions, and software applications to public and private sector clients in the infrastructure, utility services, construction, real estate, environmental, and geospatial markets, operating nationwide and abroad. The Company's clients include the U.S. Federal, state and local governments, and the private sector. NV5 Global provides a wide range of services, including, but not limited to:
Utility servicesCommissioning
LNG servicesBuilding program management
EngineeringEnvironmental health & safety
Civil program managementReal estate transaction services
SurveyingEnergy efficiency & clean energy services
Construction quality assuranceMission critical services
Code compliance consulting3D geospatial data modeling
Forensic servicesEnvironmental & natural resources
Litigation supportRobotic survey solutions
Ecological studiesGeospatial data applications & software
MEP & technology design
NV5 Global originally operated as "Nolte Associates, Inc." in California prior to its acquisition in 2010. The Company completed its initial public offering in March 2013 and has since expanded its scope and service offerings organically and through acquisitions. We are headquartered in Hollywood, Florida, and operate our business from over 100 locations in the U.S. and abroad. All of the Company's offices utilize its shared services platform, which consists of human resources, marketing, finance, information technology, legal, corporate development, and other resources. The platform is scalable and optimizes the performance and efficiency of our business as we grow. Our centralized shared services platform allows us to better manage our business through the application of universal financial and operational controls and procedures and increased efficiencies, and drives lower-cost solutions.
Our primary clients include the U.S. Federal, state, municipal, and local government agencies, and military and defense clients. We also serve quasi-public and private sector clients from the education, healthcare, utility services, and public utilities, including schools, universities, hospitals, health care providers, and insurance providers.
During our 74 years in the engineering and consulting business, we have worked and continue to work with many clients including (in alphabetical order):
AirportsCommercial
Boston Logan Airport, MABronx Zoo Astor Court Reconstruction, NY
Chicago O’Hare International Airport, ILCleveland Museum of Art, OH
Dallas Fort Worth International Airport, TXLas Vegas City Hall, NV
Fort Lauderdale Hollywood International Airport, FLManhattan Waterfront Greenway Improvement, NY
JFK International Airport, NYMassachusetts Division of Capital Asset Management, MA
Los Angeles World Airports, CARose Bowl Stadium, CA
McCarran International Airport, NVThe National World War II Museum, LA
Miami International Airport, FLHealthcare
Orlando International Airport, FLAtrium Health, NC
San Diego International Airport, CABoston Children's Hospital, MA
Education and Public InstitutionsCleveland Clinic, OH
Colorado State UniversityTufts Medical Center, MA
6


Florida State University, FLUniversity of Kansas Medical Center, KS
Harvard University, MAMilitary
Michigan State University, MINational Geospatial-Intelligence Agency
Princeton University, NJPeterson Air Force Base, CO
Rutgers University, NJU.S. Army Corp Engineers
Rice University, TXU.S. Department of Defense
Stanford University, CAU.S. Department of Veteran Affairs
University of San Diego, CAPower and Utilities
University of Illinois, ILDuke Energy, NC
University of Iowa, IAFlorida Power and Light, FL
University of Maryland, MDMinnesota Power, MN
University of Massachusetts, MANational Grid
University of Miami, FLNew York Power Authority, NY
University of Minnesota, MNNextEra Energy, FL
University of North Carolina, NCPECO Energy Company
University of Texas, TXPiedmont Natural Gas, NC
University of Utah, UTPortland General Electric, OR
University of Virginia, VAPotomac Electric Power Company
Wake Forest University, NCSabal Trail Transmission Company
Federal, State, Municipal and Local Government AgenciesSan Diego Gas & Electric, CA
Broward County, FLSouthern California Gas Company, CA
California Department of ResourcesSpectra Energy, TX
City of Albuquerque, NMTransportation
City of Austin, TXCalifornia Department of Transportation, or Caltrans, CA
City of Bakersfield, CACalifornia High Speed Rail, CA
City of Carlsbad, CACaldecott Tunnel
City of Colorado Springs, COColorado Department of Transportation
City of Fresno, CACounty of Merced, CA
City of Miami, FLFlorida Department of Transportation
City of Oceanside, CAGeorgia Department of Transportation
City of Pasadena, CAIllinois Department of Transportation
City of Philadelphia, PAMacau Light Rail System
City of Phoenix, AZMassachusetts Port Authority 
City of Sacramento, CANew Jersey Department of Transportation, NJ
City of San Diego, CANew Jersey Turnpike Authority, NJ
Commonwealth of KentuckyNew Mexico Department of Transportation
County of San Diego, CANew York Department of Transportation, NY
Imperial County, CANorth Carolina Department of Transportation
Kentucky Commonwealth Office of TechnologyOregon Department of Transportation
Los Angeles Department of Public Works, CAPort Authority of New York and New Jersey
Miami-Dade County, FLSouth Carolina Department of Transportation
Minnesota Department of Natural ResourcesUtah Department of Transportation, UT
Montana Department of Natural Resources and ConservationWisconsin Department of Transportation
National Aeronautics and Space AdministrationWater
National Oceanic and Atmospheric AdministrationCalifornia Department of Water Resources
New York City Economic Development Corporation, NYColorado Water Conservation Board
New York Department of Environmental ProtectionMetropolitan Water District of Southern California, CA
7


New York City Housing Authority, NYNational Oceanic and Atmospheric Administration (NOAA)
New York City Parks, NYPoseidon Desalination Plant, CA 
North Carolina Department of Information TechnologySouth Florida Water Management District, FL
North Central Texas Government Southwest Florida Water Management District
Oregon Geospatial Enterprise Office
Oregon LiDAR Consortium
San Diego County, CA
Santa Clara County Government, CA
U.S. Bureau of Land Management
U.S. Department of Energy
U.S. Department of Homeland Security
U.S. Environmental Protection Agency
U.S. Geological Survey (USGS)
Washington Department of Natural Resources
Worcester Housing Authority
Competitive Strengths
We believe we have the following competitive strengths:
Organizational structure that enhances client service. We operate our business using a flat vertical structure organized by service offerings rather than a matrix structure organized by geography, which is common among our competitors. Our structure ensures that clients have access to the entire platform of services we offer and the most highly qualified professionals within those service verticals, regardless of the location of the project. Our most skilled engineers and professionals in each service sector work directly with the clients requesting those services, which facilitates relationship-based interactions between our key employees and our clients and promotes long-term client relationships. In addition, our vertical structure encourages entrepreneurialism among our professionals.
Expertise in local markets. To support our vertical service model, we maintain over 100 locations in the United States and abroad. Each of our offices is staffed with licensed or certified professionals who understand the local and regional markets in which they serve. Our local professionals focus on client engagement within their local market while benefiting from the back-office support functions of our shared services platform.
Synergy among our service verticals. We create value for our clients and our shareholders by encouraging our professionals across service verticals to work together to pursue new work, new clients, and to expand the range of services we can provide our existing clients. Our commitment to cross-selling minimizes our use of sub-consultants to meet our clients’ needs and helps maximize organic growth.
Strong, long-term client relationships. By combining local market experience and expert services in multiple verticals, we have developed strong relationships with our core clients. Some of our professionals have worked with key clients for decades, including government transportation agencies, public utilities, and local or state municipalities. By serving as a long-term partner with our clients, we gain a deeper understanding of their overall business needs as well as the unique technical requirements of their projects.
Experienced, talented, and motivated employees. We employ licensed and experienced professionals with a broad array of specialties and a strong customer service orientation. Our senior staff have an average of more than 20 years of operating and management experience in the engineering and consulting industry. We prioritize the attraction, motivation, and retention of top professionals to serve our clients. Our compensation system includes performance-based incentives, including opportunities for stock ownership.
8


Industry-recognized quality of service. We have developed a strong reputation for quality service based upon our industry-recognized depth of experience, ability to attract and retain quality professionals, expertise across multiple service sectors, and our commitment to strategic growth. During the past several years, we have received many industry awards and national rankings, including:
Advisory Board at Harvard Graduate School of Design for Sustainable Infrastructure - 2023, 2022, 2021Engineering News-Record Top 100 Pure Designers - #12 (2023), #14 (2022), #14 (2021)
Building Design + Construction Magazine’s Top 50 State Government Building Engineering Firms - #9 (2023)Engineering News-Record Top 150 Global Firms - #62 (2021)
Building Design + Construction Magazine’s Top 65 Airport Terminal Engineering Firms - #12 (2023), #8 (2022)Engineering News-Record Top 20 Design Firm by Sector: Power List - #13 (2023), #12 (2022), #13 (2021)
Building Design + Construction Magazine’s Top 75 Engineering Firms - #7 (2023)Engineering News-Record Top 20 Design Firm by Sector: Water List - #19 (2023), #17 (2022), #18 (2021)
Building Design + Construction Magazine’s Top 75 Hospitality Facility Engineering Firms - #8 (2023)Engineering News-Record Top 200 Environmental Firms - #62 (2023), #58 (2022), #72 (2021)
Building Design + Construction Magazine’s Top 75 Retail Sector Engineering and Engineering Architecture Firms - #14 (2023)Engineering News-Record Top 225 International Design Firms - 2023, 2022, 2021
Building Design + Construction Magazine’s Top 80 K-12 School Engineering Firms - #8 (2023), #6 (2022)Engineering News-Record Top 50 Designers in International Markets List - #44 (2023), #48 (2022), #50 (2021)
Building Design + Construction Magazine’s Top 80 Local Government Building Engineering Firms - #14 (2023)Engineering News-Record Top 500 Design Firms - #22 (2023), #24 (2022), #27 (2021)
Building Design + Construction Magazine’s Top 80 University Building Engineering Firms - #6 (2023)Engineering News-Record Top California Design Firms - #8 (2021)
Building Design + Construction Magazine’s Top 90 Office Building Engineering Firms - #9 (2023)Environmental Analyst Top 100 Environmental & Sustainability Consultancy Firms - #15 (2021)
Building Design + Construction Magazine's Top 40 Engineering/Architecture Firm - #8 (2021)Environmental Business Journal Achievement Award in Technical Achievement - 2021
Consulting-Specifying Engineer Magazine Commissioning Giants List - #17 (2023), #19 (2022), #19 (2021)Environmental Business Journal's Top 600 Environmental Consulting & Engineering Firms - #46 (2021)
Consulting-Specifying Engineer Magazine MEP Giants List - #10 (2023), #18 (2022), #18 (2021)Forbes America's Best Small Companies - (2022)
Growth Strategies
We intend to pursue the following growth strategies as we seek to expand our market share and position ourselves as a preferred, single-source provider of engineering and technical consulting services:
Seek strategic acquisitions to enhance or expand our services offerings. We seek acquisitions that allow us to expand or enhance our capabilities in existing service offerings, supplement existing service offerings with new, closely related service offerings, and expand the geographic footprint of our operations. In the analysis of new acquisitions, we pursue opportunities that provide the critical mass necessary to function as a profitable operation, that complement existing operations, and that have a strong potential for organic growth. We believe that expanding our business through strategic acquisitions will give us economies of scale in the areas of finance, human resources, marketing, administration, information technology, and legal, while also providing cross-selling opportunities among our service offerings. For information on our recent acquisitions, refer to the “Recent Acquisitions” section included under Item 7. Management's Discussion and Analysis of Financial Condition and Results of Operations included in this Annual Report on Form 10-K.
9


Continue to focus on public sector clients while building private sector client capabilities. We have historically derived the majority of our revenue from public and quasi-public sector clients. For the fiscal years 2023, 2022, and 2021, approximately 68%, 64%, and 65%, respectively, of our gross revenues were attributable to public and quasi-public sector clients. During unsteady economic periods, we have focused on public sector business opportunities resulting from public agency outsourcing. We are also positioned to address the challenges presented by the aging infrastructure system of the U.S. and the need to provide solutions for transportation, energy, water, and wastewater requirements. However, we also seek to obtain additional clients in the private sector, which typically experiences greater growth during times of economic expansion, through networking, participating in professional organizations, and direct sales. We will continue to pursue private sector clients when such opportunities present themselves. We believe our ability to service the needs of both public and private sector clients gives us the flexibility to seek and obtain engagements regardless of the current economic conditions.
Strengthen and support our human capital. Our experienced employees and management team are our most valuable resource. Attracting, training, and retaining key personnel are critical to our success. To achieve our human capital goals, we intend to remain focused on providing our personnel with entrepreneurial opportunities to expand our business within their areas of expertise. Our leaders, managers, and employees are provided an opportunity to participate in our equity incentive plan. We believe stock ownership promotes a performance-driven, long-term focus that aligns employees' interests with the interests of other NV5 shareholders. We will continue to provide our personnel with professional growth opportunities, through training, competitive benefits, and performance-based incentives such as stock ownership.
Reportable Segments
Our operations are organized into the following three operating and reportable segments:
Infrastructure ("INF"), includes our engineering, civil program management, utility services, and construction quality assurance practices.
Building, Technology & Sciences ("BTS"), includes our environmental health sciences, clean energy consulting, buildings and program management, and MEP & technology design practices.
Geospatial Solutions ("GEO"), includes our geospatial solution practices.
Description of Services
Infrastructure
Infrastructure, Engineering, and Support Services
We provide our clients with a broad array of services in the areas of infrastructure, engineering, and support. Our integrated approach provides our clients with consistency and accountability for the duration of the project and allows us to create value by maximizing efficiencies of scale. Our services include:
Site selection and planning. The site selection phase includes access assessment, parcel identification, easement descriptions, land use permitting, pipeline routing analysis, site constraints analysis, surveying and mapping, and regulatory compliance.
Design. The design phase includes architecture, engineering, planning, urban design, landscape architecture, road design, grading design, alignment design, laydown design, station pad design, storm drain design, storm water management, water supply engineering, site planning and profile drawings, and construction cost estimating.
Water resources. We assist our clients with a variety of projects related to water supply and distribution (such as hydrogeological investigations and groundwater development), water treatment (including designing and implementing water reclamation, recycling, and reuse projects), and wastewater engineering (including wastewater facility master planning and treatment, designing and implementing collection, treatment and disposal systems, and water quality investigations).
Transportation. We provide our clients with services related to street and roadway construction (including alignment studies, roadway inspections, and traffic control planning), the construction of highways, bridges and tunnels, and the development of rail and light rail systems.
10


Structural engineering. Our structural team provides design, inspection, rehabilitation, and seismic upgrade services that include structural analysis and design, plans, specifications and estimates, structural construction management, conceptual design studies, cost studies, seismic analysis, design and retrofit, structural evaluations, earthquake damage assessments, structural repair design, and regulatory agency permitting services. Examples of our projects include office and industrial facilities, major highway and railroad crossings, complex rail and light rail structures, and a wide range of water-related facilities.
Land development. We assist our clients with many of the front-end challenges associated with private and public land development, including planning, public outreach, sustainability, flood control, drainage, and landscaping.
Surveying. We are equipped to provide our clients with a full suite of traditional surveying techniques as well as cutting edge technology services, including high-definition surveying services / 3D laser scanning, and unmanned aerial vehicle LiDAR mapping. Our services can be used to determine current site condition, provide real-time infrastructure measuring and mapping, preserve historic sites, aide in forensic and accident investigations, determine volume calculations, and conduct surveys for project progress.
Power delivery. Our power delivery services include both electrical power delivery (such as substation engineering, overhead and underground electrical transmission, and distribution design, and site civil engineering) and gas distribution and transmission services (such as pipeline design, pipeline integrity evaluations, and regulator metering station design). These services facilitate the development of comprehensive plans and improvements that lead to lower operational costs and improved efficiency.
Building code compliance. We offer a broad array of outsourcing services, including building code plan review, code enforcement, permitting and inspections, and the administration of public works projects and building departments.
Other services. Through our geographic information system services, we can provide clients with ancillary services that include infrastructure management, property management, asset inventory, landscape maintenance, web-based mapping services, land use analysis, terrain analysis and visualization, suitability and constraints analysis, hydrology analysis, biological, agricultural and cultural inventories, population and demographic analysis, shortest path analysis, street grid density, transportation accessibility analysis, watershed analysis, floodplain mapping, groundwater availability modeling, flood insurance study preparation, risk and HAZUS mitigation assessment and analysis, mapping, data tracking, and data hosting.
Construction Quality Assurance
We provide construction quality assurance services with respect to diverse projects including municipalities, departments of transportation, public and private buildings, major mixed-use projects, hospitals, senior living facilities, professional sports stadiums, cultural and performing arts centers, airports, hotels, hospitals and health care facilities, major public and private universities, and K-12 school districts. We offer these services on an “a la carte” or integrated start-to-finish basis that is intended to guide a client through each phase of a construction project. Our construction quality assurance services generally include geotechnical studies, site inspections, audits, and evaluations of materials and workmanship necessary to determine and document the quality of the constructed facility. Before a project commences, we offer our clients a variety of assessment services, including environmental, geotechnical, and structural suitability. We perform these pre-construction evaluations in order to help detect any potential problems with the proposed site that could prevent or complicate the successful completion of the project. In addition, we evaluate the onsite building conditions and recommend the best methods and materials for site preparation, excavation, and building foundations.
During development, we help our clients design a comprehensive construction plan, including a summary of planned construction activities, sequence, critical path elements, interrelationships, durations, and terminations. Construction planning services may also include developing procedures for project management, the change order process, and technical records handling methodology. We offer inspection services for each phase of a project, including excavation, foundations, structural framing, mechanical heating and air conditioning systems, electrical systems, underground utilities, and building water proofing systems. Where applicable, we employ additional methods to test materials and building quality. We maintain contact with our clients’ program managers and, as issues are detected or anticipated, help them identify the most appropriate, cost-effective solutions. We periodically provide construction progress inspections and assessment reports. When a project is complete, we prepare an evaluation report of the project and certify the inspections for the client. After construction, we offer periodic building inspection services to ensure that the building is maintained in accordance with applicable building codes and other local ordinances to maximize the life of the project. We also offer indoor environmental quality testing during this period.
11


Our services include:
Construction materials testing and engineering services. We provide materials testing services related to concrete, steel, and other structural materials used in construction. We are equipped to provide these services in fabrication plants, in our laboratories, and at the project or construction site itself. Our field personnel work directly under the supervision of licensed engineers and maintain individual licenses and certifications in their respective areas of expertise. All our in-house laboratories are inspected routinely by agencies including or similar to the Cement and Concrete Reference Laboratory (“CCRL”) of the National Institute of Standards and Measures. In addition, our laboratories participate in proficiency programs conducted by the CCRL and the American Association of State Highway & Transportation Officials.
Geotechnical engineering and consulting services. We provide a wide variety of geotechnical engineering and consulting services. These services allow our clients to determine whether sites are suitable for proposed projects and to design foundation plans that are compatible with project site and use conditions. We have experienced geotechnical engineers, geologists, and earth scientists who provide these services nationwide.
Forensic consulting. In the event of damage to a structure by natural or man-made causes, our professional staff is qualified to provide forensic consulting and analysis as well as expert witness services. We provide a wide variety of forensic consulting services, including studies related to building code compliance, environmental compliance, building envelope, water intrusion, and claims involving insurance.
Civil Program Management
Civil program management provides for transportation and water infrastructure projects, including our construction management activities. Our services consist of providing a wide variety of governmental outsourcing services and consulting services that assist agencies with compliance related to technical government regulations, technical and industry standards. We offer a broad array of technical outsourcing services, including staff augmentation and traffic studies. Our program management services are not performed on an at-risk basis; services are performed under a unit price fee arrangement, which is not outcome-based.
Program management also includes project administration, including bid and award assessment, monitoring services for active projects, scheduling assistance, drawing review, permit, approval and review processing, contractor, designer and agency coordination, cost control management, progress payment management, change order administration, compliance inspections, constructability review, as needed, and evaluation of cost reduction methods.
The trend towards increased privatization of U.S. Federal, state, and local governmental services presents an opportunity for our program management vertical. Faced with increased budgetary constraints and economic challenges, many governmental agencies now seek to outsource various services, including professional guidance for their building departments. For building departments specifically, we typically provide a turnkey solution in exchange for a percentage of the building permit fees collected or a minimum monthly retainer. The governmental agency retains any overage without any overhead costs associated with the fee charged. Outsourcing provides a positive source of revenue for us, while simultaneously increasing the efficiency and quality of service to the public. The governmental agency also gains flexible control of service levels without the challenges of government bureaucracy. Although we plan to grow our program management services organically through the numerous contacts and client relationships we have with U.S. Federal, state and local governments, tribal nations, and educational institutions, we are also actively targeting acquisition opportunities that provide program management services.
Buildings, Technology & Sciences
Buildings
Mechanical, Electrical, and Plumbing Design. We design integrated facilities that reduce capital, energy, maintenance, and operations costs and use technologies to virtualize the building process and improve collaboration.
Mechanical – HVAC system design, air quality management, building automation and control, and sustainability consulting
Electrical – code consulting, infrastructure design, standby power, building automation, intelligent lighting control, and solar power
Plumbing – needs analysis, system design, construction administration, and evaluation for fresh, waste, and water system design, gas supply systems, drainage systems, and water conservation and recovery
12


Commissioning. We provide our clients with a collaborative resource, ensuring that building owners and operators benefit from improved systems performance. Our proprietary Lifecycle Commissioning ® is a systematic, engineering-based process that optimizes building efficiency from initial project concept to decommissioning. In addition, we provide retro-commissioning on existing facilities not originally commissioned which can result in energy consumption savings.
Energy Performance, Management, and Optimization. We assist building owners and operations in the reduction of both energy and operational costs. We help our clients to identify and implement energy performance strategies that improve operating efficiency and reduce greenhouse gas emissions, which entails load shaping and efficiency, fuel switching, aggregation, cogeneration, and other renewable energy alternatives. Our energy performance services include energy master planning, energy assessments, integrated management of energy supply and demand, renewable energy, smart grid systems, cogeneration, load response strategies and systems, energy modeling, and energy star. We expect demand for these services to rise as a focus on energy efficiency services at our federal government and private sector clients has grown strong in recent years.
Climate Change and Reducing CO2 Emissions. We believe our business plays an important role in the drive to lower CO2 emissions. We are committed to reducing CO2 emissions by helping our clients achieve their goals for a sustainable and socially-responsible future by offering services that include certifying sustainable development, improving energy efficiency of buildings, supporting decarbonization, and designing clean, efficient buildings.
Building Program Management. We provide services for vertical construction projects, including project controls and Building Information Modeling services. The construction and program management phase includes plan review, bid and award assessment, monitoring services for active construction sites, scheduling assistance, drawing review, permit, approval and review processing, contractor, designer and agency coordination, cost control management, progress payment management, change order administration, compliance inspections, and evaluation of cost reduction methods.
We provide program management services, which primarily consist of pre-construction and construction consulting services that assist in owners' representation. Our program management services are not at-risk services; they are performed under a unit price fee arrangement, which is not outcome-based.
Program management also includes project administration, including bid and award assessment, monitoring services for active projects, scheduling assistance, drawing review, permit, approval and review processing, contractor, designer and agency coordination, cost control management, progress payment management, change order administration, compliance inspections, constructability review, as needed, and evaluation of cost reduction methods.
Audiovisual Technology
Acoustical Design Consulting. We provide sound and noise isolation, vibration mitigation, and acoustical optimization services in sophisticated entertainment and hospitality environments.
Audiovisual – Security and Surveillance. We provide needs assessments, infrastructure design, systems design, construction monitoring, and acceptance testing.
Mission Critical
IT – Data Center. The demand for global connectivity is driving growth for data centers domestically and internationally. We provide specialized technical expertise to deliver dependable services to support the mission critical nature and high energy demands of data center infrastructure. Our services include systems and technology design, testing and commissioning, modeling and analytics, installation monitoring, and due diligence consulting.
Environmental Services
The environmental services we offer include occupational health, safety, and environmental consulting and testing as well as environmental real estate transactional services. More specifically, our experts investigate and analyze environmental conditions both outside and inside a building, and recommend corrective measures and procedures needed to comply with workplace occupational health and safety programs. Our occupational health and safety services include workplace safety audits, ergonomics studies, emergency preparedness plans and response services, and workplace monitoring in regulated industries. We also specialize in the provision of radiation exposure and protection services, as well as nuclear safety and industrial hygiene analyses. We have actively expanded NV5's nationwide capabilities in recent years to support our clients'
13


environmental and sustainability initiatives, including sustainable infrastructure, clean energy, energy efficiency, environmental compliance, and water and natural resource management.
Environmental services also include hydrogeological modeling and environmental programs that assist our public agencies and private clients to comply with U.S. Federal, state, and local requirements for groundwater resource assessments, water resource planning, monitoring and environmental management of wastewater facilities, solid waste landfill investigations, permitting and compliance, storm water pollution, environmental impact statement support, agricultural waste management and permitting, and wetland evaluations.
Geospatial Solutions
Our geospatial solutions include a full spectrum of geospatial data analytic capabilities that leverage leading-edge remote sensing technology and proprietary solutions. More specifically, our proprietary and analytic solutions include autonomous solutions, subscription software, automated enrichment, proprietary algorithms, and cloud-based data engagement. We provide remote sensing and data analytics to enable asset management, reliability and maintainability of assets, safety, and predictive modeling. Our geospatial services assist utilities in vegetation management of assets (i.e., overhead power transmission and distribution lines). This entails providing data used by utilities to monitor and control vegetation growth potential close to their assets for regulatory compliance requirements which enhance visibility and long-term stability. The trend towards use of remote sensing and analytics by utilities is rapidly replacing 'boots on the ground' inspection with more reliable and accurate monitoring.
Our geospatial mapping capabilities include topobathymetric nearshore analytics in analyzing nearshore underwater terrain (too shallow for sonar and not visible with topographic LiDAR) and deep-water sonar-based analytics. This service provides government agencies with data used in coastal management, offshore wind power, shoreline mapping, underwater habitat modeling, nautical charting, floodplain analysis, environmental ecology, and hydrological resource management. We believe that climate change, extreme weather incidents, and water conservation efforts combine to make the data and services we provide invaluable to agencies that utilize these data sets produced by our geospatial mapping services.
Strategic Acquisitions
We maintain a full-time merger and acquisitions (“M&A”) initiative with executive personnel specifically dedicated to the identification of acquisition targets, exploration of acquisition opportunities, negotiation of terms, and oversight of the acquisition and post-acquisition integration process. Our M&A team has established extensive relationships throughout the industry and continues to maintain an established pipeline of potential acquisition opportunities.
We primarily seek acquisitions that allow us to expand or enhance our capabilities in our existing service offerings, to supplement our existing service offerings with new, closely related service offerings, or expand our service area geographically. We pursue opportunities that provide the platform to function as a profitable stand-alone operation and are profitable with strong potential for organic growth. Acquisition targets must have an experienced management team that is compatible with our culture and thoroughly committed to our strategic direction. We believe we add value to the operations of our acquisitions by providing superior corporate marketing and sales support, cash management, financial controls, information technology, risk management, and human resources support through a performance optimization process. Our performance optimization process, which was developed by our executives through their extensive experience acquiring and integrating companies, entails a review of both back office and operational functions to, among other things, identify how to improve:
Inefficiencies related to the delivery of our services to customers,
Performance of a new acquisition through the integration of personnel into our organization,
Risk management of a new acquisition,
Integration of technology and shared services platforms, and
Cross-selling opportunities to create synergies within our service offerings.
For more information on our recent acquisitions, refer to the “Recent Acquisitions” section included under Item 7. Management’s Discussion and Analysis of Financial Condition and Results of Operations and Note 6, Business Acquisitions, in the Notes to the Consolidated Financial Statements in this Annual Report on Form 10-K.
14


Key Clients and Projects
We currently serve approximately 11,200 clients. Our ten largest clients accounted for approximately 27% of our gross revenues during the year ended December 30, 2023. No individual client represented more than 10% of our gross revenues during the years 2023, 2022, or 2021. Although we serve a highly diverse client base, during the years 2023, 2022, and 2021 approximately 68%, 64%, and 65%, respectively, of our gross revenues were attributable to public and quasi-public sector clients.
Public sector clients include:
U.S. Federal, state, and local government departments, agencies, systems, and authorities,
Transportation agencies,
Educational systems, and
Public housing authorities.
Quasi-public sector clients include:
Utility service providers,
Energy producers, and
Healthcare providers.
Of our private sector clients, our largest clients include institutions, large companies with offices, industrial facilities, plants, REITs, construction engineering firms, and institutional property owners.
Although we anticipate public and quasi-public sector clients will represent the majority of our revenues for the foreseeable future, we intend to continue expanding our service offerings to private sector clients. Historically, public and quasi-public sector clients have demonstrated greater resilience during periods of economic downturns, while private sector clients have offered higher gross profit margin opportunities during periods of economic expansion.
Marketing and Sales
We strive to position ourselves as a preferred, single-source provider of professional and technical consulting, and certification services to our clients. We obtain client engagements primarily through business development efforts, cross-selling our services to existing clients, and maintaining client relationships, as well as referrals from existing and former clients.
Our business development efforts emphasize lead generation, industry group networking, and corporate visibility. Most of our business development efforts are led by members of our engineering and other professional teams who are also responsible for managing projects. Our business development efforts are further supported by our shared services marketing group, which consists of a seasoned marketing team and marketing support personnel located at our corporate headquarters and operating units.
As our service offerings continue expanding, we anticipate increasing our cross-selling opportunities. Currently, we are often able to offer our construction quality assurance services to clients in conjunction with our infrastructure, engineering, and support services. Another significant area of cross-selling has been our ability to leverage our electrical and gas design services throughout our national geographic network of offices by introducing our services to new utility service organizations.
We have observed a trend in the engineering and consulting industry which has shifted client relationships away from project-specific engagements and toward long-term, multi-project relationships. This shift requires that service providers commit considerable resources toward maintaining client relationships, including dedicating both technical and marketing resources tailored to the specific client’s needs. We are committed to maintaining our client relationships by remaining responsive to our clients’ needs and continuing to offer a broad range of quality service offerings and value-added solutions.
Environmental, Social, and Governance (ESG) Matters
We are committed to being a leader in environmental sustainability, social responsibility, and corporate governance. We embrace sustainability by striving to make a positive, lasting impact on society and the environment. Through our projects
15


and our operations, we have both an opportunity and a responsibility to protect, enhance, and restore the world's natural and social systems.
We are committed to addressing the effects of climate change as a key priority for our sustainability program by improving resilience and working to advance greenhouse gas emissions reduction targets. We combine our carbon reporting, sustainability, engineering, data solutions, and renewable energy service lines to best support our NetZero client needs and focused business growth. We also entered the high-growth sustainable energy planning and data center commissioning markets and expanded our subscription-based energy efficiency services.
Human Capital Resources
Our experienced employees and management team are our most valuable resources and we are committed to attracting, motivating, and retaining top professionals to service our clients. As of December 30, 2023, we had 4,106 employees, including 3,813 full-time employees. We consider our employee relations to be good.
Our success is directly related to the satisfaction, growth, and development of our employees. We strive to offer a work environment where employee unique characteristics and opinions are valued and one that provides our employees the opportunities to use and augment their professional skills. To achieve our human capital goals, we intend to remain focused on providing our personnel with entrepreneurial opportunities to expand our business within their areas of expertise and continue to provide our personnel with personal and professional growth. In addition to salaries, we also provide a 401(k)-retirement plan, healthcare and insurance benefits, health savings accounts, paid time off, and various services and tools to support our employees' health and wellness. Our leaders, managers, and employees are provided an opportunity to participate in our restricted stock plans. We emphasize a number of measures and objectives in managing our human capital assets, including, among others, employee safety and wellness, talent acquisition and retention, employee engagement, development, and training, diversity and inclusion, and compensation and pay equity.
We believe in supporting our employees’ health and well-being. Our goal is to assist employees in making informed decisions about their health by providing the tools and resources necessary to succeed in a healthier lifestyle. Our wellness program incorporates wellness activities, such as an annual physical, additional fitness activities, coaching and wellness challenges to support those lifestyle goals. The program is rewards-based and employees are offered specific incentives for participation.
Employee Engagement, Development, and Training. We provide all employees with the opportunity to share their opinions and feedback on our culture which helps enhance the employee experience, promote employee retention, drive change, and leverage the overall success of our organization. We provide all employees a wide range of professional development experiences, both formal and informal, at all stages in their careers.
Diversity and Inclusion and Ethical Business Practices. We are committed to fostering work environments that value and promote diversity and inclusion, including NV5's Diversity and Inclusion Program which focuses on initiatives to increase the diversity of our workforce and promote an environment of trust where employees feel safe to express their opinions and perspectives without fear of repercussion. This commitment includes providing equal access to, and participation in, equal employment opportunities, programs, and services without regard to race, religion, color, national origin, disability, sex, sexual orientation, gender identity, stereotypes, or assumptions based thereon. We pride ourselves in the development and fair treatment of our global workforce, including generous healthcare and benefit programs for our employees, equal employment hiring practices and policies, anti-harassment, workforce safety, and anti-retaliation policies. We welcome and celebrate our teams’ differences, experiences, and beliefs, and we are investing in a more engaged, diverse, and inclusive workforce.
We foster a strong corporate culture that promotes high standards of ethics and compliance for our businesses, including policies that set forth principles to guide employee, officer, director, and vendor conduct, such as our Code of Business Conduct and Ethics. We maintain a whistleblower policy and anonymous hotline for the confidential reporting of any suspected policy violations or unethical business conduct on the part of our businesses, employees, officers, directors, or vendors and provide training and education to our global workforce with respect to our Code of Business Conduct and Ethics and anti-corruption and anti-bribery policies.
Competition
The engineering and consulting industry is highly fragmented and characterized by many small-scale companies that focus their operations on regional markets or specialized niche activities. As a result, we compete with a large number of
16


regional, national, and global companies. The extent of our competition varies according to the particular markets and geographic area. The level and type of competition we face is also influenced by the nature and scope of a particular project.
Providers of engineering and consulting services primarily compete based on quality of service, relevant experience, staffing capabilities, reputation, geographic presence, stability, and price. Price differentiation remains an important element in competitive tendering and is the most significant factor in bidding for public sector consultancy contracts. The importance of the foregoing factors varies widely based upon the nature, location, and size of the project. We believe that certain economies of scale can be realized by service providers that establish a national reputation for providing engineering and consulting services in all our six service offerings. Since the demand for engineering and consulting services within each service offering is viewed as only moderately correlated with the demand for services within the other service offerings, we perceive that engineering and consulting firms can benefit considerably from diversified service offerings.
The number of competitors for any procurement can vary widely, depending upon technical qualifications, the relative value of the project, geographic location, financial terms, risks associated with the work, and any restrictions placed upon competition by the client. Our ability to compete successfully will depend upon the effectiveness of our marketing efforts, the strength of our client relationships, our ability to accurately estimate costs, the quality of the work we perform, our ability to hire and train qualified personnel, and our ability to obtain insurance.
We believe our principal publicly listed and private company competitors include the following firms (in alphabetical order): AECOM (NYSE: ACM), AMEC Foster Wheeler (LSE: JW), Bureau Veritas SA (PAR: BVI), Burns & McDonnell, Dewberry, the Hill International division of Global Infrastructure Solutions Inc., Intertek Group plc (LSE:ITRK), Jacobs Solutions Inc. (NYSE: J), Leidos Holdings, Inc. (NYSE: LDOS), POWER Engineers, Incorporated, Stantec Inc. (TSX: STN), Tetra Tech, Inc. (NASDAQ: TTEK), TRC Companies, Inc., Willdan Group, Inc. (NASDAQ: WLDN), and Woolpert Inc.
Seasonality
Historically, our operating results in the months of November through March have generally been weaker compared to our operating results in other months primarily due to adverse weather conditions and the holiday season. As a result, our gross revenues and net income for the first and fourth quarters of our fiscal year may be lower when compared to our results for the second and third quarters of our fiscal year.
Insurance and Risk Management
We maintain insurance covering professional liability and claims involving bodily injury, property, and economic loss. We consider our present limits of coverage, deductibles, and reserves to be adequate. Whenever possible, we endeavor to eliminate or reduce the risk of loss on a project using quality assurance and control, risk management, workplace safety, and other similar methods.
Risk management is an integral part of our project management approach for lump-sum contracts and our project execution process. We have a risk management process group that reviews and oversees the risk profile of our operations. We also evaluate risk through internal risk analyses in which our management reviews higher-risk projects, contracts, or other business decisions that require corporate legal and risk management approval.
Regulation
We are regulated in a number of fields in which we operate. We contract with various U.S. governmental agencies and entities. When working with U.S. governmental agencies and entities, we must comply with laws and regulations relating to the formation, administration, and performance of contracts. These laws and regulations contain terms that, among other things:
require certification and disclosure of all costs or pricing data in connection with various contract negotiations,
impose procurement regulations that define allowable and unallowable costs and otherwise govern our right to reimbursement under various cost-based U.S. government contracts, and
restrict the use and dissemination of information classified for national security purposes and the exportation of certain products and technical data.
We are also subject to the requirements of the U.S. Occupational Safety and Health Act ("OSHA") and comparable state statutes that regulate the protection of the health and safety of workers.
17


Internationally, we are subject to various government laws and regulations (including the Foreign Corrupt Practices Act (“FCPA”) and similar non-U.S. laws and regulations), export laws and regulations (including International Traffic in Arms Regulations ("ITAR"), Export Administration Regulations ("EAR"), and trade sanctions against embargoed countries to the extent we export technical services, data, products, and equipment outside of the United States), local government regulations, procurement policies and practices, and varying currency, political, and economic risks.
To help ensure compliance with these laws and regulations, our employees are required to complete ethics and other compliance training relevant to their position and our operations.
Available Information
We use our website www.nv5.com as a channel of distribution of information about NV5 Global, although information contained on our website is not part of, or incorporated into, this Annual Report on Form 10-K. Our Annual Reports on Form 10-K, Quarterly Reports on Form 10-Q, Current Reports on Form 8-K, and amendments to those reports filed or furnished pursuant to Section 13(a) or 15(d) of the Exchange Act are made available on our website as soon as reasonably practicable after we electronically file such material with, or furnish it to, the SEC. Our corporate governance documents, including our code of conduct and ethics, are also available on our website. In this Annual Report on Form 10-K, we incorporate by reference as identified herein certain information from parts of our proxy statement for our 2024 Annual Meeting of Stockholders, which we will file with the SEC and will be available, free of charge, on our website. Reports of our executive officers, directors and any other persons required to file securities ownership reports under Section 16(a) of the Exchange Act are also available on our website.
ITEM 1A.    RISK FACTORS.
We operate in a changing environment that involves numerous known and unknown risks and uncertainties that could materially adversely affect our operations. The risks described below highlight some of the factors that have affected, and in the future could affect our operations and financial condition. Additional risks we do not yet know of or that we currently think are immaterial may also affect our business operations. If any of the events or circumstances described in the following risks actually occur, our business, financial condition or results of operations could be materially adversely affected.
Summary Risk Factors
The following is a summary of some of the risks and uncertainties that could materially adversely affect our business, financial condition, and results of operations. You should read this summary together with the more detailed description of each risk factor contained below.
Risks Related to Our Operations
The loss of key personnel or our inability to attract and retain qualified personnel could significantly disrupt our business.
We depend on the continued services of Mr. Dickerson Wright, our Chairman and Chief Executive Officer.
Demand from our state and local government and private clients is cyclical.
Federal and state budgetary processes and constraints may have a material adverse impact on us.
We derive a majority of our gross revenues from public and quasi-public governmental agencies.
Public sector agencies may modify, curtail, or terminate our contracts at any time prior to their completion and, if we do not replace them, we may suffer a decline in revenue.
We may fail to win or renew contracts with private and public sector clients which may adversely affect our business.
If we fail to perform on a project, we may incur a loss on that project, which may reduce or eliminate our overall profitability.
We depend on a limited number of clients for a significant portion of our business.
Our industry is highly competitive and we may not be able to compete effectively with competitors.
Losses under lump-sum contracts may adversely impact our business operations and financial results.
We are subject to client credit risks.
18


Public employee unions may seek to limit the ability of public agencies to contract with private firms such as us.
Our use of the percentage-of-completion method of revenue recognition requires that we estimate costs to be incurred under long-term contracts. Incorrect estimates could result in a reduction or reversal of previously recorded revenue and profits.
Our actual business and financial results could differ from estimates and assumptions used to prepare our financial statements.
Our profitability could suffer if we are not able to maintain adequate utilization of our workforce.
Failure of our sub-consultants to satisfy their obligations could adversely impact our business operations and financial results.
Legal proceedings, investigations, and disputes could result in substantial monetary penalties and damages.
Unavailability or cancellation of third-party insurance coverage would increase our overall risk exposure.
Our failure to implement and comply with our safety program may adversely impact our financial results.
Weather conditions and seasonal revenue fluctuations may adversely impact our financial results.
We have only a limited ability to protect our intellectual property rights.
We rely on third-party internal and outsourced software to run our critical information systems.
U.S. and global economic uncertainties may adversely impact our operating results.
Unanticipated catastrophic events may adversely impact our business operations.
We are highly dependent on information technology - system failures and breaches could significantly affect us.
Cybersecurity breaches of our systems and information technology could adversely impact our ability to operate.
Risks Related to Our Indebtedness
Our indebtedness contains a number of restrictive covenants which could limit our flexibility.
Our variable rate indebtedness subjects us to interest rate risk.
Risks Related to Our Acquisition Strategy
We have made and expect to continue to make acquisitions that could disrupt our operations.
If we are not able to integrate acquired businesses successfully, our business could be harmed.
We may not be able to successfully manage our growth strategy.
Risks Related to Regulatory Compliance
As a government contractor, we must comply with procurement laws and are subject to regular government audits.
Misconduct or compliance failures may adversely impact our reputation as well as subject us to legal actions.
Changes in laws, regulations, and programs, including those related to energy efficiency, could reduce the demand for our services, negatively impacting our revenue.
We may be subject to liabilities under environmental laws, including un-indemnified liabilities assumed in acquisitions.
Changes in tax laws could increase our tax rate and materially affect our results of operations.
Our revenue and growth prospects may be harmed if we or our employees are unable to obtain government granted eligibility or other qualifications we and they need to perform services for our customers.
If our reports and opinions are not in compliance with professional standards and other regulations, we could be subject to monetary damages and penalties.
Our failure to comply with export laws and regulations may adversely impact our operations.
Risks Related to Our Common Stock
Our Chairman and Chief Executive Officer owns a large percentage of our voting stock.
19


Applicable legal protections we have adopted could discourage a takeover and adversely affect existing stockholders.
Future issuances of our common stock pursuant to our equity incentive plan may have a dilutive effect on your investment.
We currently do not pay dividends and do not intend to pay dividends on our shares of common stock in the foreseeable future.
Risks Related to Our Operations
The loss of key personnel or our inability to attract and retain qualified personnel could significantly disrupt our business.
As a provider of technology, conformity assessment, and consulting solutions, our business is labor intensive and, therefore, our ability to attract, retain, and expand our senior management, sales personnel, and professional and technical staff is an important factor in determining our future success. The market for qualified scientists, engineers, and sales personnel is competitive and we may not be able to attract and retain such professionals. It may also be difficult to attract and retain qualified individuals in the timeframe demanded by our clients. Furthermore, some of our government contracts may require us to employ only individuals who have particular government security clearance levels. Our failure to attract and retain key individuals could impair our ability to provide services to our clients and conduct our business effectively. The loss of the services of any key personnel could adversely affect our business. We do not maintain key-man life insurance policies on any of our executive officers.
We depend on the continued services of Mr. Dickerson Wright, our Chairman and Chief Executive Officer. We cannot assure you that we will be able to retain the services of Mr. Wright.
We are dependent upon the efforts and services of Mr. Dickerson Wright, our Chairman and Chief Executive Officer, because of his knowledge, experience, skills, and relationships with major clients and other members of our management team. Mr. Wright's amended and restated employment agreement terminates in August 2024, and Mr. Wright may terminate the agreement upon sixty days’ notice to us. The loss of the services of Mr. Wright for any reason could have an adverse effect on our operations.
Demand from our state and local government and private clients is cyclical and vulnerable to economic downturns. If the economy weakens or client spending declines, our financial results may be impacted.
Demand for services from our state and local government and private clients is cyclical and vulnerable to economic downturns, which may result in clients delaying, curtailing, or canceling proposed and existing projects. Our business traditionally lags the overall recovery in the economy and therefore, our business may not recover immediately when the economy improves. If the economy weakens or client spending declines further, then our revenue, profits, and overall financial condition may deteriorate.
Our state and local government clients may face budget deficits that prohibit them from funding new or existing projects. In addition, our existing and potential clients may either postpone entering into new contracts or request price concessions. Difficult financing and economic conditions may cause some of our clients to demand better pricing terms or delay payments for services we perform, thereby increasing the average number of days our receivables are outstanding and the potential of increased credit losses on uncollectible invoices. Further, these conditions may result in the inability of some of our clients to pay us for services that we have already performed. If we are not able to reduce our costs quickly enough to respond to the revenue decline from these clients, our operating results may be adversely affected. Accordingly, these factors affect our ability to forecast our future revenue and earnings from business areas that may be adversely impacted by market conditions.
A delay in the completion of the budget process of the U.S. government could delay procurement of our services and have an adverse effect on our future revenue.
We provide services to the U.S. Federal government, if the U.S. government does not complete its budget process before its fiscal year-end on September 30, government operations may be funded by means of a continuing resolution. Under a continuing resolution, the government essentially authorizes agencies of the U.S. government to continue to operate and fund programs at the prior year end but does not authorize new spending initiatives. When the U.S. government operates under a continuing resolution, or should appropriations legislation not be enacted prior to the expiration of such continuing resolution resulting in a partial shut-down of federal government operations, government agencies may delay the procurement of services, which could reduce our future revenue.
20


California state budgetary constraints may have a material adverse impact on us.
The state of California has historically been and is a key geographic region for our business. Approximately 26%, 28%, and 26% of our gross revenues during fiscal years 2023, 2022, and 2021, respectively, came from California-based projects. The timing and accessibility of budgetary funding, changes in state funding allocations to local agencies and municipalities, or other delays in purchasing for, or commencement of, projects may have a negative impact on our gross revenues and net income.
We derive a majority of our gross revenues from public and quasi-public governmental agencies, and any disruption in government funding or in our relationship with those agencies could adversely affect our business.
During fiscal 2023, approximately 68% of our gross revenues were attributable to public and quasi-public sector clients. A significant amount of our revenues are derived under multi-year contracts, many of which are appropriated on an annual basis. As a result, at the beginning of a project, the related contract may be only partially funded, and additional funding is normally committed only as appropriations are made in each subsequent year. These appropriations, and the timing of payment of appropriated amounts, may be influenced by numerous factors as noted below.
The demand for our government-related services is generally driven by the level of government program funding. Accordingly, the success and further development of our business depends, in large part, upon the continued funding of these government programs and upon our ability to obtain contracts and perform well under these programs. There are several factors that could materially affect our government contracting business, including the following:
changes in and delays or cancellations of government programs, requirements, or appropriations,
budget constraints or policy changes resulting in delay or curtailment of expenditures related to the services we provide,
re-competes of government contracts,
the timing and amount of tax revenue received by federal, state, and local governments, and the overall level of government expenditures,
curtailment in the use of government contracting firms,
delays associated with insufficient numbers of government staff to oversee contracts,
the increasing preference by government agencies for contracting with small and disadvantaged businesses, including the imposition of set percentages of prime and subcontracts to be awarded to such businesses for which we would not qualify,
competing political priorities and changes in the political climate with regard to the funding or operation of the services we provide,
the adoption of new laws or regulations affecting our contracting relationships with the federal, state, or local governments,
a dispute with, or improper activity by, any of our subcontractors, and
general economic or political conditions.
These and other factors could cause government agencies to delay or cancel programs, to reduce their orders under existing contracts, to exercise their rights to terminate contracts, or not to exercise contract options for renewals or extensions. Any of these actions could have a material adverse effect on our revenue or timing of contract payments from these agencies.
Public sector agencies may modify, curtail, or terminate our contracts at any time prior to their completion and, if we do not replace them, we may suffer a decline in revenue.
Most public sector contracts may be modified, curtailed, or terminated at any time. If a contract is terminated, we typically are able to recover only costs incurred or committed, settlement expenses, and profit on work completed prior to termination, which could prevent us from recognizing all of our potential revenue and profits from that contract.
Our failure to win new contracts and renew existing contracts with private and public sector clients may adversely affect our business operations and financial results.
Our business depends on our ability to win new contracts and renew existing contracts with private and public sector clients. Contract proposals and negotiations are complex and frequently involve a lengthy bidding and selection process, which
21


is affected by a number of factors. These factors include market conditions, financing arrangements, prevailing interest rates, and required governmental approvals. For example, a client may require us to provide a bond or letter of credit to protect the client should we fail to perform under the terms of the contract. If negative market conditions arise, or if we fail to secure adequate financial arrangements or the required government approvals, we may not be able to pursue particular projects, which could adversely affect our profitability.
Our inability to win or renew government contracts during regulated procurement processes or preferences granted to certain bidders for which we would not qualify could harm our operations and significantly reduce or eliminate our profits.
Government contracts are awarded through a regulated procurement process. The U.S. Federal government has increasingly relied upon multi-year contracts with pre-established terms and conditions, such as indefinite delivery/indefinite quantity (“IDIQ”) contracts, which generally require those contractors who have previously been awarded the IDIQ to engage in an additional competitive bidding process before a task order is issued. The increased competition may require us to make sustained efforts to reduce costs to realize revenue and profits under government contracts. If we are not successful in reducing the amount of costs we incur, our profitability on government contracts will be negatively impacted. The U.S. Federal government has also increased its use of IDIQs in which the client qualifies multiple contractors for a specific program and then awards specific task orders or projects among the qualified contractors. As a result, new work awards tend to be smaller and of shorter duration, since the orders represent individual tasks rather than large, programmatic assignments. In addition, even if we are qualified to work on a government contract, we may not be awarded certain contracts because of existing government policies designed to protect small businesses and underrepresented minority contractors. The federal government has announced specific statutory goals regarding awarding prime and subcontracts to small businesses, women-owned small businesses, and small disadvantaged businesses, which may obligate us to involve such businesses as subcontractors with respect to these contracts at lower margins than when we use our own professionals. While we are unaware of any reason why our status as a public company would negatively impact our ability to compete for and be awarded government contracts, our inability to win or renew government contracts during regulated procurement processes or as a result of the policies pursuant to which these processes are implemented could harm our operations and significantly reduce or eliminate our profits.
If we fail to complete a project in a timely manner, miss a required performance standard, or otherwise fail to adequately perform on a project, then we may incur a loss on that project, which may reduce or eliminate our overall profitability.
Our engagements often involve large-scale, complex projects. The quality of our performance on such projects depends in large part upon our ability to manage the relationship with our clients and our ability to effectively manage the project and deploy appropriate resources, including third-party contractors and our own personnel, in a timely manner. If a project is not completed by the scheduled date or fails to meet required performance standards, we may either incur significant additional costs or be held responsible for the costs incurred by the client to rectify damages due to late completion or failure to achieve the required performance standards. The performance of projects can be affected by a number of factors including unavoidable delays from government inaction, public opposition, inability to obtain financing, weather conditions, unavailability of vendor materials, changes in the project scope of services requested by our clients, industrial accidents, environmental hazards, and labor disruptions. To the extent these events occur, the total costs of the project could exceed our estimates and we could experience reduced profits or, in some cases, incur a loss on a project, which may reduce or eliminate our overall profitability. Further, any defects or errors, or failures to meet our clients’ expectations, could result in claims for damages against us. Our contracts generally limit our liability for damages that arise from negligent acts, errors, mistakes, or omissions in rendering services to our clients. However, we cannot be sure that these contractual provisions will protect us from liability for damages in the event we are sued.
We depend on a limited number of clients for a significant portion of our business.
Our ten largest clients accounted for approximately 27% of our gross revenues during the fiscal year ended December 30, 2023. The loss of, or reduction in orders from, these large clients could have a material adverse effect on our business, financial condition, and results of operations.
Our industry is highly competitive and we may not be able to compete effectively with competitors.
Our industry is highly fragmented and intensely competitive. Our competitors are numerous, ranging from small private firms to multi-billion dollar public companies. Contract awards are based primarily on quality of service, relevant experience, staffing capabilities, reputation, geographic presence, stability, and price. In addition, the technical and professional aspects of our services generally do not require large upfront capital expenditures and provide limited barriers against new competitors. Many of our competitors have achieved greater market penetration in some of the markets in which we compete and have more personnel, technical, marketing, and financial resources or financial flexibility than we do. As a result of the
22


number of competitors in the industry, our clients may select one of our competitors on a project due to competitive pricing or a specific skill set. These competitive forces could force us to make price concessions or otherwise reduce prices for our services. If we are unable to maintain our competitiveness, our market share, revenue, and profits could decline.
Losses under lump-sum contracts may adversely impact our business operations and financial results.
Lump-sum contracts typically require the performance of all the work under the contract for a specified lump-sum fee, subject to price adjustments if the scope of the project changes or unforeseen conditions arise. During fiscal 2023, 2022, and 2021, approximately 50%, 44%, and 44% of our revenue was recognized under lump-sum contracts. Lump-sum contracts expose us to a number of risks not inherent in cost-plus and time and material contracts, including underestimation of costs, ambiguities in specifications, unforeseen costs or difficulties, problems with new technologies, delays beyond our control, failures of subcontractors to perform, and economic or other changes that may occur during the contract period. Losses under lump-sum contracts could adversely impact our results of operations.
If our clients delay in paying or fail to pay amounts owed to us, our business operations and financial results may be adversely impacted.
Our accounts receivable are a significant asset on our balance sheet. While we take steps to evaluate and manage the credit risks relating to our clients, economic downturns, prevailing interest rates, or other events can adversely affect the markets we serve and our clients' ability to pay, which could reduce our ability to collect amounts due from clients. If our clients delay in paying or fail to pay us a significant amount of our outstanding receivables, it could have a material adverse effect on our liquidity, results of operations, and financial condition.
If we extend a significant portion of our credit to clients in a specific geographic area or industry, we may experience disproportionately high levels of collection risk and nonpayment if those clients are adversely affected by factors particular to their geographic area or industry.
Our clients include public and private entities that have been, and may continue to be, negatively impacted by the changing landscape in the global economy. We face collection risk as a normal part of our business where we perform services and subsequently bill our clients for such services. Our ten largest clients accounted for approximately 27% of our gross revenues during fiscal 2023. In the event that we have concentrated credit risk from clients in a specific geographic area or industry, continuing negative trends or a worsening in the financial condition of that specific geographic area or industry could make us susceptible to disproportionately high levels of default by those clients. Such defaults could materially adversely impact our ability to collect our receivables and, ultimately, our revenues and results of operations.
State and other public employee unions may bring litigation that seeks to limit the ability of public agencies to contract with private firms to perform government employee functions in the area of public improvements. Judicial determinations in favor of these unions could affect our ability to compete for contracts and may have an adverse effect on our financial results.
State and other public employee unions have challenged the validity of propositions, legislation, charters, and other government regulations that allow public agencies to contract with private firms to provide services in the fields of engineering, design, and construction of public improvements that might otherwise be provided by public employees. These challenges could have the effect of eliminating or severely restricting the ability of municipalities to hire private firms and otherwise require them to use union employees to perform the services. If a state or other public employee union is successful in its challenge, this may result in additional litigation which could affect our ability to compete for contracts.
Our use of the percentage-of-completion method of revenue recognition requires that we estimate costs to be incurred under long-term contracts. Incorrect estimates could result in a reduction or reversal of previously recorded revenue and profits.
During fiscal 2023, 2022, and 2021, approximately 50%, 44%, and 44% of our revenues were associated with contracts accounting for using the percentage-of-completion method of revenue recognition. Our use of percentage-of-completion accounting requires that revenue and profit be recognized ratably over the life of the contract based on the proportion of costs incurred to date to total costs expected to be incurred for the entire project. The effects of revisions to revenue and estimated costs, including the achievement of award fees as well as the impact of change orders and claims, are recorded when the amounts are known and can be reasonably estimated. Such revisions could occur in any period and their effects could be material. The uncertainties inherent in the estimating process make it possible for actual costs to vary materially from initial and updated estimates.
23


Our actual business and financial results could differ from the estimates and assumptions that we use to prepare our financial statements, which may significantly reduce or eliminate our profits.
The preparation of financial statements in conformity with generally accepted accounting principles in the U.S. (“GAAP”) requires management to make estimates and assumptions as of the date of the financial statements. These estimates and assumptions could affect the reported values of assets, liabilities, revenue, and expenses as well as disclosures of contingent assets and liabilities. For example, we recognize a portion of revenue over the life of a contract based on the proportion of costs incurred to date compared to the total costs estimated to be incurred for the entire project. Areas requiring significant estimates by our management include:
the application of the percentage-of-completion method of accounting and revenue recognition on contracts, change orders, and contract claims,
provisions for uncollectible receivables and client claims and recoveries of costs from subcontractors, vendors, and others,
value of goodwill and recoverability of other intangible assets, and
valuations of assets acquired and liabilities assumed in connection with business combinations.
Our actual business and financial results could differ from those estimates, which may significantly reduce or eliminate our profit.
Our profitability could suffer if we are not able to maintain adequate utilization of our workforce.
The cost of providing our services, including the extent to which we utilize our workforce, affects our profitability. The rate at which we utilize our workforce is affected by a number of factors, including:
our ability to transition employees from completed projects to new assignments and to hire and assimilate new employees,
our ability to forecast demand for our services and thereby maintain an appropriate headcount in each of our geographies and workforces,
our ability to manage attrition,
our need to devote time and resources to training, business development, professional development, and other non-chargeable activities, and
our ability to match the skill sets of our employees to the needs of the marketplace.
If we over-utilize our workforce, our employees may become disengaged, which will impact employee attrition. If we under-utilize our workforce, our profit margin and profitability could suffer.
Failure of our sub-consultants to satisfy their obligations to us or other parties, or the inability to maintain these relationships, may adversely impact our business operations and financial results.
We depend on sub-consultants in conducting our business. There is a risk that we may have disputes with our sub-consultants arising from, among other things, the quality and timeliness of work performed, client concerns, or failure to extend existing task orders or issue new task orders under a subcontract. In addition, if any of our sub-consultants fail to deliver on a timely basis the agreed-upon supplies, go out of business, or fail to perform on a project, our ability to fulfill our obligations may be jeopardized and we may be contractually responsible for the work performed. The absence of qualified sub-consultants with which we have a satisfactory relationship could adversely affect the quality of our service and our ability to perform under some of our contracts.
We also rely on relationships with other contractors when we act as their sub-consultants or joint venture partner. Our future revenue and growth prospects could be adversely affected if other contractors eliminate or reduce their subcontracts or teaming arrangement relationships with us or if a government agency terminates or reduces these other contractors’ programs, does not award them new contracts, or refuses to pay under a contract.
24


Legal proceedings, investigations, and disputes, including those assumed in acquisitions of other businesses for which we may not be indemnified, could result in substantial monetary penalties and damages.
We engage in professional and technical consulting services that can result in substantial injury or damages that may expose us to legal proceedings, investigations, and disputes. In addition, in the ordinary course of our business, we frequently make professional judgments and recommendations about environmental and engineering conditions of projects for our clients. We may be deemed to be responsible for these judgments and recommendations if they are later determined to be inaccurate. As a public company, we also face the risk that one or more securities class action lawsuits will be filed claiming investor losses are attributable to alleged material misstatements in, or omissions of material facts from, our filings with the SEC or otherwise. Any unfavorable legal ruling against us could result in substantial monetary damages or even criminal violations.
We maintain insurance coverage as part of our overall legal and risk management strategy to minimize our potential liabilities. However, insurance coverage contains exclusions and other limitations that may not cover our potential liabilities and as such, we may incur liabilities that exceed or that are excluded from our insurance coverage or for which we are not insured. In addition, there can be no assurance that we will be able to obtain coverage at a cost-effective rate in the future.
Unavailability or cancellation of third-party insurance coverage would increase our overall risk exposure as well as disrupt the management of our business operations.
We maintain insurance coverage from third-party insurers as part of our overall risk management strategy and some of our contracts require us to maintain specific insurance coverage limits. If any of our third-party insurers fail, suddenly cancel our coverage, or otherwise are unable to provide us with adequate insurance coverage, our overall risk exposure and our operational expenses would increase and the management of our business operations would be disrupted. In addition, there can be no assurance that any of our existing insurance coverage will be renewable upon the expiration of the coverage period or that future coverage will be affordable at the required limits.
Our failure to implement and comply with our safety program may adversely impact our operations.
Our safety program is a fundamental element of our overall approach to risk management and the implementation of the safety program is significant to our clients. We maintain an enterprise-wide group of health and safety professionals to help ensure that the services we provide are delivered safely and in accordance with standard work processes. Unsafe job sites and office environments have the potential to increase employee turnover, the cost of a project to our clients and our operating costs as well as expose us to types and levels of risk that are fundamentally unacceptable. The implementation of our safety processes and procedures are monitored by various agencies and rating bureaus and may be evaluated by certain clients in cases in which safety requirements have been established in our contracts. We may be adversely affected if we fail to meet these requirements or do not properly implement and comply with our safety program.
Weather conditions and seasonal revenue fluctuations may adversely impact on our financial results.
Our financial results during the months of November through March may be impacted by adverse weather conditions and the holiday season. As a result, our revenue and net income for the first and fourth quarters of our fiscal year may be lower when compared to our results for the second and third quarters of our fiscal year. If we were to experience lower-than-expected revenues during any such period, our expenses may not be offset.
We have only a limited ability to protect our intellectual property rights, and our failure to protect our intellectual property rights may adversely affect our competitive position.
Our success depends, in part, upon our ability to protect our proprietary information and other intellectual property. We rely principally on trade secrets to protect much of our intellectual property where we do not believe that patent or copyright protection is appropriate or obtainable. Although our employees are subject to confidentiality obligations, this protection may be inadequate to deter or prevent misappropriation of our confidential information. In addition, we may be unable to detect unauthorized use of our intellectual property or otherwise take appropriate steps to enforce our rights. Failure to obtain or maintain trade secret protection would adversely affect our competitive business position. In addition, if we are unable to prevent third parties from infringing or misappropriating our trademarks or other proprietary information, our competitive position could be adversely affected.
25


We rely on third-party internal and outsourced software to run our critical accounting, project management, and financial information systems. As a result, any sudden loss, disruption, or unexpected costs to maintain these systems could significantly increase our operational expense and disrupt the management of our business operations.
We rely on third-party software to run our critical accounting, project management, and financial information systems. We also depend on our software vendors to provide long-term software maintenance support for our information systems. Software vendors may decide to discontinue further development, integration, or long-term software maintenance support for our information systems, in which case we might need to abandon one or more of our current information systems and migrate some or all our accounting, project management, and financial information to other systems, thus increasing our operational expense as well as disrupting the management of our business operations.
U.S. and global economic uncertainties and specific conditions in the markets we address may adversely impact our operating results.
Over the past several years, the general worldwide economy has been affected, at various times, to slower economic activity, concerns about inflation and deflation, increased energy costs, international trade disputes and imbalances, and adverse business conditions. These conditions may make it difficult for our clients and vendors to accurately forecast future business activities, which could cause businesses to slow spending on services. Such conditions may also make it difficult for us to predict the short-term and long-term impacts of these trends on our business. We cannot predict the timing, strength, or duration of any economic slowdown or subsequent economic recovery worldwide or in our industry, and any such economic slowdown could have any adverse effect on our results of operations.
Unanticipated catastrophic events may adversely impact our business operations.
Our business operations may be adversely impacted by force majeure or extraordinary events beyond the control of the contracting parties, such as natural and man-made disasters as well as the outbreak or escalation of military hostilities or terrorist attacks. Such events could result in the closure of offices, interruption of projects, and the relocation of employees. We typically remain obligated to perform our services after a terrorist attack or natural disaster unless the contract contains a force majeure clause that relieves us of our contractual obligations. If we are not able to react quickly to force majeure, our operations may be affected significantly, which would have a negative impact on our business operations.
Further, we rely on our network and third-party infrastructure and enterprise applications, internal technology systems, and our website for our development, marketing, operational, support, hosted services, and sales activities. Despite our implementation of network security measures, we are vulnerable to disruption, infiltration, or failure of these systems or third-party hosted services in the event of a major earthquake, fire, power loss, telecommunications failure, cyber-attack, war, terrorist attack, or other catastrophic event could cause system interruptions, reputational harm, loss of intellectual property, lengthy interruptions in our services, breaches of data security, and loss of critical data and could harm our future operating results.
We are highly dependent on information and communications systems. System failures, security breaches of networks or systems could significantly disrupt our business and operations and negatively affect the market price of our common stock.
Our business is highly dependent on communications and information systems. These systems are primarily operated by third-parties and, as a result, we have limited ability to ensure their continued operation. In the event of systems failure or interruption, we have limited ability to affect the timing and success of systems restoration. Any failure or interruption of our systems could cause delays or other problems in the delivery of our services, which could have a material adverse effect on our operating results and negatively affect the market price of our common stock.
We rely on information technology systems, networks, and infrastructure in managing our day-to-day operations. Despite cybersecurity measures already in place, our information technology systems, networks and infrastructure may be vulnerable to deliberate attacks or unintentional events that could interrupt or interfere with their functionality or the confidentiality of our information. Our inability to effectively utilize our information technology systems, networks and infrastructure, and protect our information could adversely affect our business.
26


Cybersecurity breaches of our systems and information technology could adversely impact our ability to operate.
We must protect our own internal trade secrets and other business confidential information from disclosure. We face the threat to our computer systems of unauthorized access, computer hackers, computer viruses, malicious code, organized cyber-attacks, and other security problems and system disruptions, including possible unauthorized access to our and our clients' proprietary or classified information. As a result of the developing conflict between Russia and the Ukraine, in February 2022 the U.S. Cybersecurity and Infrastructure Security Agency issued a "Shields Up" alert for American organizations noting the potential for Russia’s cyber-attacks on Ukrainian government and critical infrastructure organizations to impact organizations both within and beyond the U.S., particularly in the wake of sanctions imposed by the United States and its allies. We rely on industry-accepted security measures and technology to securely maintain all confidential and proprietary information on our information systems. We have devoted and will continue to devote significant resources to the security of our computer systems, but they may still be vulnerable to these threats. A user who circumvents security measures could misappropriate confidential or proprietary information, including information regarding us, our personnel and/or our clients, or cause interruptions or malfunctions in operations. As a result, we may be required to expend significant resources to protect against the threat of these system disruptions and security breaches or to alleviate problems caused by these disruptions and breaches. Any of these events could damage our reputation and have a material adverse effect on our business, financial condition, results of operations and cash flows. Although the aggregate impact on our operations and financial condition has not been material to date, we have been the target of events of this nature and expect them to continue as cybersecurity threats have been rapidly evolving in sophistication and becoming more prevalent in the industry.
Risks Related to Our Indebtedness
Our credit agreement with Bank of America, N.A. contains a number of restrictive covenants which could limit our ability to finance future operations, acquisitions or capital needs or engage in other business activities that may be in our interest.
Our credit agreement contains a number of significant covenants that impose operating and other restrictions on us and our subsidiaries. Such restrictions affect or could affect, and in many respects limit or prohibit, among other things, our ability and the ability of certain of our subsidiaries to:
incur additional indebtedness,
create liens,
pay dividends and make other distributions in respect of our equity securities,
redeem our equity securities,
enter into certain lines of business,
make certain investments or certain other restricted payments,
sell certain kinds of assets,
enter into certain types of transactions with affiliates, and
undergo a change in control or effect certain mergers or consolidations.
In addition, our credit agreement also requires us to comply with a consolidated fixed charge coverage ratio and consolidated leverage ratio. Our ability to comply with these ratios may be affected by events beyond our control.
These restrictions could limit our ability to plan for or react to market or economic conditions or meet capital needs or otherwise restrict our activities or business plans and could adversely affect our ability to finance our operations, acquisitions, investments, or strategic alliances or other capital needs or to engage in other business activities that would be in our interest.
A breach of any of these covenants or our inability to comply with the required financial ratios could result in a default under the credit agreement. If an event of default occurs, the lenders under the credit agreement could elect to:
declare all borrowings outstanding, together with accrued and unpaid interest, to be immediately due and payable,
require us to apply all of our available cash to repay the borrowings, or
prevent us from making debt service payments on certain of our borrowings.
If we were unable to repay or otherwise refinance these borrowings when due, the lenders under the credit agreement could sell the collateral securing the credit agreement, which constitutes a significant majority of our subsidiaries' assets.
27


Our variable rate indebtedness subjects us to interest rate risk, which could cause our debt service obligations to increase significantly.
Borrowings under our credit agreement are at variable rates of interest and expose us to interest rate risk. If interest rates increase, our debt service obligations on the variable rate indebtedness will increase even though any amount borrowed remains the same, and our net income and cash flows, including cash available for servicing our indebtedness, will correspondingly decrease. As of December 30, 2023, we had $195.8 million outstanding under the credit agreement. We may determine to enter into interest rate swaps that involve the exchange of floating for fixed rate interest payments in the future in order to reduce interest rate volatility. However, we may not maintain interest rate swaps with respect to all of our variable rate indebtedness, and any swaps we enter into may not fully mitigate our interest rate risk and could be subject to credit risk themselves.
Risks Related to Our Acquisition Strategy
We have made and expect to continue to make acquisitions that could disrupt our operations and adversely impact our business and operating results. Our inability to successfully integrate acquisitions could impede us from realizing all of the benefits of the acquisitions, which could weaken our results of operations.
A key part of our growth strategy is to acquire other companies that complement our service offerings or broaden our technical capabilities and geographic presence. Acquisitions involve certain known and unknown risks that could cause our actual growth or operating results to differ from our expectations or the expectations of securities analysts. For example:
we may not be able to identify suitable acquisition candidates or acquire additional companies on acceptable terms,
we may pursue international acquisitions, which inherently pose more risk than domestic acquisitions,
we compete with others to acquire companies, which may result in decreased availability of, or increased price for, suitable acquisition candidates,
we may not be able to obtain the necessary financing on favorable terms, or at all, to finance any of our potential acquisitions,
we may ultimately fail to consummate an acquisition even if we announce that we plan to acquire a company, and
acquired companies may not perform as we expect, and we may fail to realize anticipated revenue and profits.
On December 22, 2017, the U.S. enacted the Tax Cuts and Jobs Act (“2017 Tax Reform”), which significantly revised the U.S. tax code by, among other things, lowering the corporate income tax rate from 35% to 21%, limiting the deductibility of interest expense, implementing a territorial tax system, and imposing a repatriation tax on deemed repatriated earnings of foreign subsidiaries. Future debt-financed acquisitions could be impacted by this change. Future acquisitions may also be impacted by future tax changes.
Our acquisition strategy may divert management’s attention away from our existing businesses, resulting in the loss of key clients or key employees, and expose us to unanticipated problems or legal liabilities, including responsibility as a successor-in-interest for undisclosed or contingent liabilities of acquired businesses or assets.
If we are not able to integrate acquired businesses successfully, our business could be harmed.
Our inability to successfully integrate future acquisitions could impede us from realizing all the benefits of those acquisitions and could severely weaken our business operations. The integration process may disrupt our business and, if implemented ineffectively, may preclude realization of the full benefits expected by us and could harm our results of operations. In addition, the overall integration of the combining companies may result in unanticipated problems, expenses, liabilities, and competitive responses, and may cause our stock price to decline. The difficulties of integrating an acquisition include, among others:
unanticipated issues in integration of information, communications, and other systems,
unanticipated incompatibility of logistics, marketing, and administration methods,
maintaining employee morale and retaining key employees,
integrating the business cultures of both companies,
preserving important strategic client relationships,
28


consolidating corporate and administrative infrastructures and eliminating duplicative operations, or
coordinating geographically separate organizations.
In addition, even if the operations of an acquisition are integrated successfully, we may not realize the full benefits of the acquisition, including the synergies, cost savings, or growth opportunities that we expect. These benefits may not be achieved within the anticipated time frame, or at all. Further, acquisitions may also cause us to:
issue securities that would dilute our current stockholders’ ownership percentage,
use a substantial portion of our cash resources,
increase our interest expense, leverage, and debt service requirements if we incur additional debt to pay for an acquisition,
assume liabilities, including environmental liabilities, for which we do not have indemnification from the former owners or have indemnification that may be subject to dispute or concerns regarding the creditworthiness of the former owners,
record goodwill and non-amortizable intangible assets that are subject to impairment testing on a regular basis and potential impairment charges,
experience volatility in earnings due to changes in contingent consideration related to acquisition liability estimates,
incur amortization expenses related to certain intangible assets,
lose existing or potential contracts due to conflicts-of-interest,
incur large and immediate write-offs, or
become subject to litigation.
If we are not able to successfully manage our growth strategy, our business operations and financial results may be adversely affected.
Our expected future growth presents numerous managerial, administrative, and operational challenges. Our ability to manage the growth of our operations will require us to continue to improve our management information systems and our other internal systems and controls. In addition, our growth will increase our need to attract, develop, motivate, and retain both our management and professional employees. The inability of our management to effectively manage our growth or the inability of our employees to achieve anticipated performance could have a material adverse effect on our business.
29


Risks Related to Regulatory Compliance
As a government contractor, we must comply with various procurement laws and regulations and are subject to regular government audits. A violation of any of these laws and regulations or the failure to pass a government audit could result in sanctions, contract termination, forfeiture of profit, harm to our reputation or loss of our status as an eligible government contractor and could reduce our profits and revenue.
We must comply with and are affected by U.S. Federal, state, local, and foreign laws and regulations relating to the formation, administration, and performance of government contracts. For example, we must comply with defective-pricing clauses found within the Federal Acquisition Regulation (“FAR”), the Truth in Negotiations Act, Cost Accounting Standards (“CAS”), the Services Contract Act, and the U.S. Department of Defense security regulations, as well as many other rules and regulations. In addition, we must also comply with other government regulations related to employment practices, environmental protection, health and safety, tax, accounting, and anti-fraud measures, as well as many other regulations in order to maintain our government contractor status. These laws and regulations affect how we do business with our clients and, in some instances, impose additional costs on our business operations. Although we take precautions to prevent and deter fraud, misconduct, and non-compliance, we face the risk that our employees or outside partners may engage in misconduct, fraud, or other improper activities. Government agencies routinely audit and investigate government contractors. These government agencies review and audit a government contractor’s performance under its contracts and cost structure and evaluate compliance with applicable laws, regulations, and standards. In addition, during the course of its audits, such agencies may question our incurred project costs. If such agencies believe we have accounted for such costs in a manner inconsistent with the requirements for FAR or CAS, the agency auditor may recommend to our U.S. government corporate administrative contracting officer that it disallow such costs. Historically, we have not experienced significant disallowed costs as a result of government audits. However, we can provide no assurance that such government audits will not result in a material disallowance for incurred costs in the future. In addition, government contracts are subject to a variety of other requirements relating to the formation, administration, performance, and accounting for these contracts. We may also be subject to qui tam litigation brought by private individuals on behalf of the government under the Federal Civil False Claims Act, which could include claims for treble damages. Government contract violations could result in the imposition of civil and criminal penalties or sanctions, contract termination, forfeiture of profit, or suspension of payment, any of which could make us lose our status as an eligible government contractor. We could also suffer serious harm to our reputation. Any interruption or termination of our government contractor status could reduce our profits and revenue significantly.
Employee, agent or partner misconduct or our overall failure to comply with laws or regulations may adversely impact our reputation and financial results as well as subject us to criminal and civil enforcement actions.
Misconduct, fraud, non-compliance with applicable laws and regulations, or other improper activities by one of our employees, agents, or partners could have a significant negative impact on our business and reputation. Such misconduct could include the failure to comply with regulations regarding government procurements, the protection of classified information, bribery and other foreign corrupt practices, pricing of labor and other costs in government contracts, lobbying or similar activities, internal controls over financial reporting, environmental laws, and any other applicable laws or regulations. For example, the FCPA, and similar anti-bribery laws in other jurisdictions generally prohibit companies and their intermediaries from making improper payments to non-U.S. officials for the purpose of obtaining or retaining business. Our policies mandate compliance with these regulations and laws, and we take precautions to prevent and detect misconduct. However, since our internal controls are subject to inherent limitations, including human error, it is possible that these controls could be intentionally circumvented or become inadequate because of changed conditions. As a result, we cannot assure that our controls will protect us from reckless or criminal acts committed by our employees and agents. Our failure to comply with applicable laws or regulations or acts of misconduct could subject us to fines and penalties, loss of security clearances, and suspension or debarment from contracting, any or all of which could harm our reputation, reduce our revenue and profits, and subject us to criminal and civil enforcement actions.
Changes in resource management or infrastructure industry laws, regulations, and programs could directly or indirectly reduce the demand for our services which could in turn negatively impact our revenue.
Some of our services are directly or indirectly impacted by changes in U.S. Federal, state, local, or foreign laws and regulations pertaining to resource management, infrastructure, and the environment. In addition, growing concerns about climate change may result in the imposition of additional regulations, international protocols, or other restrictions on emissions. Accordingly, such additional laws and regulations or a relaxation or repeal of existing laws and regulations, or changes in governmental policies regarding the funding, implementation, or enforcement of these programs, could result in a decline in demand for our services, which could in turn negatively impact our revenue.
30


We may be subject to liabilities under environmental laws and regulations, including liabilities assumed in acquisitions for which we may not be indemnified.
We must comply with a number of laws that strictly regulate the handling, removal, treatment, transportation, and disposal of toxic and hazardous substances. Under the Comprehensive Environmental Response Compensation and Liability Act of 1980, as amended (“CERCLA”), and comparable state laws, we may be required to investigate and remediate regulated hazardous materials. CERCLA and comparable state laws typically impose strict joint and several liabilities without regard to whether a company knew of or caused the release of hazardous substances. The liability for the entire cost of clean-up could be imposed upon any responsible party. Other principal federal environmental, health, and safety laws affecting us include, among others, the Resource Conversation and Recovery Act, the National Environmental Policy Act, the Clean Air Act, the Occupational Safety and Health Act, the Toxic Substances Control Act, and the Superfund Amendments and Reauthorization Act. Our business operations may also be subject to similar state and international laws relating to environmental protection. Liabilities related to environmental contamination or human exposure to hazardous substances, or a failure to comply with applicable regulations, could result in substantial costs to us, including clean-up costs, fines and civil or criminal sanctions, third-party claims for property damage or personal injury, or cessation of remediation activities. Our continuing work in the areas governed by these laws and regulations exposes us to the risk of substantial liability.
Current and potential changes in applicable tax laws could increase our tax rate and materially affect our results of operations.
We are subject to tax laws in the U.S. and certain foreign jurisdictions. The current U.S. presidential administration has called for changes to fiscal and tax policies, which may include comprehensive tax reform. In addition, many international legislative and regulatory bodies have proposed and/or enacted legislation that could significantly impact how U.S. multinational corporations are taxed on foreign earnings. Certain of these proposed and enacted changes to the taxation of our business activities could increase our effective tax rate and harm our results of operations.
Our revenue and growth prospects may be harmed if we or our employees are unable to obtain government granted eligibility or other qualifications we and they need to perform services for our customers.
A number of government programs require contractors to have certain kinds of government granted eligibility, such as security clearance credentials. Depending on the project, eligibility can be difficult and time-consuming to obtain. If we or our employees are unable to obtain or retain the necessary eligibility, we may not be able to win new business, and our existing customers could terminate their contracts with us or decide not to renew them. To the extent we cannot obtain or maintain the required security clearances for our employees working on a particular contract, we may not derive the revenue or profit anticipated from such contract.
If our reports and opinions are not in compliance with professional standards and other regulations, we could be subject to monetary damages and penalties.
We issue reports and opinions to clients based on our professional expertise. Our reports and opinions may need to comply with professional standards, licensing requirements, securities regulations, and other laws and rules governing the performance of professional services in the jurisdiction in which the services are performed. In addition, we could be liable to third parties who use or rely upon our reports or opinions even if we are not contractually bound to those third parties. For example, if we deliver an inaccurate report or one that is not in compliance with the relevant standards, and that report is made available to a third party, we could be subject to third-party liability, resulting in monetary damages and penalties.
Our failure to comply with export laws and regulations may adversely impact our operations.
We are subject to U.S. export laws and regulations, including International Traffic in Arms Regulations ("ITAR"), Export Administration Regulations ("EAR"), and trade sanctions against embargoed countries to the extent we export technical services, data, products, and equipment outside of the United States. We may be adversely affected if we fail to comply with these laws and regulations, which could result in civil or criminal sanctions, including fines, suspension, or debarment of U.S. government contracts.
31


Risks Related to Our Common Stock
Our Chairman and Chief Executive Officer owns a large percentage of our voting stock, which may allow him to have a significant influence on all matters requiring stockholder approval.
Mr. Dickerson Wright, our Chairman and Chief Executive Officer, beneficially owned 1,727,328 shares, or approximately 10.9% of our common stock on a fully diluted basis as of February 16, 2024. Accordingly, Mr. Wright has the power to significantly influence the outcome of important corporate decisions or matters submitted to a vote of our stockholders, including decisions regarding mergers, going private transactions, and other extraordinary transactions, and to significantly influence the terms of any of these transactions. Although Mr. Wright owes our stockholders certain fiduciary duties as a director and an executive officer, Mr. Wright could take actions to address his own interests, which may be different from those of our other stockholders.
Provisions in our charter documents and the Delaware General Corporation Law could make it more difficult for a third party to acquire us and could discourage a takeover and adversely affect existing stockholders.
Anti-takeover provisions in our certificate of incorporation and bylaws, and in the Delaware General Corporation Law, could diminish the opportunity for stockholders to participate in acquisition proposals at a price above the then-current market price of our common stock. For example, our board of directors, without further stockholder approval, could authorize the issuance of shares of undesignated preferred stock and fix the designation, powers, preferences, and rights and any qualifications, limitations, and restrictions of such class or series, which could adversely affect the voting power of your shares. Our bylaws also provide for an advance notice procedure for nomination of candidates to our board of directors that could have the effect of delaying, deterring, or preventing a change in control. As a Delaware corporation, we are subject to provisions of the Delaware General Corporation Law regarding “business combinations,” which could deter attempted takeovers in certain situations which our company could adopt. The authority of our board of directors to issue undesignated preferred or other capital stock and the anti-takeover provisions of the Delaware General Corporation Law, as well as other current and any future anti-takeover measures adopted by us, may, in certain circumstances, delay, deter, or prevent takeover attempts and other changes in control of our company not approved by our shareholders.
Future issuances of our common stock pursuant to our equity incentive plan may have a dilutive effect on your investment and resales of such shares may adversely impact the market price of our common stock.
As of December 30, 2023, we have registered an aggregate of 2,295,604 shares of common stock reserved under Registration Statements on Form S-8 and we may file additional Registration Statements on Form S-8 to register additional shares reserved under our equity incentive plan or employee stock purchase plan. Issuance of shares of common stock pursuant to our equity incentive plan or employee stock purchase plan may have a dilutive effect on our common stock. Also, all shares issued pursuant to a Registration Statement on Form S-8 can be freely sold in the public market upon issuance, subject to restrictions on our affiliates under Rule 144 promulgated by the SEC under the Securities Act of 1933, as amended. If a large number of these shares are sold in the public market, the sales may be viewed negatively by the market and adversely affect the market price of our common stock. 
We currently do not pay dividends and do not intend to pay dividends on our shares of common stock in the foreseeable future and, consequently, your only current opportunity to achieve a return on your investment is if the price of our shares appreciates.
We currently do not pay dividends and our credit agreement contains restrictions regarding the payment of dividends. Accordingly, we do not expect to pay dividends on our shares of common stock in the foreseeable future and intend to use cash to grow our business. Consequently, your only current opportunity to achieve a return on your investment in us will be if the market price of our common stock appreciates.
ITEM 1B.    UNRESOLVED STAFF COMMENTS.
Not applicable.
32


ITEM 1C.    CYBERSECURITY.
Cybersecurity Risk Management and Strategy
The identification and assessment of cybersecurity risk is integrated into our overall risk management systems and processes. We have an enterprise-wide information security program designed to identify, protect, detect, respond to, and manage reasonably foreseeable cybersecurity risks and threats. To protect our information systems from cybersecurity threats, we use various security tools that help prevent, identify, escalate, investigate, resolve, and recover from identified vulnerabilities and security incidents in a timely manner. These include, but are not limited to, internal reporting, monitoring, circulated advisories, detection tools, conducting employee training, monitoring emerging laws and regulation related to data protection and information security. We also maintain a third-party security program to further assist us with the identification, prioritization, assessment, mitigation, and remediation of third-party risks.
As part of our cybersecurity program, we regularly perform risk assessment of cybersecurity and technology threats and monitor our information systems for potential vulnerabilities. On a bi-weekly basis, we assess cybersecurity threats through a third-party cybersecurity vendor. We use a widely adopted risk quantification model to identify, measure, and prioritize cybersecurity and technology risks and develop security controls and safeguards. Security events and data incidents are evaluated, ranked by severity, and prioritized for response and remediation. Incidents are evaluated to determine materiality as well as operational and business impact and reviewed for privacy impact. We conduct regular reviews and tests of our information security program, tabletop exercises, penetration and vulnerability testing, simulations, and other exercises to evaluate the effectiveness of our information security program and improve our security measures and planning.
Our systems have experienced directed attacks intended to lead to interruptions and delays in our service and operations as well as loss, misuse, or theft of information. To date these incidents have not had a material impact on our service, systems, or business. For more information on how risks from identified cybersecurity threats have materially affected or are reasonably likely to materially affect us, including our business strategy, results of operations, or financial condition, refer to "Cybersecurity breaches of our systems and information technology could adversely impact our ability to operate" section included under Item 1A. Risk Factors included in this Annual Report on Form 10-K.
Cybersecurity Governance
Cybersecurity is an important part of our risk management processes and an area of focus for our Board and management. The Board oversees our annual enterprise risk assessment, where we assess key risks within the Company, including security and technology risks and cybersecurity threats. Our Audit Committee is responsible for the oversight of risks from cybersecurity threats. Members of the Audit Committee receive updates from senior management, including leaders from our Information Security, Compliance, and Legal teams regarding matters of cybersecurity. This includes various cybersecurity matters, including risk assessments, mitigation strategies, areas of emerging risks, incidents and industry trends, and other areas of importance. Our Board members also engage in ad hoc conversations with management on cybersecurity-related news events and discuss any updates to our cybersecurity risk management and strategy programs. Our VP of Information Technology has over 25 years of industry experience involving information technology, including security, auditing, compliance, systems, and programming. Team members who support our cybersecurity program have relevant educational and industry experience.
ITEM 2.    PROPERTIES.
We lease office space in the U.S. and internationally from which we provide our services.
ITEM 3.    LEGAL PROCEEDINGS.
For a description of our material pending legal proceedings, see Note 14, Commitments and Contingencies, in the Notes to the Consolidated Financial Statements in this Annual Report on Form 10-K.
ITEM 4.    MINE SAFETY DISCLOSURES
None.

33


PART II
ITEM 5.    MARKET FOR REGISTRANT’S COMMON EQUITY, RELATED STOCKHOLDER MATTERS, AND ISSUER PURCHASES OF EQUITY SECURITIES
Holders
Our common stock is listed on the Nasdaq Global Select Market under the symbol NVEE. As of February 16, 2024, there were 2,649 holders of record of our common stock. These numbers do not include beneficial owners whose shares are held in “street name.”
Dividends
We have not paid cash dividends on our common stock and our credit agreement contains restrictions regarding the payment of dividends. Accordingly, we do not expect to pay any dividends on our common stock for the foreseeable future, as we intend to retain all earnings to provide funds for the operation and expansion of our business. The payment of cash dividends in the future, if any, will be at the discretion of our board of directors and will depend upon such factors as the extent to which our financing arrangements permit the payment of dividends, earnings levels, capital requirements, our overall financial condition, and any other factors deemed relevant by our board of directors.
Recent Sales of Unregistered Securities
All sales of unregistered securities during the year ended December 30, 2023 were previously disclosed in a Quarterly Report on Form 10-Q or Current Report on Form 8-K except as follows (amounts in thousands, except share data):
On November 14, 2023, as partial consideration for an acquisition we agreed to issue $300 of shares of our common stock and $200 of additional shares of our common stock based on the then-current market prices on the first anniversary of the closing date.
Issuer Purchase of Equity Securities
None.
34


SELECTED FINANCIAL DATA.
The following selected financial data was derived from our consolidated financial statements and provides summarized information with respect to our operations and financial position. The data set forth below should be read in conjunction with the information contained in Item 7, Management’s Discussion and Analysis of Financial Condition and Results of Operations, and our consolidated financial statements and the notes thereto contained in Item 8, Financial Statements and Supplementary Data, in this Annual Report on Form 10-K.
Fiscal Year Ended
Statements of Operations DataDecember 30, 2023December 31, 2022January 1, 2022January 2, 2021December 28, 2019
(in thousands, except per share data)
Gross revenues$861,739 $786,778 $706,706 $659,296 $508,938 
Direct costs:
Salaries and wages215,608 186,806 175,047 176,865 153,023 
Sub-consultant services150,681 153,641 124,998 107,602 79,598 
Other direct costs65,088 60,357 47,347 40,291 30,935 
Total direct costs431,377 400,804 347,392 324,758 263,556 
Gross profit430,362 385,974 359,314 334,538 245,382 
Operating expenses:
Salaries and wages, payroll taxes, and benefits226,137 193,488 176,838 176,816 128,558 
General and administrative67,668 66,114 53,986 50,214 42,656 
Facilities and facilities related22,891 21,252 20,193 21,280 17,145 
Depreciation and amortization52,486 38,938 39,953 42,079 25,816 
Total operating expenses369,182 319,792 290,970 290,389 214,175 
Income from operations61,180 66,182 68,344 44,149 31,207 
Interest expense(12,970)(3,808)(6,239)(15,181)(2,275)
Income before income tax expense48,210 62,374 62,105 28,968 28,932 
Income tax expense(3,597)(12,401)(14,958)(7,950)(5,176)
Net income$44,613 $49,973 $47,147 $21,018 $23,756 
Basic earnings per share$2.96 $3.39 $3.34 $1.70 $1.96 
Diluted earnings per share$2.88 $3.27 $3.22 $1.65 $1.90 
Weighted average common shares outstanding:
Basic15,086,040 14,753,738 14,135,333 12,362,786 12,116,185 
Diluted15,474,326 15,260,186 14,656,381 12,713,075 12,513,034 
Comprehensive income:
Net income$44,613 $49,973 $47,147 $21,018 $23,756 
Foreign currency translation losses, net of tax(18)— — — — 
Comprehensive income$44,595 $49,973 $47,147 $21,018 $23,756 

35


Balance Sheet DataDecember 30, 2023December 31, 2022January 1, 2022January 2, 2021December 28, 2019
Cash and cash equivalents$44,824 $38,541 $47,980 $64,909 $31,825 
Total assets$1,170,592 $935,723 $961,943 $881,175 $893,137 
Total notes payable and other obligations$214,735 $54,849 $131,796 $307,522 $358,187 
Total equity$775,795 $694,240 $624,720 $394,069 $355,963 
36


ITEM 7.    MANAGEMENT’S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS.
The following discussion of our financial condition and results of operations should be read together with the consolidated financial statements and the accompanying notes included elsewhere in this Annual Report on Form 10-K. This discussion contains forward-looking statements that involve risks and uncertainties. Our actual results may differ materially from those anticipated in those forward-looking statements as a result of certain factors, including those described under “Item 1A. Risk Factors.” Dollar amounts presented are in thousands, except share data or where the context otherwise requires.
Overview
We are a provider of technology, conformity assessment, consulting solutions, and software applications to public and private sector clients. We focus on the infrastructure, utility services, construction, real estate, environmental, and geospatial markets. Our primary clients include U.S. Federal, state, municipal, and local government agencies, and military and defense clients. We also serve quasi-public and private sector clients from the education, healthcare, utility services, and public utilities, including schools, universities, hospitals, health care providers, and insurance providers.
Although we anticipate public and quasi-public sector clients will represent the majority of our revenues for the foreseeable future, we intend to continue expanding our service offerings to private sector clients. Historically, public and quasi-public sector clients have demonstrated greater resilience during periods of economic downturns, while private sector clients have offered higher gross profit margin opportunities during periods of economic expansion.
Fiscal Year
We operate on a "52/53-week" fiscal year ending on the Saturday closest to December 31st (whether or not in the following calendar year), with interim calendar quarters ending on the Saturday closest to the end of such calendar quarter (whether or not in the following calendar quarter). As a result, fiscal 2023, 2022 and 2021 included 52 weeks.
Critical Accounting Policies and Estimates
Our critical accounting estimates are those we believe require our most significant judgments about the effect of matters that are inherently uncertain. A discussion of our critical accounting estimates, the underlying judgments and uncertainties used to make them and the likelihood that materially different estimates would be reported under different conditions or using different assumptions is as follows:
Revenue Recognition
In accordance with ASC Topic 606, Revenue from Contracts with Customers (“Topic 606”), we recognize revenue to depict the transfer of goods or services to a customer at an amount that reflects the consideration it expects to receive in exchange for those goods or services.
To determine the proper revenue recognition method, we evaluate whether two or more contracts should be combined and accounted for as one single contract and whether the combined or single contract should be accounted for as more than one performance obligation. The majority of our contracts have a single performance obligation as the promise to transfer the individual goods or services that is not separately identifiable from other promises in the contracts and, therefore, is not distinct.
Our performance obligations are satisfied as work progresses or at a point in time. Gross revenues from services transferred to customers over time accounted for 90%, 88%, and 90% of our revenues during fiscal years 2023, 2022, and 2021, respectively. For our cost-reimbursable contracts, revenue is recognized over time using direct costs incurred or direct costs incurred to date as compared to the estimated total direct costs for performance obligations because it depicts the transfer of control to the customer which occurs as we incur costs on its contracts. Contract costs include labor, sub-consultant services, and other direct costs. Gross revenue from services transferred to customers at a point in time accounted for 10%, 12%, and 10% of our revenues during fiscal years 2023, 2022, and 2021, respectively. Revenue from these contracts is recognized when the customer obtains control of the asset, which is generally upon delivery and acceptance by the customer of the reports and/or analysis performed.
37


Contract modifications are common in the performance of our contracts. Contracts modified typically result from changes in scope, specifications, design, performance, sites, or period of completion. In most cases, contract modifications are for services that are not distinct, and, therefore, are accounted for as part of the existing contract.
Contract estimates are based on various assumptions to project the outcome of future events. These assumptions are dependent upon the accuracy of a variety of estimates, including engineering progress, achievement of milestones, labor productivity, and cost estimates. Due to uncertainties inherent in the estimation process, it is possible that actual completion costs may vary from estimates. If estimated total costs on contracts indicate a loss or reduction to the percentage of total contract revenues recognized to date, these losses or reductions are recognized in the period in which the revisions are known. The effect of revisions to revenues, estimated costs to complete contracts, including penalties, incentive awards, change orders, claims, and anticipated losses are recorded on the cumulative catch-up basis in the period in which the revisions are identified and the loss can be reasonably estimated. Such revisions could occur in any reporting period and the effects on the results of operations for that reporting period may be material depending on the size of the project or the adjustment. During fiscal years 2023, 2022, and 2021 the cumulative catch-up adjustments for contract modifications were not material.
Allowance for Doubtful Accounts
We record billed and unbilled receivables net of an allowance for doubtful accounts. The allowance is estimated based on management’s evaluation of the contracts involved and the financial condition of clients. Factors considered include:
Client type (governmental or private client),
Historical performance,
Historical collection trends, and
General economic conditions.
The allowance is increased by our provision for doubtful accounts, which is charged against income. All recoveries on receivables previously charged off are credited to the accounts receivable recovery account and are included in income, while direct charge-offs of receivables are deducted from the allowance. Although we believe the allowance for doubtful accounts is sufficient, a decline in economic conditions could lead to the deterioration in the financial condition of our customers, resulting in an impairment of their ability to make payments, and additional allowances may be required that could materially impact our consolidated results of operations. Trade receivable balances carried by us are comprised of accounts from a diverse client base across a broad range of industries.
Goodwill and Intangible Assets
Goodwill is the excess of consideration paid for an acquired entity over the amounts assigned to assets acquired, including other identifiable intangible assets and liabilities assumed in a business combination. To determine the amount of goodwill resulting from a business combination, we perform an assessment to determine the acquisition date fair value of the acquired company’s tangible and identifiable intangible assets and liabilities.
We evaluate goodwill annually for impairment on August 1, or whenever events or changes in circumstances indicate the asset may be impaired, using the quantitative method. An entity has the option to first assess qualitative factors to determine whether the existence of events or circumstances leads to a determination that it is more likely than not that the fair value of a reporting unit is less than its carrying amount. These qualitative factors include macroeconomic and industry conditions, cost factors, overall financial performance, and other relevant entity-specific events. If the entity determines that this threshold is met, then we apply a one-step quantitative test and record the amount of goodwill impairment as the excess of a reporting unit's carrying amount over its fair value, not to exceed the total amount of goodwill allocated to the reporting unit. We determine fair value through multiple valuation techniques, and weight the results accordingly. Subjective and complex judgments are required in assessing whether an event of impairment of goodwill has occurred, including assumptions and estimates used to determine the fair value of its reporting units.
On August 1, 2023, we conducted our annual impairment tests using the quantitative method of evaluating goodwill. Based on the quantitative analyses, we determined the fair value of each of the reporting units exceeded its carrying value and therefore, there was no goodwill impairment. There were no indicators, events, or changes in circumstances that would indicate goodwill impairment for the period from August 2, 2023 through December 30, 2023.
Identifiable intangible assets primarily include customer backlog, customer relationships, trade names, non-compete agreements, and developed technology. Amortizable intangible assets are amortized on a straight-line basis over their estimated
38


useful lives and reviewed for impairment whenever events or changes in circumstances indicate that the assets may be impaired. If an indicator of impairment exists we compare the estimated future cash flows of the asset, on an undiscounted basis, to the carrying value of the asset. If the undiscounted cash flows exceed the carrying value, no impairment is indicated. If the undiscounted cash flows do not exceed the carrying value, then impairment, if any, is measured as the difference between fair value and carrying value, with fair value typically based on a discounted cash flow model. There were no indicators, events, or changes in circumstances that would indicate intangible assets were impaired during fiscal 2023.
In connection with an acquisition of a business, we record identifiable intangible assets acquired at their respective fair values as of the date of acquisition. The corresponding fair value estimates for these assets acquired include projected future cash flows, associated discount rates used to calculate present value, asset life cycles, and customer retention rates. We use an independent valuation specialist to assist in determining the estimated fair values of assets acquired and liabilities assumed. The fair value calculated for intangible assets may change during the finalization of the purchase price allocation due to the estimates and assumptions used in determining their fair value. As a result, we may adjust the provisional amounts recorded for certain items as part of the purchase price allocation subsequent to the acquisition, not to exceed one year after the acquisition date, until the purchase accounting allocation is finalized.
Recent Acquisitions
The aggregate value of all consideration for our acquisitions consummated during 2023, 2022, and 2021 was approximately $224,417, $14,220, and $100,449, respectively. The net assets acquired during 2023, 2022, and 2021 were $100,741, $2,944, and $54,647, respectively, while the gross revenues associated with these acquisitions (from their respective dates of acquisition) were $96,314, $5,211 and $29,965, respectively.
2023 Acquisitions
On April 6, 2023, we acquired all of the outstanding equity interests in the Visual Information Solutions commercial geospatial technology and software business ("VIS") from L3Harris. VIS is a provider of subscription-based software solutions for the analysis and management of software applications and Analytics as a Service (AaaS) solutions. We acquired VIS for a cash purchase price of $75,371. The purchase price and other related costs associated with the transaction were financed through the our amended and restated credit agreement (the "Second A&R Credit Agreement" or "Senior Credit Facility") with Bank of America, N.A. and other lenders party thereto. See Note 11, Notes Payable and Other Obligations, of the Notes to Consolidated Financial Statements included elsewhere herein for further detail on the Second A&R Credit Agreement. In order to determine the fair values of tangible and intangible assets acquired and liabilities assumed, we engaged an independent third-party valuation specialist to assist in the determination of fair values. The final determination of the fair value of assets and liabilities will be completed within the one-year measurement period as required by ASC 805. The acquisition will necessitate the use of this measurement period to adequately analyze and assess the factors used in establishing the asset and liability fair values as of the relevant acquisition date, including intangible assets, accounts receivable, and deferred tax liabilities.
On February 22, 2023, we acquired all of the outstanding equity interests in Continental Mapping Acquisition Corp. and its subsidiaries, including Axim Geospatial, LLC (collectively "Axim"), a provider of comprehensive geospatial services and solutions addressing critical mission requirements for customers across the defense and intelligence and state and local government sectors. The aggregate purchase price of the acquisition was $139,569, including $119,736 in cash, a $6,333 promissory note, and $13,500 of our common stock. The purchase price and other related costs associated with the transaction were financed through the Second A&R Credit Agreement. In order to determine the fair values of tangible and intangible assets acquired and liabilities assumed, we engaged an independent third-party valuation specialist to assist in the determination of fair values. The final determination of the fair value of assets and liabilities will be completed within the one-year measurement period as required by ASC 805. The acquisition will necessitate the use of this measurement period to adequately analyze and assess the factors used in establishing the asset and liability fair values as of the relevant acquisition date, including intangible assets, accounts receivable, and deferred tax liabilities.
We completed five other acquisitions during 2023. The aggregate purchase price for the five acquisitions was $9,477, including $8,000 in cash, $867 of our common stock, and potential earn-outs of up to $640 payable in cash and common stock, which have been recorded at an estimated fair value of $610. A probability-weighted approach was used to determine the fair value of the earn-out, which is a generally accepted valuation technique that embodies all significant assumption types. The final determination of the fair value of assets and liabilities will be completed within the one-year measurement period as required by ASC 805. The five acquisitions will necessitate the use of this measurement period to adequately analyze and assess the factors used in establishing the asset and liability fair values as of the relevant acquisition date, including intangible assets, accounts receivable, and deferred tax liabilities.
39


2022 Acquisitions
We completed five acquisitions during 2022. The aggregate purchase price of the acquisitions was $14,220, including $5,882 in cash, $1,606 in promissory notes, $433 of our common stock, and potential earn-outs of up to $15,850 payable in cash and common stock, which were recorded at an estimated fair value of $6,299. An option-based model was used to determine the fair value of the earn-outs, which is a generally accepted valuation technique that embodies all significant assumption types. In order to determine the fair values of tangible and intangible assets acquired and liabilities assumed, we engaged an independent third-party valuation specialist to assist in the determination of fair values. The final determination of the fair value of assets and liabilities was completed within the one-year measurement period as required by ASC 805. Purchase price allocation adjustments recorded during 2023 were not material.
2021 Acquisitions
We completed eight acquisitions during 2021. The aggregate purchase price of the acquisitions was $100,449, including $69,501 of cash, $19,028 of promissory notes, $6,787 of our common stock, and potential earn-outs of up to $25,700 payable in cash and stock, which were recorded at an estimated fair value of $5,133. An option-based model was used to determine the fair value of the earn-outs, which is a generally accepted valuation technique that embodies all significant assumption types. In order to determine the fair values of tangible and intangible assets acquired and liabilities assumed, we engaged an independent third-party valuation specialist to assist in the determination of fair values. The final determination of the fair value of assets and liabilities was completed within the one-year measurement period as required by ASC 805. Purchase price allocation adjustments recorded during 2022 were immaterial.
Secondary Offering
On March 10, 2021, we priced an underwritten public offering of 1,612,903 shares of our common stock (the "Firm Shares") at a price of $93.00 per share. The shares were sold pursuant to an effective registration statement on Form S-3 (Registration No. 333-237167). In addition, we also granted the underwriters a 30-day option to purchase 241,935 additional shares (the "Option Shares") of our common stock at the public offering price. On March 15, 2021, we closed on the Firm Shares, for which we received net proceeds of approximately $140,693 after deducting the underwriting discount and estimated offering expenses payable by us. On April 13, 2021, the underwriters exercised the Option Shares and we received net proceeds of $21,150 after deducting the underwriting discount and estimated offering expenses payable by us.
Segments
Our operations are organized into three operating and reportable segments:
Infrastructure ("INF") includes our engineering, civil program management, utility services, and construction quality assurance practices;
Building, Technology & Sciences ("BTS") includes our environmental health sciences, clean energy consulting, buildings and program management, and MEP & technology design practices; and
Geospatial Solutions ("GEO") includes our geospatial solution practices.
For additional information regarding our reportable segments, see Note 18, Reportable Segments, in the Notes to the Consolidated Financial Statements in this Annual Report on Form 10-K.
Components of Income and Expense
Gross Revenues
We enter into contracts with our clients that contain two principal types of pricing provisions, representing a percentage of total revenue as shown below:
202320222021
Cost Reimbursable90%88%90%
Fixed-unit Price10%12%10%
40


Cost-reimbursable contracts. Cost-reimbursable contracts consist of the following:
Time and materials contracts are common for smaller scale professional and technical consulting and certification services projects. Under these types of contracts, there is no predetermined fee. Instead, we negotiate hourly billing rates and charge our clients based upon actual hours expended on a project. In addition, any direct project expenditures are passed through to the client and are typically reimbursed. These contracts may have an initial not-to-exceed or guaranteed maximum price provision.
Cost-plus contracts are the predominant contracting method used by U.S. Federal, state, and local governments. Under these type contracts, we charge clients for its costs, including both direct and indirect costs, plus a negotiated fee. The total estimated cost plus the negotiated fee represents the total contract value.
Lump-sum contracts typically require the performance of all of the work under the contract for a specified lump-sum fee, subject to price adjustments if the scope of the project changes or unforeseen conditions arise. Many of our lump-sum contracts are negotiated and arise in the design of projects with a specified scope and project deliverables. In most cases, we can bill additional fees if the construction schedule is modified and lengthened.
Fixed-unit price contracts. Fixed-unit price contracts consist of the following:
Fixed-unit price contracts typically require the performance of an estimated number of units of work at an agreed price per unit, with the total payment under the contract determined by the actual number of units performed.
Revenues under cost-reimbursable contracts are recognized when services are performed or on the percentage-of-completion method. Revenues recognized on the percentage-of-completion method are generally measured by the direct costs incurred to date as compared to estimated costs incurred and represents approximately 50%, 44%, and 44% of revenues recognized during 2023, 2022, and 2021, respectively. Revenues from fixed-unit price contracts are recognized at a point in time.
Direct Costs of Revenues
Direct costs of revenues consist of the following in connection with fee generating projects:
Technical and non-technical salaries and wages,
Production expenses, including depreciation, and
Sub-consultant services.
Operating Expenses
Operating expenses are expensed as incurred and include the following:
Marketing expenses,
Management and administrative personnel costs,
Payroll taxes, bonuses, and employee benefits,
Portion of salaries and wages not allocated to direct costs of revenues,
Facility costs,
Depreciation and amortization,
Professional services, legal and accounting fees, and administrative operating costs,
Insurance costs, and
Information technology costs.
41


RESULTS OF OPERATIONS
Consolidated Results of Operations
The following table represents our condensed results of operations for the periods indicated (dollars in thousands):
Fiscal Years Ended
December 30, 2023December 31, 2022January 1, 2022
Gross revenues$861,739 $786,778 $706,706 
Direct costs431,377 400,804 347,392 
Gross profit430,362 385,974 359,314 
Operating expenses369,182 319,792 290,970 
Income from operations61,180 66,182 68,344 
Interest expense(12,970)(3,808)(6,239)
Income tax expense(3,597)(12,401)(14,958)
Net income$44,613 $49,973 $47,147 

    Fiscal year ended December 30, 2023, compared to fiscal year ended December 31, 2022
Gross Revenues
Our consolidated gross revenues increased by $74,961, or 10%, in 2023 compared to 2022. The increase in gross revenues was primarily due to incremental gross revenues of $100,489 from acquisitions completed since the beginning of 2022 and organic increases in our geospatial solution services of $9,981. These increases were partially offset by decreases in our real estate transactional services of $20,986 driven by market reactions to increases in interest rates, decreases in our construction quality assurance practices of $5,903, and decreases in our liquefied natural gas business ("LNG") of $5,338 driven by project cycles.
Gross Profit
As a percentage of gross revenues, our gross profit margin was 49.9% and 49.1% in 2023 and 2022, respectively. As a percentage of gross revenues, sub-consultant services and other direct costs decreased 2.0% and 0.1%, respectively. These decreases were partially offset by increases in direct salaries and wages as a percentage of gross revenues of 1.3%. The decrease in sub-consultant services as a percentage of gross revenues was primarily driven by the mix of business in our real estate transactional, civil program management services, and power delivery and utility services.
Operating expenses
Our operating expenses increased $49,390, or 15.4%, in 2023 compared to 2022. The increase in operating expenses primarily resulted from increased payroll costs of $32,649, amortization expenses of $11,336, and general and administrative expenses of $1,554. The increase in payroll costs was primarily driven by an increase in employees as compared to the prior year period as a result of our 2022 and 2023 acquisitions, partially offset by a decrease of $5,205 due to changes in our paid time off policy during 2023. The increase in amortization expense was driven by acquisitions. The increase in general and administrative expenses was primarily due to incremental expenses from acquisitions of $7,245, increases in information technology costs of $1,803, and increases in professional fees of $1,311, partially offset by earn-out fair value adjustments of $9,280 during 2023 that decreased the contingent consideration liability related to acquisitions compared to earn-out fair value adjustments of $2,972 during 2022 that increased the contingent consideration liability related to acquisitions.
42


Interest Expense
Our interest expense increased $9,162 in 2023 compared to 2022. The increase in interest expense resulted from a higher weighted average interest rate and an increase in our Senior Credit Facility indebtedness.
Income taxes
Our consolidated effective income tax rate was 7.5% and 19.9% in 2023 and 2022, respectively. The lower effective income tax rate is primarily due to an increase in federal and state credits, including additional prior year credits claimed on the 2022 federal and state tax returns, and an increase in excess tax benefits from stock-based payments. See Note 17, Income Taxes, of the Notes to Consolidated Financial Statements in this Annual Report on Form 10-K for further detail of income tax expense.
Net income
Our net income decreased $5,360, or 11%, in 2023 compared to 2022. The decrease was primarily a result of increases in payroll costs of $32,649, amortization expenses of $11,336, interest expense of $9,162, and general and administrative expenses of $1,554, partially offset by an increase in gross profit of $44,388 and a lower effective income tax rate.
For comparison of 2022 to 2021, see "Results of Operations - Consolidated Results of Operations" under Item 7 of Part II in our Annual Report on Form 10-K for the year ended December 31, 2022 filed with the SEC on February 24, 2023, which discussion is expressly incorporated herein by reference thereto.
Segment Results of Operations
The following tables set forth summarize financial information concerning our reportable segments (dollars in thousands):
Fiscal Years Ended
December 30, 2023December 31, 2022January 1, 2022
Gross revenues
INF$374,986 $395,878 $383,725 
BTS222,804 232,577 185,995 
GEO263,949 158,323 136,986 
Total gross revenues$861,739 $786,778 $706,706 
Segment income before taxes
INF$65,608 $68,259 $71,838 
BTS$38,810 $43,810 $35,221 
GEO$51,633 $42,640 $33,027 
For additional information regarding our reportable segments, see Note 18, Reportable Segments, of the Notes to Consolidated Financial Statements in this Annual Report on Form 10-K.
Fiscal year ended December 30, 2023, compared to fiscal year ended December 31, 2022
INF Segment
Our gross revenues from INF decreased $20,892, or 5%, in 2023 compared to 2022. The decrease in gross revenues was primarily due to decreases in our construction quality assurance practices of $5,903, decreases in our LNG business of $5,338 driven by project cycles, decreases in our civil program management business of $4,727, and decreases in our power delivery and utility services of $5,078.
Segment income before taxes from INF decreased $2,651, or 4%, in 2023 compared to 2022. The decrease was primarily due to decreased gross revenues.
43


BTS Segment
Our gross revenues from BTS decreased $9,773, or 4%, in 2023 compared to 2022. The decrease in gross revenues was primarily due to decreases in our real estate transactional services of $20,986 driven by market reactions to increases in interest rates. These decreases were partially offset by increases in our international engineering and consulting services of $6,947 and increases in our energy and technology services of $4,457.
Segment income before taxes from BTS decreased $5,000, or 11%, in 2023 compared to 2022. The decrease was primarily due to decreased gross revenues.
GEO Segment
Our gross revenues from GEO increased $105,626, or 67%, in 2023 compared to 2022. The increase was due to incremental gross revenues of $95,645 from acquisitions completed since the beginning of fiscal 2022 and $9,981 related to organic increases in our geospatial business activity.
Segment income before taxes from GEO increased $8,993, or 21%, in 2023 compared to 2022. The increase was primarily due to increased gross revenues.
For comparison of 2022 to 2021, see "Results of Operations - Segment Results of Operations" under Item 7 of Part II in our Annual Report on Form 10-K for the year ended December 31, 2022, filed with the SEC on February 24, 2023, which discussion is expressly incorporated herein by reference thereto.
LIQUIDITY AND CAPITAL RESOURCES
Our principal sources of liquidity are our cash and cash equivalents balances, cash flows from operations, borrowing capacity under our Senior Credit Facility, and access to financial markets. Our principal uses of cash are operating expenses, working capital requirements, capital expenditures, repayment of debt, and acquisition expenditures. We believe our sources of liquidity, including cash flows from operations, existing cash and cash equivalents, and borrowing capacity under our Senior Credit Facility will be sufficient to meet our projected cash requirements for at least the next twelve months. We will monitor our capital requirements thereafter to ensure our needs are in line with available capital resources and believe that there are no significant cash requirements currently known to us and affecting our business that cannot be met from our reasonably expected future operating cash flows, including upon the maturity of the Senior Credit Facility in 2026.
Operating activities
Net cash provided by operating activities was $62,207 in 2023 compared to $93,980 in 2022. The decrease was a result of decreases in net income and increases in working capital and deferred income tax assets during 2023 compared to 2022. The changes in our working capital that contributed to decreased cash flows were primarily a result of increases in unbilled receivables of $12,363 and decreases in accounts payable of $6,797. The increase in unbilled receivables was primarily due to timing of project billing cycles. The decrease in accounts payable primarily related to timing of payments. The increase in deferred income tax assets was primarily driven by the Tax Cuts and Jobs Act, which eliminated the option to currently deduct research and development expenditures in the period incurred and requires taxpayers to capitalize and amortize such expenditures over five years pursuant to Section 174 of the Internal Revenue Code.
Investing activities
During 2023 and 2022, net cash used in investing activities totaled $205,791 and $21,510, respectively. The increase in cash used in investing activities was primarily a result of increased cash paid for acquisitions of $183,437.
Financing activities
Net cash flows provided by financing activities in 2023 was $149,855 compared to net cash flows used in financing activities of $81,909 in 2022. The increase in cash provided by financing activities was primarily a result of borrowings on our
44


Senior Credit Facility of $188,000 during 2023, a decrease in principal payments on our Senior Credit Facility of $39,000, and a decrease in note payable payments of $4,374.
For comparison of 2022 to 2021 cash flows, see "Liquidity and Capital Resources - Cash Flows” under Item 7 of Part II in our Annual Report on Form 10-K for the year ended December 31, 2022 filed with the SEC on February 24, 2023, which discussions are expressly incorporated herein by reference thereto.
Financing
Senior Credit Facility
On August 13, 2021 (the "Closing Date"), we amended and restated our Credit Agreement (the "Second A&R Credit Agreement"), originally dated December 7, 2016 and as amended to the Closing Date, with Bank of America, N.A. ("Bank of America"), as administrative agent, swingline lender and letter of credit issuer, the other lenders party thereto, and certain of our subsidiaries as guarantors. Pursuant to the Second A&R Credit Agreement, the previously drawn term commitments of $150,000 and revolving commitments totaling $215,000 in the aggregate were converted into revolving commitments totaling $400,000 in the aggregate. These revolving commitments are available through August 13, 2026 (the "Maturity Date") and an aggregate amount of approximately $138,750 was drawn under the Second A&R Credit Amendment on the Closing Date to repay previously existing borrowings under the term and revolving facilities prior to such amendment and restatement. Borrowings under the Second A&R Credit Agreement are secured by a first priority lien on substantially all of our assets. The Second A&R Credit Agreement also includes an accordion feature permitting us to request an increase in the revolving facility under the Second A&R Credit Agreement by an additional amount of up to $200,000 in the aggregate. As of December 30, 2023 and December 31, 2022, the outstanding balance on the Second A&R Credit Agreement was $195,750 and $33,750, respectively.
Borrowings under the Second A&R Credit Agreement bear interest at variable rates which are, at our option, tied to a Eurocurrency rate equal to either Term SOFR (Secured Overnight Financing Rate) or Daily Simple SOFR, plus in each case an applicable margin, or a base rate denominated in U.S. dollars. Interest rates remain subject to change based on our consolidated leverage ratio. As of December 30, 2023 our interest rate was 6.7%.
The Second A&R Credit Agreement contains financial covenants that require us to maintain a consolidated net leverage ratio (the ratio of our pro forma consolidated net funded indebtedness to our pro forma consolidated EBITDA for the most recently completed measurement period) of no greater than 4.00 to 1.00.
These financial covenants also require us to maintain a consolidated fixed charge coverage ratio of no less than 1.10 to 1.00 as of the end of any measurement period. As of December 30, 2023, we were in compliance with the financial covenants.

    The Second A&R Credit Agreement contains covenants that may have the effect of limiting our ability to, among other things, merge with or acquire other entities, enter into a transaction resulting in a Change in Control, create certain new liens, incur certain additional indebtedness, engage in certain transactions with affiliates, or engage in new lines of business, or sell a substantial part of their assets. The Second A&R Credit Agreement also contains customary events of default, including (but not limited to) a default in the payment of principal or, following an applicable grace period, interest, breaches of our covenants or warranties under the Second A&R Credit Agreement, payment default or acceleration of certain indebtedness, certain events of bankruptcy, insolvency or liquidation, certain judgments or uninsured losses, changes in control, and certain liabilities related to ERISA based plans.
The Second A&R Credit Agreement limits the payment of cash dividends (together with certain other payments that would constitute a "Restricted Payment" within the meaning of the Second A&R Credit Agreement and generally including dividends, stock repurchases, and certain other payments in respect to warrants, options, and other rights to acquire equity securities), unless the Consolidated Leverage Ratio would be less than 3.25 to 1.00 and available liquidity (defined as unrestricted, domestically held cash plus revolver availability) would be at least $30,000, in each case after giving effect to such payment.
Total debt issuance costs incurred and capitalized in connection with the issuance of the Second A&R Credit Agreement were $3,702. Total amortization of debt issuance costs was $758, $724, and $1,210 during 2023, 2022, and 2021, respectively.
45


Other Obligations
We have aggregate obligations related to acquisitions of $8,047, $4,459, and $3,985 due in fiscal 2024, 2025, and 2026, respectively. As of December 30, 2023, our weighted average interest rate on other outstanding obligations was 3.5%.
Recently Issued Accounting Pronouncements
For information on recently issued accounting pronouncements, see Note 3, Recently Issued Accounting Pronouncements, of the Notes to Consolidated Financial Statements included elsewhere in this Annual Report on Form 10-K.
ITEM 7A.    QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK
We are exposed to certain market risks from transactions that are entered into during the normal course of business. We have not entered into derivative financial instruments for trading purposes. We have no significant market risk exposure to interest rate changes related to the promissory notes for acquisitions since these contain fixed interest rates. Our only debt subject to interest rate risk is the Senior Credit Facility which rates are variable, at our option, tied to a Eurocurrency rate equal to either Term SOFR (Secured Overnight Financing Rate) or Daily Simple SOFR, plus in each case an applicable rate, or a base rate denominated in U.S. dollars. Interest rates are subject to change based on our Consolidated Senior Leverage Ratio (as defined in the Credit Agreement). As of December 30, 2023, there was $195,750 outstanding on the Senior Credit Facility. A one percentage point change in the assumed interest rate of the Senior Credit Facility would change our annual interest expense by approximately $1,958 in 2023.
46


ITEM 8.    FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA
INDEX TO CONSOLIDATED FINANCIAL STATEMENTS
47



REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM

To the Stockholders and the Board of Directors of NV5 Global, Inc.
Hollywood, Florida

Opinion on the Financial Statements

We have audited the accompanying consolidated balance sheets of NV5 Global, Inc. and subsidiaries (the "Company") as of December 30, 2023 and December 31, 2022, the related consolidated statements of net income and comprehensive income, changes in stockholders' equity, and cash flows, for each of the three years in the period ended December 30, 2023, and the related notes (collectively referred to as the "financial statements"). In our opinion, the financial statements present fairly, in all material respects, the financial position of the Company as of December 30, 2023 and December 31, 2022, and the results of its operations and its cash flows for each of the three years in the period ended December 30, 2023, in conformity with accounting principles generally accepted in the United States of America.

We have also audited, in accordance with the standards of the Public Company Accounting Oversight Board (United States) (PCAOB), the Company's internal control over financial reporting as of December 30, 2023, based on criteria established in Internal Control — Integrated Framework (2013) issued by the Committee of Sponsoring Organizations of the Treadway Commission and our report dated February 23, 2024, expressed an unqualified opinion on the Company's internal control over financial reporting.

Basis for Opinion

These financial statements are the responsibility of the Company's management. Our responsibility is to express an opinion on the Company's financial statements based on our audits. We are a public accounting firm registered with the PCAOB and are required to be independent with respect to the Company in accordance with the U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB.

We conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether the financial statements are free of material misstatement, whether due to error or fraud. Our audits included performing procedures to assess the risks of material misstatement of the financial statements, whether due to error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the financial statements. Our audits also included evaluating the accounting principles used and significant estimates made by management, as well as evaluating the overall presentation of the financial statements. We believe that our audits provide a reasonable basis for our opinion.

Critical Audit Matter

The critical audit matter communicated below is a matter arising from the current-period audit of the financial statements that was communicated or required to be communicated to the audit committee and that (1) relates to accounts or disclosures that are material to the financial statements and (2) involved our especially challenging, subjective, or complex judgments. The communication of critical audit matters does not alter in any way our opinion on the financial statements, taken as a whole, and we are not, by communicating the critical audit matter below, providing a separate opinion on the critical audit matter or on the accounts or disclosures to which it relates.

Revenue Recognition – Percentage of Completion – Refer to Note 2 to the financial statements

Critical Audit Matter Description

The Company recognizes lump-sum contract revenue over the contract term (“over time”) as the work progresses, which is as services are rendered, because transfer of control to the customer is continuous. The Company’s revenues from lump-sum contracts are recognized on the percentage-of-completion method, based primarily on contract costs incurred to date compared to total estimated costs. The accounting for these contracts involves judgment, particularly as it relates to the process of estimating total costs and profit for each performance obligation. Direct costs are recognized as incurred, and revenues are determined by adding a proportionate amount of the estimated profit to the amount reported as direct costs.

48


We identified revenue on certain long-term lump-sum contracts identified through our risk assessment procedures as a critical audit matter because of the judgments necessary for management to estimate total costs and profit in order to recognize revenue for certain lump-sum contracts. This required extensive audit effort due to the long-term nature of certain lump-sum contracts and required a high degree of auditor judgment when performing audit procedures to audit management’s estimates of total costs and profit and evaluating the results of those procedures.

How the Critical Audit Matter Was Addressed in the Audit

Our audit procedures related to management’s estimates of total costs and profit for each performance obligation used to recognize revenue for certain long-term lump-sum contracts included the following, among others:

We tested the effectiveness of controls over lump-sum contract revenue, including management’s controls over the estimates of total costs and profit for performance obligations.

We selected certain long-term lump-sum contracts and performed the following:

Evaluated whether the contracts were properly included in management’s calculation of lump-sum contract revenue based on the terms and conditions of each contract, including whether continuous transfer of control to the customer occurred as progress was made toward fulfilling the performance obligation.

Compared the revenue recognized to the consideration expected to be received based on current rights and obligations under the contracts and any modifications that were agreed upon with the customers.

Tested management’s identification of distinct performance obligations by evaluating whether the underlying services were highly interdependent and interrelated.

Tested the accuracy and completeness of the costs incurred to date for each performance obligation.

Evaluated the estimates of total cost and profit by:

Evaluating management’s ability to achieve the estimates of total cost and profit by performing corroborating inquiries with the Company’s finance managers, project managers and engineers, and comparing the estimates to management’s work plans, project budgets, and change orders, as applicable.

Comparing hours incurred subsequent to fiscal year end to the remaining hours management estimated as of fiscal year end.

Comparing management’s estimates for the selected contracts to costs and profits of similar performance obligations, when applicable.

Tested the mathematical accuracy of management’s calculation of revenue for each performance obligation.

We evaluated management’s ability to estimate total costs and profits accurately by comparing actual costs and profits to management’s historical estimates for performance obligations that have been fulfilled.


/s/ Deloitte & Touche LLP

Miami, Florida
February 23, 2024

We have served as the Company’s auditor since 2015.
49


NV5 Global, Inc. and Subsidiaries
CONSOLIDATED BALANCE SHEETS
(in thousands, except share data)
December 30, 2023December 31, 2022
Assets
Current assets:
Cash and cash equivalents$44,824 $38,541 
Billed receivables, net152,593 145,637 
Unbilled receivables, net113,271 92,862 
Prepaid expenses and other current assets18,376 13,636 
Total current assets329,064 290,676 
Property and equipment, net50,268 41,640 
Right-of-use lease assets, net36,836 39,314 
Intangible assets, net226,702 160,431 
Goodwill524,573 400,957 
Other assets3,149 2,705 
Total Assets$1,170,592 $935,723 
Liabilities and Stockholders’ Equity
Current liabilities:
Accounts payable$54,865 $57,771 
Accrued liabilities47,423 44,313 
Billings in excess of costs and estimated earnings on uncompleted contracts41,679 31,183 
Other current liabilities2,263 1,597 
Current portion of contingent consideration3,922 10,854 
Current portion of notes payable and other obligations9,267 15,176 
Total current liabilities159,419 160,894 
Contingent consideration, less current portion143 4,481 
Other long-term liabilities26,930 29,542 
Notes payable and other obligations, less current portion205,468 39,673 
Deferred income tax liabilities, net2,837 6,893 
Total liabilities394,797 241,483 
Commitments and contingencies
Stockholders’ equity:
Preferred stock, $0.01 par value; 5,000,000 shares authorized, no shares issued and outstanding
  
Common stock, $0.01 par value; 45,000,000 shares authorized, 15,895,255 and 15,523,300 shares issued and outstanding as of December 30, 2023 and December 31, 2022, respectively
159 155 
Additional paid-in capital508,256 471,300 
Accumulated other comprehensive income (loss)(18) 
Retained earnings267,398 222,785 
Total stockholders’ equity775,795 694,240 
Total liabilities and stockholders’ equity$1,170,592 $935,723 
See accompanying notes to consolidated financial statements.
50


NV5 Global, Inc. and Subsidiaries
CONSOLIDATED STATEMENTS OF NET INCOME AND COMPREHENSIVE INCOME
(in thousands, except share data)
Fiscal Years Ended
December 30, 2023December 31, 2022January 1, 2022
Gross revenues$861,739 $786,778 $706,706 
Direct costs:
Salaries and wages215,608 186,806 175,047 
Sub-consultant services150,681 153,641 124,998 
Other direct costs65,088 60,357 47,347 
Total direct costs431,377 400,804 347,392 
Gross profit430,362 385,974 359,314 
Operating expenses:
Salaries and wages, payroll taxes, and benefits226,137 193,488 176,838 
General and administrative67,668 66,114 53,986 
Facilities and facilities related22,891 21,252 20,193 
Depreciation and amortization52,486 38,938 39,953 
Total operating expenses369,182 319,792 290,970 
Income from operations61,180 66,182 68,344 
Interest expense(12,970)(3,808)(6,239)
Income before income tax expense48,210 62,374 62,105 
Income tax expense(3,597)(12,401)(14,958)
Net income$44,613 $49,973 $47,147 
Earnings per share:
Basic$2.96 $3.39 $3.34 
Diluted$2.88 $3.27 $3.22 
Weighted average common shares outstanding:
Basic15,086,040 14,753,738 14,135,333 
Diluted15,474,326 15,260,186 14,656,381 
Comprehensive income:
Net income$44,613 $49,973 $47,147 
Foreign currency translation loss, net of tax(18)  
Comprehensive income$44,595 $49,973 $47,147 
See accompanying notes to consolidated financial statements.
51


NV5 Global, Inc. and Subsidiaries
CONSOLIDATED STATEMENTS OF CHANGES IN STOCKHOLDERS’ EQUITY
(in thousands, except share data)
Common StockAdditional Paid-In
Capital
Accumulated Other Comprehensive Income (Loss)Retained
Earnings
Total
SharesAmount
Balance, January 2, 202113,270,131 $133 $268,271 $ $125,665 $394,069 
Stock-based compensation— — 16,301 — — 16,301 
Restricted stock issuance, net226,736 2 (2)— —  
Purchases of common stock tendered by employees to satisfy the required withholding taxes related to stock-based compensation(580)— (52)— — (52)
Stock issuance for acquisitions60,680 — 5,203 — — 5,203 
Proceeds from secondary offering, net of costs1,854,838 19 161,824 — — 161,843 
Payment of contingent consideration with common stock2,200 — 209 — — 209 
Net income— — — — 47,147 47,147 
Balance, January 1, 202215,414,005 154 451,754  172,812 624,720 
Stock-based compensation— — 18,195 — — 18,195 
Restricted stock issuance, net96,776 1 (1)— —  
Stock issuance for acquisitions12,519 — 1,352 — — 1,352 
Net income— — — — 49,973 49,973 
Balance, December 31, 202215,523,300 155 471,300  222,785 694,240 
Stock-based compensation— — 20,193 — — 20,193 
Restricted stock issuance, net244,332 3 (3)— —  
Purchases of common stock tendered by employees to satisfy the required withholding taxes related to stock-based compensation(730)— (81)— — (81)
Stock issuance for acquisitions125,497 1 14,850 — — 14,851 
Reclassification of liability-classified awards to equity-classified awards— — 1,697 — — 1,697 
Payment of contingent consideration with common stock2,856 — 300 — — 300 
Other comprehensive income (loss)— — — (18)— (18)
Net income— — — — 44,613 44,613 
Balance, December 30, 202315,895,255 $159 $508,256 $(18)$267,398 $775,795 
See accompanying notes to consolidated financial statements.
52


NV5 Global, Inc. and Subsidiaries
CONSOLIDATED STATEMENTS OF CASH FLOWS
(in thousands)
Fiscal Years Ended
December 30, 2023December 31, 2022January 1, 2022
Cash flows from operating activities:
Net income$44,613 $49,973 $47,147 
Adjustments to reconcile net income to net cash provided by operating activities:
Depreciation and amortization58,020 44,063 44,971 
Non-cash lease expense13,562 12,813 10,191 
Provision for doubtful accounts1,261 (60)1,243 
Stock-based compensation22,379 19,326 16,301 
Change in fair value of contingent consideration(9,280)2,972 2,333 
Gain on disposals of property and equipment(694)(328)(1,102)
Other(125)  
Deferred income taxes(25,709)(18,492)(7,007)
Amortization of debt issuance costs758 724 1,210 
Changes in operating assets and liabilities, net of impact of acquisitions:
Billed receivables7,584 10,212 2,677 
Unbilled receivables(15,666)(3,303)(12,573)
Prepaid expenses and other assets(2,292)(1,125)(4,792)
Accounts payable(8,470)(1,673)8,181 
Accrued liabilities and other long-term liabilities(19,848)(19,901)(12,507)
Contingent consideration(1,307)(800) 
Billings in excess of costs and estimated earnings on uncompleted contracts(3,243)(296)4,005 
Other current liabilities664 (125)1,164 
Net cash provided by operating activities62,207 93,980 101,442 
Cash flows from investing activities:
Cash paid for acquisitions (net of cash received from acquisitions)(189,345)(5,908)(67,995)
Proceeds from sale of assets720 87 1,639 
Purchase of property and equipment(17,166)(15,689)(13,903)
Net cash used in investing activities(205,791)(21,510)(80,259)
Cash flows from financing activities:
Borrowings from Senior Credit Facility188,000  138,750 
Proceeds from common stock offering  172,500 
Payments of borrowings from Senior Credit Facility(26,000)(65,000)(323,832)
Payments on notes payable(11,071)(15,445)(12,516)
Payments of contingent consideration(993)(1,464)(1,329)
Payments of common stock offering costs  (10,657)
Payments of debt issuance costs  (976)
Purchases of common stock tendered by employees to satisfy the required withholding taxes related to stock-based compensation(81) (52)
Net cash provided by (used in) financing activities149,855 (81,909)(38,112)
Effect of exchange rate changes on cash and cash equivalents12   
Net increase (decrease) in cash and cash equivalents6,283 (9,439)(16,929)
Cash and cash equivalents – beginning of period38,541 47,980 64,909 
Cash and cash equivalents – end of period$44,824 $38,541 $47,980 
53


See accompanying notes to consolidated financial statements.
NV5 Global, Inc. and Subsidiaries
CONSOLIDATED STATEMENTS OF CASH FLOWS
(in thousands)
Fiscal Years Ended
December 30, 2023December 31, 2022January 1, 2022
Supplemental disclosures of cash flow information:
Cash paid for interest$12,542 $4,220 $5,909 
Cash paid for income taxes$30,326 $29,639 $26,270 
Non-cash investing and financing activities:
Contingent consideration (earn-out)$610 $6,299 $5,133 
Notes payable and other obligations issued for acquisitions$6,333 $2,039 $21,837 
Stock issuance for acquisitions$14,851 $1,352 $5,203 
Reclassification of liability-classified awards to equity-classified awards$1,697 $ $ 
Finance leases$2,289 $2,490 $376 
Payment of contingent consideration and other obligations with common stock$300 $ $209 
See accompanying notes to consolidated financial statements.
54


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)

Note 1 – Organization and Nature of Business Operations
Business
NV5 Global, Inc. and its subsidiaries (collectively, the “Company” or “NV5 Global”) is a provider of technology, conformity assessment, consulting solutions, and software applications to public and private sector clients in the infrastructure, utility services, construction, real estate, environmental, and geospatial markets, operating nationwide and abroad. The Company’s clients include the U.S. Federal, state and local governments, and the private sector. NV5 Global provides a wide range of services, including, but not limited to:
Utility servicesCommissioning
LNG servicesBuilding program management
EngineeringEnvironmental health & safety
Civil program managementReal estate transaction services
SurveyingEnergy efficiency & clean energy services
Construction quality assuranceMission critical services
Code compliance consulting3D geospatial data modeling
Forensic servicesEnvironmental & natural resources
Litigation supportRobotic survey solutions
Ecological studiesGeospatial data applications & software
MEP & technology design
Note 2 Summary of Significant Accounting Policies
Basis of Presentation and Principles of Consolidation
The consolidated financial statements of the Company are presented in U.S. dollars in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) and have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”). The consolidated financial statements include the accounts of the Company and its subsidiaries. All intercompany transactions and balances have been eliminated in consolidation.
Fiscal Year
The Company reports its financial results on a 52/53-week fiscal year ending on the Saturday closest to December 31st (whether or not in the following calendar year), with interim calendar quarters ending on the Saturday closest to the end of such calendar quarter (whether or not in the following calendar quarter). As a result, fiscal 2023, 2022, and 2021 included 52 weeks.
Use of Estimates
The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts in the consolidated financial statements and accompanying notes. These estimates and assumptions are based on management’s most recent assessment of underlying facts and circumstances using the most recent information available. Actual results could differ significantly from these estimates and assumptions, and the differences could be material.
Estimates and assumptions are evaluated periodically and adjusted when necessary. The more significant estimates affecting amounts reported in the consolidated financial statements include the following:
Fair value estimates used in accounting for business combinations including the valuation of identifiable intangible assets and contingent consideration,
55


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
Fair value estimates in determining the fair value of our reporting units for goodwill impairment assessment,
Revenue recognition over time, and
Allowances for uncollectible accounts.
Cash and Cash Equivalents
Cash and cash equivalents include cash on deposit with financial institutions and investments in high quality overnight money market funds, all of which have maturities of three months or less when purchased. From time to time the Company may be exposed to credit risk with its bank deposits in excess of the Federal Deposit Insurance Corporation insurance limits and with uninsured money market investments. Management believes cash and cash equivalent balances are not exposed to significant credit risk due to the financial position of the depository institutions in which those deposits are held.
Concentration of Credit Risk
Trade receivable balances carried by the Company are comprised of accounts from a diverse client base across a broad range of industries and are not collateralized. The Company did not have any clients representing more than 10% of our gross revenues during 2023, 2022, or 2021; however, 26%, 28% and 26% of the Company’s gross revenues for fiscal years 2023, 2022, and 2021, respectively, are from California-based projects. During fiscal years 2023, 2022, and 2021 approximately 68%, 64% and 65%, respectively, of our gross revenues were attributable to the public and quasi-public sector. Management continually evaluates the creditworthiness of these and future clients and provides for bad debt reserves as necessary.
Fair Value of Financial Instruments
Fair value is defined as the amount that would be received for selling an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date and is measured using inputs in one of the following three categories:
Level 1 measurements are based on unadjusted quoted prices in active markets for identical assets or liabilities that we have the ability to access. Valuation of these items does not entail a significant amount of judgment. 
Level 2 measurements are based on quoted prices for similar assets or liabilities in active markets, quoted prices for identical or similar assets or liabilities in markets that are not active or market data other than quoted prices that are observable for the assets or liabilities.
Level 3 measurements are based on unobservable data that are supported by little or no market activity and are significant to the fair value of the assets or liabilities.
The Company considers cash and cash equivalents, accounts receivable, accounts payable, income taxes payable, accrued liabilities, and debt obligations to meet the definition of financial instruments. As of December 30, 2023, and December 31, 2022, the carrying amount of cash and cash equivalents, accounts receivable, accounts payable, income taxes payable, and accrued liabilities approximate their fair value due to the relatively short period of time between their origination and their expected realization or payment. The carrying amounts of debt obligations approximate their fair values as the terms are comparable to terms currently offered by local lending institutions for arrangements with similar terms to industry peers with comparable credit characteristics.
Fair Value of Acquisitions
The Company applies the provisions of the Financial Accounting Standards Board (“FASB”) Accounting Standards Codification (“ASC”) 805, Business Combinations, in the accounting for its acquisitions, which requires recognition of the assets acquired and the liabilities assumed at their acquisition date fair values, separately from goodwill. Goodwill as of the acquisition date is measured as the excess of consideration transferred and the net of the acquisition date fair values of the tangible and identifiable intangible assets acquired and liabilities assumed. The allocation of the purchase price to identifiable intangible assets is based on valuations performed to determine the fair values of such assets as of the acquisition dates. Generally, the Company engages a third-party independent valuation specialist to assist in management’s determination of fair values of tangible and intangible assets acquired and liabilities assumed. The fair values of earn-out arrangements are included
56


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
as part of the purchase price of the acquired companies on their respective acquisition dates. The Company estimates the fair value of contingent earn-out payments as part of the initial purchase price and records the estimated fair value of contingent consideration as a liability on the consolidated balance sheet. Changes in the estimated fair value of contingent earn-out payments are included in General and Administrative expenses on the Consolidated Statements of Net Income and Comprehensive Income.
Several factors are considered when determining contingent consideration liabilities as part of the purchase price, including whether: (i) the valuation of the acquisitions is not supported solely by the initial consideration paid, and the contingent earn-out formula is a critical and material component of the valuation approach to determining the purchase price; and (ii) the former owners of the acquired companies that remain as key employees receive compensation other than contingent earn-out payments at a reasonable level compared with the compensation of other key employees. The contingent earn-out payments are not affected by employment termination.
The Company reviews and re-assesses the estimated fair value of contingent consideration liabilities on a quarterly basis, and the updated fair value could differ from the initial estimates. The Company measures contingent consideration recognized in connection with business combinations at fair value on a recurring basis using significant unobservable inputs classified as Level 3 inputs. The Company generally uses a Monte Carlo simulation-based option pricing model, based on key inputs requiring significant judgments and estimates to be made by the Company, including projections of future earnings over the earn-out period. Significant increases or decreases to these inputs could result in a significantly higher or lower liability with a higher liability capped by the contractual maximum of the contingent consideration liabilities. Ultimately, the liability will be equivalent to the amount paid, and the difference between the fair value estimate as of the acquisition date and amount paid will be recorded in earnings. See Note 12, Contingent Consideration, for additional information regarding contingent consideration.
Property and Equipment
Property and equipment is stated at cost. Property and equipment acquired in a business combination is stated at fair value at the acquisition date. The Company capitalizes the cost of improvements to property and equipment that increase the value or extend the useful lives of the assets. Normal repair and maintenance costs are expensed as incurred. Depreciation and amortization is computed on a straight-line basis over the following estimated useful lives of the assets. Leasehold improvements are amortized on a straight-line basis over the lesser of their estimated useful lives or the remaining terms of the related lease agreement.
AssetDepreciation Period (in years)
Office furniture and equipment4
Computer equipment3
Survey and field equipment
5 - 15
Leasehold improvementsLesser of the estimated useful lives or remaining term of the lease
Property and equipment balances are periodically reviewed by management for impairment whenever events or changes in circumstances indicate that the carrying value of the asset may not be recoverable. If an indicator of impairment exists, the Company compares the estimated future cash flows of the asset, on an undiscounted basis, to the carrying value of the asset. If the undiscounted cash flows exceed the carrying value, no impairment is indicated. If the undiscounted cash flows do not exceed the carrying value, then impairment is measured as the difference between fair value and carrying value, with fair value typically based on a discounted cash flow model. During fiscal years 2023, 2022 and 2021, no impairment charge relating to property and equipment was recognized.
Goodwill and Intangible Assets
Goodwill is the excess of consideration paid for an acquired entity over the amounts assigned to assets acquired, including other identifiable intangible assets and liabilities assumed in a business combination. To determine the amount of goodwill resulting from a business combination, the Company performs an assessment to determine the acquisition date fair value of the acquired company’s tangible and identifiable intangible assets and liabilities.
The Company evaluates goodwill annually for impairment on August 1, or whenever events or changes in circumstances indicate the asset may be impaired, using the quantitative method. An entity has the option to first assess
57


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
qualitative factors to determine whether the existence of events or circumstances leads to a determination that it is more likely than not that the fair value of a reporting unit is less than its carrying amount. These qualitative factors include macroeconomic and industry conditions, cost factors, overall financial performance, and other relevant entity-specific events. If the entity determines that this threshold is met, then the Company applies a one-step quantitative test and records the amount of goodwill impairment as the excess of a reporting unit's carrying amount over its fair value, not to exceed the total amount of goodwill allocated to the reporting unit. The Company determines fair value through multiple valuation techniques, and weights the results accordingly. Subjective and complex judgments are required in assessing whether an event of impairment of goodwill has occurred, including assumptions and estimates used to determine the fair value of its reporting units. The Company conducts its annual impairment tests on the goodwill using the quantitative method of evaluating goodwill.
Identifiable intangible assets primarily include customer backlog, customer relationships, trade names, non-compete agreements, and developed technology. Amortizable intangible assets are amortized on a straight-line basis over their estimated useful lives and reviewed for impairment whenever events or changes in circumstances indicate that the assets may be impaired. If an indicator of impairment exists, the Company compares the estimated future cash flows of the asset, on an undiscounted basis, to the carrying value of the asset. If the undiscounted cash flows exceed the carrying value, no impairment is indicated. If the undiscounted cash flows do not exceed the carrying value, then impairment, if any, is measured as the difference between fair value and carrying value, with fair value typically based on a discounted cash flow model.
During fiscal years 2023, 2022 and 2021, no impairment charge relating to goodwill and intangible assets was recognized. See Note 9, Goodwill and Intangible Assets, for further information on goodwill and identified intangibles.
Revenue Recognition
The Company utilizes the contract method under ASC Topic 606, Revenue from Contracts with Customers (“Topic 606”), which allows companies to account for contracts on a contract-by-contract basis. For the Company's time and materials contracts, it applies the as-invoiced practical expedient, which permits us to recognize revenue as the right to invoice for services performed.
To determine the proper revenue recognition method, the Company evaluates whether two or more contracts should be combined and accounted for as one single contract and whether the combined or single contract should be accounted for as more than one performance obligation. The majority of the Company's contracts have a single performance obligation as the promise to transfer the individual goods or services is not separately identifiable from other promises in the contracts and, therefore, is not distinct.
The Company’s performance obligations are satisfied as work progresses or at a point in time. Revenue on the Company's cost-reimbursable contracts is recognized over time using direct costs incurred or direct costs incurred to date as compared to the estimated total direct costs for performance obligations because it depicts the transfer of control to the customer. Contract costs include labor, sub-consultant services, and other direct costs. Gross revenues from services transferred to customers over time accounted for 90%, 88%, and 90% of the Company’s revenues during fiscal years 2023, 2022, and 2021, respectively.
Gross revenues recognized under lump-sum contracts were $427,462, $343,538, and $309,624 during the fiscal years 2023, 2022, and 2021, respectively.
Gross revenues from services transferred to customers at a point in time is recognized when the customer obtains control of the asset, which is generally upon delivery and acceptance by the customer of the reports and/or analysis performed. Gross revenue from services transferred to customers at a point in time accounted for 10%, 12%, and 10% of the Company’s revenues during fiscal years 2023, 2022, and 2021, respectively.
As of December 30, 2023, the Company had $849,515 of remaining performance obligations, of which $673,235 is expected to be recognized over the next 12 months and the majority of the balance over the next 24 months. Contracts for which work authorizations have been received are included in performance obligations. Performance obligations include only those amounts that have been funded and authorized and does not reflect the full amounts the Company may receive over the term of such contracts. In the case of non-government contracts and project awards, performance obligations include future revenue at contract or customary rates, excluding contract renewals or extensions that are at the discretion of the client. For contracts with a not-to-exceed maximum amount, the Company includes revenue from such contracts in performance obligations to the extent of the remaining estimated amount.
58


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
Contract modifications are common in the performance of our contracts. Contracts modified typically result from changes in scope, specifications, design, performance, sites, or period of completion. In most cases, contract modifications are for services that are not distinct, and, therefore, are accounted for as part of the existing contract.
Contract estimates are based on various assumptions to project the outcome of future events. These assumptions are dependent upon the accuracy of a variety of estimates, including engineering progress, achievement of milestones, labor productivity, and cost estimates. Due to uncertainties inherent in the estimation process, it is possible that actual completion costs may vary from estimates. If estimated total costs on contracts indicate a loss or reduction to the percentage of total contract revenues recognized to date, these losses or reductions are recognized in the period in which the revisions are known. The effect of revisions to revenues, estimated costs to complete contracts, including penalties, incentive awards, change orders, claims, and anticipated losses are recorded on the cumulative catch-up basis in the period in which the revisions are identified and the loss can be reasonably estimated. Such revisions could occur in any reporting period and the effects on the results of operations for that reporting period may be material depending on the size of the project or the adjustment. During fiscal years 2023, 2022, and 2021 the cumulative catch-up adjustments for contract modifications were not material.
A significant amount of the Company’s revenues are derived under multi-year contracts. The Company enters into contracts with its clients that contain two principal types of pricing provisions: cost-reimbursable and fixed-unit price.
Cost-reimbursable contracts consist of the following:
Time and materials contracts, which are common for smaller scale professional and technical consulting and certification services projects. Under these types of contracts, there is no predetermined fee. Instead, the Company negotiates hourly billing rates and charges the clients based upon actual hours expended on a project. In addition, any direct project expenditures are passed through to the client and are typically reimbursed. These contracts may have an initial not-to-exceed or guaranteed maximum price provision.
Cost-plus contracts are the predominant contracting method used by U.S. Federal, state, and local governments. Under these types of contracts, the Company charges clients for its costs, including both direct and indirect costs, plus a negotiated fee. The total estimated cost plus the negotiated fee represents the total contract value.
Lump-sum contracts typically require the performance of all of the work under the contract for a specified lump-sum fee, subject to price adjustments if the scope of the project changes or unforeseen conditions arise. Many of the Company’s lump-sum contracts are negotiated and arise in the design of projects with a specified scope and project deliverables. In most cases, we can bill additional fees if the construction schedule is modified and lengthened.
Fixed-unit price contracts typically require the performance of an estimated number of units of work at an agreed price per unit, with the total payment under the contract determined by the actual number of units performed.
Federal Acquisition Regulations (“FAR”), which are applicable to the Company’s federal government contracts and may be incorporated in local and state agency contracts, limit the recovery of certain specified indirect costs on contracts. Cost-plus contracts covered by FAR or certain state and local agencies also may require an audit of actual costs and provide for upward or downward adjustments if actual recoverable costs differ from billed recoverable costs.
Contract Balances
The timing of revenue recognition, billings, and cash collections results in billed receivables, unbilled receivables (contract assets), and billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities) on the Consolidated Balance Sheets.
Billed receivables, net represents amounts billed to clients that remain uncollected as of the balance sheet date. The amounts are stated at their estimated realizable value. The Company maintains an allowance for doubtful accounts to provide for the estimated amount of receivables that will not be collected. The allowance is estimated based on management’s evaluation of the contracts involved and the financial condition of clients. Factors the Company considers include, but are not limited to:
Client type (governmental or commercial client),
59


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
Historical performance,
Historical collection trends, and
General economic conditions.
Billed receivables are generally collected within less than 12 months. The allowance is increased by the Company’s provision for doubtful accounts which is charged against income. All recoveries on receivables previously charged off are included in income, while direct charge-offs of receivables are deducted from the allowance.
Unbilled receivables, net represents recognized amounts pending billing pursuant to contract terms or accounts billed after period end, and are expected to be billed and collected within the next 12 months. Generally, billing occurs subsequent to revenue recognition, resulting in contract assets. Unbilled receivables (contract assets) are generally classified as current.
In certain circumstances, the contract may allow for billing terms that result in the cumulative amounts billed in excess of revenues recognized. “Billings in excess of costs and estimated earnings on uncompleted contracts” represents billings in excess of revenues recognized on these contracts as of the reporting date. This liability is generally classified as current. During fiscal 2023, the Company performed services and recognized $27,479 of revenue related to its contract liabilities that existed as of December 31, 2022.
Advertising
Advertising costs are charged to expense in the period incurred and amounted to $2,767, $1,977, and $895 during fiscal years 2023, 2022, and 2021, respectively, which are included in General and Administrative Expenses on the accompanying Consolidated Statements of Net Income and Comprehensive Income.
Income Taxes
The Company accounts for income taxes in accordance with ASC Topic No. 740 “Income Taxes” (“Topic No. 740”). Deferred income taxes reflect the impact of temporary differences between amounts of assets and liabilities for financial reporting purposes and such amounts as measured by tax laws. A valuation allowance against the Company’s deferred tax assets is recorded when it is more likely than not that some portion or all of the deferred tax assets will not be realized. In determining the need for a valuation allowance, management is required to make assumptions and to apply judgment, including forecasting future earnings, taxable income, and the mix of earnings in the jurisdictions in which the Company operates. Management periodically assesses the need for a valuation allowance based on the Company’s current and anticipated results of operations. The need for and the amount of a valuation allowance can change in the near term if operating results and projections change significantly.
The Company recognizes the consolidated financial statement benefit of a tax position only after determining that the relevant tax authority would more likely than not sustain the position following an audit. For tax positions meeting the more likely-than-not threshold, the amount recognized in the consolidated financial statements is the largest benefit that has a greater than 50 percent likelihood of being realized upon ultimate settlement with the relevant tax authority. The Company applies the uncertain tax position guidance to all tax positions for which the statute of limitations remains open. The Company’s policy is to classify interest and penalties as income tax expense.
Note 3 – Recently Issued Accounting Pronouncements
Recently Adopted Accounting Pronouncements
None.
Accounting Pronouncements Not Yet Adopted
Segment Reporting
In November 2023, the FASB issued ASU No. 2023-07, Improvements to Reportable Segment Disclosures ("ASU 2023-07"). This ASU updates reportable segment disclosure requirements by requiring disclosures of significant reportable
60


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
segment expenses that are regularly provided to the Chief Operating Decision Maker ("CODM") and included within each reported measure of a segment's profit or loss. This ASU also requires disclosure of the title and position of the individual identified as the CODM and an explanation of how the CODM uses the reported measures of the segment's profit or loss in assessing performance and deciding how to allocate resources. This ASU is effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. Adoption of the ASU should be applied retrospectively to all prior periods presented in the financial statements. Early adoption is permitted. The Company is currently evaluating the impact of adopting ASU 2023-07 and expects it to result in additional disclosures when adopted.
Income Taxes
In December 2023, the FASB issued ASU No. 2023-09, Improvements to Income Tax Disclosures ("ASU 2023-09"). This ASU requires disaggregated information about a reporting entity's effective tax rate reconciliations as well as additional information on income taxes paid. This ASU is effective on a prospective basis for annual periods beginning after December 15, 2024. Early adoption is also permitted for annual financial statements that have not yet been issued or made available for issuance. The Company is currently evaluating the impact of adopting ASU 2023-09 and expects it to result in additional disclosures when adopted.
Note 4 – Earnings per Share
Basic earnings per share is calculated by dividing net income by the weighted average number of common shares outstanding during the period, excluding unvested restricted shares. Diluted earnings per share reflects the potential dilution that could occur if securities or other contracts to issue common stock were exercised or converted into common stock or resulted in the issuance of common stock that then shared in the earnings of the Company. The effect of potentially dilutive securities is not considered during periods of loss or if the effect is anti-dilutive.
The weighted average number of shares outstanding in calculating basic earnings per share during fiscal years 2023, 2022, and 2021 exclude 689,360, 742,671, and 777,683 non-vested restricted shares, respectively. During fiscal 2023, 2022, and 2021 there were 19,290, 25,979, and 7,448 weighted average securities which are not included in the calculation of diluted weighted average shares outstanding because their impact is anti-dilutive or their performance conditions have not been met.
The following table represents a reconciliation of the net income and weighted average shares outstanding for the calculation of basic and diluted earnings per share during fiscal years 2023, 2022 and 2021:
Fiscal Years Ended
December 30, 2023December 31, 2022January 1, 2022
Numerator:
Net income – basic and diluted$44,613 $49,973 $47,147 
Denominator:
Basic weighted average shares outstanding15,086,040 14,753,738 14,135,333 
Effect of dilutive non-vested restricted shares and units363,759 490,981 498,116 
Effect of issuable shares related to acquisitions24,527 15,467 22,932 
Diluted weighted average shares outstanding15,474,326 15,260,186 14,656,381 

61


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
Note 5 – Stockholders' Equity
Secondary offering
On March 10, 2021, the Company priced an underwritten public offering of 1,612,903 shares of its common stock (the "Firm Shares") at a price of $93.00 per share. The shares were sold pursuant to an effective registration statement on Form S-3 (Registration No. 333-237167). In addition, the Company also granted the underwriters a 30-day option to purchase 241,935 additional shares (the "Option Shares") of its common stock at the public offering price. On March 15, 2021, the Company closed on the Firm Shares, for which it received net proceeds of approximately $140,693 after deducting the underwriting discount and estimated offering expenses payable by the Company. On April 13, 2021, the underwriters exercised the Option Shares and the Company received net proceeds of $21,150 after deducting the underwriting discount and estimated offering expenses payable by the Company.
Note 6 – Business Acquisitions
2023 Acquisitions
On April 6, 2023, the Company acquired all of the outstanding equity interests in the Visual Information Solutions commercial geospatial technology and software business ("VIS") from L3Harris. VIS is a provider of subscription-based software solutions for the analysis and management of software applications and Analytics as a Service (AaaS) solutions. The Company acquired VIS for a cash purchase price of $75,371. The purchase price and other related costs associated with the transaction were financed through the Company's amended and restated credit agreement (the "Second A&R Credit Agreement" or "Senior Credit Facility") with Bank of America, N.A. and other lenders party thereto. See Note 11, Notes Payable and Other Obligations, for further detail on the Second A&R Credit Agreement. In order to determine the fair values of tangible and intangible assets acquired and liabilities assumed, the Company engaged an independent third-party valuation specialist to assist in the determination of fair values. The final determination of the fair value of assets and liabilities will be completed within the one-year measurement period as required by ASC 805. The acquisition will necessitate the use of this measurement period to adequately analyze and assess the factors used in establishing the asset and liability fair values as of the relevant acquisition date, including intangible assets, accounts receivable, and deferred tax liabilities.
On February 22, 2023, the Company acquired all of the outstanding equity interests in Continental Mapping Acquisition Corp. and its subsidiaries, including Axim Geospatial, LLC (collectively "Axim"), a provider of comprehensive geospatial services and solutions addressing critical mission requirements for customers across the defense and intelligence and state and local government sectors. The aggregate purchase price of the acquisition was $139,569, including $119,736 in cash, a $6,333 promissory note, and $13,500 of the Company's common stock. The purchase price and other related costs associated with the transaction were financed through the Second A&R Credit Agreement. In order to determine the fair values of tangible and intangible assets acquired and liabilities assumed, the Company engaged an independent third-party valuation specialist to assist in the determination of fair values. The final determination of the fair value of assets and liabilities will be completed within the one-year measurement period as required by ASC 805. The acquisition will necessitate the use of this measurement period to adequately analyze and assess the factors used in establishing the asset and liability fair values as of the relevant acquisition date, including intangible assets, accounts receivable, and deferred tax liabilities.
The Company completed five other acquisitions during 2023. The aggregate purchase price for the five acquisitions was $9,477, including $8,000 in cash, $867 of the Company's common stock, and potential earn-outs of up to $640 payable in cash and common stock, which have been recorded at an estimated fair value of $610. A probability-weighted approach was used to determine the fair value of the earn-out, which is a generally accepted valuation technique that embodies all significant assumption types. The final determination of the fair value of assets and liabilities will be completed within the one-year measurement period as required by ASC 805. The five acquisitions will necessitate the use of this measurement period to adequately analyze and assess the factors used in establishing the asset and liability fair values as of the relevant acquisition date, including intangible assets, accounts receivable, and deferred tax liabilities.
2022 Acquisitions
The Company completed five acquisitions during 2022. The aggregate purchase price of all five acquisitions was $14,220, including $5,882 in cash, $1,606 of promissory notes, $433 of the Company's common stock, and potential earn-outs of up to $15,850 payable in cash and stock, which was recorded at an estimated fair value of $6,299. An option-based model
62


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
was used to determine the fair value of the earn-outs, which is a generally accepted valuation technique that embodies all significant assumption types. In order to determine the fair values of tangible and intangible assets acquired and liabilities assumed, the Company engaged an independent third-party valuation specialist to assist in the determination of fair values. The final determination of the fair value of assets and liabilities was completed within the one-year measurement period as required by ASC 805. Purchase price allocation adjustments recorded during 2023 were immaterial.
2021 Acquisitions
The Company completed eight acquisitions during 2021. The aggregate purchase price of the acquisitions was $100,449, including $69,501 of cash, $19,028 of promissory notes, $6,787 of the Company's common stock, and potential earn-outs of up to $25,700 payable in cash and stock, which were recorded at an estimated fair value of $5,133. An option-based model was used to determine the fair value of the earn-outs, which is a generally accepted valuation technique that embodies all significant assumption types. In order to determine the fair values of tangible and intangible assets acquired and liabilities assumed, the Company engaged an independent third-party valuation specialist to assist in the determination of fair values. The final determination of the fair value of assets and liabilities was completed within the one-year measurement period as required by ASC 805. Purchase price allocation adjustments recorded during 2022 were immaterial.
The following table summarizes the fair values of the assets acquired and liabilities assumed as of the acquisition dates for acquisitions closed during fiscal years 2023, 2022, and 2021:
202320222021
VISAximOtherTotalTotalTotal
Cash$7,027 $5,419 $1,316 $13,762 $ $1,480 
Billed and unbilled receivables, net5,042 13,937 1,609 20,588 1,794 17,728 
Right-of-use assets2,162 1,643 552 4,357 632 2,932 
Property and equipment118 2,870 38 3,026 1,510 3,741 
Prepaid expenses1,503 1,543 17 3,063  519 
Other assets 156 2 158  13 
Intangible assets:
Customer relationships35,626 53,518 2,526 91,670 3,606 36,338 
Trade name3,025 2,266 210 5,501 268 2,098 
Customer backlog894 3,862 943 5,699 459 3,847 
Developed technology4,024 2,185  6,209   
Other26 580 254 860 298 4,456 
Total Assets$59,447 $87,979 $7,467 $154,893 $8,567 $73,152 
Liabilities(16,535)(13,668)(2,297)(32,500)(5,623)(13,984)
Deferred tax liabilities(8,728)(12,428)(496)(21,652) (4,521)
Net assets acquired$34,184 $61,883 $4,674 $100,741 $2,944 $54,647 
Consideration paid (Cash, notes and/or stock)$75,371 $139,569 $8,867 $223,807 $7,921 $95,316 
Contingent earn-out liability (Cash and stock)  610 610 6,299 5,133 
Total Consideration$75,371 $139,569 $9,477 $224,417 $14,220 $100,449 
Excess consideration over the amounts assigned to the net assets acquired (Goodwill)$41,187 $77,686 $4,803 $123,676 $11,276 $45,802 
Goodwill was recorded based on the amount by which the purchase price exceeded the fair value of the net assets acquired and the amount is attributable to the reputation of the business acquired, the workforce in place and the synergies to be achieved from these acquisitions. See Note 9, Goodwill and Intangible Assets, for further information on fair value adjustments to goodwill and identified intangible assets.
63


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
The consolidated financial statements of the Company include the results of operations from any business acquired from their respective dates of acquisition. The following table presents the results of operations of businesses acquired from their respective dates of acquisition for fiscal years 2023, 2022, and 2021.
202320222021
Gross revenues$96,314 $5,211 $29,965 
Income before income taxes$14,902 $985 $5,167 
General and administrative expense for fiscal years 2023, 2022, and 2021 includes $5,575, $2,639, and $3,274, respectively, of acquisition-related costs pertaining to the Company’s acquisition activities.
The following table presents the unaudited, pro forma consolidated results of operations (in thousands, except per share amounts) for fiscal years 2023, 2022, and 2021 as if the 2023 acquisitions had occurred at the beginning of fiscal year 2022 and the 2022 acquisitions had occurred at the beginning of fiscal year 2021. The pro forma information provided below is compiled from the pre-acquisition financial information and includes pro forma adjustments for amortization expense, adjustments to certain expenses, and the income tax impact of these adjustments. These unaudited pro forma results are presented for informational purposes only and are not necessarily indicative of what the actual results of operations of the Company would have been if the acquisitions and related financing transactions had occurred on the date assumed, nor are they indicative of future results of operations.
Fiscal Years Ended
202320222021
Gross revenues$889,233 $912,127 $765,632 
Net income$43,284 $44,323 $49,769 
Basic earnings per share$2.87 $2.98 $3.50 
Diluted earnings per share$2.80 $2.88 $3.38 
Adjustments were made to the pro forma results to adjust amortization of intangible assets to reflect fair value of identified assets acquired, to record the effects of promissory notes issued, and to record the income tax effect of these adjustments.
Note 7 – Billed and Unbilled Receivables
Billed and unbilled receivables were as follows:
December 30, 2023December 31, 2022
Billed receivables$155,988 $149,082 
Less: allowance for doubtful accounts(3,395)(3,445)
Billed receivables, net$152,593 $145,637 
Unbilled receivables$115,545 $95,104 
Less: allowance for doubtful accounts(2,274)(2,242)
Unbilled receivables, net$113,271 $92,862 
Activity in the allowance for doubtful accounts was as follows:
December 30, 2023December 31, 2022
Balance as of the beginning of the year$5,687 $7,952 
Provision for doubtful accounts1,261 (60)
Write-offs of uncollectible accounts(1,279)(2,205)
Balance as of the end of the year$5,669 $5,687 
64


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
Note 8 – Property and Equipment, net
Property and equipment, net were as follows:
December 30, 2023December 31, 2022
Office furniture and equipment$3,487 $3,421 
Computer equipment31,999 25,816 
Survey and field equipment62,553 49,985 
Leasehold improvements6,881 6,546 
Total104,920 85,768 
Less: accumulated depreciation(54,652)(44,128)
Property and equipment, net$50,268 $41,640 
Depreciation expense for fiscal year 2023, 2022, and 2021 was $14,343, $11,722, and $11,473, respectively, of which $5,534, $5,125, and $5,018, was included in other direct costs.
Note 9 – Goodwill and Intangible Assets
Goodwill
The changes in the carrying value by reportable segment for the fiscal years 2023 and 2022 were as follows:
Fiscal Year 2023
December 31, 2022AcquisitionsAdjustmentsForeign Currency Translation of non-USD functional currency goodwillDecember 30, 2023
INF$90,932 $726 $ $ $91,658 
BTS111,838 4,077 13 17 115,945 
GEO198,187 118,873 (10)(80)316,970 
Total$400,957 $123,676 $3 $(63)$524,573 
Fiscal Year 2022
January 1, 2022AcquisitionsAdjustmentsDecember 31, 2022
INF$90,725 $120 $87 $90,932 
BTS111,005 1,152 (319)111,838 
GEO188,186 10,001  198,187 
Total$389,916 $11,273 $(232)$400,957 
Goodwill of $1,755 and $2,891 from acquisitions in 2023 and 2022 is expected to be deductible for income tax purposes. During 2023, the Company recorded goodwill related to acquisitions of $123,676. During 2022, the Company recorded goodwill related to acquisitions of $11,273 and purchase price adjustments of $232 that decreased goodwill for the 2021 acquisitions.
65


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
Intangible assets
Intangible assets, net, at December 30, 2023 and December 31, 2022 were as follows:
December 30, 2023December 31, 2022
Gross
Carrying
Amount
Accumulated
Amortization
Net
Amount
Gross
Carrying
Amount
Accumulated
Amortization
Net
Amount
Finite-lived intangible assets:
Customer relationships(1)
$314,662 $(116,086)$198,576 $222,998 $(87,054)$135,944 
Trade name(2)
22,384 (18,327)4,057 16,883 (15,933)950 
Customer backlog(3)
35,116 (32,681)2,435 29,419 (27,333)2,086 
Non-compete(4)
14,987 (12,690)2,297 14,110 (11,298)2,812 
Developed technology(5)
39,153 (19,816)19,337 32,944 (14,305)18,639 
Total finite-lived intangible assets$426,302 $(199,600)$226,702 $316,354 $(155,923)$160,431 

(1) Amortized on a straight-line basis over estimated lives (2 to 17 years)
(2) Amortized on a straight-line basis over their estimated lives (1 to 5 years)
(3) Amortized on a straight-line basis over their estimated lives (1 to 10 years)
(4) Amortized on a straight-line basis over their contractual lives (2 to 5 years)
(5) Amortized on a straight-line basis over their estimated lives (5 to 10 years)
The following table summarizes the weighted average useful lives of definite-lived intangible assets acquired during 2023, 2022, and 2021:
202320222021
Customer relationships12.47.58.2
Trade name3.61.82.0
Customer backlog1.31.41.6
Non-compete3.63.63.8
Developed technology6.8— — 
Amortization expense for fiscal years 2023, 2022 and 2021 was $43,677, $32,341 and $33,498 respectively.
As of December 30, 2023, the future estimated aggregate amortization related to finite-lived intangible assets for the next five fiscal years and thereafter is as follows:
Fiscal YearAmount
2024$41,169 
202537,199 
202634,837 
202726,710 
202820,862 
Thereafter65,925 
Total$226,702 
66


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
Note 10 – Accrued Liabilities
Accrued liabilities were as follows:
December 30, 2023December 31, 2022
Current portion of lease liability$13,972 $13,081 
Accrued vacation7,295 12,467 
Payroll and related taxes8,782 6,616 
Benefits5,433 5,160 
Accrued operating expenses8,701 4,540 
Other3,240 2,449 
Total$47,423 $44,313 
Note 11 – Notes Payable and Other Obligations
Notes payable and other obligations were as follows:
December 30, 2023December 31, 2022
Senior credit facility$195,750 $33,750 
Uncollateralized promissory notes15,303 18,492 
Finance leases4,408 3,465 
Other obligations1,188 1,814 
Debt issuance costs, net of amortization(1,914)(2,672)
Total notes payable and other obligations214,735 54,849 
Current portion of notes payable and other obligations9,267 15,176 
Notes payable and other obligations, less current portion$205,468 $39,673 
Future contractual maturities of long-term debt as of December 30, 2023 are as follows:
Fiscal YearAmount
2024$9,267 
20255,659 
2026200,784 
2027677 
2028 and thereafter262 
Total$216,649 
Senior Credit Facility
On August 13, 2021 (the "Closing Date"), the Company amended and restated its Credit Agreement (the "Second A&R Credit Agreement"), originally dated December 7, 2016 and as amended to the Closing Date, with Bank of America, N.A. ("Bank of America"), as administrative agent, swingline lender and letter of credit issuer, the other lenders party thereto, and certain of the Company's subsidiaries as guarantors. Pursuant to the Second A&R Credit Agreement, the previously drawn term commitments of $150,000 and revolving commitments totaling $215,000 in the aggregate were converted into revolving commitments totaling $400,000 in the aggregate. These revolving commitments are available through August 13, 2026 (the "Maturity Date") and an aggregate amount of approximately $138,750 was drawn under the Second A&R Credit Amendment on the Closing Date to repay previously existing borrowings under the term and revolving facilities prior to such amendment and restatement. Borrowings under the Second A&R Credit Agreement are secured by a first priority lien on substantially all of the assets of the Company. The Second A&R Credit Agreement also includes an accordion feature permitting the Company to request an increase in the revolving facility under the Second A&R Credit Agreement by an additional amount of up to
67


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
$200,000 in the aggregate. As of December 30, 2023 and December 31, 2022, the outstanding balance on the Second A&R Credit Agreement was $195,750 and $33,750, respectively.
Borrowings under the Second A&R Credit Agreement bear interest at variable rates which are, at the Company's option, tied to a Eurocurrency rate equal to either Term SOFR (Secured Overnight Financing Rate) or Daily Simple SOFR, plus in each case an applicable margin, or a base rate denominated in U.S. dollars. Interest rates remain subject to change based on the Company's consolidated leverage ratio. As of December 30, 2023 the Company's interest rate was 6.7%.
The Second A&R Credit Agreement contains financial covenants that require NV5 Global to maintain a consolidated net leverage ratio (the ratio of the Company's pro forma consolidated net funded indebtedness to the Company's pro forma consolidated EBITDA for the most recently completed measurement period) of no greater than 4.00 to 1.00.
These financial covenants also require the Company to maintain a consolidated fixed charge coverage ratio of no less than 1.10 to 1.00 as of the end of any measurement period. As of December 30, 2023, the Company was in compliance with the financial covenants.

    The Second A&R Credit Agreement contains covenants that may have the effect of limiting the Company's ability to, among other things, merge with or acquire other entities, enter into a transaction resulting in a Change in Control, create certain new liens, incur certain additional indebtedness, engage in certain transactions with affiliates, or engage in new lines of business, or sell a substantial part of their assets. The Second A&R Credit Agreement also contains customary events of default, including (but not limited to) a default in the payment of principal or, following an applicable grace period, interest, breaches of the Company's covenants or warranties under the Second A&R Credit Agreement, payment default or acceleration of certain indebtedness, certain events of bankruptcy, insolvency or liquidation, certain judgments or uninsured losses, changes in control, and certain liabilities related to ERISA based plans.
The Second A&R Credit Agreement limits the payment of cash dividends (together with certain other payments that would constitute a "Restricted Payment" within the meaning of the Second A&R Credit Agreement and generally including dividends, stock repurchases, and certain other payments in respect to warrants, options, and other rights to acquire equity securities), unless the Consolidated Leverage Ratio would be less than 3.25 to 1.00 and available liquidity (defined as unrestricted, domestically held cash plus revolver availability) would be at least $30,000, in each case after giving effect to such payment.
Total debt issuance costs incurred and capitalized in connection with the issuance of the Second A&R Credit Agreement were $3,702. Total amortization of debt issuance costs was $758, $724, and $1,210 during 2023, 2022, and 2021, respectively.
Other Obligations
The Company has aggregate obligations related to acquisitions of $16,491 and $20,306 as of December 30, 2023 and December 31, 2022, respectively. As of December 30, 2023, the Company's weighted average interest rate on other outstanding obligations was 3.5%.
Note 12 – Contingent Consideration
The following table summarizes the changes in the carrying value of estimated contingent consideration:
December 30, 2023December 31, 2022
Contingent consideration, beginning of the year$15,335 $8,328 
Additions for acquisitions610 6,299 
Reduction of liability for payments made(2,600)(2,264)
Increase (decrease) of liability related to re-measurement of fair value(9,280)2,972 
Total contingent consideration, end of the period4,065 15,335 
Current portion of contingent consideration3,922 10,854 
Contingent consideration, less current portion$143 $4,481 
68


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
During 2023 the Company recorded earn-out fair value adjustments of $9,280 that decreased the contingent consideration liability of acquisitions. During 2022, the Company recorded earn-out fair value adjustments of $2,972 that increased the contingent consideration liability of acquisitions.
Note 13 – Leases
The Company primarily leases property under operating leases and has six equipment operating leases for aircrafts used by its geospatial operations. The Company's property operating leases consist of various office facilities. The Company uses a portfolio approach to account for such leases due to the similarities in characteristics and applies an incremental borrowing rate based on estimates of rates the Company would pay for senior collateralized loans over a similar term. The Company's office leases with an initial term of 12 months or less are not recorded on the balance sheet. The Company accounts for lease components (e.g. fixed payments including rent, real estate taxes and common area maintenance costs) as a single lease component. Some of the Company's leases include one or more options to renew the lease term at its sole discretion; however, these are not included in the calculation of its lease liability or right-of-use ("ROU") lease asset because they are not reasonably certain of exercise.
The Company also leases vehicles through a fleet leasing program. The payments for the vehicles are based on the terms selected. The Company has determined that it is reasonably certain that the leased vehicles will be held beyond the period in which the entire capitalized value of the vehicle has been paid to the lessor. As such, the capitalized value is the delivered price of the vehicle. The Company's vehicle leases are classified as financing leases.

Supplemental balance sheet information related to the Company's operating and finance leases were as follows:
LeasesClassificationDecember 30, 2023December 31, 2022
Assets
Operating lease assets
Right-of-use lease asset, net (1)
$36,836 $39,314 
Finance lease assets
Property and equipment, net (1)
4,389 3,446 
Total leased assets$41,225 $42,760 
Liabilities
Current
OperatingAccrued liabilities$(13,972)$(13,081)
FinanceCurrent portion of notes payable and other obligations(1,220)(1,333)
Noncurrent
OperatingOther long-term liabilities(25,754)(28,452)
FinanceNotes payable and other obligations, less current portion(3,188)(2,132)
Total lease liabilities$(44,134)$(44,998)

(1)As of December 30, 2023, operating right of-use lease assets and finance lease assets are recorded net of accumulated amortization of $42,491 and $6,210, respectively. As of December 31, 2022, operating right-of-use lease assets and finance lease assets are recorded net of accumulated amortization of $35,646 and $4,864, respectively.

Supplemental balance sheet information related to the Company's operating and finance leases were as follows:
Weighted - Average Remaining Lease Term (Years)
December 30, 2023December 31, 2022
Operating leases3.74.0
Finance leases2.02.2
Weighted - Average Discount Rate
Operating leases4%4%
Finance leases7%7%
69


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
    
Supplemental cash flow information related to the Company's operating and finance lease liabilities were as follows:
Fiscal Year Ended
December 30, 2023December 31, 2022January 1, 2022
Operating cash flows from operating leases$14,903 $13,739 $14,081 
Financing cash flows from finance leases$1,346 $1,241 $1,274 
Right-of-use assets obtained in exchange for lease obligations
Operating leases$11,084 $7,058 $9,249 
The following table summarizes the components of lease cost recognized in the consolidated statements of net income and comprehensive income:
Fiscal Year Ended
Lease CostClassificationDecember 30, 2023December 31, 2022January 1, 2022
Operating lease costFacilities and facilities related$16,658 $15,724 $15,439 
Variable operating lease costFacilities and facilities related4,2223,8061,655
Finance lease cost
     Amortization of financing lease assets Depreciation and amortization1,3431,2391,250
     Interest on lease liabilitiesInterest expense165 121 154 
Total lease cost$22,388 $20,890 $18,498 

As of December 30, 2023, maturities of the Company's lease liabilities under its long-term operating leases and finance leases for the next five fiscal years and thereafter are as follows:
Fiscal YearOperating LeasesFinance Leases
2024$15,122 $1,305 
202511,751 1,379 
20267,936 1,206 
20273,880 778 
20281,599 372 
Thereafter2,346 106 
Total lease payments42,634 5,146 
Less: Interest(2,908)(738)
Present value of lease liabilities$39,726 $4,408 
Note 14 – Commitments and Contingencies
Litigation, Claims, and Assessments
The Company is subject to certain claims and lawsuits typically filed against the engineering, consulting and construction profession, alleging primarily professional errors or omissions. The Company carries professional liability insurance, subject to certain deductibles and policy limits, against such claims. However, in some actions, parties are seeking damages that exceed our insurance coverage or for which we are not insured. While management does not believe that the resolution of these claims will have a material adverse effect, individually or in aggregate, on its financial position, results of operations or cash flows, management acknowledges the uncertainty surrounding the ultimate resolution of these matters.
70


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
Note 15 – Stock-Based Compensation
In October 2011, the Company's stockholders approved the NV5 Global, Inc. 2011 Equity Incentive Plan, which was subsequently amended and restated in March 2013 (as amended, the “2011 Equity Plan”). The 2011 Equity Incentive Plan expired pursuant to its terms in March 2023, accordingly no further grants were made following the date of such expiration. Prior to such expiration, the Company's Board adopted the NV5 Global, Inc. 2023 Equity Incentive Plan (the "2023 Equity Plan") to replace the 2011 Equity Plan, subject to stockholder approval. On June 13, 2023, the Company's stockholders approved the 2023 Equity Plan. The 2023 Equity Plan provides directors, executive officers, and other employees of the Company with additional incentives by allowing them to acquire ownership interest in the business and, as a result, encouraging them to contribute to the Company’s success. The Company may provide these incentives through the grant of stock options, stock appreciation rights, restricted stock, restricted stock units, performance shares and units, and other cash-based or stock-based awards. As of December 30, 2023, 2,148,474 shares of common stock are authorized, reserved, and registered for issuance under the 2023 Equity Plan. The restricted shares of common stock granted generally provide for service-based cliff vesting after two to four years following the grant date.
The following summarizes the activity of restricted stock awards during fiscal years 2023, 2022, and 2021:
Share UnitsWeighted Average Grant Date Fair Value
Unvested shares as of January 2, 2021770,183 $57.20 
Granted265,644 $91.31 
Vested(257,435)$65.14 
Forfeited(33,902)$58.25 
Unvested shares as of January 1, 2022744,490 $66.34 
Granted203,149 $118.33 
Vested(131,973)$63.72 
Forfeited(101,873)$67.08 
Unvested shares as of December 31, 2022713,793 $81.25 
Granted288,727 $106.37 
Vested(285,865)$48.98 
Forfeited(39,895)$97.24 
Unvested shares as of December 30, 2023676,760 $104.63 
Stock-based compensation expense is recognized on a straight-line basis over the vesting period, net of actual forfeitures. Stock-based compensation expense relating to restricted stock awards during fiscal years ended 2023, 2022, and 2021 was $22,379, $19,326, and $16,301, respectively. Stock-based compensation expense during fiscal 2023 and 2022 includes $2,186 and $1,131, respectively, of expense related to the Company's liability-classified awards. The total estimated amount of the liability-classified awards for fiscal 2023 is approximately $7,019. Approximately $34,186 of deferred compensation, which is expected to be recognized over the remaining weighted average vesting period of 1.45 years, is unrecognized as of December 30, 2023. The total fair value of restricted shares vested during fiscal years 2023, 2022, and 2021 was $29,792, $17,137, and $24,823, respectively.
Note 16 – Employee Benefit Plan
The Company sponsors 401(k) plans for which employees meeting certain age and length of service requirements may contribute up to the defined statutory limit. The 401(k) plans allow for the Company to make matching and profit sharing contributions in such amounts as may be determined by the Board of Directors. The Company recognized expenses of $732, $1,648, and $334, respectively, related to the 401(k) plans for fiscal years 2023, 2022, and 2021, respectively.
71


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
Note 17 – Income Taxes
Income tax expense for years 2023, 2022, and 2021 were as follows:
Fiscal Years Ended
December 30, 2023December 31, 2022January 1, 2022
Current:
Federal$22,085 $20,977 $14,251 
State5,633 9,040 7,353 
Foreign1,583 943 400 
Total current income tax expense29,301 30,960 22,004 
Deferred:
Federal(23,235)(15,401)(3,740)
State(2,487)(3,161)(3,238)
Foreign18 3 (68)
Total deferred income tax benefit(25,704)(18,559)(7,046)
Total income tax expense$3,597 $12,401 $14,958 
Temporary differences comprising the net deferred income tax liability shown in the Company’s consolidated balance sheets were as follows:
December 30, 2023December 31, 2022
Deferred tax asset:
Lease liabilities$10,381 $10,732 
Tax carryforwards2,328 3,863 
Accrued compensation11,275 11,945 
Allowance for doubtful accounts1,487 1,559 
Capitalized Research and Development Costs43,140 14,795 
Other1,998 1,025 
Total deferred tax asset$70,609 $43,919 
Deferred tax liability:
Acquired intangibles$(49,715)$(30,226)
Right-of-use assets(9,746)(10,361)
Depreciation and amortization(11,423)(9,467)
Other(2,562)(758)
Total deferred tax liability$(73,446)$(50,812)
Net deferred tax liability$(2,837)$(6,893)

As of December 30, 2023 and December 31, 2022, the Company had net non-current deferred tax liabilities of $2,837 and $6,893, respectively. No material valuation allowances are recorded against the Company’s deferred income tax assets as of December 30, 2023 and December 31, 2022. Deferred income tax liabilities primarily relate to depreciation and intangible assets, which are partially offset by deferred tax assets related to the capitalization of research and development costs under Section 174 of the Internal Revenue Code, and other deferred tax items. Beginning in 2022, the Tax Cuts and Jobs Act eliminates the option to currently deduct research and development costs in the period incurred and requires taxpayers to capitalize and amortize such costs over five years pursuant to Section 174 of the Internal Revenue Code.

72


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
As of December 30, 2023, the Company has $2,026 of tax-effected U.S. federal net operating loss carryforwards that will not expire, $82 of foreign net operating loss carryforwards (net of valuation allowance) that will not expire, and $172 of tax-effected state net operating loss carryforwards, of which $123 will begin to expire in the year 2034 and $49 that will not expire. The majority of the net operating loss carryforwards are subject to limitation under the Internal Revenue Code of 1986, as amended ("IRC") Section 382. Additionally, as of December 30, 2023, the Company has $48 of tax-effected state tax credit carryforwards that will expire in the year 2042.
Total income tax expense was different than the amount computed by applying the Federal statutory rate as follows:
Fiscal Years Ended
December 30, 2023December 31, 2022January 1, 2022
Tax at federal statutory rate$10,124 $13,099 $13,042 
State taxes, net of Federal benefit2,683 3,853 3,908 
Stock-based compensation(2,190)(1,495)(1,432)
Federal and state tax credits(9,064)(3,983)(1,242)
Changes in unrecognized tax position652 (73)96 
Other1,392 1,000 586 
Total income tax expense$3,597 $12,401 $14,958 
The Company’s consolidated effective income tax rate was 7.5%, 19.9%, and 24.1% for fiscal years 2023, 2022, and 2021, respectively.
The Company and its subsidiaries file income tax returns in the U.S. Federal jurisdiction and various state and foreign jurisdictions. The Company evaluates tax positions for recognition using a more-likely-than-not recognition threshold, and those tax positions eligible for recognition are measured as the largest amount of tax benefit that is greater than 50% likely of being realized upon the effective settlement with a taxing authority that has full knowledge of all relevant information. Fiscal years 2012 through 2014 are considered open tax years in the State of California. Fiscal years 2020 through 2023 are considered open tax years in the U.S. Federal jurisdiction, state jurisdictions, including the State of California, and foreign jurisdictions.
As of December 30, 2023 and December 31, 2022, the Company had $1,633 and $966, respectively, of gross unrecognized tax benefits, which if recognized, $1,440 and $847 would affect our effective tax rate. The Company expects to reverse an immaterial amount of unrecognized tax benefits in the next 12 months. A reconciliation of the beginning and ending amount of unrecognized tax benefits were as follows:
December 30, 2023December 31, 2022January 1, 2022
Balance, beginning of period$966 $1,071 $1,022 
Additions based on tax positions related to the current year447 131 124 
Additions for tax positions of prior years297 6  
Lapse of statute of limitations(77)(103)(45)
Reductions for positions of prior years (139)(30)
Balance, end of period$1,633 $966 $1,071 

The Company records accrued interest and penalties related to unrecognized tax benefits in income tax expense. Accrued interest and penalties related to unrecognized tax benefits in the Consolidated Balance Sheets were $378 and $340 as of December 30, 2023 and December 31, 2022, respectively.

In 2021, the Organization for Economic Co-operation and Development (“OECD”) released Pillar Two Global Anti-Base Erosion model rules, designed to ensure large corporations are taxed at a minimum rate of 15% in all countries of operation. The United States has not yet enacted legislation implementing the Pillar Two rules, however, they have been enacted or substantively enacted in certain jurisdictions in which the Company operates. We are continuing to assess and
73


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
monitor the Pillar Two rules, however, we do not expect their impact to be material based on the legislation enacted at this stage.
Note 18 – Reportable Segments
The Company's Chief Executive Officer, who is the chief operating decision maker ("CODM"), has organized the Company into three operating and reportable segments as follows:
Infrastructure ("INF"), which includes the Company's engineering, civil program management, utility services, and construction quality assurance practices,
Building, Technology & Sciences ("BTS"), which includes the Company's environmental health sciences, clean energy consulting, buildings and program management, and MEP & technology design practices, and
Geospatial Solutions ("GEO"), which includes the Company's geospatial solution practices.
The Company evaluates the performance of these reportable segments based on their respective operating income before the effect of amortization expense related to acquisitions and other unallocated corporate expenses. The following tables set forth summarized financial information concerning our reportable segments:
Fiscal Years Ended
December 30, 2023December 31, 2022January 1, 2022
Gross revenues
INF$374,986 $395,878 $383,725 
BTS222,804 232,577 185,995 
GEO263,949 158,323 136,986 
Total gross revenues$861,739 $786,778 $706,706 
Segment income before taxes
INF$65,608 $68,259 $71,838 
BTS38,810 43,810 35,221 
GEO51,633 42,640 33,027 
Total Segment income before taxes156,051 154,709 140,086 
Corporate(1)
(107,841)(92,335)(77,981)
Total income before taxes$48,210 $62,374 $62,105 
(1) Includes amortization of intangibles of $43,677, $32,341, and $33,498 for the fiscal years ended 2023, 2022, and 2021, respectively.
December 30, 2023December 31, 2022
Assets
INF$222,435 $226,301 
BTS243,154 231,049 
GEO603,630 366,385 
Corporate(1)
101,373 111,988 
Total assets$1,170,592 $935,723 
(1) Corporate assets consist of intercompany eliminations and assets not allocated to segments including cash and cash equivalents and certain other assets.
Substantially all of the Company's assets are located in the United States.
74


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
The Company disaggregates its gross revenues from contracts with customers by geographic location, customer-type, and contract-type for each of its reportable segments. Disaggregated revenues include the elimination of inter-segment revenues which has been allocated to each segment. The Company believes this best depicts how the nature, amount, timing, and uncertainty of its revenues and cash flows are affected by economic factors. No sales to an individual customer or country other than the United States accounted for more than 10% of gross revenue for fiscal years 2023, 2022, and 2021. Gross revenue, classified by the major geographic areas in which our customers were located, were as follows:
Fiscal Year 2023
INFBTSGEOTotal
United States$374,986 $184,338 $248,262 $807,586 
Foreign 38,466 15,687 54,153 
Total gross revenues$374,986 $222,804 $263,949 $861,739 

Fiscal Year 2022
INFBTSGEOTotal
United States$395,878 $204,036 $154,584 $754,498 
Foreign 28,541 3,739 32,280 
Total gross revenues$395,878 $232,577 $158,323 $786,778 

Fiscal Year 2021
INFBTSGEOTotal
United States$383,725 $167,057 $134,003 $684,785 
Foreign 18,938 2,983 21,921 
Total gross revenues$383,725 $185,995 $136,986 $706,706 

Gross revenue by customer were as follows:
Fiscal Year 2023
INFBTSGEOTotal
Public and quasi-public sector$301,427 $61,313 $223,109 $585,849 
Private sector73,559 161,491 40,840 275,890 
Total gross revenues$374,986 $222,804 $263,949 $861,739 

Fiscal Year 2022
INFBTSGEOTotal
Public and quasi-public sector$312,817 $61,726 $128,786 $503,329 
Private sector83,061 170,851 29,537 283,449 
Total gross revenues$395,878 $232,577 $158,323 $786,778 

Fiscal Year 2021
INFBTSGEOTotal
Public and quasi-public sector$304,753 $66,964 $86,628 $458,345 
Private sector78,972 119,031 50,358 248,361 
Total gross revenues$383,725 $185,995 $136,986 $706,706 

75


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(in thousands, except share data)
Gross revenues by contract type were as follows:
Fiscal Year 2023
INFBTSGEOTotal
Cost-reimbursable contracts$359,423 $162,721 $256,069 $778,213 
Fixed-unit price contracts15,563 60,083 7,880 83,526 
Total gross revenues$374,986 $222,804 $263,949 $861,739 

Fiscal Year 2022
INFBTSGEOTotal
Cost-reimbursable contracts$379,818 $155,632 $157,992 $693,442 
Fixed-unit price contracts16,060 76,945 331 93,336 
Total gross revenues$395,878 $232,577 $158,323 $786,778 


Fiscal Year 2021
INFBTSGEOTotal
Cost-reimbursable contracts$367,310 $133,272 $136,683 $637,265 
Fixed-unit price contracts16,415 52,723 303 69,441 
Total gross revenues$383,725 $185,995 $136,986 $706,706 
Note 19 - Subsequent Events
On January 19, 2024, the Company acquired all of the outstanding equity interests in Causseaux, Hewett, & Walpole, LLC, a provider of engineering and infrastructure consulting services in Florida. The aggregate purchase price is up to $59,500, including $45,000 of cash at closing, $2,000 of the Company's common stock, and a potential earn-out of up to $12,500.
76


ITEM 9.    CHANGES IN AND DISAGREEMENTS WITH ACCOUNTANTS ON ACCOUNTING AND FINANCIAL DISCLOSURE
None.
ITEM 9A.    CONTROLS AND PROCEDURES
Controls and Procedures
As of December 30, 2023, the end of the period covered by this Annual Report on Form 10-K, the Company carried out an evaluation, under the supervision and with the participation of its management, including the Company's Chief Executive Officer and its Chief Financial Officer, of the effectiveness of the design and operation of the Company's disclosure controls and procedures (as such term is defined in Rules 13a-15(e) and 15d-15(e) under the Exchange Act). Based on that evaluation, the Chief Executive Officer and Chief Financial Officer concluded that, as of December 30, 2023, the end of the period covered by this Annual Report on Form 10-K, the Company’s disclosure controls and procedures were effective to provide reasonable assurance that information required to be disclosed by the Company in the reports that it files or submits under the Exchange Act is: (1) recorded, processed, summarized and reported within the time periods specified by the Securities and Exchange Commission's rules and forms, and (2) accumulated and communicated to the Company's management, including the Company's Chief Executive Officer and Chief Financial Officer, in a manner that allows timely decisions regarding required disclosure.
Management's Annual Report on Internal Control Over Financial Reporting
Management is responsible for establishing and maintaining adequate internal control over financial reporting (as defined in Rules 13a-15(f) and 15d-15(f) under the Exchange Act). Internal control over financial reporting is a process to provide reasonable assurance regarding the reliability of our financial reporting for external purposes in accordance with accounting principles generally accepted in the United States. Because of its inherent limitations, internal control over financial reporting is not intended to provide absolute assurance that a misstatement of our financial statements would be prevented or detected. Management, with the participation of our Chief Executive Officer and Chief Financial Officer, assessed the effectiveness of our internal control over financial reporting as of December 30, 2023. In making this assessment, management used the criteria set forth by the Committee of Sponsoring Organizations of the Treadway Commission (COSO) in 2013 Internal Control—Integrated Framework.
As permitted by SEC guidance for newly acquired businesses, because it was not possible to complete an effective assessment of the acquired companies’ controls by year-end, management has excluded Axim Geospatial, LLC, the Visual Information Solutions commercial geospatial technology and software business ("VIS") from L3Harris, Bromley Cook Engineering, Inc., Diversified Construction Services, Inc., Gaudet Associates, Inc., Red Technologies (S) Pte. Ltd and Red Technologies (M) Sdn. Bhd., and Technical Design Services, Inc. from its evaluation of disclosure controls and procedures and internal control over financial reporting and changes therein from the date of such acquisition through December 30, 2023. Fiscal 2023 acquisitions constitute 3% of the total assets of the Company as of December 30, 2023, and 11% of the Company’s gross revenues for the fiscal year ended December 30, 2023.
Our management has concluded that, as of December 30, 2023, our internal control over financial reporting was effective based on these criteria. The effectiveness of the Company's internal control over financial reporting as of December 30, 2023 has been audited by Deloitte & Touche LLP, the Company's independent registered certified public accounting firm. Their report, which is set forth in Part II, Item 8, Financial Statements, of this Annual Report on Form 10-K, expresses an unqualified opinion of the effectiveness of the Company's internal control over financial reporting as of December 30, 2023.
Changes in Internal Control
There were no changes to the Company's internal control over financial reporting as defined in Exchange Act Rules 13a-15(e) and 15d-15(e) that occurred during the fourth quarter of 2023 that have materially affected, or are reasonably likely to materially affect, the Company's internal control over financial reporting.

77


REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM

To the Stockholders and the Board of Directors of NV5 Global, Inc.
Hollywood, Florida

Opinion on Internal Control over Financial Reporting

We have audited the internal control over financial reporting of NV5 Global, Inc. and subsidiaries (the “Company”) as of December 30, 2023, based on criteria established in Internal Control — Integrated Framework (2013) issued by the Committee of Sponsoring Organizations of the Treadway Commission (COSO). In our opinion, the Company maintained, in all material respects, effective internal control over financial reporting as of December 30, 2023, based on criteria established in Internal Control — Integrated Framework (2013) issued by COSO.

We have also audited, in accordance with the standards of the Public Company Accounting Oversight Board (United States) (PCAOB), the consolidated financial statements as of and for the year ended December 30, 2023, of the Company and our report dated February 23, 2024, expressed an unqualified opinion on those financial statements.

As described in Management’s Annual Report on Internal Control Over Financial Reporting, management excluded from its assessment the internal control over financial reporting at Axim Geospatial, LLC, the Visual Information Solutions commercial geospatial technology and software business ("VIS") from L3Harris, Bromley Cook Engineering, Inc., Diversified Construction Services, Inc., Gaudet Associates, Inc., Red Technologies (S) Pte. Ltd and Red Technologies (M) Sdn. Bhd., and Technical Design Services, Inc., which were acquired in 2023 (collectively “the 2023 acquisitions”), and whose financial statements constitute 3% of total assets and 11% of gross revenues of the consolidated financial statement amounts as of and for the year ended December 30, 2023. Accordingly, our audit did not include the internal control over financial reporting at the 2023 acquisitions.

Basis for Opinion

The Company’s management is responsible for maintaining effective internal control over financial reporting and for its assessment of the effectiveness of internal control over financial reporting, included in the accompanying Management’s Annual Report on Internal Control Over Financial Reporting. Our responsibility is to express an opinion on the Company’s internal control over financial reporting based on our audit. We are a public accounting firm registered with the PCAOB and are required to be independent with respect to the Company in accordance with the U.S. Federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB.

We conducted our audit in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether effective internal control over financial reporting was maintained in all material respects. Our audit included obtaining an understanding of internal control over financial reporting, assessing the risk that a material weakness exists, testing and evaluating the design and operating effectiveness of internal control based on the assessed risk, and performing such other procedures as we considered necessary in the circumstances. We believe that our audit provides a reasonable basis for our opinion.

Definition and Limitations of Internal Control over Financial Reporting

A company’s internal control over financial reporting is a process designed 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. A company’s internal control over financial reporting includes those policies and procedures that (1) pertain to the maintenance of records that, in reasonable detail, accurately and fairly reflect the transactions and dispositions of the assets of the company; (2) provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with generally accepted accounting principles, and that receipts and expenditures of the company are being made only in accordance with authorizations of management and directors of the
78


company; and (3) provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use, or disposition of the company’s assets that could have a material effect on the financial statements.

Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Also, projections of any evaluation of effectiveness to future periods are subject to the risk that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate.

/s/ Deloitte & Touche LLP

Miami, Florida
February 23, 2024
ITEM 9B.    OTHER INFORMATION
On February 22, 2024, the Board of Directors of the Company appointed Mr. Alexander Hockman and Mr. Ben Heraud to serve in the capacity of co-Chief Executive Officers, with effect from March 1, 2024. Effective upon such appointment, Mr. Dickerson Wright, the Company’s current Chief Executive Officer, will assume the role of Executive Chairman and will continue to serve as Chairman of the NV5 Board and remains its largest shareholder. Mr. Hockman and Mr. Heraud will continue to report to Mr. Dickerson Wright.
Mr. Hockman has served as a member of our Board of Directors and as our Chief Operating Officer and President since January 2015. Prior to becoming President and Chief Operating Officer, Mr. Hockman served as our Executive Vice President and President of NV5 - Southeast.
Mr. Hockman has over 30 years of diverse experience in the fields of construction inspections, materials testing, geotechnical, environmental, waterfront, construction and building envelope consulting. From March 2003 until March 2010 when he joined NV5, Mr. Hockman served as the Chief Operating Officer of the Construction Materials Testing Division of Bureau Veritas. Further, from 1985 until its acquisition by Bureau Veritas in 2003, Mr. Hockman served as the President of Intercounty Laboratories. Mr. Hockman earned a Bachelor of Science degree in Civil Engineering from Florida International University and is a licensed engineer in Florida.
Mr. Ben Heraud has been Chief Operating Officer for NV5 since May 2017 when he joined the Company through the acquisition of Energenz. Mr. Heraud co-founded Energenz in Hong Kong in November 2009 and was the Chief Executive Officer from 2013 through to its acquisition by the Company.
Mr. Heraud has over 20 years of technical experience in the field of energy management consulting, building systems commissioning, analytics and design oversight. From 2006 to 2009 Mr. Heraud served as Senior Energy Consultant for Energetics in Sydney, Australia. Prior to this, from 2003 to 2006, he served as Energy and Design Engineer for Spotless Services in Wellington, New Zealand. Mr. Heraud earned a Bachelor of Science degree in Energy Management from Otago University.
The Company expects to enter into revised employment agreements with Mr. Hockman and Mr. Heraud prior to the commencement date of their new roles.
79


ITEM 9C.    DISCLOSURE REGARDING FOREIGN JURISDICTIONS THAT PREVENT INSPECTIONS
Not applicable
80


PART III
ITEM 10.    DIRECTORS, EXECUTIVE OFFICERS AND CORPORATE GOVERNANCE.
Information required by this item is incorporated by reference from our definitive proxy statement for the 2024 Annual Meeting of Stockholders to be filed within 120 days of our fiscal 2023 year end.
ITEM 11.    EXECUTIVE COMPENSATION.
Information required by this item is incorporated by reference from our definitive proxy statement for the 2024 Annual Meeting of Stockholders to be filed within 120 days of our fiscal 2023 year end.
ITEM 12.    SECURITY OWNERSHIP OF CERTAIN BENEFICIAL OWNERS AND MANAGEMENT AND RELATED STOCKHOLDER MATTERS.
Information required by this item is incorporated by reference from our definitive proxy statement for the 2024 Annual Meeting of Stockholders to be filed within 120 days of our fiscal 2023 year end.
ITEM 13.    CERTAIN RELATIONSHIPS AND RELATED TRANSACTIONS AND DIRECTOR INDEPENDENCE
Information required by this item is incorporated by reference from our definitive proxy statement for the 2024 Annual Meeting of Stockholders to be filed within 120 days of our fiscal 2023 year end.
ITEM 14.    PRINCIPAL ACCOUNTING FEES AND SERVICES.
Information required by this item is incorporated by reference from our definitive proxy statement for the 2024 Annual Meeting of Stockholders to be filed within 120 days of our fiscal 2023 year end.
81


PART IV
ITEM 15.    EXHIBITS, FINANCIAL STATEMENT SCHEDULES.
(a)Financial Statements:
(1)The financial statements required to be included in this Annual Report on Form 10-K are included in Item 8 therein.
(2)All supplemental schedules have been omitted since the information is either included in the financial statements or the notes thereto or they are not required or are not applicable.
(3)See attached Exhibit Index of this Annual Report on Form 10-K.
(b)Exhibits:
NumberDescription



82


NumberDescription


101.INSXBRL Instance Document
101.SCHXBRL Taxonomy Extension Schema Document
101.CALXBRL Taxonomy Extension Calculation Linkbase Document
101.LABXBRL Taxonomy Extension Label Linkbase Document
101.PREXBRL Taxonomy Extension Presentation Linkbase Document
101.DEFXBRL Taxonomy Extension Definition Linkbase Document

Indicates a management contract or compensatory plan, contract or arrangement.
*Filed herewith.
**Furnished herewith. This certification is being furnished solely to accompany this report pursuant to 18 U.S.C. Section 1350, and is not being filed for purposes of Section 18 of the Exchange Act of 1934, as amended, and is not to be incorporated by reference into any filings of the Company, whether made before or after the date hereof, regardless of any general incorporation language in such filing.
_________________________________________________

83


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.
NV5 GLOBAL, INC.
Date: February 23, 2024/s/ Dickerson Wright
Name:Dickerson Wright
Title: Chairman and Chief Executive Officer
Pursuant to the requirements of the Securities Exchange Act of 1934, this report has been signed by the following persons on behalf of the registrant and in the capacities and on the dates indicated.
SignatureTitleDate
/s/ Dickerson WrightChairman and Chief Executive OfficerFebruary 23, 2024
Dickerson Wright(Principal Executive Officer)
/s/ Edward H. CodispotiChief Financial OfficerFebruary 23, 2024
Edward H. Codispoti(Principal Financial and Accounting Officer)
/s/ Alexander A. HockmanChief Operating Officer, President and DirectorFebruary 23, 2024
Alexander A. Hockman
/s/ MaryJo O’BrienExecutive Vice President and DirectorFebruary 23, 2024
MaryJo O’Brien
/s/ Brian C. FreckmannDirectorFebruary 23, 2024
Brian C. Freckmann
/s/ Dr. Denise DickinsDirectorFebruary 23, 2024
Dr. Denise Dickins
/s/ William D. PruittDirectorFebruary 23, 2024
William D. Pruitt
/s/ Francois TardanDirectorFebruary 23, 2024
Francois Tardan
84
EX-4.2 2 nvee-20231230xex42.htm EX-4.2 Document

Exhibit 4.2

DESCRIPTION OF REGISTRANT’S SECURITIES REGISTERED PURSUANT TO SECTION 12 OF THE SECURITIES EXCHANGE ACT OF 1934
References to “NV5” and the “Company” herein are, unless the context otherwise indicates, only to NV5 Global, Inc. and not to any of its subsidiaries. As of December 30, 2023, the end of the period covered by this Annual Report on Form 10-K, NV5 has one class of securities registered under Section 12 of the Securities Exchange Act of 1934, as amended (the “Exchange Act”), the Company’s Common Stock.

The following description of the Company’s capital stock and provisions of the Company’s Amended and Restated Certificate of Incorporation, Bylaws and the Delaware General Corporation Law are summaries and are qualified in their entirety by reference to the Company’s Amended and Restated Certificate of Incorporation and NV5’s Amended and Restated Bylaws. Copies of these documents have been filed with the SEC as exhibits to the Annual Report on Form 10-K to which this description has been filed as an exhibit. Pursuant to NV5’s Amended and Restated Certificate of Incorporation, the Company’s authorized capital stock consists of 45,000,000 shares of common stock, par value of $0.01 per share (referred to as the Company’s common stock), and 5,000,000 shares of preferred stock, par value $0.01 per share (referred to as the Company’s preferred stock), to be designated from time to time by the Company’s Board of Directors.
 
Common Stock
 
Holders of common stock are entitled to one vote per share on any matter to be voted upon by stockholders. All shares rank equally as to voting and all other matters. The shares of common stock have no preemptive or conversion rights, no redemption or sinking fund provisions, are not liable for further call or assessment and are not entitled to cumulative voting rights. For as long as such stock is outstanding, the holders of common stock are entitled to receive ratably any dividends when and as declared from time to time by NV5’s board of directors out of funds legally available for dividends. Upon a liquidation or dissolution of the Company, whether voluntary or involuntary, creditors will be paid before any distribution to holders of common stock. After such distribution, holders of common stock are entitled to receive a pro rata distribution per share of any excess amount.

As of February 16, 2024, there were 15,916,943 shares of common stock outstanding.
 
Preferred Stock

Under the Company’s Amended and Restated Certificate of Incorporation, NV5’s board of directors has authority to issue up to 5,000,000 shares of preferred stock without stockholder approval. The Company’s board of directors may also determine or alter for each class of preferred stock the voting powers, designations, preferences, and special rights, qualifications, limitations, or restrictions as permitted by law. The Company’s board of directors may authorize the issuance of preferred stock with voting or conversion rights that could adversely affect the voting power or other rights of the holders of the common stock. Issuing preferred stock provides flexibility in connection with possible acquisitions and other corporate purposes, but could also, among other things, have the effect of delaying, deferring or preventing a change in control of NV5 and may adversely affect the market price of the Company’s common stock and the voting and other rights of the holders of common stock.
 
The Company’s board of directors will fix the rights, preferences, privileges, qualifications and restrictions of the preferred stock of each series that NV5 issues in the certificate of designation relating to that series.  This will include:

the title and stated value;

the number of shares being authorized;

the liquidation preference per share;

the purchase price per share;

the currency for which the shares may be purchased;

the dividend rate per share, dividend period and payment dates and method of calculation for dividends;




whether dividends will be cumulative or non-cumulative and, if cumulative, the date from which dividends will accumulate;

NV5’s right, if any, to defer payment of dividends and the maximum length of any such deferral period;

the procedures for any auction and remarketing, if any;

the provisions for a sinking fund, if any;

the provisions for redemption or repurchase, if applicable, and any restrictions on NV5’s ability to exercise those redemption and repurchase rights;

any listing of the preferred stock on any securities exchange or market;

whether the preferred stock will be convertible into the Company’s common stock or other securities of NV5, and, if applicable, the conversion period, the conversion price, or how it will be calculated, and under what circumstances it may be adjusted;

voting rights, if any, of the preferred stock;

preemption rights, if any;

restrictions on transfer, sale or other assignment, if any;

the relative ranking and preferences of the preferred stock as to dividend rights and rights if the Company liquidates, dissolves or winds up its affairs;

any limitations on issuances of any class or series of preferred stock ranking senior to or on a parity with the series of preferred stock being issued as to dividend rights and rights if the Company liquidates, dissolves or winds up its affairs; and

any other specific terms, rights, preferences, privileges, qualifications or restrictions of the preferred stock.
 
As of February 16, 2024, there were no shares of preferred stock outstanding.
 
Certain Anti-Takeover Effects of Delaware Law and Provisions of NV5’s Amended and Restated Certificate of Incorporation and Bylaws
 
The Company’s Amended and Restated Certificate of Incorporation and Amended and Restated Bylaws include a number of provisions that may have the effect of encouraging persons considering unsolicited tender offers or other unilateral takeover proposals to negotiate with the Company’s board of directors rather than pursue non-negotiated takeover attempts. These provisions include:

Removal of directors and filling board vacancies. NV5’s Amended and Restated Certificate of Incorporation and Amended and Restated Bylaws provide that, subject to the rights of the holders of any series of preferred stock then outstanding, directors may be removed with or without cause by the affirmative vote of the holders of a majority of the voting power of all the outstanding shares of capital stock entitled to vote generally in the election of directors voting together as a single class. Furthermore, any vacancy on the Company’s board of directors, however occurring, including a vacancy resulting from an increase in the size of NV5’s board, may only be filled by the affirmative vote of a majority of directors then in office even if less than a quorum, or by the sole remaining director.

No written consent of stockholders. The Company’s Amended and Restated Certificate of Incorporation provides that all stockholder actions are required to be taken by a vote of the stockholders at an annual or special meeting, and that stockholders may not take any action by written consent in lieu of a meeting.

Meetings of stockholders. The Company’s Amended and Restated Certificate of Incorporation and the Company’s Amended and Restated Bylaws provide that only a majority of the members of NV5’s board of directors then in office



in which a quorum is present, the Chairman of the board of directors, or the President, may call special meetings of stockholders and only those matters set forth in the notice of the special meeting may be considered or acted upon at a special meeting of stockholders. A majority of the total number of authorized directors shall constitute a quorum at any meeting of the board of directors. The Company’s Amended and Restated Bylaws limit the business that may be conducted at an annual meeting of stockholders to those matters properly brought before the meeting.

Advance notice requirements. The Company’s Amended and Restated Bylaws establish advance notice procedures with regard to stockholder proposals relating to the nomination of candidates for election as directors or new business to be brought before meetings of stockholders. These procedures provide that notice of stockholder proposals must be timely given in writing to NV5’s corporate secretary prior to the meeting at which the action is to be taken. Generally, to be timely, notice must be received at the Company’s principal executive offices not earlier than the close of business on the 120th day, nor later than the close of business on the 90th day, prior to the first anniversary date of the annual meeting for the preceding year. The notice must contain certain information specified in the Amended and Restated Bylaws.

Amendment to bylaws and certificate of incorporation. As required by the Delaware General Corporation Law, any amendment of the Company’s Amended and Restated Certificate of Incorporation must first be approved by a majority of the Company’s board of directors and, if required by law or the Amended and Restated Certificate of Incorporation, thereafter be approved by a majority of the outstanding shares entitled to vote on the amendment, and a majority of the outstanding shares of each class entitled to vote thereon as a class, except that the amendment of the provisions relating to stockholder action, directors, limitation of director liability and the amendment of the Company’s Amended and Restated Bylaws and Certificate of Incorporation must be approved by no less than 66 2/3 percent of the voting power of all of the shares of capital stock issued and outstanding and entitled to vote generally in any election of directors, voting together as a single class. The Company’s Amended and Restated Bylaws may be amended by the affirmative vote of a majority vote of the directors then in office, subject to any limitations set forth in the Amended and Restated Bylaws; and may also be amended by the affirmative vote of at least 66 2/3 percent of the voting power of all of the shares of capital stock issued and outstanding and entitled to vote generally in any election of directors, voting together as a single class.

Blank check preferred stock. As described above, the Company’s Amended and Restated Certificate of Incorporation authorizes 5,000,000 shares of preferred stock. The existence of authorized but unissued shares of preferred stock may enable NV5’s board of directors to render more difficult or to discourage an attempt to obtain control of NV5 by means of a merger, tender offer, proxy contest, or otherwise. For example, if in the due exercise of its fiduciary obligations, the Company’s board of directors were to determine that a takeover proposal is not in the best interests of the Company or its stockholders, the board of directors could cause shares of preferred stock to be issued without stockholder approval in one or more private offerings or other transactions that might dilute the voting or other rights of the proposed acquirer or insurgent stockholder or stockholder group. In this regard, the Company’s Amended and Restated Certificate of Incorporation grants the board of directors broad power to establish the rights and preferences of authorized and unissued shares of preferred stock. The issuance of shares of preferred stock could decrease the amount of earnings and assets available for distribution to holders of shares. The issuance may also adversely affect the rights and powers, including voting rights, of these holders and may have the effect of delaying, deterring, or preventing a change in control of NV5.
 
In addition, NV5 is subject to the provisions of Section 203 of the Delaware General Corporation Law. In general, Section 203 prohibits a publicly held Delaware corporation from engaging in a “business combination” with an “interested stockholder” for a three-year period following the time that this stockholder becomes an interested stockholder, unless the business combination is approved in a prescribed manner. A “business combination” includes, among other things, a merger, asset or stock sale, or other transaction resulting in a financial benefit to the interested stockholder. An “interested stockholder” is a person who, together with affiliates and associates, owns, or did own within three years prior to the determination of interested stockholder status, 15% or more of the corporation’s voting stock.

Because of these provisions, persons considering unsolicited tender offers or other unilateral takeover proposals may be more likely to negotiate with the Company’s board of directors rather than pursue non-negotiated takeover attempts. As a result, these provisions may make it more difficult for stockholders to benefit from transactions that are opposed by an incumbent board of directors.


EX-10.2 3 nvee-20231230xex102.htm EX-10.2 Document

Exhibit 10.2

NV5 GLOBAL, INC.
RESTRICTED STOCK AGREEMENT

NV5 Global, Inc. (the Company) has granted to the Participant named in the Notice of Grant of Restricted Stock (the Grant Notice) to which this Restricted Stock Agreement (the Agreement) is attached an Award consisting of Shares subject to the terms and conditions set forth in the Grant Notice and this Agreement. The Award has been granted pursuant to and shall in all respects be subject to the terms and conditions of the NV5 Global, Inc. 2023 Equity Incentive Plan (the “Plan”), the provisions of which are incorporated herein by reference. By signing the Grant Notice, the Participant: (a) acknowledges receipt of and represents that the Participant has read and is familiar with the Grant Notice, this Agreement, the Plan and a prospectus for the Plan prepared in connection with the registration with the Securities and Exchange Commission of the shares issuable pursuant to the Award (the “Plan Prospectus”), (b) accepts the Award subject to all of the terms and conditions of the Grant Notice, this Agreement and the Plan and (c) agrees to accept as binding, conclusive and final all decisions or interpretations of the Committee upon any questions arising under the Grant Notice, this Agreement or the Plan.

1.    DEFINITIONS AND CONSTRUCTION.

1.1    Definitions. Unless otherwise defined herein, capitalized terms shall have the meanings assigned to such terms in the Grant Notice or the Plan.

1.2    Construction. Captions and titles contained herein are for convenience only and shall not affect the meaning or interpretation of any provision of this Agreement. Except when otherwise indicated by the context, the singular shall include the plural and the plural shall include the singular. Use of the term “or” is not intended to be exclusive, unless the context clearly requires otherwise.

2.    ADMINISTRATION.

All questions of interpretation concerning the Grant Notice, this Agreement, the Plan or any other form of agreement or other document employed by the Company in the administration of the Plan or the Award shall be determined by the Committee. All such determinations by the Committee shall be final, binding and conclusive upon all persons having an interest in the Award, unless fraudulent or made in bad faith. Any and all actions, decisions and determinations taken or made by the Committee in the exercise of its discretion pursuant to the Plan or the Award or other agreement thereunder (other than determining questions of interpretation pursuant to the preceding sentence) shall be final, binding and conclusive upon all persons having an interest in the Award. Any Officer shall have the authority to act on behalf of the Company with respect to any matter, right, obligation, or election which is the responsibility of or which is allocated to the Company herein, provided the Officer has apparent authority with respect to such matter, right, obligation or election.

3.    THE AWARD.

3.1    Grant and Issuance of Shares. On the Date of Grant, the Participant shall acquire and the Company shall issue, subject to the provisions of this Agreement, a number of Shares equal to the Total Number of Shares. As a condition to the issuance of the Shares, the Participant shall execute and deliver the Grant Notice to the Company, and, if required by the Company, an Assignment Separate from Certificate duly endorsed (with date and number of shares blank) in the form provided by the Company.

3.2    No Monetary Payment Required. The Participant is not required to make any monetary payment (other than to satisfy applicable tax withholding, if any, with respect to the issuance or vesting of the Shares) as a condition to receiving the Shares, the consideration for which shall be past services actually rendered or future services to be rendered to a Participating Company or for its benefit. Notwithstanding the foregoing, if required by applicable law, the Participant shall furnish consideration in the form of cash or past services rendered to a Participating Company or for its benefit having a value not less than the par value of the Shares issued pursuant to the Award.

3.3    Beneficial Ownership of Shares; Certificate Registration. The Participant hereby authorizes the Company, in its sole discretion, to deposit the Shares with the Company’s transfer agent, including any successor transfer agent, to be held in book entry form during the term of the Escrow pursuant to Section 6. Furthermore, the Participant hereby authorizes the Company, in its sole discretion, to deposit, following the term of such Escrow, for the benefit of the Participant with any broker with which the Participant has an account relationship of which the Company has notice any or all Shares which are no longer subject to such Escrow. Except as provided by the foregoing, a certificate for the Shares shall be registered in the name of the Participant, or, if applicable, in the names of the heirs of the Participant.

3.4    Issuance of Shares in Compliance with Law. The issuance of the Shares shall be subject to compliance with all applicable requirements of federal, state or foreign law with respect to such securities. No Shares shall be



issued hereunder if their issuance would constitute a violation of any applicable federal, state or foreign securities laws or other law or regulations or the requirements of any stock exchange or market system upon which the Stock may then be listed. The inability of the Company to obtain from any regulatory body having jurisdiction the authority, if any, deemed by the Company’s legal counsel to be necessary to the lawful issuance of any Shares shall relieve the Company of any liability in respect of the failure to issue such Shares as to which such requisite authority shall not have been obtained. As a condition to the issuance of the Shares, the Company may require the Participant to satisfy any qualifications that may be necessary or appropriate, to evidence compliance with any applicable law or regulation and to make any representation or warranty with respect thereto as may be requested by the Company.

4.    VESTING OF SHARES.

Shares acquired pursuant to this Agreement shall become Vested Shares as provided in the Grant Notice. For purposes of determining the number of Vested Shares following an Ownership Change Event, credited Service shall include all Service with any corporation which is a Participating Company at the time the Service is rendered, whether or not such corporation is a Participating Company both before and after the Ownership Change Event.

5.    COMPANY REACQUISITION RIGHT.

5.1    Grant of Company Reacquisition Right. Except to the extent otherwise provided by the Superseding Agreement, if any, in the event that (a) the Participant’s Service terminates for any reason or no reason, with or without cause, or (b) the Participant, the Participant’s legal representative, or other holder of the Shares, attempts to sell, exchange, transfer, pledge, or otherwise dispose of (other than pursuant to an Ownership Change Event), including, without limitation, any transfer to a nominee or agent of the Participant, any Shares which are not Vested Shares (“Unvested Shares”), the Participant shall forfeit and the Company shall automatically reacquire the Unvested Shares, and the Participant shall not be entitled to any payment therefor (the “Company Reacquisition Right”).

5.2    Ownership Change Event, Non-Cash Dividends, Distributions and Adjustments. Upon the occurrence of an Ownership Change Event, a dividend or distribution to the stockholders of the Company paid in shares of Stock or other property, or any other adjustment upon a change in the capital structure of the Company as described in Section 9, any and all new, substituted or additional securities or other property (other than regular, periodic cash dividends paid on Stock pursuant to the Company’s dividend policy) to which the Participant is entitled by reason of the Participant’s ownership of Unvested Shares shall be immediately subject to the Company Reacquisition Right and included in the terms “Shares,” “Stock” and “Unvested Shares” for all purposes of the Company Reacquisition Right with the same force and effect as the Unvested Shares immediately prior to the Ownership Change Event, dividend, distribution or adjustment, as the case may be. For purposes of determining the number of Vested Shares following an Ownership Change Event, dividend, distribution or adjustment, credited Service shall include all Service with any corporation which is a Participating Company at the time the Service is rendered, whether or not such corporation is a Participating Company both before and after any such event.

5.3    Obligation to Repay Certain Cash Dividends and Distributions. The Participant shall, at the discretion of the Company, be obligated to promptly repay to the Company upon termination of the Participant’s Service any dividends and other distributions paid to the Participant in cash with respect to Unvested Shares reacquired by the Company pursuant to the Company Reacquisition Right.

6.    ESCROW.

6.1    Appointment of Agent. To ensure that Shares subject to the Company Reacquisition Right will be available for reacquisition, the Participant and the Company hereby appoint the Secretary of the Company, or any other person designated by the Company, as their agent and as attorney-in-fact for the Participant (the “Agent”) to hold any and all Unvested Shares and to sell, assign and transfer to the Company any such Unvested Shares reacquired by the Company pursuant to the Company Reacquisition Right. The Participant understands that appointment of the Agent is a material inducement to make this Agreement and that such appointment is coupled with an interest and is irrevocable. The Agent shall not be personally liable for any act the Agent may do or omit to do hereunder as escrow agent, agent for the Company, or attorney in fact for the Participant while acting in good faith and in the exercise of the Agent’s own good judgment, and any act done or omitted by the Agent pursuant to the advice of the Agent’s own attorneys shall be conclusive evidence of such good faith. The Agent may rely upon any letter, notice or other document executed by any signature purporting to be genuine and may resign at any time.

6.2    Establishment of Escrow. The Participant authorizes the Company to deposit the Unvested Shares with the Company’s transfer agent to be held in book entry form, as provided in Section 3.3, and the Participant agrees to deliver to and deposit with the Agent each certificate, if any, evidencing the Shares and, if required by the Company, an Assignment Separate from Certificate with respect to such book entry shares and each such certificate duly endorsed (with date



and number of Shares blank) in the form attached to this Agreement, to be held by the Agent under the terms and conditions of this Section 6 (the “Escrow”). Upon the occurrence of an Ownership Change Event, a dividend or distribution to the stockholders of the Company paid in shares of Stock or other property (other than regular, periodic dividends paid on Stock pursuant to the Company’s dividend policy) or any other adjustment upon a change in the capital structure of the Company, as described in Section 9, any and all new, substituted or additional securities or other property to which the Participant is entitled by reason of his or her ownership of the Shares that remain, following such Ownership Change Event, dividend, distribution or change described in Section 9, subject to the Company Reacquisition Right shall be immediately subject to the Escrow to the same extent as the Shares immediately before such event. The Company shall bear the expenses of the Escrow.

6.3    Delivery of Shares to Participant. The Escrow shall continue with respect to any Shares for so long as such Shares remain subject to the Company Reacquisition Right. Upon termination of the Company Reacquisition Right with respect to Shares, the Company shall so notify the Agent and direct the Agent to deliver such number of Shares to the Participant. As soon as practicable after receipt of such notice, the Agent shall cause the Shares specified by such notice to be delivered to the Participant, and the Escrow shall terminate with respect to such Shares.

7.    TAX MATTERS.

7.1    Tax Withholding.

(a)    In General. At the time the Grant Notice is executed, or at any time thereafter as requested by a Participating Company, the Participant hereby authorizes withholding from payroll and any other amounts payable to the Participant, and otherwise agrees to make adequate provision for, any sums required to satisfy the federal, state, local and foreign tax (including any social insurance) withholding obligations of the Participating Company, if any, which arise in connection with the Award, including, without limitation, obligations arising upon (a) the transfer of Shares to the Participant, (b) the lapsing of any restriction with respect to any Shares, (c) the filing of an election to recognize tax liability, or (d) the transfer by the Participant of any Shares. The Company shall have no obligation to deliver the Shares or to release any Shares from the Escrow established pursuant to Section 6 until the tax withholding obligations of the Participating Company have been satisfied by the Participant.

(b)    Assignment of Sale Proceeds. Subject to compliance with applicable law and the Company’s Trading Compliance Policy, if permitted by the Company, the Participant may satisfy the Participating Company’s tax withholding obligations in accordance with procedures established by the Company providing for delivery by the Participant to the Company or a broker approved by the Company of properly executed instructions, in a form approved by the Company, providing for the assignment to the Company of the proceeds of a sale with respect to some or all of the shares becoming Vested Shares on a Vesting Date as provided in the Grant Notice.

(c)    Withholding in Shares. The Company shall have the right, but not the obligation, to require the Participant to satisfy all or any portion of a Participating Company’s tax withholding obligations by withholding a number of whole, Vested Shares otherwise deliverable to the Participant or by the Participant’s tender to the Company of a number of whole, Vested Shares or vested shares acquired otherwise than pursuant to the Award having, in any such case, a fair market value, as determined by the Company as of the date on which the tax withholding obligations arise, not in excess of the amount of such tax withholding obligations determined by the applicable minimum statutory withholding rates.

8.    EFFECT OF CHANGE IN CONTROL.

In the event of a Change in Control, the surviving, continuing, successor, or purchasing corporation or other business entity or parent thereof, as the case may be (the “Acquiror”), may, without the consent of the Participant, assume or continue in full force and effect the Company’s rights and obligations under the Award or substitute for the Award a substantially equivalent award for the Acquiror’s stock. For purposes of this Section, the Award shall be deemed assumed if, following the Change in Control, the Award confers the right to receive, subject to the terms and conditions of the Plan and this Agreement, for each Share subject to the Award immediately prior to the Change in Control, the consideration (whether stock, cash, other securities or property or a combination thereof) to which a holder of a share of Stock on the effective date of the Change in Control was entitled. Notwithstanding the foregoing, Shares acquired pursuant to the Award prior to the Change in Control and any consideration received pursuant to the Change in Control with respect to such shares shall continue to be subject to all applicable provisions of this Agreement except as otherwise provided herein.

9.    ADJUSTMENTS FOR CHANGES IN CAPITAL STRUCTURE.

Subject to any required action by the stockholders of the Company, in the event of any change in the Stock effected without receipt of consideration by the Company, whether through merger, consolidation, reorganization,



reincorporation, recapitalization, reclassification, stock dividend, stock split, reverse stock split, split-up, split-off, spin-off, combination of shares, exchange of shares, or similar change in the capital structure of the Company, or in the event of payment of a dividend or distribution to the stockholders of the Company in a form other than Stock (other than regular, periodic cash dividends paid on Stock pursuant to the Company’s dividend policy) that has a material effect on the Fair Market Value of shares of Stock, appropriate and proportionate adjustments shall be made in the number and kind of shares of stock or other property subject to the Award, in order to prevent dilution or enlargement of the Participant’s rights under the Award. For purposes of the foregoing, conversion of any convertible securities of the Company shall not be treated as “effected without receipt of consideration by the Company.” Any and all new, substituted or additional securities or other property (other than regular, periodic cash dividends paid on Stock pursuant to the Company’s dividend policy, subject to Section 5.3) to which Participant is entitled by reason of ownership of shares acquired pursuant to this Award will be immediately subject to the provisions of this Award on the same basis as all shares originally acquired hereunder. Any fractional share resulting from an adjustment pursuant to this Section shall be rounded down to the nearest whole number. Such adjustments shall be determined by the Committee, and its determination shall be final, binding and conclusive.

10.    RIGHTS AS A STOCKHOLDER, DIRECTOR, EMPLOYEE OR CONSULTANT.

The Participant shall have no rights as a stockholder with respect to any Shares subject to the Award until the date of the issuance of the Shares (as evidenced by the appropriate entry on the books of the Company or of a duly authorized transfer agent of the Company). No adjustment shall be made for dividends, distributions or other rights for which the record date is prior to the date the Shares are issued, except as provided in Section 9. Subject to the provisions of this Agreement, the Participant shall exercise all rights and privileges of a stockholder of the Company with respect to Shares deposited in the Escrow pursuant to Section 6, including the right to vote such Shares and to receive all dividends and other distributions paid with respect to such Shares, subject to Section 5.3. If the Participant is an Employee, the Participant understands and acknowledges that, except as otherwise provided in a separate, written employment agreement between a Participating Company and the Participant, the Participant’s employment is “at will” and is for no specified term. Nothing in this Agreement shall confer upon the Participant any right to continue in the Service of a Participating Company or interfere in any way with any right of the Participating Company Group to terminate the Participant’s Service at any time.

11.    LEGENDS.

The Company may at any time place legends referencing the Company Reacquisition Right and any applicable federal, state or foreign securities law restrictions on all certificates representing the Shares. The Participant shall, at the request of the Company, promptly present to the Company any and all certificates representing the Shares in the possession of the Participant in order to carry out the provisions of this Section. Unless otherwise specified by the Company, legends placed on such certificates may include, but shall not be limited to, the following:

“THE SECURITIES REPRESENTED BY THIS CERTIFICATE ARE SUBJECT TO RESTRICTIONS SET FORTH IN AN AGREEMENT BETWEEN THIS CORPORATION AND THE REGISTERED HOLDER, OR HIS PREDECESSOR IN INTEREST, A COPY OF WHICH IS ON FILE AT THE PRINCIPAL OFFICE OF THIS CORPORATION.”

12.    TRANSFERS IN VIOLATION OF AGREEMENT.

No Shares may be sold, exchanged, transferred, assigned, pledged, hypothecated or otherwise disposed of, including by operation of law, in any manner which violates any of the provisions of this Agreement and, except pursuant to an Ownership Change Event, until the date on which such shares become Vested Shares, and any such attempted disposition shall be void. The Company shall not be required (a) to transfer on its books any Shares which will have been transferred in violation of any of the provisions set forth in this Agreement or (b) to treat as owner of such Shares or to accord the right to vote as such owner or to pay dividends to any transferee to whom such Shares will have been so transferred. In order to enforce its rights under this Section, the Company shall be authorized to give a stop transfer instruction with respect to the Shares to the Company’s transfer agent.

13.    MISCELLANEOUS PROVISIONS.

13.1    Termination or Amendment. The Committee may terminate or amend the Plan or this Agreement at any time; provided, however, that no such termination or amendment may have a materially adverse effect on the Participant’s rights under this Agreement without the consent of the Participant unless such termination or amendment is necessary to comply with applicable law or government regulation. No amendment or addition to this Agreement shall be effective unless in writing.




13.2    Nontransferability of the Award. The right to acquire Shares pursuant to the Award shall not be subject in any manner to anticipation, alienation, sale, exchange, transfer, assignment, pledge, encumbrance, or garnishment by creditors of the Participant or the Participant’s beneficiary, except transfer by will or by the laws of descent and distribution. All rights with respect to the Award shall be exercisable during the Participant’s lifetime only by the Participant or the Participant’s guardian or legal representative.

13.3    Further Instruments. The parties hereto agree to execute such further instruments and to take such further action as may reasonably be necessary to carry out the intent of this Agreement.

13.4    Binding Effect. This Agreement shall inure to the benefit of the successors and assigns of the Company and, subject to the restrictions on transfer set forth herein, be binding upon the Participant and the Participant’s heirs, executors, administrators, successors and assigns.

13.5    Delivery of Documents and Notices. Any document relating to participation in the Plan or any notice required or permitted hereunder shall be given in writing and shall be deemed effectively given (except to the extent that this Agreement provides for effectiveness only upon actual receipt of such notice) upon personal delivery, electronic delivery at the e-mail address, if any, provided for the Participant by a Participating Company, or upon deposit in the U.S. Post Office or foreign postal service, by registered or certified mail, or with a nationally recognized overnight courier service, with postage and fees prepaid, addressed to the other party at the address of such party set forth in the Grant Notice or at such other address as such party may designate in writing from time to time to the other party.

(a)    Description of Electronic Delivery. The Plan documents, which may include but do not necessarily include: the Plan, the Grant Notice, this Agreement, and any reports of the Company provided generally to the Company’s stockholders, may be delivered to the Participant electronically. In addition, if permitted by the Company, the parties may deliver electronically any notices called for in connection with the Escrow and the Participant may deliver electronically the Grant Notice to the Company or to such third party involved in administering the Plan as the Company may designate from time to time. Such means of electronic delivery may include but do not necessarily include the delivery of a link to a Company intranet or the Internet site of a third party involved in administering the Plan, the delivery of the document via e-mail or such other means of electronic delivery specified by the Company.

(b)    Consent to Electronic Delivery. The Participant acknowledges that the Participant has read Section 13.5(a) of this Agreement and consents to the electronic delivery of the Plan documents and, if permitted by the Company, the delivery of the Grant Notice and notices in connection with the Escrow, as described in Section 13.5(a). The Participant acknowledges that he or she may receive from the Company a paper copy of any documents delivered electronically at no cost to the Participant by contacting the Company by telephone or in writing. The Participant further acknowledges that the Participant will be provided with a paper copy of any documents if the attempted electronic delivery of such documents fails. Similarly, the Participant understands that the Participant must provide the Company or any designated third party administrator with a paper copy of any documents if the attempted electronic delivery of such documents fails. The Participant may revoke his or her consent to the electronic delivery of documents described in Section 13.5(a) or may change the electronic mail address to which such documents are to be delivered (if Participant has provided an electronic mail address) at any time by notifying the Company of such revoked consent or revised e-mail address by telephone, postal service or electronic mail. Finally, the Participant understands that he or she is not required to consent to electronic delivery of documents described in Section 13.5(a).

13.6    Integrated Agreement. The Grant Notice, this Agreement and the Plan, together with the Superseding Agreement, if any, shall constitute the entire understanding and agreement of the Participant and the Participating Company Group with respect to the subject matter contained herein or therein and supersede any prior agreements, understandings, restrictions, representations, or warranties among the Participant and the Participating Company Group with respect to such subject matter. To the extent contemplated herein or therein, the provisions of the Grant Notice, this Agreement and the Plan shall survive any settlement of the Award and shall remain in full force and effect.

13.7    Applicable Law. This Agreement shall be governed by the laws of the State of Delaware as such laws are applied to agreements between Delaware residents entered into and to be performed entirely within the State of Delaware.

13.8    Counterparts. The Grant Notice may be executed in counterparts, each of which shall be deemed an original, but all of which together shall constitute one and the same instrument.

EX-10.3 4 nvee-20231230xex103.htm EX-10.3 Document

Exhibit 10.3


NV5 GLOBAL, INC.
RESTRICTED STOCK UNITS AGREEMENT
(Non-Employee Director)

NV5 Global, Inc. (the “Company”) has granted to the Participant named in the Notice of Grant of Restricted Stock Units (the Grant Notice) to which this Restricted Stock Units Agreement (the Agreement) is attached an Award consisting of Restricted Stock Units subject to the terms and conditions set forth in the Grant Notice and this Agreement. The Award has been granted pursuant to and shall in all respects be subject to the terms and conditions of the NV5 Global, Inc. 2023 Equity Incentive Plan (the Plan), the provisions of which are incorporated herein by reference. By signing the Grant Notice, the Participant: (a) acknowledges receipt of and represents that the Participant has read and is familiar with the Grant Notice, this Agreement, the Plan and a prospectus for the Plan prepared in connection with the registration with the Securities and Exchange Commission of the shares issuable pursuant to the Award (the Plan Prospectus), (b) accepts the Award subject to all of the terms and conditions of the Grant Notice, this Agreement and the Plan, and (c) agrees to accept as binding, conclusive, and final all decisions or interpretations of the Compensation Committee of the Company’s Board of Directors (the “Committee”) upon any questions arising under the Grant Notice, this Agreement or the Plan.

1.    Definitions and Construction.

1.1    Definitions. Unless otherwise defined herein, capitalized terms shall have the meanings assigned to such terms in the Grant Notice or the Plan.

(a)    Dividend Equivalent Units mean additional Restricted Stock Units credited pursuant to Section 3.3.

(b)    Units mean the Restricted Stock Units originally granted pursuant to the Award and the Dividend Equivalent Units credited pursuant to the Award, as both shall be adjusted from time to time pursuant to Section 9.

1.2    Construction. Captions and titles contained herein are for convenience only and shall not affect the meaning or interpretation of any provision of this Agreement. Except when otherwise indicated by the context, the singular shall include the plural and the plural shall include the singular. Use of the term “or” is not intended to be exclusive, unless the context clearly requires otherwise.

2.    Administration.

All questions of interpretation concerning the Grant Notice, this Agreement, the Plan, or any other form of agreement or other document employed by the Company in the administration of the Plan, or the Award shall be determined by the Committee. All such determinations by the Committee shall be final, binding, and conclusive upon all persons having an interest in the Award, unless fraudulent or made in bad faith. Any and all actions, decisions, and determinations taken or made by the Committee in the exercise of its discretion pursuant to the Plan or the Award or other agreement thereunder (other than determining questions of interpretation pursuant to the preceding sentence) shall be final, binding, and conclusive upon all persons having an interest in the Award. Any Officer shall have the authority to act on behalf of the Company with respect to any matter, right, obligation, or election which is the responsibility of or which is allocated to the Company herein, provided the Officer has apparent authority with respect to such matter, right, obligation, or election.

3.    The Award.

3.1    Grant of Units. On the Date of Grant, the Participant shall acquire, subject to the provisions of this Agreement, the Total Number of Units set forth in the Grant Notice, subject to adjustment as provided in Section 3.3 and Section 9. Each Unit represents a right to receive on a date determined in accordance with the Grant Notice and this Agreement one (1) share of Stock.

3.2    No Monetary Payment Required. The Participant is not required to make any monetary payment (other than applicable tax withholding, if any) as a condition to receiving the Units or shares of Stock issued upon settlement of the Units, the consideration for which shall be past services actually rendered, or future services to be rendered to a Participating Company or for its benefit. Notwithstanding the foregoing, if required by applicable law, the Participant shall furnish consideration in the form of cash or past services rendered to a Participating Company or for its benefit having a value not less than the par value of the shares of Stock issued upon settlement of the Units.

3.3    Dividend Equivalent Units. On the date that the Company pays a cash dividend to holders of Stock generally, the Participant shall be credited with a number of additional whole Dividend Equivalent Units determined by dividing (a) the product of (i) the dollar amount of the cash dividend paid per share of Stock on such date and (ii) the number of



Units which have not been settled or forfeited pursuant to the Company Reacquisition Right (as defined below) as of such date, by (b) the Fair Market Value per share of Stock on such date. Any resulting fractional Dividend Equivalent Unit shall be rounded to the nearest whole number. Such additional Dividend Equivalent Units shall be subject to the same terms and conditions and shall be settled or forfeited in the same manner and at the same time as the Units with respect to which they have been credited.

4.    Vesting of Units.

4.1    Normal Vesting. Except as provided by Section 4.2, Units acquired pursuant to this Agreement shall become Vested Units as provided in the Grant Notice. Dividend Equivalent Units shall become Vested Units at the same time as the Units with respect to which they have been credited. For purposes of determining the number of Vested Units following an Ownership Change Event, credited Service shall include all Service with any corporation which is a Participating Company at the time the Service is rendered, whether or not such corporation is a Participating Company both before and after the Ownership Change Event.

4.2    Acceleration of Vesting Upon a Change in Control. In the event of a Change in Control, and provided that the Participant’s Service has not terminated prior to the date of consummation of the Change in Control, all unvested Units shall become Vested Units.

5.    Company Reacquisition Right.

5.1    Grant of Company Reacquisition Right. Except to the extent otherwise provided by the Superseding Agreement, if any, in the event that the Participant’s Service terminates for any reason or no reason, with or without cause, the Participant shall forfeit and the Company shall automatically reacquire all Units which are not, as of the time of such termination, Vested Units (“Unvested Units”), and the Participant shall not be entitled to any payment therefor (the “Company Reacquisition Right”).

5.2    Ownership Change Event, Non-Cash Dividends, Distributions, and Adjustments. Upon the occurrence of an Ownership Change Event, a dividend or distribution to the stockholders of the Company paid in shares of Stock or other property, or any other adjustment upon a change in the capital structure of the Company as described in Section 9, any and all new, substituted or additional securities or other property (other than regular, periodic cash dividends paid on Stock pursuant to the Company’s dividend policy, which shall be treated in accordance with Section 3.3) to which the Participant is entitled by reason of the Participant’s ownership of Unvested Units shall be immediately subject to the Company Reacquisition Right and included in the terms “Units” and “Unvested Units” for all purposes of the Company Reacquisition Right with the same force and effect as the Unvested Units immediately prior to the Ownership Change Event, dividend, distribution or adjustment, as the case may be. For purposes of determining the number of Vested Units following an Ownership Change Event, dividend, distribution or adjustment, credited Service shall include all Service with any corporation which is a Participating Company at the time the Service is rendered, whether or not such corporation is a Participating Company both before and after any such event.

6.    Settlement of the Award.

6.1    Issuance of Shares of Stock. Subject to the provisions of Section 6.3, the Company shall issue to the Participant on the Settlement Date with respect to each Vested Unit to be settled on such date one (1) share of Stock. Shares of Stock issued in settlement of Units shall not be subject to any restriction on transfer other than any such restriction as may be required pursuant to Section 6.3, Section 7 or the Company’s Trading Compliance Policy.

6.2    Beneficial Ownership of Shares; Certificate Registration. The Participant hereby authorizes the Company, in its sole discretion, to deposit any or all shares acquired by the Participant pursuant to the settlement of the Award with the Company’s transfer agent, including any successor transfer agent, to be held in book entry form, or to deposit such shares for the benefit of the Participant with any broker with which the Participant has an account relationship of which the Company has notice. Except as provided by the foregoing, a certificate for the shares acquired by the Participant shall be registered in the name of the Participant, or, if applicable, in the names of the heirs of the Participant.

6.3    Restrictions on Grant of the Award and Issuance of Shares. The grant of the Award and issuance of shares of Stock upon settlement of the Award shall be subject to compliance with all applicable requirements of federal, state, or foreign law with respect to such securities. No shares of Stock may be issued hereunder if the issuance of such shares would constitute a violation of any applicable federal, state, or foreign securities laws or other law or regulations or the requirements of any stock exchange or market system upon which the Stock may then be listed. The inability of the Company to obtain from any regulatory body having jurisdiction the authority, if any, deemed by the Company’s legal counsel to be necessary to the lawful issuance of any shares subject to the Award shall relieve the Company of any liability in respect of the failure to issue such shares as to which such requisite authority shall not have been obtained. As a condition to the settlement of



the Award, the Company may require the Participant to satisfy any qualifications that may be necessary or appropriate, to evidence compliance with any applicable law or regulation and to make any representation or warranty with respect thereto as may be requested by the Company.

6.4    Fractional Shares. The Company shall not be required to issue fractional shares upon the settlement of the Award.

7.    Tax Withholding.

7.1    In General. At the time the Grant Notice is executed, or at any time thereafter as requested by a Participating Company, the Participant hereby authorizes withholding from payroll and any other amounts payable to the Participant, and otherwise agrees to make adequate provision for, any sums required to satisfy the federal, state, local and foreign tax (including any social insurance) withholding obligations of the Participating Company, if any, which arise in connection with the Award, the vesting of Units or the issuance of shares of Stock in settlement thereof. The Company shall have no obligation to deliver shares of Stock until the tax withholding obligations of the Participating Company have been satisfied by the Participant.

7.2    Assignment of Sale Proceeds. Subject to compliance with applicable law and the Company’s Trading Compliance Policy, if permitted by the Company, the Participant may satisfy the Participating Company’s tax withholding obligations in accordance with procedures established by the Company providing for delivery by the Participant to the Company or a broker approved by the Company of properly executed instructions, in a form approved by the Company, providing for the assignment to the Company of the proceeds of a sale with respect to some or all of the shares being acquired upon settlement of Units.

7.3    Withholding in Shares. The Company shall have the right, but not the obligation, to require the Participant to satisfy all or any portion of a Participating Company’s tax withholding obligations by deducting from the shares of Stock otherwise deliverable to the Participant in settlement of the Award a number of whole shares having a fair market value, as determined by the Company as of the date on which the tax withholding obligations arise, not in excess of the amount of such tax withholding obligations determined by the applicable minimum statutory withholding rates.

8.    Effect of Change in Control.

In the event of a Change in Control, except to the extent that the Committee determines to cash out the Award in accordance with Section 13.1(c) of the Plan, the surviving, continuing, successor, or purchasing entity or parent thereof, as the case may be (the “Acquiror”), may, without the consent of the Participant, assume or continue in full force and effect the Company’s rights and obligations under all or any portion of the outstanding Units or substitute for all or any portion of the outstanding Units substantially equivalent rights with respect to the Acquiror’s stock. For purposes of this Section, a Unit shall be deemed assumed if, following the Change in Control, the Unit confers the right to receive, subject to the terms and conditions of the Plan and this Agreement, the consideration (whether stock, cash, other securities or property or a combination thereof) to which a holder of a share of Stock on the effective date of the Change in Control was entitled (and if holders were offered a choice of consideration, the type of consideration chosen by the holders of a majority of the outstanding shares of Stock); provided, however, that if such consideration is not solely common stock of the Acquiror, the Committee may, with the consent of the Acquiror, provide for the consideration to be received upon settlement of the Unit to consist solely of common stock of the Acquiror equal in Fair Market Value to the per share consideration received by holders of Stock pursuant to the Change in Control. The Award shall terminate and cease to be outstanding effective as of the time of consummation or the Change in Control to the extent that Units subject to the Award are neither assumed or continued by the Acquiror in connection with the Change in Control nor settled as of the time of the Change in Control.

9.    Adjustments for Changes in Capital Structure.

Subject to any required action by the stockholders of the Company and the requirements of Section 409A of the Code to the extent applicable, in the event of any change in the Stock effected without receipt of consideration by the Company, whether through merger, consolidation, reorganization, reincorporation, recapitalization, reclassification, stock dividend, stock split, reverse stock split, split-up, split-off, spin-off, combination of shares, exchange of shares, or similar change in the capital structure of the Company, or in the event of payment of a dividend or distribution to the stockholders of the Company in a form other than Stock (other than regular, periodic cash dividends paid on Stock pursuant to the Company’s dividend policy) that has a material effect on the Fair Market Value of shares of Stock, appropriate and proportionate adjustments shall be made in the number of Units subject to the Award and/or the number and kind of shares or other property to be issued in settlement of the Award, in order to prevent dilution or enlargement of the Participant’s rights under the Award. For purposes of the foregoing, conversion of any convertible securities of the Company shall not be treated as “effected without receipt of consideration by the Company.” Any and all new, substituted or additional securities or other property (other than regular, periodic cash dividends paid on Stock pursuant to the Company’s dividend policy, which shall be treated in accordance



with Section 3.3) to which the Participant is entitled by reason of ownership of Units acquired pursuant to this Award will be immediately subject to the provisions of this Award on the same basis as all Units originally acquired hereunder. Any fractional Unit or share resulting from an adjustment pursuant to this Section shall be rounded down to the nearest whole number. Such adjustments shall be determined by the Committee, and its determination shall be final, binding and conclusive.

10.    Rights as a Stockholder, Director, Employee or Consultant.

The Participant shall have no rights as a stockholder with respect to any shares which may be issued in settlement of this Award until the date of the issuance of such shares (as evidenced by the appropriate entry on the books of the Company or of a duly authorized transfer agent of the Company). No adjustment shall be made for dividends, distributions, or other rights for which the record date is prior to the date the shares are issued, except as provided in Section 3.3 and Section 9. If the Participant is an Employee , the Participant understands and acknowledges that, except as otherwise provided in a separate, written employment agreement between a Participating Company and the Participant, the Participant’s employment is “at will” and is for no specified term. Nothing in this Agreement shall confer upon the Participant any right to continue in the Service of a Participating Company or interfere in any way with any right of the Participating Company Group to terminate the Participant’s Service at any time.

11.    Legends.

The Company may at any time place legends referencing any applicable federal, state or foreign securities law restrictions on all certificates representing shares of stock issued pursuant to this Agreement. The Participant shall, at the request of the Company, promptly present to the Company any and all certificates representing shares acquired pursuant to this Award in the possession of the Participant in order to carry out the provisions of this Section.

12.    Compliance with Section 409A.

It is intended that any election, payment or benefit which is made or provided pursuant to or in connection with this Award that may result in Section 409A Deferred Compensation shall comply in all respects with the applicable requirements of Section 409A (including applicable regulations or other administrative guidance thereunder, as determined by the Committee in good faith) to avoid the unfavorable tax consequences provided therein for non‑compliance. In connection with effecting such compliance with Section 409A, the following shall apply:

12.1    Separation from Service; Required Delay in Payment to Specified Employee. Notwithstanding anything set forth herein to the contrary, no amount payable pursuant to this Agreement on account of the Participant’s termination of Service which constitutes a “deferral of compensation” within the meaning of the Treasury Regulations issued pursuant to Section 409A of the Code (the “Section 409A Regulations”) shall be paid unless and until the Participant has incurred a “separation from service” within the meaning of the Section 409A Regulations. Furthermore, to the extent that the Participant is a “specified employee” within the meaning of the Section 409A Regulations as of the date of the Participant’s separation from service, no amount that constitutes a deferral of compensation which is payable on account of the Participant’s separation from service shall be paid to the Participant before the date (the “Delayed Payment Date”) which is first day of the seventh month after the date of the Participant’s separation from service or, if earlier, the date of the Participant’s death following such separation from service. All such amounts that would, but for this Section, become payable prior to the Delayed Payment Date will be accumulated and paid on the Delayed Payment Date.

12.2    Other Changes in Time of Payment. Neither the Participant nor the Company shall take any action to accelerate or delay the payment of any benefits under this Agreement in any manner which would not be in compliance with the Section 409A Regulations.

12.3    Amendments to Comply with Section 409A; Indemnification. Notwithstanding any other provision of this Agreement to the contrary, the Company is authorized to amend this Agreement, to void or amend any election made by the Participant under this Agreement and/or to delay the payment of any monies and/or provision of any benefits in such manner as may be determined by the Company, in its discretion, to be necessary or appropriate to comply with the Section 409A Regulations without prior notice to or consent of the Participant. The Participant hereby releases and holds harmless the Company, its directors, officers and stockholders from any and all claims that may arise from or relate to any tax liability, penalties, interest, costs, fees or other liability incurred by the Participant in connection with the Award, including as a result of the application of Section 409A.

12.4    Advice of Independent Tax Advisor. The Company has not obtained a tax ruling or other confirmation from the Internal Revenue Service with regard to the application of Section 409A to the Award, and the Company does not represent or warrant that this Agreement will avoid adverse tax consequences to the Participant, including as a result of the application of Section 409A to the Award. The Participant hereby acknowledges that he or she has been advised to seek the



advice of his or her own independent tax advisor prior to entering into this Agreement and is not relying upon any representations of the Company or any of its agents as to the effect of or the advisability of entering into this Agreement.

13.    Miscellaneous Provisions.

13.1    Termination or Amendment. The Committee may terminate or amend the Plan or this Agreement at any time; provided, however, that except as provided in Section 8 in connection with a Change in Control, no such termination or amendment may have a materially adverse effect on the Participant’s rights under this Agreement without the consent of the Participant unless such termination or amendment is necessary to comply with applicable law or government regulation, including, but not limited to, Section 409A. No amendment or addition to this Agreement shall be effective unless in writing.

13.2    Nontransferability of the Award. Prior to the issuance of shares of Stock on the applicable Settlement Date, neither this Award nor any Units subject to this Award shall be subject in any manner to anticipation, alienation, sale, exchange, transfer, assignment, pledge, encumbrance, or garnishment by creditors of the Participant or the Participant’s beneficiary, except transfer by will or by the laws of descent and distribution. All rights with respect to the Award shall be exercisable during the Participant’s lifetime only by the Participant or the Participant’s guardian or legal representative.

13.3    Further Instruments. The parties hereto agree to execute such further instruments and to take such further action as may reasonably be necessary to carry out the intent of this Agreement.

13.4    Binding Effect. This Agreement shall inure to the benefit of the successors and assigns of the Company and, subject to the restrictions on transfer set forth herein, be binding upon the Participant and the Participant’s heirs, executors, administrators, successors, and assigns.

13.5    Delivery of Documents and Notices. Any document relating to participation in the Plan or any notice required or permitted hereunder shall be given in writing and shall be deemed effectively given (except to the extent that this Agreement provides for effectiveness only upon actual receipt of such notice) upon personal delivery, electronic delivery at the e-mail address, if any, provided for the Participant by a Participating Company, or upon deposit in the U.S. Post Office or foreign postal service, by registered or certified mail, or with a nationally recognized overnight courier service, with postage and fees prepaid, addressed to the other party at the address of such party set forth in the Grant Notice or at such other address as such party may designate in writing from time to time to the other party.

(a)    Description of Electronic Delivery. The Plan documents, which may include but do not necessarily include: the Plan, the Grant Notice, this Agreement, the Plan Prospectus, and any reports of the Company provided generally to the Company’s stockholders, may be delivered to the Participant electronically. In addition, if permitted by the Company, the Participant may deliver electronically the Grant Notice to the Company or to such third party involved in administering the Plan as the Company may designate from time to time. Such means of electronic delivery may include but do not necessarily include the delivery of a link to a Company intranet or the Internet site of a third party involved in administering the Plan, the delivery of the document via e-mail or such other means of electronic delivery specified by the Company.

(b)    Consent to Electronic Delivery. The Participant acknowledges that the Participant has read Section 13.5(a) of this Agreement and consents to the electronic delivery of the Plan documents and, if permitted by the Company, the delivery of the Grant Notice, as described in Section 13.5(a). The Participant acknowledges that he or she may receive from the Company a paper copy of any documents delivered electronically at no cost to the Participant by contacting the Company by telephone or in writing. The Participant further acknowledges that the Participant will be provided with a paper copy of any documents if the attempted electronic delivery of such documents fails. Similarly, the Participant understands that the Participant must provide the Company or any designated third-party administrator with a paper copy of any documents if the attempted electronic delivery of such documents fails. The Participant may revoke his or her consent to the electronic delivery of documents described in Section 13.5(a) or may change the electronic mail address to which such documents are to be delivered (if Participant has provided an electronic mail address) at any time by notifying the Company of such revoked consent or revised e-mail address by telephone, postal service or electronic mail. Finally, the Participant understands that he or she is not required to consent to electronic delivery of documents described in Section 13.5(a).

13.6    Integrated Agreement. The Grant Notice, this Agreement, and the Plan, together with the Superseding Agreement, if any, shall constitute the entire understanding and agreement of the Participant and the Participating Company Group with respect to the subject matter contained herein or therein and supersede any prior agreements, understandings, restrictions, representations, or warranties among the Participant and the Participating Company Group with respect to such subject matter. To the extent contemplated herein or therein, the provisions of the Grant Notice, this Agreement and the Plan shall survive any settlement of the Award and shall remain in full force and effect.




13.7    Applicable Law. This Agreement shall be governed by the laws of the State of Delaware as such laws are applied to agreements between Delaware residents entered and to be performed entirely within the State of Delaware.

13.8    Counterparts. The Grant Notice may be executed in counterparts, each of which shall be deemed an original, but all of which together shall constitute one and the same instrument.



EX-21.1 5 nvee-20231230xex211.htm EX-21.1 Document

Exhibit 21.1
LIST OF SUBSIDIARIES
OF
NV5 GLOBAL, INC.
Name of SubsidiaryState or other Jurisdiction of Incorporation or OrganizationParentNames under which such Subsidiaries Do Business
NV5 Holdings, Inc.DelawareNV5 Global, Inc.NV5
NV5, Inc.CaliforniaNV5 Global, Inc.NV5
Global Realty Services, GRS
NV5 West, Inc.DelawareNV5 Global, Inc.NV5
NV5, Inc.DelawareNV5 Global, Inc.NV5
NV5 Northeast, Inc.DelawareNV5 Global, Inc.NV5
NV5, LLCNorth CarolinaNV5 Global, Inc.AK Environmental
NV5 Consultants, Inc.MassachusettsNV5 Global, Inc.Joslin Lesser & Associates
NV5, Inc.New JerseyNV5 Global, Inc.RBA,
NV5 New York-Engineers, Architects, Landscape Architects and Surveyors;
NV5-Connecticut,
NV5-Architecture
NV5 Consultants, Inc.Minnesota NV5 Global, Inc.NV5
Sebesta
Dade Moeller and Associates, Inc.
North CarolinaNV5 Global, Inc.NV5
J.B.A. Consulting Engineers, Inc.
NevadaNV5 Global, Inc.NV5
JBA Consulting Engineers (Asia) Limited
Hong KongNV5 Global, Inc.NV5
JBA Consulting Engineers (Asia) Limited
MacauNV5 Global, Inc.NV5
Hanna Engineering, Inc.CaliforniaNV5 Global, Inc.NV5
CivilSource, Inc.CaliforniaNV5 Global, Inc.NV5



Bock and Clark CorporationDelawareNV5 Global, Inc.NV5
Holdrege and Kull Consulting Engineers and GeologistsCaliforniaNV5 Global, Inc.NV5
Energenz Consulting LTDHong KongNV5 Global, Inc.NV5
Energenz Consulting, LLCDelawareNV5 Global, Inc.NV5
NV5 Planning and Design, Inc.MassachusettsNV5 Global, Inc.RDK,
RDK Engineers
Marron and Associates, Inc.New MexicoNV5 Global, Inc.NV5
NV5 LTD (HK)Hong KongNV5 Global, Inc.CSA
NV5 Engineers and Consultants, Inc.North CarolinaNV5 Global, Inc.Calyx, TerraTech
CHI Engineering Services IncorporatedNew HampshireNV5 Global, Inc.CHI
The Sextant Group, Inc.PennsylvaniaNV5 Global, Inc.NV5
Alta Environmental, L.P.CaliforniaNV5 Global, Inc.NV5
GeoDesign, Inc.OregonNV5 Global, Inc.NV5
WHPacific, Inc.AlaskaNV5 Global, Inc.NV5
Geospatial Holdings, Inc.DelawareNV5 Global, Inc.NV5
Aero-Metric Holdings CorpIndianaNV5 Global, Inc.NV5

NV5 Geospatial, Inc. WisconsinNV5 Global, Inc.NV5
Quantum Spatial, Inc.
NV5 Consultants India Private LimitedIndiaNV5 Global, Inc.NV5
Quantum Spatial, Inc.
Quantum Spatial CanadaCanadaNV5 Global, Inc.NV5

Mediatech FZ, LLCDubai, UAENV5 Global, Inc.NV5




The NV5 Information Technology Consultants, LLCDubai, UAENV5 Global, Inc.NV5
Mediatech
NV5 Malaysia, SDN, BHDMalaysiaNV5 Global, Inc.NV5
Industrial Design Associates International (Hong Kong) LimitedHong KongNV5 Global, Inc.NV5
IDA Engineering Private Limited (India)IndiaNV5 Global, Inc.NV5
Industrial Design Associates International PTE. LTD.SingaporeNV5 Global, Inc.NV5
Geodynamics, LLCNorth CarolinaNV5 Global, Inc.NV5
PES Environmental, Inc.CaliforniaNV5 Global, Inc.NV5
Sage Renewable Energy Consulting, Inc.CaliforniaNV5 Global, Inc.NV5
AT Advanced Technologies Asia Pacific Pte. Ltd.SingaporeNV5 Global, Inc.NV5
Optimal Energy, LLCDelawareNV5 Global, Inc.NV5
Continental Mapping Acquisition Corp.Delaware NV5 Global, Inc.NV5
Axim Geospatial, LLCDelawareNV5 Global, Inc.NV5
Geographic Information Services, Inc. AlabamaNV5 Global, Inc.NV5
TSG Solutions, Inc.DelawareNV5 Global, Inc.NV5
NV5 Geospatial Solutions, Inc.ColoradoNV5 Global, Inc.NV5
NV5 Geospatial Solutions UK LimitedUKNV5 Global, Inc.NV5
NV5 Geospatial Solutions KKJapanNV5 Global, Inc.NV5
NV5 Geospatial Solutions Italia s.r.l.ItalyNV5 Global, Inc.NV5
NV5 Geospatial Solutions GmbHGermanyNV5 Global, Inc.NV5
NV5 Geospatial Solutions France SARLFranceNV5 Global, Inc.NV5




NV5 Geospatial Solutions B.V.NetherlandsNV5 Global, Inc.NV5
Geospatial Holdings, GmbHGermanyNV5 Global, Inc.NV5
Red Technologies (S) Pte. Ltd.Singapore NV5 Global, Inc.NV5
Red Group (M) Sdn. Bhd.Malaysia NV5 Global, Inc.NV5
NV5 Philippines CorpPhilippines NV5 Global, Inc.NV5

As of December 30, 2023. Pursuant to Item 601(b)(21)(ii) of Regulation S-K, the names of other subsidiaries of NV5 Global, Inc. are omitted because, considered in the aggregate, they would not constitute a significant subsidiary as of the end of the year covered by this report.
EX-23.1 6 nvee-20231230xex231.htm EX-23.1 Document
        
Exhibit 23.1

CONSENT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM

We consent to the incorporation by reference in Registration Statement Nos. 333‑212149 and 333-271873 on Form S-3 and Registration Statement Nos. 333-187963, 333‑212150, 333‑212159, 333-233627, and 333-272900 on Form S‑8 of our reports dated February 23, 2024, relating to the financial statements of NV5 Global, Inc. and the effectiveness of NV5 Global, Inc.'s internal control over financial reporting appearing in this Annual Report on Form 10-K for the year ended December 30, 2023.

/s/ Deloitte & Touche LLP

Miami, Florida
February 23, 2024


EX-31.1 7 nvee-20231230xex311.htm EX-31.1 Document

Exhibit 31.1
CERTIFICATION
I, Dickerson Wright, certify that:
1.I have reviewed this Annual Report on Form 10-K for the fiscal year ended December 30, 2023 of NV5 Global, 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: February 23, 2024
/s/ Dickerson Wright
Dickerson Wright
Chairman & Chief Executive Officer,
(Principal Executive Officer)

EX-31.2 8 nvee-20231230xex312.htm EX-31.2 Document

Exhibit 31.2
CERTIFICATION
I, Edward H. Codispoti, certify that:
1.I have reviewed this Annual Report on Form 10-K for the fiscal year ended December 30, 2023 of NV5 Global, 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: February 23, 2024
/s/ Edward H. Codispoti
Edward H. Codispoti
Chief Financial Officer,
(Principal Financial and Accounting Officer)

EX-32.1 9 nvee-20231230xex321.htm EX-32.1 Document

Exhibit 32.1
CERTIFICATION PURSUANT TO
18 U.S.C. SECTION 1350,
AS ADOPTED PURSUANT TO
SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002
In connection with the Annual Report of NV5 Global, Inc. (the “Company”) on Form 10-K for the fiscal year ended December 30, 2023, as filed with the Securities and Exchange Commission on the date hereof (the “Report”), Dickerson Wright, Chief Executive Officer of the Company, and Edward H. Codispoti, Chief Financial Officer of the Company, each certify, to the best of his knowledge, pursuant to Rule 13a-14(b) or 15d-14(b) of the Securities Exchange Act of 1934, as amended, and 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that:
(1)The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934, as amended; and
(2)The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.
Date: February 23, 2024
/s/ Dickerson Wright
Dickerson Wright
Chairman & Chief Executive Officer
Date: February 23, 2024
/s/ Edward H. Codispoti
Edward H. Codispoti
Chief Financial Officer
This certification accompanies this Annual Report on Form 10-K pursuant to Section 906 of the Sarbanes-Oxley Act of 2002 and shall not, except to the extent required by such Act, be deemed filed by the Company for purposes of Section 18 of the Securities Exchange Act of 1934, as amended (the “Exchange Act”). Such certification will not be deemed to be incorporated by reference into any filing under the Securities Act of 1933, as amended, or the Exchange Act, except to the extent the Company specifically incorporates it by reference.
A signed original of this written statement required by Rule 13a-14(b) or 15d-14(b) of the Exchange Act and Section 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-97.1 10 nvee-20231230xex971.htm EX-97.1 Document

Exhibit 97.1

nv5pr_image1a01.gif
Clawback Policy

This Clawback Policy (this “Policy”) has been adopted by the Board of Directors (the “Board”) of NV5 Global, Inc. (the “Company”) in light of the effective date of October 10, 2023 (the “Effective Date”) of the listing requirements adopted by the NASDAQ Stock Market LLC (“NASDAQ”) in the form of Listing Rule 5608 (“Rule 5608”) that implements the incentive-based compensation recovery requirements set forth in Section 10D of the Securities Exchange Act of 1934 (the “Exchange Act”), as added by Section 954 of the Dodd-Frank Wall Street Reform and Consumer Protection Act. This Policy shall be filed as an exhibit to the Company’s Annual Report on Form 10-K pursuant to Item 601(b)(97) of Regulation S-K.

I. Recovery of Excessive Incentive-Based Compensation. In the event that following the Effective Date the Company is required to prepare an accounting restatement that (i) corrects errors that are material to previously issued financial statements or (ii) corrects errors that are not material to previously issued financial statements but would result in a material misstatement if the error were recorded in the current period or left uncorrected in the current period (either such event, a “Triggering Event”), the Company will use reasonable efforts to recover, subject to the terms of this Policy, from any current or former Officer of the Company who was paid or granted Incentive-Based Compensation on or after the Effective Date, all Excessive Incentive-Based Compensation.

II. Exceptional Circumstances. Should the recovery of Excessive Incentive-Based Compensation be impractical due to either (i) the direct expense paid to a third party to assist in enforcing the policy exceeding the amount to be recovered or (ii) such recovery causing a broad-based retirement plan to fail to meet the tax-qualification requirements of 26 U.S.C. 401(a)(13) or 26 U.S.C. 411(a), then the Board may determine not to pursue such recovery so long as the Company has made a reasonable attempt to effect such recovery and provided supporting documentation regarding such efforts to NASDAQ.

1. Definitions. For purposes of this Policy, the following terms have the meanings indicated, in addition to the other terms defined herein:

(a) “Excessive Incentive-Based Compensation” means the amount of Incentive-Based Compensation paid or granted by the Company or any subsidiary of the Company to an Officer on or after the Effective Date in excess of what would have been paid or granted to that Officer under the circumstances reflected by the accounting restatement, in the reasonable judgement of the Board.

(b) “Financial Reporting Measures” means the measures that are determined and presented in accordance with the accounting principles used in the Company’s financial statements, and any measures that are derived wholly or in part from such measures, as well as the Company’s stock price and total shareholder return.

(c) “Incentive-Based Compensation” means, with respect to any Officer, any compensation that is granted, earned, or vested based wholly or in part upon the attainment of any financial reporting measure. For purposes of clarity, equity awards that vest exclusively upon completion of a specified employment period, without any performance condition, and bonus awards that are discretionary or based on subjective goals or goals unrelated to financial reporting measures, do not constitute Incentive Based Compensation

(d) “Officer” means all individuals appointed as such for purposes of Section 16(a) of the Securities Exchange Act of 1934, as amended, by the Board of Directors.

2. Process. Following the occurrence of a Triggering Event, the Board, after considering the recommendations of the Compensation Committee of the Board, will review each Officer’s Incentive-Based Compensation and take prompt and reasonable action in accordance with this Policy to seek recovery of all Excessive Incentive-Based Compensation. There shall be no duplication of recovery under this Policy and any of 15 U.S.C. Section 7243 (Section 304 of the Sarbanes-Oxley Act of 2002) or Section 10D of the Exchange Act.

3. Interpretation of this Policy; Determinations by the Board. The Board may at any time in its sole discretion supplement or amend any provision of this Policy in any respect, repeal this Policy in whole or part or adopt a new policy relating to recovery of incentive-based compensation with such terms as the Board determines in its sole discretion to be appropriate. The Board has the exclusive power and authority to administer this Policy, including, without limitation, the right



and power to interpret the provisions of this Policy and to make all determinations deemed necessary or advisable for the administration of this Policy, including, without limitation, any determination as to (a) whether a Triggering Event has occurred; and (b) what constitutes Excessive Incentive-Based Compensation. All such actions, interpretations and determinations that are taken or made by the Board in good faith will be final, conclusive, and binding.

4. Limitation on Period for Recovery. The Board may seek recovery of any Excessive Incentive-Based Compensation received in the three (3) completed fiscal years preceding the accounting restatement if the Board determines that the Company is required to prepare the accounting restatement due to the Company’s material noncompliance with any financial reporting requirement under the U.S. federal securities laws. For purposes of determining when any such Excessive Incentive-Based Compensation was received by any Officer, Incentive-Based Compensation is deemed received in the fiscal period during which the Financial Reporting Measure specified in the Incentive-Based Compensation award is attained, even if the grant or payment of the Incentive-Based Compensation occurs after the end of that period. For Incentive-Based Compensation based on stock price or total shareholder return, the Compensation Committee of the Board of Directors can use a reasonable estimate of the effect of the restatement on the applicable measure to determine the amount to be recovered.

5. Other Recoupment Rights. The Board intends that this Policy will be applied to the fullest extent of the law. The Board may require that any employment agreement, equity award agreement, or similar agreement, as a condition to the grant of any benefit thereunder, require an Officer to agree to abide by the terms of this Policy. Any right of recoupment under this Policy is in addition to, and not in lieu of, any other remedies or rights of recoupment that may be available to the Company pursuant to the terms of any similar policy in any employment agreement, equity award agreement, or similar agreement and any other legal remedies available to the Company.

6. Effective Date. This Policy shall be effective as of the date it is adopted by the Board and shall apply to Incentive-Based Compensation that is received (as determined pursuant to Rule 5608) on or after the Effective Date.

EX-101.SCH 11 nvee-20231230.xsd XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT 0000001 - Document - Cover link:presentationLink link:calculationLink link:definitionLink 0000002 - Document - Audit Information link:presentationLink link:calculationLink link:definitionLink 0000003 - Statement - CONSOLIDATED BALANCE SHEETS link:presentationLink link:calculationLink link:definitionLink 0000004 - Statement - CONSOLIDATED BALANCE SHEETS (Parentheticals) link:presentationLink link:calculationLink link:definitionLink 0000005 - Statement - CONSOLIDATED STATEMENTS OF NET INCOME AND COMPREHENSIVE INCOME link:presentationLink link:calculationLink link:definitionLink 0000006 - Statement - CONSOLIDATED STATEMENTS OF CHANGES IN STOCKHOLDERS’ EQUITY link:presentationLink link:calculationLink link:definitionLink 0000007 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS link:presentationLink link:calculationLink link:definitionLink 0000008 - Disclosure - Organization and Nature of Business Operations link:presentationLink link:calculationLink link:definitionLink 0000009 - Disclosure - Summary of Significant Accounting Policies link:presentationLink link:calculationLink link:definitionLink 0000010 - Disclosure - Recently Issued Accounting Pronouncements link:presentationLink link:calculationLink link:definitionLink 0000011 - Disclosure - Earnings per Share link:presentationLink link:calculationLink link:definitionLink 0000012 - Disclosure - Stockholders' Equity link:presentationLink link:calculationLink link:definitionLink 0000013 - Disclosure - Business Acquisitions link:presentationLink link:calculationLink link:definitionLink 0000014 - Disclosure - Billed and Unbilled Receivables link:presentationLink link:calculationLink link:definitionLink 0000015 - Disclosure - Property and Equipment, net link:presentationLink link:calculationLink link:definitionLink 0000016 - Disclosure - Goodwill and Intangible Assets link:presentationLink link:calculationLink link:definitionLink 0000017 - Disclosure - Accrued Liabilities link:presentationLink link:calculationLink link:definitionLink 0000018 - Disclosure - Notes Payable and Other Obligations link:presentationLink link:calculationLink link:definitionLink 0000019 - Disclosure - Contingent Consideration link:presentationLink link:calculationLink link:definitionLink 0000020 - Disclosure - Leases link:presentationLink link:calculationLink link:definitionLink 0000021 - Disclosure - Commitments and Contingencies link:presentationLink link:calculationLink link:definitionLink 0000022 - Disclosure - Stock-Based Compensation link:presentationLink link:calculationLink link:definitionLink 0000023 - Disclosure - Employee Benefit Plan link:presentationLink link:calculationLink link:definitionLink 0000024 - Disclosure - Income Taxes link:presentationLink link:calculationLink link:definitionLink 0000025 - Disclosure - Reportable Segments link:presentationLink link:calculationLink link:definitionLink 0000026 - Disclosure - Subsequent Events link:presentationLink link:calculationLink link:definitionLink 9954471 - Disclosure - Summary of Significant Accounting Policies (Policies) link:presentationLink link:calculationLink link:definitionLink 9954472 - Disclosure - Summary of Significant Accounting Policies (Tables) link:presentationLink link:calculationLink link:definitionLink 9954473 - Disclosure - Earnings per Share (Tables) link:presentationLink link:calculationLink link:definitionLink 9954474 - Disclosure - Business Acquisitions (Tables) link:presentationLink link:calculationLink link:definitionLink 9954475 - Disclosure - Billed and Unbilled Receivables (Tables) link:presentationLink link:calculationLink link:definitionLink 9954476 - Disclosure - Property and Equipment, net (Tables) link:presentationLink link:calculationLink link:definitionLink 9954477 - Disclosure - Goodwill and Intangible Assets (Tables) link:presentationLink link:calculationLink link:definitionLink 9954478 - Disclosure - Accrued Liabilities (Tables) link:presentationLink link:calculationLink link:definitionLink 9954479 - Disclosure - Notes Payable and Other Obligations (Tables) link:presentationLink link:calculationLink link:definitionLink 9954480 - Disclosure - Contingent Consideration (Tables) link:presentationLink link:calculationLink link:definitionLink 9954481 - Disclosure - Leases (Tables) link:presentationLink link:calculationLink link:definitionLink 9954482 - Disclosure - Stock-Based Compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 9954483 - Disclosure - Income Taxes (Tables) link:presentationLink link:calculationLink link:definitionLink 9954484 - Disclosure - Reportable Segments (Tables) link:presentationLink link:calculationLink link:definitionLink 9954485 - Disclosure - Summary of Significant Accounting Policies - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954486 - Disclosure - Summary of Significant Accounting Policies - Estimated Useful Lives of Property and Equipment (Details) link:presentationLink link:calculationLink link:definitionLink 9954487 - Disclosure - Summary of Significant Accounting Policies - Revenue Recognition (Details) link:presentationLink link:calculationLink link:definitionLink 9954487 - Disclosure - Summary of Significant Accounting Policies - Revenue Recognition (Details) link:presentationLink link:calculationLink link:definitionLink 9954488 - Disclosure - Earnings Per Share - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954489 - Disclosure - Earnings per Share - Schedule of Earnings Per Share, Basic and Diluted (Details) link:presentationLink link:calculationLink link:definitionLink 9954490 - Disclosure - Stockholders' Equity (Details) link:presentationLink link:calculationLink link:definitionLink 9954491 - Disclosure - Business Acquisitions - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954492 - Disclosure - Business Acquisitions - The Fair Values of Assets Acquired and Liabilities Assumed (Details) link:presentationLink link:calculationLink link:definitionLink 9954493 - Disclosure - Business Acquisitions - Results of Operations from any Business Acquired (Details) link:presentationLink link:calculationLink link:definitionLink 9954494 - Disclosure - Business Acquisitions - Pro Forma Consolidated Results of Operations (Details) link:presentationLink link:calculationLink link:definitionLink 9954495 - Disclosure - Billed and Unbilled Receivables - Summary of Billed and Unbilled Receivables (Details) link:presentationLink link:calculationLink link:definitionLink 9954496 - Disclosure - Billed and Unbilled Receivables - Activity in the Allowance for Doubtful Accounts (Details) link:presentationLink link:calculationLink link:definitionLink 9954497 - Disclosure - Property and Equipment, net - Schedule of property and equipment (Details) link:presentationLink link:calculationLink link:definitionLink 9954498 - Disclosure - Property and Equipment, net - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954499 - Disclosure - Goodwill and Intangible Assets - Schedule of Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 9954500 - Disclosure - Goodwill and Intangible Assets - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954501 - Disclosure - Goodwill and Intangible Assets - Schedule of Finite-lived Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 9954502 - Disclosure - Goodwill and Intangible Assets - Weighted Average Useful Lives of Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 9954503 - Disclosure - Goodwill and Intangible Assets - Schedule of Future Estimated Aggregate Amortization Related to Finite-lived Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 9954504 - Disclosure - Accrued Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 9954505 - Disclosure - Notes Payable and Other Obligations - Notes Payable and Other Obligations (Details) link:presentationLink link:calculationLink link:definitionLink 9954505 - Disclosure - Notes Payable and Other Obligations - Notes Payable and Other Obligations (Details) link:presentationLink link:calculationLink link:definitionLink 9954506 - Disclosure - Notes Payable and Other Obligations - Future Contractual Maturities of Long-term Debt (Details) link:presentationLink link:calculationLink link:definitionLink 9954507 - Disclosure - Notes Payable and Other Obligations - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954508 - Disclosure - Contingent Consideration (Details) link:presentationLink link:calculationLink link:definitionLink 9954509 - Disclosure - Leases - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954510 - Disclosure - Leases - Schedule of Supplemental Balance Sheet Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954511 - Disclosure - Leases - Schedule of Lease Term and Discount Rate (Details) link:presentationLink link:calculationLink link:definitionLink 9954512 - Disclosure - Leases - Schedule of Supplemental Cash Flow Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954513 - Disclosure - Leases - Schedule of Lease Cost (Details) link:presentationLink link:calculationLink link:definitionLink 9954514 - Disclosure - Leases - Schedule of Maturities of Lease Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 9954514 - Disclosure - Leases - Schedule of Maturities of Lease Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 9954515 - Disclosure - Stock-Based Compensation - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954516 - Disclosure - Stock-Based Compensation - Restricted Stock Awards (Details) link:presentationLink link:calculationLink link:definitionLink 9954517 - Disclosure - Employee Benefit Plan (Details) link:presentationLink link:calculationLink link:definitionLink 9954518 - Disclosure - Income Taxes - Income Tax Expense (Benefit) (Details) link:presentationLink link:calculationLink link:definitionLink 9954519 - Disclosure - Income Taxes - Net Deferred Income Tax Asset (Liability) (Details) link:presentationLink link:calculationLink link:definitionLink 9954520 - Disclosure - Income Taxes - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954521 - Disclosure - Income Taxes - Income Tax Expense (Benefit) Reconciliation (Details) link:presentationLink link:calculationLink link:definitionLink 9954522 - Disclosure - Income Taxes - Unrecognized Tax Liability (Details) link:presentationLink link:calculationLink link:definitionLink 9954523 - Disclosure - Reportable Segments - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954524 - Disclosure - Reportable Segments - Summarized Financial Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954525 - Disclosure - Reportable Segments - Revenue by Geographic Location (Details) link:presentationLink link:calculationLink link:definitionLink 9954526 - Disclosure - Reportable Segments - Revenue by Customer Type (Details) link:presentationLink link:calculationLink link:definitionLink 9954527 - Disclosure - Reportable Segments - Revenue by Contract Type (Details) link:presentationLink link:calculationLink link:definitionLink 9954528 - Disclosure - Subsequent Events (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 12 nvee-20231230_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 13 nvee-20231230_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 14 nvee-20231230_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT Deferred income taxes Deferred Income Taxes and Tax Credits Over-allotment Option Over-Allotment Option [Member] Entity Voluntary Filers Entity Voluntary Filers Schedule of Accrued Liabilities Schedule of Accrued Liabilities [Table Text Block] Accrued liabilities Total Accrued Liabilities, Current Measurement Period [Axis] Measurement Period [Axis] Measurement Period [Axis] Statistical Measurement [Domain] Statistical Measurement [Domain] Maximum borrowing capacity Line of Credit Facility, Maximum Borrowing Capacity Changes in operating assets and liabilities, net of impact of acquisitions: Increase (Decrease) in Operating Capital [Abstract] Cash Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents Other direct costs Other direct costs Other cost of labor directly related to good produced and service rendered. Contingent Consideration Contingencies Disclosure [Text Block] Schedule of Revenue from External Customers by Products and Services Revenue from External Customers by Products and Services [Table Text Block] Award Type [Domain] Award Type [Domain] Revenue performance obligation expected timing of satisfaction period Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period Beginning (in shares) Ending (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number Notes Payable and Other Obligations Debt Disclosure [Text Block] Statement of Stockholders' Equity [Abstract] Statement of Stockholders' Equity [Abstract] Payments to acquire businesses Payments to Acquire Businesses, Gross Schedule of the Fair Values of the Assets Acquires and Liabilities Assumed Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block] Schedule of Supplemental Cash Flow Information Leases, Supplemental Cash Flow Information [Table Text Block] Tabular disclosure of supplemental cash flow information related to operating and finance leases. Defined contribution plan Defined Contribution Plan, Employer Discretionary Contribution Amount Revolving Credit Facility Revolving Credit Facility [Member] Payment of contingent consideration with common stock Stock Issued During Period, Value, Other Deferred income tax liabilities, net Deferred Income Tax Liabilities, Net Segment Reporting [Abstract] Segment Reporting [Abstract] Accounts payable Accounts Payable, Current Computer equipment Computer equipment Computer Equipment [Member] Period Two Period Two [Member] Period Two Commitments and contingencies Commitments and Contingencies Operating Leases Lessee, Operating Lease, Liability, to be Paid, Fiscal Year Maturity [Abstract] Shares issued, price per share (in dollars per share) Shares Issued, Price Per Share Goodwill and intangible asset impairment Other Asset Impairment Charges 2028 Lessee, Operating Lease, Liability, to be Paid, Year Five Weighted Average Grant Date Fair Value Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Roll Forward] [Roll Forward] Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Roll Forward] [Roll Forward] Stockholders' Equity Equity [Text Block] Proceeds from common stock offering Proceeds from Issuance of Common Stock Schedule of Goodwill [Table] Schedule of Goodwill [Table] Geographical [Axis] Geographical [Axis] Income Taxes Income Tax Disclosure [Text Block] Industry Sector [Domain] Industry Sector [Domain] Billings in excess of costs and estimated earnings on uncompleted contracts Increase (Decrease) in Contract with Customer, Liability Restricted stock issuance, net (in shares) Stock Issued During Period, Shares, Restricted Stock Award, Net of Forfeitures Total Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, before Accumulated Depreciation and Amortization Property and equipment Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment Customer [Axis] Customer [Axis] Current liabilities: Current Liabilities, Current [Abstract] Federal Deferred Federal Income Tax Expense (Benefit) Preferred stock, par value (in dollars per share) Preferred Stock, Par or Stated Value Per Share Preferred stock, $0.01 par value; 5,000,000 shares authorized, no shares issued and outstanding Preferred Stock, Value, Issued Subsequent Event Type [Domain] Subsequent Event Type [Domain] Payments of contingent consideration Payment for Contingent Consideration Liability, Financing Activities Office leases initial term Office Leases Initial Term Office Leases Initial Term Right-of-use assets obtained in exchange for lease obligations Right-Of-Use Assets Obtained in Exchange for Lease Obligations [Abstract] Right-Of-Use Assets Obtained in Exchange for Lease Obligations Impairment, long-lived asset Impairment, Long-Lived Asset, Held-for-Use Diluted (in dollars per Share) Earnings Per Share, Diluted Property, Plant and Equipment [Table] Property, Plant and Equipment [Table] Billed receivables, net Billed receivables, net Accounts Receivable, after Allowance for Credit Loss, Current Goodwill [Roll Forward] Goodwill [Roll Forward] BTS BTS [Member] Represents the operating and reportable segment Buildings, Energy & Science (BES), which includes energy and environmental practices as well as buildings program management. Measurement Period [Domain] Measurement Period [Domain] [Domain] for Measurement Period [Axis] Revenue from contract with customer, percent of gross revenues Revenue From Contract With Customer, Percent Of Gross Revenues Revenue From Contract With Customer, Percent Of Gross Revenues Line of Credit Line of Credit [Member] Benefits Accrued Employee Benefits, Current Private sector Private Sector [Member] Information related to the private sector. Trading Symbol Trading Symbol Non-compete Non-compete Noncompete Agreements [Member] Schedule Of Allowance for Credit Losses on Financing Receivables Financing Receivable, Allowance for Credit Loss [Table Text Block] Net income Net income Net Income (Loss) Thereafter Finite-Lived Intangible Asset, Expected Amortization, after Year Five Total current liabilities Liabilities, Current 2025 Finance Lease, Liability, to be Paid, Year Two Leases Lessee, Operating Leases [Text Block] Debt covenant, liquidity availability Debt Covenant, Liquidity Availability Debt Covenant, Liquidity Availability Survey and field equipment Survey and field equipment Survey and Field Equipment [Member] Represents the property and equipment that are classified as survey and field equipment. Property and equipment, net Property and equipment, net Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, after Accumulated Depreciation and Amortization Acquired Finite-Lived Intangible Assets [Line Items] Acquired Finite-Lived Intangible Assets [Line Items] Liabilities and Stockholders’ Equity Liabilities and Equity [Abstract] Finite-Lived Intangible Assets [Line Items] Finite-Lived Intangible Assets [Line Items] Government contracts concentration risk Government Contracts Concentration Risk [Member] Finance leases Lease Obligation Incurred Stockholders’ equity: Equity, Attributable to Parent [Abstract] Concentration Risk Benchmark [Domain] Concentration Risk Benchmark [Domain] Schedule of Unrecognized Tax Benefits Roll Forward Schedule of Unrecognized Tax Benefits Roll Forward [Table Text Block] Billings in excess of costs and estimated earnings on uncompleted contracts Contract with Customer, Liability Other Other Intangible Assets [Member] Schedule of Reconciliation of The Net Income and Weighted Average Shares Outstanding for the Calculation of Basic and Diluted Earnings Per Share Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] Award vesting period Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period Proceeds from sale of assets Proceeds from Sale of Productive Assets Changes in unrecognized tax position Changes in unrecognized tax position Amount of differences between reported income tax expense (benefit) and expected income tax expense (benefit) for changes in unrecognized tax positions. Weighted average useful life Acquired Finite-Lived Intangible Assets, Weighted Average Useful Life Effect of exchange rate changes on cash and cash equivalents Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations Share Units Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward] Summary of Significant Accounting Policies Significant Accounting Policies [Text Block] Payment of contingent consideration and other obligations with common stock Payment Of Contingent Consideration And Other Obligations With Common Stock Common stock issued as payment for contingent consideration. Deferred tax liability: Deferred tax liability: Goodwill Beginning balance Ending balance Goodwill Additions for tax positions of prior years Unrecognized Tax Benefits, Increase Resulting from Prior Period Tax Positions Schedule of Property and Equipment Property, Plant and Equipment [Table Text Block] Unbilled receivables Increase Decrease In Contract With Customer From Unbilled Receivables The increase (decrease) during the reporting period of the amount of unbilled receivables from contracts with customers for work performed for which billing has not occurred, net of uncollectible accounts. Equity Components [Axis] Equity Components [Axis] Accrued operating expenses Accrued Operating Expenses Accrued Operating Expenses 2028 and thereafter Long-Term Debt, Maturity, Year Five And Thereafter Long-Term Debt, Maturity, Year Five And Thereafter Other Acquisition Other Acquisition [Member] Other Acquisition 2025 Long-Term Debt, Maturity, Year Two Other Direct Costs Other Direct Costs [Member] Other Direct Costs [Member] Entity Small Business Entity Small Business Public and quasi-public sector Public and Quasi-Public Sector [Member] Information related to the public and quasi public sector. 2027 Finite-Lived Intangible Asset, Expected Amortization, Year Four Local Phone Number Local Phone Number Billed receivables Increase (Decrease) in Accounts Receivable 2028 Finance Lease, Liability, to be Paid, Year Five Transferred at point in time Transferred at Point in Time [Member] Operating Operating Lease, Liability, Noncurrent Payments of common stock offering costs Payments of Stock Issuance Costs Depreciation expense Depreciation Debt Instrument, Name [Domain] Debt Instrument, Name [Domain] Visual Information Solutions Visual Information Solutions [Member] Visual Information Solutions Retirement Benefits [Abstract] Retirement Benefits [Abstract] Payments of debt issuance costs Payments of Debt Issuance Costs Current: Current: Income Statement Location [Axis] Income Statement Location [Axis] Schedule of Notes Payable and Other Obligations Schedule of Long-Term Debt Instruments [Table Text Block] Stock-based compensation Stock based compensation Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to share-based compensation. Schedule of Maturities of Operating Leases Lease Liabilities Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block] Cash and Cash Equivalents Cash and Cash Equivalents, Policy [Policy Text Block] Payables and Accruals [Abstract] Payables and Accruals [Abstract] Payment of contingent consideration with common stock (in shares) Stock Issued During Period, Shares, Other Schedule of Lease Cost Lease, Cost [Table Text Block] Unbilled receivables, net Unbilled receivables, net Contract with Customer, Asset, after Allowance for Credit Loss, Current Cash flows from investing activities: Net Cash Provided by (Used in) Investing Activities [Abstract] Business combination, acquisition related costs Business Combination, Acquisition Related Costs Award Type [Axis] Award Type [Axis] Antidilutive securities (in shares) Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount Granted (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period Plan Name [Domain] Plan Name [Domain] Non-cash investing and financing activities: Noncash Investing and Financing Items [Abstract] Reconciliation of Unrecognized Tax Benefits, Excluding Amounts Pertaining to Examined Tax Returns [Roll Forward] Reconciliation of Unrecognized Tax Benefits, Excluding Amounts Pertaining to Examined Tax Returns [Roll Forward] Interest expense Interest Expense ICFR Auditor Attestation Flag ICFR Auditor Attestation Flag Number of shares authorized (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized Goodwill [Line Items] Goodwill [Line Items] Operating leases Right-of-Use Asset Obtained in Exchange for Operating Lease Liability Reclassification of liability-classified awards to equity-classified awards Adjustments to Additional Paid in Capital, Other Accounts Receivable, Allowance for Credit Loss [Roll Forward] Accounts Receivable, Allowance for Credit Loss [Roll Forward] Operating Loss Carryforwards [Table] Operating Loss Carryforwards [Table] Less: Interest Lessee, Operating Lease, Liability, Undiscounted Excess Amount Use of Estimates Use of Estimates, Policy [Policy Text Block] Leases Lessee, Finance Leases [Text Block] Purchases of common stock tendered by employees to satisfy the required withholding taxes related to stock-based compensation (in shares) Purchases of Common Stock Tendered by Employees to Satisfy the Required Withholding Taxes Related to Stock-based Compensation Purchases of Common Stock Tendered by Employees to Satisfy the Required Withholding Taxes Related to Stock-based Compensation Timing of Transfer of Good or Service [Axis] Timing of Transfer of Good or Service [Axis] Schedule of Components of Income Tax Expense (benefit) Schedule of Components of Income Tax Expense (Benefit) [Table Text Block] Entity File Number Entity File Number Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table] Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table] Operating Loss Carryforwards [Line Items] Operating Loss Carryforwards [Line Items] Thereafter Lessee, Operating Lease, Liability, to be Paid, after Year Five Current portion of lease liability Operating Operating Lease, Liability, Current Schedule of Share-based Payment Arrangement, Restricted Stock Unit, Activity Share-Based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block] 2026 Long-Term Debt, Maturity, Year Three Other obligations Stock Payable [Member] Represents the stock payable. Interest on lease liabilities Finance Lease, Interest Expense Reductions for positions of prior years Unrecognized Tax Benefits, Decrease Resulting from Prior Period Tax Positions Auditor Firm ID Auditor Firm ID Amortization expense Amortization expense Amortization of Intangible Assets Entity Shell Company Entity Shell Company 2026 Lessee, Operating Lease, Liability, to be Paid, Year Three Business Acquisition, Acquiree [Domain] Business Acquisition, Acquiree [Domain] Net Amount Finite-Lived Intangible Assets, Net Property, Plant and Equipment [Line Items] Property, Plant and Equipment [Line Items] Recently Adopted Accounting Pronouncements and Accounting Pronouncements Not Yet Adopted New Accounting Pronouncements, Policy [Policy Text Block] Consideration paid (Cash, notes and/or stock) Consideration paid (Cash, Notes and/or stock) This item represents cash and common stock transferred plus the liabilities assumed on the sale date. Impaired Assets to be Disposed of by Method Other than Sale [Line Items] Impaired Assets to be Disposed of by Method Other than Sale [Line Items] Additions based on tax positions related to the current year Unrecognized Tax Benefits, Increase Resulting from Current Period Tax Positions Segment Reporting, Revenue Reconciling Item [Line Items] Segment Reporting, Revenue Reconciling Item [Line Items] Cash and cash equivalents – beginning of period Cash and cash equivalents – end of period Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents Accumulated Amortization Finite-Lived Intangible Assets, Accumulated Amortization Total leased assets Total leased assets Amount of lessee's right to use underlying assets under operating and finance leases. 2025 Lessee, Operating Lease, Liability, to be Paid, Year Two Billed receivables Accounts Receivable, before Allowance for Credit Loss Senior credit facility Senior Credit Facility [Member] Represents the senior credit facility debt instrument. Variable operating lease cost Variable Lease, Cost Operating lease cost Operating Lease, Cost Operating right of-use lease assets Operating Lease Right Of Use Asset Accumulated Amortization Represents the amount of accumulated amortization which reduces the balance of lessee's right to use underlying asset under operating lease. Common stock, shares issued (in shares) Common Stock, Shares, Issued Vested (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period Aggregate purchase price Total Consideration Business Combination, Consideration Transferred Gross profit Gross Profit Current portion of notes payable and other obligations Current portion of notes payable and other obligations Long-Term Debt and Lease Obligation, Current Security Exchange Name Security Exchange Name Total Long-Term Debt 2027 Long-Term Debt, Maturity, Year Four Accumulated other comprehensive income (loss) Accumulated Other Comprehensive Income (Loss), Net of Tax Additions for acquisitions Business Combination, Contingent Consideration, Additions for Acquisitions Represents the additions for acquisitions during the period effecting a change in the contingent consideration liability. Cost not yet recognized, term Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition Maximum Maximum [Member] Comprehensive income Comprehensive Income (Loss), Net of Tax, Attributable to Parent Accrued compensation Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Employee Compensation Schedule of Acquired Finite-Lived Intangible Asset by Major Class [Table] Schedule of Acquired Finite-Lived Intangible Asset by Major Class [Table] Weighted average vesting period Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount Document Type Document Type Income before income taxes nvee_BusinessCombinationProFormaInformationIncomeBeforeIncomeTaxesOfAcquireeSinceAcquisitionDateActual This element represents the amount of income before income taxes of the acquiree since the acquisition date included in the consolidated income statement for the reporting period. Acquisitions Goodwill, Acquired During Period Net operating loss carryforwards not subject to expiration Operating Loss Carryforward, Not Subject To Expiration Operating Loss Carryforward, Not Subject To Expiration Interest rate during period Line of Credit Facility, Interest Rate During Period Uncollateralized promissory notes Uncollateralized Promissory Note [Member] A written promise to pay a note to a third party with no attached collateral. Geographic concentration risk Geographic Concentration Risk [Member] AR Credit Agreement AR Credit Agreement [Member] AR Credit Agreement [Member] Diluted earnings per share (in dollars per Share) Business Acquisition, Pro Forma Earnings Per Share, Diluted Domestic Tax Authority Domestic Tax Authority [Member] Number of options to renew Operating Lease Number Of Options To Renew Operating Lease Number Of Options To Renew Developed technology Developed Technology [Member] Developed Technology [Member] Entity Address, Address Line One Entity Address, Address Line One Entity Address, Address Line Two Entity Address, Address Line Two Reduction of liability for payments made Business Combination, Contingent Consideration Liability Reduction Of Liability For Payments Made Represents the amount of reduction of liability for payments made, effecting a change in the contingent consideration liability during the period. 2026 Finance Lease, Liability, to be Paid, Year Three Schedule of Supplemental Balance Sheet Information Balance Sheet Classification of Operating and Finance Leases [Table Text Block] Tabular disclosure of the balance sheet classification of leased assets and liabilities under operating and finance leases. Antidilutive Securities, Name [Domain] Antidilutive Securities, Name [Domain] Subsequent Event [Table] Subsequent Event [Table] Stock-Based Compensation Share-Based Payment Arrangement [Text Block] Federal Current Federal Tax Expense (Benefit) 2024 Finance Lease, Liability, to be Paid, Year One Numerator [Abstract] Numerator [Abstract] Numerator Business Acquisition [Axis] Business Acquisition [Axis] Less: allowance for doubtful accounts Accounts Receivable, Allowance for Credit Loss, Current Subsequent Event Subsequent Event [Member] Net operating loss carryforwards Operating Loss Carryforwards Income tax penalties and interest accrued Unrecognized Tax Benefits, Income Tax Penalties and Interest Accrued Customer Concentration Risk Customer Concentration Risk [Member] State Deferred State and Local Income Tax Expense (Benefit) Schedule of Finite-lived Intangible Assets Schedule of Finite-Lived Intangible Assets [Table Text Block] Other current liabilities Other Liabilities, Current Income Statement [Abstract] Income Statement [Abstract] Gross revenues Revenue from Contract with Customer, Including Assessed Tax Contract with Customer, Basis of Pricing [Axis] Contract with Customer, Basis of Pricing [Axis] Proceeds from secondary offering, net of costs (in shares) Proceeds from secondary offering, net of costs (in shares) Stock Issued During Period, Shares, New Issues Title of 12(b) Security Title of 12(b) Security Denominator [Abstract] Denominator [Abstract] Denominator Business Acquisitions Business Combination Disclosure [Text Block] Lease liabilities Deferred Tax Assets, Lease Liabilities Deferred Tax Assets, Lease Liabilities Net income Business Acquisition, Pro Forma Net Income (Loss) Operating segments Operating Segments [Member] Beginning (in dollars per share) Ending (in dollars per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value Class of Stock [Line Items] Class of Stock [Line Items] Income Tax Disclosure [Abstract] Income Tax Disclosure [Abstract] Tax at federal statutory rate Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount Schedule of Accounts, Notes, Loans and Financing Receivable Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block] Share-based Payment Arrangement [Abstract] Share-Based Payment Arrangement [Abstract] Entity Tax Identification Number Entity Tax Identification Number Foreign Currency Translation of non-USD functional currency goodwill Goodwill, Foreign Currency Translation Gain (Loss) Total direct costs Direct Operating Costs Total lease cost Lease, Cost Statistical Measurement [Axis] Statistical Measurement [Axis] Industry Sector [Axis] Industry Sector [Axis] Entity Interactive Data Current Entity Interactive Data Current Total lease liabilities Total lease liabilities Present value of lessee's discounted obligation for lease payments from operating and finance leases. Other assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Other Noncurrent Assets Advertising Advertising Cost [Policy Text Block] Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding Goodwill and Intangible Assets Goodwill and Intangible Assets, Policy [Policy Text Block] Entity Well-known Seasoned Issuer Entity Well-known Seasoned Issuer Foreign Deferred Foreign Income Tax Expense (Benefit) Segments [Domain] Segments [Domain] Share-based Compensation Arrangement by Share-based Payment Award [Line Items] Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items] Consolidation Items [Domain] Consolidation Items [Domain] Retained earnings Retained Earnings (Accumulated Deficit) Commitments and Contingencies Disclosure [Abstract] Commitments and Contingencies Disclosure [Abstract] Revenue Recognition Revenue from Contract with Customer [Policy Text Block] Acquired intangibles Deferred Tax Liabilities, Goodwill and Intangible Assets Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code Current assets: Assets, Current [Abstract] Leases [Abstract] Leases [Abstract] Advertising expense Advertising Expense Schedule of Deferred Tax Assets and Liabilities Schedule of Deferred Tax Assets and Liabilities [Table Text Block] Entity Address, State or Province Entity Address, State or Province Schedule of Revenues from External Customers and Long-Lived Assets [Table] Schedule of Revenues from External Customers and Long-Lived Assets [Table] Total lease payments Finance Lease, Liability, to be Paid Cash flows from operating activities: Net Cash Provided by (Used in) Operating Activities [Abstract] Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] 2024 Finite-Lived Intangible Asset, Expected Amortization, Year One Operating cash flows from operating leases Operating Lease, Payments Accrued liabilities and other long-term liabilities Increase (Decrease) in Accrued Liabilities And Other Long-Term Liabilities Increase (Decrease) in Accrued Liabilities And Other Long-Term Liabilities Common stock, shares outstanding (in shares) Balance (in shares) Balance (in shares) Common Stock, Shares, Outstanding Series of Individually Immaterial Business Acquisitions Series of Individually Immaterial Business Acquisitions [Member] Concentration of Credit Risk Concentration Risk, Credit Risk, Policy [Policy Text Block] Auditor Location Auditor Location Employee Benefit Plan Retirement Benefits [Text Block] Sub-consultant services Sub-consultant services The cost of sub-consultant services. Notes payable Notes Payable Customer backlog Customer backlog Customer Lists [Member] Other Other Operating Activities, Cash Flow Statement Number of equipment operating leases Number Of Equipment Operating Leases Number Of Equipment Operating Leases State taxes, net of Federal benefit Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount Common stock, par value (in dollars per share) Common Stock, Par or Stated Value Per Share Sale of Stock [Axis] Sale of Stock [Axis] Foreign currency translation loss, net of tax Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent Net cash used in investing activities Net Cash Provided by (Used in) Investing Activities Customer [Domain] Customer [Domain] Net income – basic Net Income (Loss) Available to Common Stockholders, Basic Revenues from External Customers and Long-Lived Assets [Line Items] Revenues from External Customers and Long-Lived Assets [Line Items] Weighted average common shares outstanding: Weighted Average Common Shares Outstanding Debt Instrument [Axis] Debt Instrument [Axis] Gross revenues Business Combination, Pro Forma Information, Revenue of Acquiree since Acquisition Date, Actual Cost-reimbursable contracts Cost-Reimbursable Contracts [Member] Contract with customer in which amount of contract may be cost-reimbursable. Effective income tax rate percent Effective Income Tax Rate Reconciliation, Percent Present value of lease liabilities Operating Lease, Liability Credit Facility [Axis] Credit Facility [Axis] Schedule of Maturities of Long-term Debt Schedule of Maturities of Long-Term Debt [Table Text Block] Total liabilities Liabilities Total current income tax expense Current Income Tax Expense (Benefit) Direct costs: Direct Operating Costs [Abstract] Prepaid expenses and other assets Increase (Decrease) in Prepaid Expense and Other Assets AOCI Attributable to Parent AOCI Attributable to Parent [Member] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Property and Equipment, net Property, Plant and Equipment Disclosure [Text Block] Payments of borrowings from Senior Credit Facility Repayments of Long-Term Lines of Credit Noncurrent Liabilities, Noncurrent [Abstract] Other Effective Income Tax Rate Reconciliation, Other Adjustments, Amount Capitalized Research and Development Costs Deferred Tax Assets, in Process Research and Development Plan Name [Axis] Plan Name [Axis] Accrued Liabilities Accounts Payable and Accrued Liabilities Disclosure [Text Block] Property, Plant and Equipment, Type [Domain] Long-Lived Tangible Asset [Domain] Stock-based compensation expense Share-Based Payment Arrangement, Expense, Tax Benefit Basis of Presentation and Principles of Consolidation Basis of Presentation and Principles of Consolidation [Policy Text Block] Disclosure of accounting policy for the basis of presentation and principles of consolidation for the company. Earnings per share: Earnings Per Share [Abstract] Subsequent Event [Line Items] Subsequent Event [Line Items] Common stock, $0.01 par value; 45,000,000 shares authorized, 15,895,255 and 15,523,300 shares issued and outstanding as of December 30, 2023 and December 31, 2022, respectively Common Stock, Value, Issued General and administrative General and Administrative Expense Trade name Trade name Trade Names [Member] Equity plan 2011 Equity Plan 2011 [Member] Represents the 2011 equity incentive plan. Right-of-use assets Deferred Tax Liabilities, Right-Of-Use Assets Deferred Tax Liabilities, Right-Of-Use Assets Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List] Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration] State Current State and Local Tax Expense (Benefit) Total current assets Assets, Current Financing cash flows from finance leases Finance Lease, Principal Payments Weighted - Average Remaining Lease Term (Years) Weighted Average Remaining Lease Term [Abstract] Weighted Average Remaining Lease Term [Abstract] Schedule of Maturities of Finance Lease Liabilities Finance Lease, Liability, to be Paid, Maturity [Table Text Block] Earn-out of cash fair value Contingent consideration, beginning of the year Total contingent consideration, end of the period Business Combination, Contingent Consideration, Liability Supplemental disclosures of cash flow information: Supplemental Cash Flow Information Supplemental Cash Flow Information [Abstract] Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible List] Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration] Entity Filer Category Entity Filer Category Statement [Table] Statement [Table] Salaries and wages, payroll taxes, and benefits Salaries and wages, payroll taxes and benefits Labor And Related Expense Excluding Stock Based Compensation Contingent consideration, less current portion Contingent consideration, less current portion Business Combination, Contingent Consideration, Liability, Noncurrent Current Fiscal Year End Date Current Fiscal Year End Date Total notes payable and other obligations Long-Term Debt and Lease Obligation, Including Current Maturities Goodwill and Intangible Assets Goodwill and Intangible Assets Disclosure [Text Block] Recently Issued Accounting Pronouncements Accounting Standards Update and Change in Accounting Principle [Text Block] Schedule of Effective Income Tax Rate Reconciliation Schedule of Effective Income Tax Rate Reconciliation [Table Text Block] Unrecognized tax benefits Balance, beginning of period Balance, end of period Unrecognized Tax Benefits Income Tax Authority [Axis] Income Tax Authority [Axis] Concentration risk, percentage Concentration Risk, Percentage Schedule of Product Information [Table] Schedule of Product Information [Table] Preferred stock, shares authorized (in shares) Preferred Stock, Shares Authorized Granted (in dollars per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value 2028 Finite-Lived Intangible Asset, Expected Amortization, Year Five Schedule of Goodwill Schedule of Goodwill [Table Text Block] Preferred stock, shares outstanding (in shares) Preferred Stock, Shares Outstanding Tax carryforwards Deferred Tax Assets, Tax Credit Carryforwards Net operating loss carryforwards subject to expiration Operating Loss Carryforward, Subject To Expiration Operating Loss Carryforward, Subject To Expiration 2027 Finance Lease, Liability, to be Paid, Year Four Net cash provided by operating activities Net Cash Provided by (Used in) Operating Activities Schedule of Finite-fived Intangible Assets, Future Amortization Expense Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block] Current portion of contingent consideration Current portion of contingent consideration Business Combination, Contingent Consideration, Liability, Current Notes payable and other obligations issued for acquisitions Noncash or Part Noncash Acquisition, Payables Assumed Other Other Accrued Liabilities, Current Corporate Corporate, Non-Segment [Member] Covenant, net leverage ratio Line of Credit Facility, Covenant, Net Leverage Ratio Line of Credit Facility, Covenant, Net Leverage Ratio Depreciation and amortization Depreciation, Depletion and Amortization Office furniture and equipment Furniture and Fixtures [Member] Office furniture and equipment Office Furniture and Equipment [Member] Furniture and equipment commonly used in offices. Transferred over time Transferred over Time [Member] Statement of Financial Position [Abstract] Statement of Financial Position [Abstract] Period One Period One [Member] Period One Business Combination and Asset Acquisition [Abstract] Total stockholders’ equity Balance Balance Equity, Attributable to Parent Consolidation Items [Axis] Consolidation Items [Axis] Unrecognized tax benefits that would impact effective tax rate Unrecognized Tax Benefits that Would Impact Effective Tax Rate Schedule of Finite-Lived Intangible Assets [Table] Schedule of Finite-Lived Intangible Assets [Table] Gross revenues Business Acquisition, Pro Forma Revenue Restricted stock Restricted Stock [Member] Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table] Finance Leases Finance Lease, Liability, to be Paid, Fiscal Year Maturity [Abstract] Financing right of-use lease assets Finance Lease, Right-of-Use Asset, Accumulated Amortization Contract with customer liability, revenue recognized Contract with Customer, Liability, Revenue Recognized Finite-Lived Intangible Assets, Major Class Name [Domain] Finite-Lived Intangible Assets, Major Class Name [Domain] Schedule of Stock by Class [Table] Schedule of Stock by Class [Table] Concentration Risk Type [Axis] Concentration Risk Type [Axis] Subsequent Events [Abstract] Subsequent Events [Abstract] Income before income tax expense Segment income before taxes Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Notes payable and other obligations, less current portion Notes payable and other obligations, less current portion Long-Term Debt and Lease Obligation Second A&R Credit Agreement Second A&R Credit Agreement [Member] Second A&R Credit Agreement Deferred tax liabilities Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Liabilities Fair Value of Financial Instruments and Fair Value of Acquisitions Fair Value Measurement, Policy [Policy Text Block] Property, Plant and Equipment, Type [Axis] Long-Lived Tangible Asset [Axis] Depreciation and amortization Depreciation, Depletion and Amortization, Nonproduction Preferred stock, shares issued (in shares) Preferred Stock, Shares Issued Liabilities Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities Entity Emerging Growth Company Entity Emerging Growth Company Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Debt issuance costs, net of amortization Debt Issuance Costs, Net Intangible assets, net Intangible Assets, Net (Excluding Goodwill) Total deferred tax asset Deferred Tax Assets, Gross Net assets acquired Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net Increase (Decrease) in Stockholders' Equity [Roll Forward] Increase (Decrease) in Stockholders' Equity [Roll Forward] Intangible assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Finite-Lived Intangibles Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Document Fiscal Period Focus Document Fiscal Period Focus 2024 Lessee, Operating Lease, Liability, to be Paid, Year One Useful life Finite-Lived Intangible Asset, Useful Life Antidilutive Securities [Axis] Antidilutive Securities [Axis] 2027 Lessee, Operating Lease, Liability, to be Paid, Year Four Consideration of common stock Business Acquisition, Equity Interest Issued or Issuable, Value Assigned Stock-based compensation Share-Based Payment Arrangement, Noncash Expense Facilities and facilities related Operating Lease, Expense Share-based liabilities paid Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Share-Based Liabilities Paid Schedule of Revenue from External Customers by Geographic Areas Revenue from External Customers by Geographic Areas [Table Text Block] Common Stock Common Stock [Member] Foreign Tax Authority Foreign Tax Authority [Member] Income from operations Income (Loss) from Continuing Operations before Interest Expense, Interest Income, Income Taxes, Noncontrolling Interests, Net City Area Code City Area Code Entity Address, Postal Zip Code Entity Address, Postal Zip Code Earnings per Share Earnings Per Share [Text Block] Lapse of statute of limitations Unrecognized Tax Benefits, Reduction Resulting from Lapse of Applicable Statute of Limitations Income Statement Location [Domain] Income Statement Location [Domain] Document Fiscal Year Focus Document Fiscal Year Focus Weighted average interest rate (as a percent) Debt, Weighted Average Interest Rate Geographical [Domain] Geographical [Domain] Stock issuance for acquisitions Stock Issued During Period, Value, Acquisitions, Net Of Issuance Costs Stock Issued During Period, Value, Acquisitions, Net Of Issuance Costs Accrued vacation Accrued Vacation, Current Minimum Minimum [Member] Receivables [Abstract] Receivables [Abstract] Organization and Nature of Business Operations Organization, Consolidation, Basis of Presentation, Business Description and Accounting Policies [Text Block] Schedule of Acquired Finite-lived Intangible Assets by Major Class Schedule of Acquired Finite-Lived Intangible Assets by Major Class [Table Text Block] Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets by Major Class [Axis] Earn-out of cash Business Combination, Contingent Consideration Arrangements, Range of Outcomes, Value, High Statement of Cash Flows [Abstract] Statement of Cash Flows [Abstract] Assets Assets Assets [Abstract] Goodwill and Intangible Assets Disclosure [Abstract] Goodwill and Intangible Assets Disclosure [Abstract] Minimum fixed charge coverage ratio Line Of Credit Facility, Covenant, Minimum Fixed Charge Coverage Ratio The Minimum level of fixed charge coverage ratio under the line of credit facility. Contract with Customer, Basis of Pricing [Domain] Contract with Customer, Basis of Pricing [Domain] Purchases of common stock tendered by employees to satisfy the required withholding taxes related to stock-based compensation Payment, Tax Withholding, Share-Based Payment Arrangement Fiscal Year Fiscal Period, Policy [Policy Text Block] Other Deferred Tax Assets, Other Liabilities Liabilities [Abstract] Total debt issuance costs incurred and capitalized Debt Issuance Costs, Gross Net cash provided by (used in) financing activities Net Cash Provided by (Used in) Financing Activities Deferred tax asset: Deferred tax asset: Commitments and Contingencies Commitments and Contingencies Disclosure [Text Block] Unbilled receivables Contract with Customer, Asset, before Allowance for Credit Loss, Current Retained Earnings Retained Earnings [Member] Goodwill Business Acquisition, Goodwill, Expected Tax Deductible Amount Total liabilities and stockholders’ equity Liabilities and Equity Other assets Other Assets, Noncurrent Basic (in dollars per Share) Earnings Per Share, Basic Right-of-use lease assets, net Operating lease assets Operating Lease, Right-of-Use Asset Schedule of Long-term Debt Instruments [Table] Schedule of Long-Term Debt Instruments [Table] Accounting Policies [Abstract] Accounting Policies [Abstract] Contingent consideration Increase (Decrease) In Contingent Consideration Liability Increase (Decrease) In Contingent Consideration Liability Sale of Stock [Domain] Sale of Stock [Domain] Gain on disposals of property and equipment Gain (Loss) on Disposition of Assets Foreign Current Foreign Tax Expense (Benefit) GEO G E O [Member] G E O [Member] Finance Lease, Liability, Current, Statement of Financial Position [Extensible List] Finance Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration] Net income – diluted Net Income (Loss) Available to Common Stockholders, Diluted Reclassification of liability-classified awards to equity-classified awards APIC, Share-Based Payment Arrangement, Reclassifications, Increase for Cost Recognition APIC, Share-Based Payment Arrangement, Reclassifications, Increase for Cost Recognition Entity Address, City or Town Entity Address, City or Town Schedule of Segment Reporting Information, by Segment Schedule of Segment Reporting Information, by Segment [Table Text Block] INF INF [Member] Represents the operating and reportable segment Infrastructure (INF), which includes engineering, civil program management, and construction quality assurance practices. Stock issuance for acquisitions Stock Issued Cash paid for income taxes Income Taxes Paid Federal and state tax credits Effective Income Tax Rate Reconciliation, Tax Credit, Amount Operating Lease, Liability, Current, Statement of Financial Position [Extensible List] Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration] Schedule of Changes Carrying Value of Estimated Contingent Consideration Schedule of Business Acquisitions by Acquisition, Contingent Consideration [Table Text Block] Document Transition Report Document Transition Report Adjustments Purchase price adjustments Goodwill, Purchase Accounting Adjustments Business Combinations [Abstract] Business Combinations [Abstract] Developed technology Technology-Based Intangible Assets [Member] Non-cash lease expense Non-Cash Lease Expense Amount of net increase (decrease) in right-of-use assets and operating lease liabilities during the period. Accounts payable Increase (Decrease) in Accounts Payable Common stock, shares authorized (in shares) Common Stock, Shares Authorized Foreign Foreign Countries [Member] All countries other than the domestic country considered for financial reporting purposes. Payments on notes payable Repayments of Lines of Credit Entity Public Float Entity Public Float Schedule of Revenue by Major Customers by Reporting Segments Schedule of Revenue by Major Customers by Reporting Segments [Table Text Block] Right-of-use assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Right-Of-Use Assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Right-Of-Use Assets Impaired Assets to be Disposed of by Method Other than Sale [Table] Impaired Assets to be Disposed of by Method Other than Sale [Table] Property, Plant and Equipment [Abstract] Property, Plant and Equipment [Abstract] Less: allowance for doubtful accounts Contract with Customer, Asset, Allowance for Credit Loss, Current Audit Information [Abstract] Audit Information Available increase in borrowing capacity Line of Credit Facility, Available Increase in Borrowing Capacity Line of Credit Facility, Available Increase in Borrowing Capacity Long-term Debt, Gross Long-Term Debt, Gross Adjustments to reconcile net income to net cash provided by operating activities: Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Less: accumulated depreciation Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, Accumulated Depreciation and Amortization Timing of Transfer of Good or Service [Domain] Timing of Transfer of Good or Service [Domain] Total Assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets Fair value of restricted shares vested Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value Provision for doubtful accounts Provision for doubtful accounts Accounts Receivable, Credit Loss Expense (Reversal) Additional paid-in capital Additional Paid in Capital Forfeited (in dollars per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value Total deferred income tax benefit Deferred Income Tax Expense (Benefit) Subsequent Event Type [Axis] Subsequent Event Type [Axis] Increase (decrease) of liability related to re-measurement of fair value Business Combination, Contingent Consideration, Increase of Liability Related To Re-measurement of Fair Value Represents the amount of increase (reduction) of the contingent consideration liability during the period related to re-measurement of fair value. Contingent earn-out liability (Cash and stock) Business Combination, Consideration Transferred, Liabilities Incurred Public Stock Offering Public Stock Offering [Member] Public Stock Offering Finance leases Present value of lease liabilities Finance Lease, Liability Income Taxes Income Tax, Policy [Policy Text Block] Prepaid expenses and other current assets Prepaid Expense and Other Assets, Current Document Financial Statement Error Correction Document Financial Statement Error Correction [Flag] 2026 Finite-Lived Intangible Asset, Expected Amortization, Year Three Forfeited (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period Balance as of the beginning of the year Balance as of the end of the year Accounts Receivable, Allowance for Credit Loss 2024 Long-Term Debt, Maturity, Year One Entity Registrant Name Entity Registrant Name Effect of dilutive non-vested restricted shares and units (in shares) Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements 2025 Finite-Lived Intangible Asset, Expected Amortization, Year Two Stock issuance for acquisitions (in shares) Stock Issued During Period, Shares, Acquisitions Other current liabilities Increase (Decrease) in Other Current Liabilities Change in fair value of contingent consideration Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability Documents Incorporated by Reference Documents Incorporated by Reference [Text Block] Auditor Name Auditor Name Document Period End Date Document Period End Date Aggregate credit agreement Proceeds from Lines of Credit Restricted stock issuance, net Stock Issued During Period, Value, Restricted Stock Award, Net of Forfeitures Reconciliation of Revenue from Segments to Consolidated [Table] Reconciliation of Revenue from Segments to Consolidated [Table] Finance leases Finance Lease, Weighted Average Discount Rate, Percent Finance Finance Lease, Liability, Noncurrent Schedule of Proforma Consolidated Results of Operations Business Acquisition, Pro Forma Information [Table Text Block] Purchases of common stock tendered by employees to satisfy the required withholding taxes related to stock-based compensation Purchases of Common Stock Tendered by Employees to Satisfy the Required Withholding Taxes Related to Stock-based Compensation 1 Purchases of Common Stock Tendered by Employees to Satisfy the Required Withholding Taxes Related to Stock-based Compensation 1 Entity Central Index Key Entity Central Index Key Deferred compensation Share-Based Payment Arrangement, Expense Gross Carrying Amount Finite-Lived Intangible Assets, Gross Income tax expense Total income tax expense Income Tax Expense (Benefit) Write-offs of uncollectible accounts Accounts Receivable, Allowance for Credit Loss, Writeoff Billed and unbilled receivables, net Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables Effect of issuable shares related to acquisitions (in shares) Incremental Common Shares Attributable to Dilutive Effect of Contingently Issuable Shares Income Tax Authority [Domain] Income Tax Authority [Domain] Basic earnings per share (in dollars per Share) Business Acquisition, Pro Forma Earnings Per Share, Basic Finance lease assets Finance Lease, Right-of-Use Asset, after Accumulated Amortization Prepaid expenses Prepaid expenses Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, acquired at the acquisition date. Number of operating segments Number of Operating Segments Revenue benchmark Revenue Benchmark [Member] Other comprehensive income (loss) Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent Proceeds from secondary offering, net of costs Stock Issued During Period, Value, New Issues Equity [Abstract] Equity [Abstract] Operating leases Operating Lease, Weighted Average Remaining Lease Term Excess consideration over the amounts assigned to the net assets acquired (Goodwill) Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net Revenue from contract with customer Revenue from Contract with Customer, Excluding Assessed Tax Amendment Flag Amendment Flag Finite-lived intangible assets: Finite-Lived Intangible Assets, Net [Abstract] Axim Geospatial, LLC Axim Geospatial, LLC [Member] Axim Geospatial, LLC Tax credit carryforward Tax Credit Carryforward, Amount Cash and cash equivalents Cash and Cash Equivalents, at Carrying Value Cash paid for acquisitions (net of cash received from acquisitions) Payments to Acquire Businesses, Net of Cash Acquired Operating leases Operating Lease, Weighted Average Discount Rate, Percent Cash paid for interest Interest Paid, Excluding Capitalized Interest, Operating Activities Concept not found: {http://fasb.org/us-gaap/2021-01-31}CreditFacilityDomain Credit Facility [Domain] Property, plant and equipment, useful life Property, Plant and Equipment, Useful Life Finance leases Finance Lease, Weighted Average Remaining Lease Term Finance Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List] Finance Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration] Leasehold improvements Leasehold Improvements [Member] Net deferred tax liability Deferred tax liabilities, net Deferred Tax Liabilities, Net Schedule of Property Plant and Equipment, Estimated Useful Life Schedule of Property Plant and Equipment, Estimated Useful Life [Table Text Block] Tabular disclosure of the estimated useful lives of property, plant and equipment. Diluted (in shares) Diluted weighted average shares outstanding (in shares) Weighted Average Number of Shares Outstanding, Diluted Salaries and wages Cost, Direct Labor Other obligations Other Commitment Weighted - Average Discount Rate Weighted Average Discount Rate [Abstract] Weighted Average Discount Rate [Abstract] Operating expenses: Operating Expenses [Abstract] Less: Interest Finance Lease, Liability, Undiscounted Excess Amount Purchase of property and equipment Payments to Acquire Property, Plant, and Equipment Additional Paid-In Capital Additional Paid-in Capital [Member] Document Annual Report Document Annual Report Allowance for doubtful accounts Deferred Tax Asset, Tax Deferred Expense, Reserve and Accrual, Accounts Receivable, Allowance for Credit Loss Total Assets Assets Assets CALIFORNIA CALIFORNIA [Member] Represents the state of California. Thereafter Finance Lease, Liability, to be Paid, after Year Five Cover [Abstract] Cover [Abstract] Subsequent Events Subsequent Events [Text Block] Billed and Unbilled Receivables Loans, Notes, Trade and Other Receivables Disclosure [Text Block] Stock-based compensation APIC, Share-Based Payment Arrangement, Increase for Cost Recognition Amortization of debt issuance costs Amortization of Debt Issuance Costs United States UNITED STATES Number of businesses acquired Number of Businesses Acquired Other long-term liabilities Other Liabilities, Noncurrent Vested (in dollars per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value Total lease payments Lessee, Operating Lease, Liability, to be Paid Revenue remaining performance obligation amount Revenue, Remaining Performance Obligation, Amount Total operating expenses Operating Expenses Amortization of financing lease assets  Finance Lease, Right-of-Use Asset, Amortization Reportable Segments Segment Reporting Disclosure [Text Block] Net increase (decrease) in cash and cash equivalents Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect Cash flows from financing activities: Net Cash Provided by (Used in) Financing Activities [Abstract] Equity Component [Domain] Equity Component [Domain] Finance Finance Lease, Liability, Current Schedule of Lease Term and Discount Rate Lease Term and Discount Rate [Table Text Block] Tabular disclosure of the lease term and discount rate under operating and finance leases. State and local jurisdiction State and Local Jurisdiction [Member] Deferred: Deferred: Consideration transferred of common stock Business Combination, Consideration Transferred, Equity Interests Issued and Issuable Other Deferred Tax Liabilities, Other Debt Instrument [Line Items] Debt Instrument [Line Items] Basic (in shares) Basic weighted average shares outstanding (in shares) Weighted Average Number of Shares Outstanding, Basic Entity Current Reporting Status Entity Current Reporting Status Concentration Risk Type [Domain] Concentration Risk Type [Domain] Fixed-unit price contracts Fixed-Price Contract [Member] Depreciation and amortization Deferred Tax Liabilities, Property, Plant and Equipment Contingent consideration (earn-out) Contingent Consideration Earn-Out, Non-Cash Contingent Consideration Earn-Out, Non-Cash Concentration Risk Benchmark [Axis] Concentration Risk Benchmark [Axis] Number of reportable segments Number of Reporting Units Total deferred tax liability Deferred Tax Liabilities, Gross Commitments and Contingencies Disclosure [Roll Forward] Commitments and Contingencies Disclosure [Roll Forward] Commitments and Contingencies Disclosure [Roll Forward] Product Information [Line Items] Product Information [Line Items] Segments [Axis] Segments [Axis] Statement [Line Items] Statement [Line Items] Payroll and related taxes Payroll and related taxes Carrying value as of the balance sheet date of obligations incurred and payable for payroll and statutory payroll taxes incurred through that date and withheld from employees pertaining to services received from them, including entity's matching share of the employees FICA taxes and contributions to the state and federal unemployment insurance programs. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer). Property and Equipment Property, Plant and Equipment, Policy [Policy Text Block] Comprehensive income: Other Comprehensive Income (Loss), Net of Tax [Abstract] Outstanding balance Long-Term Line of Credit Customer relationships Customer relationships Customer Relationships [Member] Borrowings from Senior Credit Facility Proceeds from Long-Term Lines of Credit EX-101.PRE 15 nvee-20231230_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT GRAPHIC 16 nv5pr_image1a01.gif begin 644 nv5pr_image1a01.gif M1TE&.#EA0P M /< ,P 9@ F0 S _P K K,P K9@ KF0 K MS K_P!5 !5,P!59@!5F0!5S !5_P" " ,P" 9@" F0" S " _P"J "J M,P"J9@"JF0"JS "J_P#5 #5,P#59@#5F0#5S #5_P#_ #_,P#_9@#_F0#_ MS #__S, #, ,S, 9C, F3, S#, _S,K #,K,S,K9C,KF3,KS#,K_S-5 #-5 M,S-59C-5F3-5S#-5_S. #. ,S. 9C. F3. S#. _S.J #.J,S.J9C.JF3.J MS#.J_S/5 #/5,S/59C/5F3/5S#/5_S/_ #/_,S/_9C/_F3/_S#/__V8 &8 M,V8 9F8 F68 S&8 _V8K &8K,V8K9F8KF68KS&8K_V95 &95,V959F95F695 MS&95_V: &: ,V: 9F: F6: S&: _V:J &:J,V:J9F:JF6:JS&:J_V;5 &;5 M,V;59F;5F6;5S&;5_V;_ &;_,V;_9F;_F6;_S&;__YD )D ,YD 9ID F9D MS)D _YDK )DK,YDK9IDKF9DKS)DK_YE5 )E5,YE59IE5F9E5S)E5_YF )F M,YF 9IF F9F S)F _YFJ )FJ,YFJ9IFJF9FJS)FJ_YG5 )G5,YG59IG5F9G5 MS)G5_YG_ )G_,YG_9IG_F9G_S)G__\P ,P ,\P 9LP F

0+-,HK*\ Y65=> AP,$. [@F*2PK8.W$,<.=CIP&>*+H-(@("P1I%$' MF4H32YUQV0\$.=ZH24.;MLZ#ENN"7(HC!\K$PVIBY)U6XS(XDED++*GW91H' M/W3NC@9MW\6-;1U+=WT#AUZ(]1#O_X5S]';F-^4Q[EN=$&(H'PA\G II\WK$ MM@]P_"A,/)1&?2=-!(<,#D@7T5*-@2*1/LPE]EQT&-6SH$'1:-+8 VG,)Q<" M:33WTC#-@619&AJ! A\:S=5SV$5Q_: ?9PC58]]#H.3PP&7^1<-4<8FQ5-U MH#B6!E;NB>% &J'L\R,Q4G5VEEWU#*1/-%&R==1E"KK6VX]0@3B1)CDT@&1& MEB4E4#W0'!;6":A0H(4RE%C$K2: M1M#LV-N5"&.:49 /_&#CL4#@0*MU D'39$%!'HG5Q B\T1*I#]QE9^/U00JQ'1'AJB0,N$N5^%CAU[+C&?=.127$P5B-!&-3H A,C&EJQM M9R"RFG*@"EJ(U$C+K:R/A!-%0QX.J4F]3R8WP@%'R' 0C5EB\K;_)AH._KWQ MJT11?J7BGV?P![O8UD<=]CX M Q"Q$L0Y0=!(:&&![39UET#=2FG=,FM'9*VYUT73,ARA%.% R$4/1$]>OM,6!&1B+?!# )YTY)B06>IXF)K2 M!A] @1SX (U72X8FGB>&<+WIB9_"#<6J0[VCU"IEB%(*D%QTHT4=Y##*BL96 MTD(FBLG-B4KB5)FQL 5N&R01VS)@1EO MYJ+,;>LFR&/B:\)6H&#Y M$KY=;2DW$!1(,@89]5&HC*RA8F^<:4)A161-O&G,!2L8P!!I0C+EJI99S+.1 M8IZ1AHYA&)R@T::WNRB#9SZXH)2J- PP#B0\CCF*#\R2!IL,1##G8YH, HHR M7/Z&2KT3S-XZHC+Q<,0R#6A,##J$QX?8B^8G6#*SZT2)0;/;BS) <;F&R(U""W&41QP2)XZ@ L32)KHJI6M\I5JJ+-A$S42$>J5*6$L.TCN=,EXM3:58/,J:T%\1Q;"Q(0 #L! end XML 17 R1.htm IDEA: XBRL DOCUMENT v3.24.0.1
Cover - USD ($)
$ in Billions
12 Months Ended
Dec. 30, 2023
Feb. 16, 2024
Jul. 01, 2023
Cover [Abstract]      
Document Type 10-K    
Document Annual Report true    
Document Period End Date Dec. 30, 2023    
Current Fiscal Year End Date --12-30    
Document Transition Report false    
Entity File Number 001-35849    
Entity Registrant Name NV5 Global, Inc.    
Entity Incorporation, State or Country Code DE    
Entity Tax Identification Number 45-3458017    
Entity Address, Address Line One 200 South Park Road,    
Entity Address, Address Line Two Suite 350,    
Entity Address, City or Town Hollywood,    
Entity Address, State or Province FL    
Entity Address, Postal Zip Code 33021    
City Area Code 954    
Local Phone Number 495-2112    
Title of 12(b) Security Common Stock, $0.01 par value    
Trading Symbol NVEE    
Security Exchange Name NASDAQ    
Entity Well-known Seasoned Issuer Yes    
Entity Voluntary Filers No    
Entity Current Reporting Status Yes    
Entity Interactive Data Current Yes    
Entity Filer Category Large Accelerated Filer    
Entity Small Business false    
Entity Emerging Growth Company false    
ICFR Auditor Attestation Flag true    
Document Financial Statement Error Correction false    
Entity Shell Company false    
Entity Public Float     $ 1.5
Entity Common Stock, Shares Outstanding   15,916,943  
Documents Incorporated by Reference
Portions of the 2024 definitive Proxy Statement are incorporated by reference into Part III of this Form 10-K.
   
Entity Central Index Key 0001532961    
Document Fiscal Year Focus 2023    
Document Fiscal Period Focus FY    
Amendment Flag false    

XML 18 R2.htm IDEA: XBRL DOCUMENT v3.24.0.1
Audit Information
12 Months Ended
Dec. 30, 2023
Audit Information [Abstract]  
Auditor Firm ID 34
Auditor Name Deloitte & Touche LLP
Auditor Location Miami, Florida
XML 19 R3.htm IDEA: XBRL DOCUMENT v3.24.0.1
CONSOLIDATED BALANCE SHEETS - USD ($)
$ in Thousands
Dec. 30, 2023
Dec. 31, 2022
Current assets:    
Cash and cash equivalents $ 44,824 $ 38,541
Billed receivables, net 152,593 145,637
Unbilled receivables, net 113,271 92,862
Prepaid expenses and other current assets 18,376 13,636
Total current assets 329,064 290,676
Property and equipment, net 50,268 41,640
Right-of-use lease assets, net 36,836 39,314
Intangible assets, net 226,702 160,431
Goodwill 524,573 400,957
Other assets 3,149 2,705
Total Assets 1,170,592 935,723
Current liabilities:    
Accounts payable 54,865 57,771
Accrued liabilities 47,423 44,313
Billings in excess of costs and estimated earnings on uncompleted contracts 41,679 31,183
Other current liabilities 2,263 1,597
Current portion of contingent consideration 3,922 10,854
Current portion of notes payable and other obligations 9,267 15,176
Total current liabilities 159,419 160,894
Contingent consideration, less current portion 143 4,481
Other long-term liabilities 26,930 29,542
Notes payable and other obligations, less current portion 205,468 39,673
Deferred income tax liabilities, net 2,837 6,893
Total liabilities 394,797 241,483
Commitments and contingencies
Stockholders’ equity:    
Preferred stock, $0.01 par value; 5,000,000 shares authorized, no shares issued and outstanding 0 0
Common stock, $0.01 par value; 45,000,000 shares authorized, 15,895,255 and 15,523,300 shares issued and outstanding as of December 30, 2023 and December 31, 2022, respectively 159 155
Additional paid-in capital 508,256 471,300
Accumulated other comprehensive income (loss) (18) 0
Retained earnings 267,398 222,785
Total stockholders’ equity 775,795 694,240
Total liabilities and stockholders’ equity $ 1,170,592 $ 935,723
XML 20 R4.htm IDEA: XBRL DOCUMENT v3.24.0.1
CONSOLIDATED BALANCE SHEETS (Parentheticals) - $ / shares
Dec. 30, 2023
Dec. 31, 2022
Statement of Financial Position [Abstract]    
Preferred stock, par value (in dollars per share) $ 0.01 $ 0.01
Preferred stock, shares authorized (in shares) 5,000,000 5,000,000
Preferred stock, shares issued (in shares) 0 0
Preferred stock, shares outstanding (in shares) 0 0
Common stock, par value (in dollars per share) $ 0.01 $ 0.01
Common stock, shares authorized (in shares) 45,000,000 45,000,000
Common stock, shares issued (in shares) 15,895,255 15,523,300
Common stock, shares outstanding (in shares) 15,895,255 15,523,300
XML 21 R5.htm IDEA: XBRL DOCUMENT v3.24.0.1
CONSOLIDATED STATEMENTS OF NET INCOME AND COMPREHENSIVE INCOME - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Income Statement [Abstract]      
Gross revenues $ 861,739 $ 786,778 $ 706,706
Direct costs:      
Salaries and wages 215,608 186,806 175,047
Sub-consultant services 150,681 153,641 124,998
Other direct costs 65,088 60,357 47,347
Total direct costs 431,377 400,804 347,392
Gross profit 430,362 385,974 359,314
Operating expenses:      
Salaries and wages, payroll taxes, and benefits 226,137 193,488 176,838
General and administrative 67,668 66,114 53,986
Facilities and facilities related 22,891 21,252 20,193
Depreciation and amortization 52,486 38,938 39,953
Total operating expenses 369,182 319,792 290,970
Income from operations 61,180 66,182 68,344
Interest expense (12,970) (3,808) (6,239)
Income before income tax expense 48,210 62,374 62,105
Income tax expense (3,597) (12,401) (14,958)
Net income $ 44,613 $ 49,973 $ 47,147
Earnings per share:      
Basic (in dollars per Share) $ 2.96 $ 3.39 $ 3.34
Diluted (in dollars per Share) $ 2.88 $ 3.27 $ 3.22
Weighted average common shares outstanding:      
Basic (in shares) 15,086,040 14,753,738 14,135,333
Diluted (in shares) 15,474,326 15,260,186 14,656,381
Comprehensive income:      
Net income $ 44,613 $ 49,973 $ 47,147
Foreign currency translation loss, net of tax (18) 0 0
Comprehensive income $ 44,595 $ 49,973 $ 47,147
XML 22 R6.htm IDEA: XBRL DOCUMENT v3.24.0.1
CONSOLIDATED STATEMENTS OF CHANGES IN STOCKHOLDERS’ EQUITY - USD ($)
$ in Thousands
Total
Common Stock
Additional Paid-In Capital
AOCI Attributable to Parent
Retained Earnings
Balance (in shares) at Jan. 02, 2021   13,270,131      
Balance at Jan. 02, 2021 $ 394,069 $ 133 $ 268,271 $ 0 $ 125,665
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Stock-based compensation 16,301   16,301    
Restricted stock issuance, net (in shares)   226,736      
Restricted stock issuance, net 0 $ 2 (2)    
Purchases of common stock tendered by employees to satisfy the required withholding taxes related to stock-based compensation (in shares)   (580)      
Purchases of common stock tendered by employees to satisfy the required withholding taxes related to stock-based compensation (52)   (52)    
Stock issuance for acquisitions (in shares)   60,680      
Stock issuance for acquisitions 5,203   5,203    
Proceeds from secondary offering, net of costs (in shares)   1,854,838      
Proceeds from secondary offering, net of costs 161,843 $ 19 161,824    
Payment of contingent consideration with common stock (in shares)   2,200      
Payment of contingent consideration with common stock 209   209    
Net income 47,147       47,147
Balance (in shares) at Jan. 01, 2022   15,414,005      
Balance at Jan. 01, 2022 624,720 $ 154 451,754 0 172,812
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Stock-based compensation 18,195   18,195    
Restricted stock issuance, net (in shares)   96,776      
Restricted stock issuance, net 0 $ 1 (1)    
Stock issuance for acquisitions (in shares)   12,519      
Stock issuance for acquisitions 1,352   1,352    
Net income $ 49,973       49,973
Balance (in shares) at Dec. 31, 2022 15,523,300 15,523,300      
Balance at Dec. 31, 2022 $ 694,240 $ 155 471,300 0 222,785
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Stock-based compensation 20,193   20,193    
Restricted stock issuance, net (in shares)   244,332      
Restricted stock issuance, net 0 $ 3 (3)    
Purchases of common stock tendered by employees to satisfy the required withholding taxes related to stock-based compensation (in shares)   (730)      
Purchases of common stock tendered by employees to satisfy the required withholding taxes related to stock-based compensation (81)   (81)    
Stock issuance for acquisitions (in shares)   125,497      
Stock issuance for acquisitions 14,851 $ 1 14,850    
Reclassification of liability-classified awards to equity-classified awards 1,697   1,697    
Payment of contingent consideration with common stock (in shares)   2,856      
Payment of contingent consideration with common stock 300   300    
Other comprehensive income (loss) (18)     (18)  
Net income $ 44,613       44,613
Balance (in shares) at Dec. 30, 2023 15,895,255 15,895,255      
Balance at Dec. 30, 2023 $ 775,795 $ 159 $ 508,256 $ (18) $ 267,398
XML 23 R7.htm IDEA: XBRL DOCUMENT v3.24.0.1
CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Cash flows from operating activities:      
Net income $ 44,613 $ 49,973 $ 47,147
Adjustments to reconcile net income to net cash provided by operating activities:      
Depreciation and amortization 58,020 44,063 44,971
Non-cash lease expense 13,562 12,813 10,191
Provision for doubtful accounts 1,261 (60) 1,243
Stock-based compensation 22,379 19,326 16,301
Change in fair value of contingent consideration (9,280) 2,972 2,333
Gain on disposals of property and equipment (694) (328) (1,102)
Other (125) 0 0
Deferred income taxes (25,709) (18,492) (7,007)
Amortization of debt issuance costs 758 724 1,210
Changes in operating assets and liabilities, net of impact of acquisitions:      
Billed receivables 7,584 10,212 2,677
Unbilled receivables (15,666) (3,303) (12,573)
Prepaid expenses and other assets (2,292) (1,125) (4,792)
Accounts payable (8,470) (1,673) 8,181
Accrued liabilities and other long-term liabilities (19,848) (19,901) (12,507)
Contingent consideration (1,307) (800) 0
Billings in excess of costs and estimated earnings on uncompleted contracts (3,243) (296) 4,005
Other current liabilities 664 (125) 1,164
Net cash provided by operating activities 62,207 93,980 101,442
Cash flows from investing activities:      
Cash paid for acquisitions (net of cash received from acquisitions) (189,345) (5,908) (67,995)
Proceeds from sale of assets 720 87 1,639
Purchase of property and equipment (17,166) (15,689) (13,903)
Net cash used in investing activities (205,791) (21,510) (80,259)
Cash flows from financing activities:      
Borrowings from Senior Credit Facility 188,000 0 138,750
Proceeds from common stock offering 0 0 172,500
Payments of borrowings from Senior Credit Facility (26,000) (65,000) (323,832)
Payments on notes payable (11,071) (15,445) (12,516)
Payments of contingent consideration (993) (1,464) (1,329)
Payments of common stock offering costs 0 0 (10,657)
Payments of debt issuance costs 0 0 (976)
Purchases of common stock tendered by employees to satisfy the required withholding taxes related to stock-based compensation (81) 0 (52)
Net cash provided by (used in) financing activities 149,855 (81,909) (38,112)
Effect of exchange rate changes on cash and cash equivalents 12 0 0
Net increase (decrease) in cash and cash equivalents 6,283 (9,439) (16,929)
Cash and cash equivalents – beginning of period 38,541 47,980 64,909
Cash and cash equivalents – end of period 44,824 38,541 47,980
Supplemental disclosures of cash flow information:      
Cash paid for interest 12,542 4,220 5,909
Cash paid for income taxes 30,326 29,639 26,270
Non-cash investing and financing activities:      
Contingent consideration (earn-out) 610 6,299 5,133
Notes payable and other obligations issued for acquisitions 6,333 2,039 21,837
Stock issuance for acquisitions 14,851 1,352 5,203
Reclassification of liability-classified awards to equity-classified awards   0 0
Finance leases 2,289 2,490 376
Payment of contingent consideration and other obligations with common stock $ 300 $ 0 $ 209
XML 24 R8.htm IDEA: XBRL DOCUMENT v3.24.0.1
Organization and Nature of Business Operations
12 Months Ended
Dec. 30, 2023
Accounting Policies [Abstract]  
Organization and Nature of Business Operations Organization and Nature of Business Operations
Business
NV5 Global, Inc. and its subsidiaries (collectively, the “Company” or “NV5 Global”) is a provider of technology, conformity assessment, consulting solutions, and software applications to public and private sector clients in the infrastructure, utility services, construction, real estate, environmental, and geospatial markets, operating nationwide and abroad. The Company’s clients include the U.S. Federal, state and local governments, and the private sector. NV5 Global provides a wide range of services, including, but not limited to:
Utility servicesCommissioning
LNG servicesBuilding program management
EngineeringEnvironmental health & safety
Civil program managementReal estate transaction services
SurveyingEnergy efficiency & clean energy services
Construction quality assuranceMission critical services
Code compliance consulting3D geospatial data modeling
Forensic servicesEnvironmental & natural resources
Litigation supportRobotic survey solutions
Ecological studiesGeospatial data applications & software
MEP & technology design
XML 25 R9.htm IDEA: XBRL DOCUMENT v3.24.0.1
Summary of Significant Accounting Policies
12 Months Ended
Dec. 30, 2023
Accounting Policies [Abstract]  
Summary of Significant Accounting Policies Summary of Significant Accounting Policies
Basis of Presentation and Principles of Consolidation
The consolidated financial statements of the Company are presented in U.S. dollars in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) and have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”). The consolidated financial statements include the accounts of the Company and its subsidiaries. All intercompany transactions and balances have been eliminated in consolidation.
Fiscal Year
The Company reports its financial results on a 52/53-week fiscal year ending on the Saturday closest to December 31st (whether or not in the following calendar year), with interim calendar quarters ending on the Saturday closest to the end of such calendar quarter (whether or not in the following calendar quarter). As a result, fiscal 2023, 2022, and 2021 included 52 weeks.
Use of Estimates
The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts in the consolidated financial statements and accompanying notes. These estimates and assumptions are based on management’s most recent assessment of underlying facts and circumstances using the most recent information available. Actual results could differ significantly from these estimates and assumptions, and the differences could be material.
Estimates and assumptions are evaluated periodically and adjusted when necessary. The more significant estimates affecting amounts reported in the consolidated financial statements include the following:
Fair value estimates used in accounting for business combinations including the valuation of identifiable intangible assets and contingent consideration,
Fair value estimates in determining the fair value of our reporting units for goodwill impairment assessment,
Revenue recognition over time, and
Allowances for uncollectible accounts.
Cash and Cash Equivalents
Cash and cash equivalents include cash on deposit with financial institutions and investments in high quality overnight money market funds, all of which have maturities of three months or less when purchased. From time to time the Company may be exposed to credit risk with its bank deposits in excess of the Federal Deposit Insurance Corporation insurance limits and with uninsured money market investments. Management believes cash and cash equivalent balances are not exposed to significant credit risk due to the financial position of the depository institutions in which those deposits are held.
Concentration of Credit Risk
Trade receivable balances carried by the Company are comprised of accounts from a diverse client base across a broad range of industries and are not collateralized. The Company did not have any clients representing more than 10% of our gross revenues during 2023, 2022, or 2021; however, 26%, 28% and 26% of the Company’s gross revenues for fiscal years 2023, 2022, and 2021, respectively, are from California-based projects. During fiscal years 2023, 2022, and 2021 approximately 68%, 64% and 65%, respectively, of our gross revenues were attributable to the public and quasi-public sector. Management continually evaluates the creditworthiness of these and future clients and provides for bad debt reserves as necessary.
Fair Value of Financial Instruments
Fair value is defined as the amount that would be received for selling an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date and is measured using inputs in one of the following three categories:
Level 1 measurements are based on unadjusted quoted prices in active markets for identical assets or liabilities that we have the ability to access. Valuation of these items does not entail a significant amount of judgment. 
Level 2 measurements are based on quoted prices for similar assets or liabilities in active markets, quoted prices for identical or similar assets or liabilities in markets that are not active or market data other than quoted prices that are observable for the assets or liabilities.
Level 3 measurements are based on unobservable data that are supported by little or no market activity and are significant to the fair value of the assets or liabilities.
The Company considers cash and cash equivalents, accounts receivable, accounts payable, income taxes payable, accrued liabilities, and debt obligations to meet the definition of financial instruments. As of December 30, 2023, and December 31, 2022, the carrying amount of cash and cash equivalents, accounts receivable, accounts payable, income taxes payable, and accrued liabilities approximate their fair value due to the relatively short period of time between their origination and their expected realization or payment. The carrying amounts of debt obligations approximate their fair values as the terms are comparable to terms currently offered by local lending institutions for arrangements with similar terms to industry peers with comparable credit characteristics.
Fair Value of Acquisitions
The Company applies the provisions of the Financial Accounting Standards Board (“FASB”) Accounting Standards Codification (“ASC”) 805, Business Combinations, in the accounting for its acquisitions, which requires recognition of the assets acquired and the liabilities assumed at their acquisition date fair values, separately from goodwill. Goodwill as of the acquisition date is measured as the excess of consideration transferred and the net of the acquisition date fair values of the tangible and identifiable intangible assets acquired and liabilities assumed. The allocation of the purchase price to identifiable intangible assets is based on valuations performed to determine the fair values of such assets as of the acquisition dates. Generally, the Company engages a third-party independent valuation specialist to assist in management’s determination of fair values of tangible and intangible assets acquired and liabilities assumed. The fair values of earn-out arrangements are included
as part of the purchase price of the acquired companies on their respective acquisition dates. The Company estimates the fair value of contingent earn-out payments as part of the initial purchase price and records the estimated fair value of contingent consideration as a liability on the consolidated balance sheet. Changes in the estimated fair value of contingent earn-out payments are included in General and Administrative expenses on the Consolidated Statements of Net Income and Comprehensive Income.
Several factors are considered when determining contingent consideration liabilities as part of the purchase price, including whether: (i) the valuation of the acquisitions is not supported solely by the initial consideration paid, and the contingent earn-out formula is a critical and material component of the valuation approach to determining the purchase price; and (ii) the former owners of the acquired companies that remain as key employees receive compensation other than contingent earn-out payments at a reasonable level compared with the compensation of other key employees. The contingent earn-out payments are not affected by employment termination.
The Company reviews and re-assesses the estimated fair value of contingent consideration liabilities on a quarterly basis, and the updated fair value could differ from the initial estimates. The Company measures contingent consideration recognized in connection with business combinations at fair value on a recurring basis using significant unobservable inputs classified as Level 3 inputs. The Company generally uses a Monte Carlo simulation-based option pricing model, based on key inputs requiring significant judgments and estimates to be made by the Company, including projections of future earnings over the earn-out period. Significant increases or decreases to these inputs could result in a significantly higher or lower liability with a higher liability capped by the contractual maximum of the contingent consideration liabilities. Ultimately, the liability will be equivalent to the amount paid, and the difference between the fair value estimate as of the acquisition date and amount paid will be recorded in earnings. See Note 12, Contingent Consideration, for additional information regarding contingent consideration.
Property and Equipment
Property and equipment is stated at cost. Property and equipment acquired in a business combination is stated at fair value at the acquisition date. The Company capitalizes the cost of improvements to property and equipment that increase the value or extend the useful lives of the assets. Normal repair and maintenance costs are expensed as incurred. Depreciation and amortization is computed on a straight-line basis over the following estimated useful lives of the assets. Leasehold improvements are amortized on a straight-line basis over the lesser of their estimated useful lives or the remaining terms of the related lease agreement.
AssetDepreciation Period (in years)
Office furniture and equipment4
Computer equipment3
Survey and field equipment
5 - 15
Leasehold improvementsLesser of the estimated useful lives or remaining term of the lease
Property and equipment balances are periodically reviewed by management for impairment whenever events or changes in circumstances indicate that the carrying value of the asset may not be recoverable. If an indicator of impairment exists, the Company compares the estimated future cash flows of the asset, on an undiscounted basis, to the carrying value of the asset. If the undiscounted cash flows exceed the carrying value, no impairment is indicated. If the undiscounted cash flows do not exceed the carrying value, then impairment is measured as the difference between fair value and carrying value, with fair value typically based on a discounted cash flow model. During fiscal years 2023, 2022 and 2021, no impairment charge relating to property and equipment was recognized.
Goodwill and Intangible Assets
Goodwill is the excess of consideration paid for an acquired entity over the amounts assigned to assets acquired, including other identifiable intangible assets and liabilities assumed in a business combination. To determine the amount of goodwill resulting from a business combination, the Company performs an assessment to determine the acquisition date fair value of the acquired company’s tangible and identifiable intangible assets and liabilities.
The Company evaluates goodwill annually for impairment on August 1, or whenever events or changes in circumstances indicate the asset may be impaired, using the quantitative method. An entity has the option to first assess
qualitative factors to determine whether the existence of events or circumstances leads to a determination that it is more likely than not that the fair value of a reporting unit is less than its carrying amount. These qualitative factors include macroeconomic and industry conditions, cost factors, overall financial performance, and other relevant entity-specific events. If the entity determines that this threshold is met, then the Company applies a one-step quantitative test and records the amount of goodwill impairment as the excess of a reporting unit's carrying amount over its fair value, not to exceed the total amount of goodwill allocated to the reporting unit. The Company determines fair value through multiple valuation techniques, and weights the results accordingly. Subjective and complex judgments are required in assessing whether an event of impairment of goodwill has occurred, including assumptions and estimates used to determine the fair value of its reporting units. The Company conducts its annual impairment tests on the goodwill using the quantitative method of evaluating goodwill.
Identifiable intangible assets primarily include customer backlog, customer relationships, trade names, non-compete agreements, and developed technology. Amortizable intangible assets are amortized on a straight-line basis over their estimated useful lives and reviewed for impairment whenever events or changes in circumstances indicate that the assets may be impaired. If an indicator of impairment exists, the Company compares the estimated future cash flows of the asset, on an undiscounted basis, to the carrying value of the asset. If the undiscounted cash flows exceed the carrying value, no impairment is indicated. If the undiscounted cash flows do not exceed the carrying value, then impairment, if any, is measured as the difference between fair value and carrying value, with fair value typically based on a discounted cash flow model.
During fiscal years 2023, 2022 and 2021, no impairment charge relating to goodwill and intangible assets was recognized. See Note 9, Goodwill and Intangible Assets, for further information on goodwill and identified intangibles.
Revenue Recognition
The Company utilizes the contract method under ASC Topic 606, Revenue from Contracts with Customers (“Topic 606”), which allows companies to account for contracts on a contract-by-contract basis. For the Company's time and materials contracts, it applies the as-invoiced practical expedient, which permits us to recognize revenue as the right to invoice for services performed.
To determine the proper revenue recognition method, the Company evaluates whether two or more contracts should be combined and accounted for as one single contract and whether the combined or single contract should be accounted for as more than one performance obligation. The majority of the Company's contracts have a single performance obligation as the promise to transfer the individual goods or services is not separately identifiable from other promises in the contracts and, therefore, is not distinct.
The Company’s performance obligations are satisfied as work progresses or at a point in time. Revenue on the Company's cost-reimbursable contracts is recognized over time using direct costs incurred or direct costs incurred to date as compared to the estimated total direct costs for performance obligations because it depicts the transfer of control to the customer. Contract costs include labor, sub-consultant services, and other direct costs. Gross revenues from services transferred to customers over time accounted for 90%, 88%, and 90% of the Company’s revenues during fiscal years 2023, 2022, and 2021, respectively.
Gross revenues recognized under lump-sum contracts were $427,462, $343,538, and $309,624 during the fiscal years 2023, 2022, and 2021, respectively.
Gross revenues from services transferred to customers at a point in time is recognized when the customer obtains control of the asset, which is generally upon delivery and acceptance by the customer of the reports and/or analysis performed. Gross revenue from services transferred to customers at a point in time accounted for 10%, 12%, and 10% of the Company’s revenues during fiscal years 2023, 2022, and 2021, respectively.
As of December 30, 2023, the Company had $849,515 of remaining performance obligations, of which $673,235 is expected to be recognized over the next 12 months and the majority of the balance over the next 24 months. Contracts for which work authorizations have been received are included in performance obligations. Performance obligations include only those amounts that have been funded and authorized and does not reflect the full amounts the Company may receive over the term of such contracts. In the case of non-government contracts and project awards, performance obligations include future revenue at contract or customary rates, excluding contract renewals or extensions that are at the discretion of the client. For contracts with a not-to-exceed maximum amount, the Company includes revenue from such contracts in performance obligations to the extent of the remaining estimated amount.
Contract modifications are common in the performance of our contracts. Contracts modified typically result from changes in scope, specifications, design, performance, sites, or period of completion. In most cases, contract modifications are for services that are not distinct, and, therefore, are accounted for as part of the existing contract.
Contract estimates are based on various assumptions to project the outcome of future events. These assumptions are dependent upon the accuracy of a variety of estimates, including engineering progress, achievement of milestones, labor productivity, and cost estimates. Due to uncertainties inherent in the estimation process, it is possible that actual completion costs may vary from estimates. If estimated total costs on contracts indicate a loss or reduction to the percentage of total contract revenues recognized to date, these losses or reductions are recognized in the period in which the revisions are known. The effect of revisions to revenues, estimated costs to complete contracts, including penalties, incentive awards, change orders, claims, and anticipated losses are recorded on the cumulative catch-up basis in the period in which the revisions are identified and the loss can be reasonably estimated. Such revisions could occur in any reporting period and the effects on the results of operations for that reporting period may be material depending on the size of the project or the adjustment. During fiscal years 2023, 2022, and 2021 the cumulative catch-up adjustments for contract modifications were not material.
A significant amount of the Company’s revenues are derived under multi-year contracts. The Company enters into contracts with its clients that contain two principal types of pricing provisions: cost-reimbursable and fixed-unit price.
Cost-reimbursable contracts consist of the following:
Time and materials contracts, which are common for smaller scale professional and technical consulting and certification services projects. Under these types of contracts, there is no predetermined fee. Instead, the Company negotiates hourly billing rates and charges the clients based upon actual hours expended on a project. In addition, any direct project expenditures are passed through to the client and are typically reimbursed. These contracts may have an initial not-to-exceed or guaranteed maximum price provision.
Cost-plus contracts are the predominant contracting method used by U.S. Federal, state, and local governments. Under these types of contracts, the Company charges clients for its costs, including both direct and indirect costs, plus a negotiated fee. The total estimated cost plus the negotiated fee represents the total contract value.
Lump-sum contracts typically require the performance of all of the work under the contract for a specified lump-sum fee, subject to price adjustments if the scope of the project changes or unforeseen conditions arise. Many of the Company’s lump-sum contracts are negotiated and arise in the design of projects with a specified scope and project deliverables. In most cases, we can bill additional fees if the construction schedule is modified and lengthened.
Fixed-unit price contracts typically require the performance of an estimated number of units of work at an agreed price per unit, with the total payment under the contract determined by the actual number of units performed.
Federal Acquisition Regulations (“FAR”), which are applicable to the Company’s federal government contracts and may be incorporated in local and state agency contracts, limit the recovery of certain specified indirect costs on contracts. Cost-plus contracts covered by FAR or certain state and local agencies also may require an audit of actual costs and provide for upward or downward adjustments if actual recoverable costs differ from billed recoverable costs.
Contract Balances
The timing of revenue recognition, billings, and cash collections results in billed receivables, unbilled receivables (contract assets), and billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities) on the Consolidated Balance Sheets.
Billed receivables, net represents amounts billed to clients that remain uncollected as of the balance sheet date. The amounts are stated at their estimated realizable value. The Company maintains an allowance for doubtful accounts to provide for the estimated amount of receivables that will not be collected. The allowance is estimated based on management’s evaluation of the contracts involved and the financial condition of clients. Factors the Company considers include, but are not limited to:
Client type (governmental or commercial client),
Historical performance,
Historical collection trends, and
General economic conditions.
Billed receivables are generally collected within less than 12 months. The allowance is increased by the Company’s provision for doubtful accounts which is charged against income. All recoveries on receivables previously charged off are included in income, while direct charge-offs of receivables are deducted from the allowance.
Unbilled receivables, net represents recognized amounts pending billing pursuant to contract terms or accounts billed after period end, and are expected to be billed and collected within the next 12 months. Generally, billing occurs subsequent to revenue recognition, resulting in contract assets. Unbilled receivables (contract assets) are generally classified as current.
In certain circumstances, the contract may allow for billing terms that result in the cumulative amounts billed in excess of revenues recognized. “Billings in excess of costs and estimated earnings on uncompleted contracts” represents billings in excess of revenues recognized on these contracts as of the reporting date. This liability is generally classified as current. During fiscal 2023, the Company performed services and recognized $27,479 of revenue related to its contract liabilities that existed as of December 31, 2022.
Advertising
Advertising costs are charged to expense in the period incurred and amounted to $2,767, $1,977, and $895 during fiscal years 2023, 2022, and 2021, respectively, which are included in General and Administrative Expenses on the accompanying Consolidated Statements of Net Income and Comprehensive Income.
Income Taxes
The Company accounts for income taxes in accordance with ASC Topic No. 740 “Income Taxes” (“Topic No. 740”). Deferred income taxes reflect the impact of temporary differences between amounts of assets and liabilities for financial reporting purposes and such amounts as measured by tax laws. A valuation allowance against the Company’s deferred tax assets is recorded when it is more likely than not that some portion or all of the deferred tax assets will not be realized. In determining the need for a valuation allowance, management is required to make assumptions and to apply judgment, including forecasting future earnings, taxable income, and the mix of earnings in the jurisdictions in which the Company operates. Management periodically assesses the need for a valuation allowance based on the Company’s current and anticipated results of operations. The need for and the amount of a valuation allowance can change in the near term if operating results and projections change significantly.
The Company recognizes the consolidated financial statement benefit of a tax position only after determining that the relevant tax authority would more likely than not sustain the position following an audit. For tax positions meeting the more likely-than-not threshold, the amount recognized in the consolidated financial statements is the largest benefit that has a greater than 50 percent likelihood of being realized upon ultimate settlement with the relevant tax authority. The Company applies the uncertain tax position guidance to all tax positions for which the statute of limitations remains open. The Company’s policy is to classify interest and penalties as income tax expense.
XML 26 R10.htm IDEA: XBRL DOCUMENT v3.24.0.1
Recently Issued Accounting Pronouncements
12 Months Ended
Dec. 30, 2023
Accounting Policies [Abstract]  
Recently Issued Accounting Pronouncements Recently Issued Accounting Pronouncements
Recently Adopted Accounting Pronouncements
None.
Accounting Pronouncements Not Yet Adopted
Segment Reporting
In November 2023, the FASB issued ASU No. 2023-07, Improvements to Reportable Segment Disclosures ("ASU 2023-07"). This ASU updates reportable segment disclosure requirements by requiring disclosures of significant reportable
segment expenses that are regularly provided to the Chief Operating Decision Maker ("CODM") and included within each reported measure of a segment's profit or loss. This ASU also requires disclosure of the title and position of the individual identified as the CODM and an explanation of how the CODM uses the reported measures of the segment's profit or loss in assessing performance and deciding how to allocate resources. This ASU is effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. Adoption of the ASU should be applied retrospectively to all prior periods presented in the financial statements. Early adoption is permitted. The Company is currently evaluating the impact of adopting ASU 2023-07 and expects it to result in additional disclosures when adopted.
Income Taxes
In December 2023, the FASB issued ASU No. 2023-09, Improvements to Income Tax Disclosures ("ASU 2023-09"). This ASU requires disaggregated information about a reporting entity's effective tax rate reconciliations as well as additional information on income taxes paid. This ASU is effective on a prospective basis for annual periods beginning after December 15, 2024. Early adoption is also permitted for annual financial statements that have not yet been issued or made available for issuance. The Company is currently evaluating the impact of adopting ASU 2023-09 and expects it to result in additional disclosures when adopted.
XML 27 R11.htm IDEA: XBRL DOCUMENT v3.24.0.1
Earnings per Share
12 Months Ended
Dec. 30, 2023
Earnings Per Share [Abstract]  
Earnings per Share Earnings per Share
Basic earnings per share is calculated by dividing net income by the weighted average number of common shares outstanding during the period, excluding unvested restricted shares. Diluted earnings per share reflects the potential dilution that could occur if securities or other contracts to issue common stock were exercised or converted into common stock or resulted in the issuance of common stock that then shared in the earnings of the Company. The effect of potentially dilutive securities is not considered during periods of loss or if the effect is anti-dilutive.
The weighted average number of shares outstanding in calculating basic earnings per share during fiscal years 2023, 2022, and 2021 exclude 689,360, 742,671, and 777,683 non-vested restricted shares, respectively. During fiscal 2023, 2022, and 2021 there were 19,290, 25,979, and 7,448 weighted average securities which are not included in the calculation of diluted weighted average shares outstanding because their impact is anti-dilutive or their performance conditions have not been met.
The following table represents a reconciliation of the net income and weighted average shares outstanding for the calculation of basic and diluted earnings per share during fiscal years 2023, 2022 and 2021:
Fiscal Years Ended
December 30, 2023December 31, 2022January 1, 2022
Numerator:
Net income – basic and diluted$44,613 $49,973 $47,147 
Denominator:
Basic weighted average shares outstanding15,086,040 14,753,738 14,135,333 
Effect of dilutive non-vested restricted shares and units363,759 490,981 498,116 
Effect of issuable shares related to acquisitions24,527 15,467 22,932 
Diluted weighted average shares outstanding15,474,326 15,260,186 14,656,381 
XML 28 R12.htm IDEA: XBRL DOCUMENT v3.24.0.1
Stockholders' Equity
12 Months Ended
Dec. 30, 2023
Equity [Abstract]  
Stockholders' Equity Stockholders' Equity
Secondary offering
On March 10, 2021, the Company priced an underwritten public offering of 1,612,903 shares of its common stock (the "Firm Shares") at a price of $93.00 per share. The shares were sold pursuant to an effective registration statement on Form S-3 (Registration No. 333-237167). In addition, the Company also granted the underwriters a 30-day option to purchase 241,935 additional shares (the "Option Shares") of its common stock at the public offering price. On March 15, 2021, the Company closed on the Firm Shares, for which it received net proceeds of approximately $140,693 after deducting the underwriting discount and estimated offering expenses payable by the Company. On April 13, 2021, the underwriters exercised the Option Shares and the Company received net proceeds of $21,150 after deducting the underwriting discount and estimated offering expenses payable by the Company.
XML 29 R13.htm IDEA: XBRL DOCUMENT v3.24.0.1
Business Acquisitions
12 Months Ended
Dec. 30, 2023
Business Combinations [Abstract]  
Business Acquisitions Business Acquisitions
2023 Acquisitions
On April 6, 2023, the Company acquired all of the outstanding equity interests in the Visual Information Solutions commercial geospatial technology and software business ("VIS") from L3Harris. VIS is a provider of subscription-based software solutions for the analysis and management of software applications and Analytics as a Service (AaaS) solutions. The Company acquired VIS for a cash purchase price of $75,371. The purchase price and other related costs associated with the transaction were financed through the Company's amended and restated credit agreement (the "Second A&R Credit Agreement" or "Senior Credit Facility") with Bank of America, N.A. and other lenders party thereto. See Note 11, Notes Payable and Other Obligations, for further detail on the Second A&R Credit Agreement. In order to determine the fair values of tangible and intangible assets acquired and liabilities assumed, the Company engaged an independent third-party valuation specialist to assist in the determination of fair values. The final determination of the fair value of assets and liabilities will be completed within the one-year measurement period as required by ASC 805. The acquisition will necessitate the use of this measurement period to adequately analyze and assess the factors used in establishing the asset and liability fair values as of the relevant acquisition date, including intangible assets, accounts receivable, and deferred tax liabilities.
On February 22, 2023, the Company acquired all of the outstanding equity interests in Continental Mapping Acquisition Corp. and its subsidiaries, including Axim Geospatial, LLC (collectively "Axim"), a provider of comprehensive geospatial services and solutions addressing critical mission requirements for customers across the defense and intelligence and state and local government sectors. The aggregate purchase price of the acquisition was $139,569, including $119,736 in cash, a $6,333 promissory note, and $13,500 of the Company's common stock. The purchase price and other related costs associated with the transaction were financed through the Second A&R Credit Agreement. In order to determine the fair values of tangible and intangible assets acquired and liabilities assumed, the Company engaged an independent third-party valuation specialist to assist in the determination of fair values. The final determination of the fair value of assets and liabilities will be completed within the one-year measurement period as required by ASC 805. The acquisition will necessitate the use of this measurement period to adequately analyze and assess the factors used in establishing the asset and liability fair values as of the relevant acquisition date, including intangible assets, accounts receivable, and deferred tax liabilities.
The Company completed five other acquisitions during 2023. The aggregate purchase price for the five acquisitions was $9,477, including $8,000 in cash, $867 of the Company's common stock, and potential earn-outs of up to $640 payable in cash and common stock, which have been recorded at an estimated fair value of $610. A probability-weighted approach was used to determine the fair value of the earn-out, which is a generally accepted valuation technique that embodies all significant assumption types. The final determination of the fair value of assets and liabilities will be completed within the one-year measurement period as required by ASC 805. The five acquisitions will necessitate the use of this measurement period to adequately analyze and assess the factors used in establishing the asset and liability fair values as of the relevant acquisition date, including intangible assets, accounts receivable, and deferred tax liabilities.
2022 Acquisitions
The Company completed five acquisitions during 2022. The aggregate purchase price of all five acquisitions was $14,220, including $5,882 in cash, $1,606 of promissory notes, $433 of the Company's common stock, and potential earn-outs of up to $15,850 payable in cash and stock, which was recorded at an estimated fair value of $6,299. An option-based model
was used to determine the fair value of the earn-outs, which is a generally accepted valuation technique that embodies all significant assumption types. In order to determine the fair values of tangible and intangible assets acquired and liabilities assumed, the Company engaged an independent third-party valuation specialist to assist in the determination of fair values. The final determination of the fair value of assets and liabilities was completed within the one-year measurement period as required by ASC 805. Purchase price allocation adjustments recorded during 2023 were immaterial.
2021 Acquisitions
The Company completed eight acquisitions during 2021. The aggregate purchase price of the acquisitions was $100,449, including $69,501 of cash, $19,028 of promissory notes, $6,787 of the Company's common stock, and potential earn-outs of up to $25,700 payable in cash and stock, which were recorded at an estimated fair value of $5,133. An option-based model was used to determine the fair value of the earn-outs, which is a generally accepted valuation technique that embodies all significant assumption types. In order to determine the fair values of tangible and intangible assets acquired and liabilities assumed, the Company engaged an independent third-party valuation specialist to assist in the determination of fair values. The final determination of the fair value of assets and liabilities was completed within the one-year measurement period as required by ASC 805. Purchase price allocation adjustments recorded during 2022 were immaterial.
The following table summarizes the fair values of the assets acquired and liabilities assumed as of the acquisition dates for acquisitions closed during fiscal years 2023, 2022, and 2021:
202320222021
VISAximOtherTotalTotalTotal
Cash$7,027 $5,419 $1,316 $13,762 $— $1,480 
Billed and unbilled receivables, net5,042 13,937 1,609 20,588 1,794 17,728 
Right-of-use assets2,162 1,643 552 4,357 632 2,932 
Property and equipment118 2,870 38 3,026 1,510 3,741 
Prepaid expenses1,503 1,543 17 3,063 — 519 
Other assets— 156 158 — 13 
Intangible assets:
Customer relationships35,626 53,518 2,526 91,670 3,606 36,338 
Trade name3,025 2,266 210 5,501 268 2,098 
Customer backlog894 3,862 943 5,699 459 3,847 
Developed technology4,024 2,185 — 6,209 — — 
Other26 580 254 860 298 4,456 
Total Assets$59,447 $87,979 $7,467 $154,893 $8,567 $73,152 
Liabilities(16,535)(13,668)(2,297)(32,500)(5,623)(13,984)
Deferred tax liabilities(8,728)(12,428)(496)(21,652)— (4,521)
Net assets acquired$34,184 $61,883 $4,674 $100,741 $2,944 $54,647 
Consideration paid (Cash, notes and/or stock)$75,371 $139,569 $8,867 $223,807 $7,921 $95,316 
Contingent earn-out liability (Cash and stock)— — 610 610 6,299 5,133 
Total Consideration$75,371 $139,569 $9,477 $224,417 $14,220 $100,449 
Excess consideration over the amounts assigned to the net assets acquired (Goodwill)$41,187 $77,686 $4,803 $123,676 $11,276 $45,802 
Goodwill was recorded based on the amount by which the purchase price exceeded the fair value of the net assets acquired and the amount is attributable to the reputation of the business acquired, the workforce in place and the synergies to be achieved from these acquisitions. See Note 9, Goodwill and Intangible Assets, for further information on fair value adjustments to goodwill and identified intangible assets.
The consolidated financial statements of the Company include the results of operations from any business acquired from their respective dates of acquisition. The following table presents the results of operations of businesses acquired from their respective dates of acquisition for fiscal years 2023, 2022, and 2021.
202320222021
Gross revenues$96,314 $5,211 $29,965 
Income before income taxes$14,902 $985 $5,167 
General and administrative expense for fiscal years 2023, 2022, and 2021 includes $5,575, $2,639, and $3,274, respectively, of acquisition-related costs pertaining to the Company’s acquisition activities.
The following table presents the unaudited, pro forma consolidated results of operations (in thousands, except per share amounts) for fiscal years 2023, 2022, and 2021 as if the 2023 acquisitions had occurred at the beginning of fiscal year 2022 and the 2022 acquisitions had occurred at the beginning of fiscal year 2021. The pro forma information provided below is compiled from the pre-acquisition financial information and includes pro forma adjustments for amortization expense, adjustments to certain expenses, and the income tax impact of these adjustments. These unaudited pro forma results are presented for informational purposes only and are not necessarily indicative of what the actual results of operations of the Company would have been if the acquisitions and related financing transactions had occurred on the date assumed, nor are they indicative of future results of operations.
Fiscal Years Ended
202320222021
Gross revenues$889,233 $912,127 $765,632 
Net income$43,284 $44,323 $49,769 
Basic earnings per share$2.87 $2.98 $3.50 
Diluted earnings per share$2.80 $2.88 $3.38 
Adjustments were made to the pro forma results to adjust amortization of intangible assets to reflect fair value of identified assets acquired, to record the effects of promissory notes issued, and to record the income tax effect of these adjustments.
XML 30 R14.htm IDEA: XBRL DOCUMENT v3.24.0.1
Billed and Unbilled Receivables
12 Months Ended
Dec. 30, 2023
Receivables [Abstract]  
Billed and Unbilled Receivables Billed and Unbilled Receivables
Billed and unbilled receivables were as follows:
December 30, 2023December 31, 2022
Billed receivables$155,988 $149,082 
Less: allowance for doubtful accounts(3,395)(3,445)
Billed receivables, net$152,593 $145,637 
Unbilled receivables$115,545 $95,104 
Less: allowance for doubtful accounts(2,274)(2,242)
Unbilled receivables, net$113,271 $92,862 
Activity in the allowance for doubtful accounts was as follows:
December 30, 2023December 31, 2022
Balance as of the beginning of the year$5,687 $7,952 
Provision for doubtful accounts1,261 (60)
Write-offs of uncollectible accounts(1,279)(2,205)
Balance as of the end of the year$5,669 $5,687 
XML 31 R15.htm IDEA: XBRL DOCUMENT v3.24.0.1
Property and Equipment, net
12 Months Ended
Dec. 30, 2023
Property, Plant and Equipment [Abstract]  
Property and Equipment, net Property and Equipment, net
Property and equipment, net were as follows:
December 30, 2023December 31, 2022
Office furniture and equipment$3,487 $3,421 
Computer equipment31,999 25,816 
Survey and field equipment62,553 49,985 
Leasehold improvements6,881 6,546 
Total104,920 85,768 
Less: accumulated depreciation(54,652)(44,128)
Property and equipment, net$50,268 $41,640 
Depreciation expense for fiscal year 2023, 2022, and 2021 was $14,343, $11,722, and $11,473, respectively, of which $5,534, $5,125, and $5,018, was included in other direct costs.
XML 32 R16.htm IDEA: XBRL DOCUMENT v3.24.0.1
Goodwill and Intangible Assets
12 Months Ended
Dec. 30, 2023
Goodwill and Intangible Assets Disclosure [Abstract]  
Goodwill and Intangible Assets Goodwill and Intangible Assets
Goodwill
The changes in the carrying value by reportable segment for the fiscal years 2023 and 2022 were as follows:
Fiscal Year 2023
December 31, 2022AcquisitionsAdjustmentsForeign Currency Translation of non-USD functional currency goodwillDecember 30, 2023
INF$90,932 $726 $— $— $91,658 
BTS111,838 4,077 13 17 115,945 
GEO198,187 118,873 (10)(80)316,970 
Total$400,957 $123,676 $$(63)$524,573 
Fiscal Year 2022
January 1, 2022AcquisitionsAdjustmentsDecember 31, 2022
INF$90,725 $120 $87 $90,932 
BTS111,005 1,152 (319)111,838 
GEO188,186 10,001 — 198,187 
Total$389,916 $11,273 $(232)$400,957 
Goodwill of $1,755 and $2,891 from acquisitions in 2023 and 2022 is expected to be deductible for income tax purposes. During 2023, the Company recorded goodwill related to acquisitions of $123,676. During 2022, the Company recorded goodwill related to acquisitions of $11,273 and purchase price adjustments of $232 that decreased goodwill for the 2021 acquisitions.
Intangible assets
Intangible assets, net, at December 30, 2023 and December 31, 2022 were as follows:
December 30, 2023December 31, 2022
Gross
Carrying
Amount
Accumulated
Amortization
Net
Amount
Gross
Carrying
Amount
Accumulated
Amortization
Net
Amount
Finite-lived intangible assets:
Customer relationships(1)
$314,662 $(116,086)$198,576 $222,998 $(87,054)$135,944 
Trade name(2)
22,384 (18,327)4,057 16,883 (15,933)950 
Customer backlog(3)
35,116 (32,681)2,435 29,419 (27,333)2,086 
Non-compete(4)
14,987 (12,690)2,297 14,110 (11,298)2,812 
Developed technology(5)
39,153 (19,816)19,337 32,944 (14,305)18,639 
Total finite-lived intangible assets$426,302 $(199,600)$226,702 $316,354 $(155,923)$160,431 

(1) Amortized on a straight-line basis over estimated lives (2 to 17 years)
(2) Amortized on a straight-line basis over their estimated lives (1 to 5 years)
(3) Amortized on a straight-line basis over their estimated lives (1 to 10 years)
(4) Amortized on a straight-line basis over their contractual lives (2 to 5 years)
(5) Amortized on a straight-line basis over their estimated lives (5 to 10 years)
The following table summarizes the weighted average useful lives of definite-lived intangible assets acquired during 2023, 2022, and 2021:
202320222021
Customer relationships12.47.58.2
Trade name3.61.82.0
Customer backlog1.31.41.6
Non-compete3.63.63.8
Developed technology6.8— — 
Amortization expense for fiscal years 2023, 2022 and 2021 was $43,677, $32,341 and $33,498 respectively.
As of December 30, 2023, the future estimated aggregate amortization related to finite-lived intangible assets for the next five fiscal years and thereafter is as follows:
Fiscal YearAmount
2024$41,169 
202537,199 
202634,837 
202726,710 
202820,862 
Thereafter65,925 
Total$226,702 
XML 33 R17.htm IDEA: XBRL DOCUMENT v3.24.0.1
Accrued Liabilities
12 Months Ended
Dec. 30, 2023
Payables and Accruals [Abstract]  
Accrued Liabilities Accrued Liabilities
Accrued liabilities were as follows:
December 30, 2023December 31, 2022
Current portion of lease liability$13,972 $13,081 
Accrued vacation7,295 12,467 
Payroll and related taxes8,782 6,616 
Benefits5,433 5,160 
Accrued operating expenses8,701 4,540 
Other3,240 2,449 
Total$47,423 $44,313 
XML 34 R18.htm IDEA: XBRL DOCUMENT v3.24.0.1
Notes Payable and Other Obligations
12 Months Ended
Dec. 30, 2023
Payables and Accruals [Abstract]  
Notes Payable and Other Obligations Notes Payable and Other Obligations
Notes payable and other obligations were as follows:
December 30, 2023December 31, 2022
Senior credit facility$195,750 $33,750 
Uncollateralized promissory notes15,303 18,492 
Finance leases4,408 3,465 
Other obligations1,188 1,814 
Debt issuance costs, net of amortization(1,914)(2,672)
Total notes payable and other obligations214,735 54,849 
Current portion of notes payable and other obligations9,267 15,176 
Notes payable and other obligations, less current portion$205,468 $39,673 
Future contractual maturities of long-term debt as of December 30, 2023 are as follows:
Fiscal YearAmount
2024$9,267 
20255,659 
2026200,784 
2027677 
2028 and thereafter262 
Total$216,649 
Senior Credit Facility
On August 13, 2021 (the "Closing Date"), the Company amended and restated its Credit Agreement (the "Second A&R Credit Agreement"), originally dated December 7, 2016 and as amended to the Closing Date, with Bank of America, N.A. ("Bank of America"), as administrative agent, swingline lender and letter of credit issuer, the other lenders party thereto, and certain of the Company's subsidiaries as guarantors. Pursuant to the Second A&R Credit Agreement, the previously drawn term commitments of $150,000 and revolving commitments totaling $215,000 in the aggregate were converted into revolving commitments totaling $400,000 in the aggregate. These revolving commitments are available through August 13, 2026 (the "Maturity Date") and an aggregate amount of approximately $138,750 was drawn under the Second A&R Credit Amendment on the Closing Date to repay previously existing borrowings under the term and revolving facilities prior to such amendment and restatement. Borrowings under the Second A&R Credit Agreement are secured by a first priority lien on substantially all of the assets of the Company. The Second A&R Credit Agreement also includes an accordion feature permitting the Company to request an increase in the revolving facility under the Second A&R Credit Agreement by an additional amount of up to
$200,000 in the aggregate. As of December 30, 2023 and December 31, 2022, the outstanding balance on the Second A&R Credit Agreement was $195,750 and $33,750, respectively.
Borrowings under the Second A&R Credit Agreement bear interest at variable rates which are, at the Company's option, tied to a Eurocurrency rate equal to either Term SOFR (Secured Overnight Financing Rate) or Daily Simple SOFR, plus in each case an applicable margin, or a base rate denominated in U.S. dollars. Interest rates remain subject to change based on the Company's consolidated leverage ratio. As of December 30, 2023 the Company's interest rate was 6.7%.
The Second A&R Credit Agreement contains financial covenants that require NV5 Global to maintain a consolidated net leverage ratio (the ratio of the Company's pro forma consolidated net funded indebtedness to the Company's pro forma consolidated EBITDA for the most recently completed measurement period) of no greater than 4.00 to 1.00.
These financial covenants also require the Company to maintain a consolidated fixed charge coverage ratio of no less than 1.10 to 1.00 as of the end of any measurement period. As of December 30, 2023, the Company was in compliance with the financial covenants.

    The Second A&R Credit Agreement contains covenants that may have the effect of limiting the Company's ability to, among other things, merge with or acquire other entities, enter into a transaction resulting in a Change in Control, create certain new liens, incur certain additional indebtedness, engage in certain transactions with affiliates, or engage in new lines of business, or sell a substantial part of their assets. The Second A&R Credit Agreement also contains customary events of default, including (but not limited to) a default in the payment of principal or, following an applicable grace period, interest, breaches of the Company's covenants or warranties under the Second A&R Credit Agreement, payment default or acceleration of certain indebtedness, certain events of bankruptcy, insolvency or liquidation, certain judgments or uninsured losses, changes in control, and certain liabilities related to ERISA based plans.
The Second A&R Credit Agreement limits the payment of cash dividends (together with certain other payments that would constitute a "Restricted Payment" within the meaning of the Second A&R Credit Agreement and generally including dividends, stock repurchases, and certain other payments in respect to warrants, options, and other rights to acquire equity securities), unless the Consolidated Leverage Ratio would be less than 3.25 to 1.00 and available liquidity (defined as unrestricted, domestically held cash plus revolver availability) would be at least $30,000, in each case after giving effect to such payment.
Total debt issuance costs incurred and capitalized in connection with the issuance of the Second A&R Credit Agreement were $3,702. Total amortization of debt issuance costs was $758, $724, and $1,210 during 2023, 2022, and 2021, respectively.
Other Obligations
The Company has aggregate obligations related to acquisitions of $16,491 and $20,306 as of December 30, 2023 and December 31, 2022, respectively. As of December 30, 2023, the Company's weighted average interest rate on other outstanding obligations was 3.5%
XML 35 R19.htm IDEA: XBRL DOCUMENT v3.24.0.1
Contingent Consideration
12 Months Ended
Dec. 30, 2023
Commitments and Contingencies Disclosure [Abstract]  
Contingent Consideration Contingent Consideration
The following table summarizes the changes in the carrying value of estimated contingent consideration:
December 30, 2023December 31, 2022
Contingent consideration, beginning of the year$15,335 $8,328 
Additions for acquisitions610 6,299 
Reduction of liability for payments made(2,600)(2,264)
Increase (decrease) of liability related to re-measurement of fair value(9,280)2,972 
Total contingent consideration, end of the period4,065 15,335 
Current portion of contingent consideration3,922 10,854 
Contingent consideration, less current portion$143 $4,481 
During 2023 the Company recorded earn-out fair value adjustments of $9,280 that decreased the contingent consideration liability of acquisitions. During 2022, the Company recorded earn-out fair value adjustments of $2,972 that increased the contingent consideration liability of acquisitions.
XML 36 R20.htm IDEA: XBRL DOCUMENT v3.24.0.1
Leases
12 Months Ended
Dec. 30, 2023
Leases [Abstract]  
Leases Leases
The Company primarily leases property under operating leases and has six equipment operating leases for aircrafts used by its geospatial operations. The Company's property operating leases consist of various office facilities. The Company uses a portfolio approach to account for such leases due to the similarities in characteristics and applies an incremental borrowing rate based on estimates of rates the Company would pay for senior collateralized loans over a similar term. The Company's office leases with an initial term of 12 months or less are not recorded on the balance sheet. The Company accounts for lease components (e.g. fixed payments including rent, real estate taxes and common area maintenance costs) as a single lease component. Some of the Company's leases include one or more options to renew the lease term at its sole discretion; however, these are not included in the calculation of its lease liability or right-of-use ("ROU") lease asset because they are not reasonably certain of exercise.
The Company also leases vehicles through a fleet leasing program. The payments for the vehicles are based on the terms selected. The Company has determined that it is reasonably certain that the leased vehicles will be held beyond the period in which the entire capitalized value of the vehicle has been paid to the lessor. As such, the capitalized value is the delivered price of the vehicle. The Company's vehicle leases are classified as financing leases.

Supplemental balance sheet information related to the Company's operating and finance leases were as follows:
LeasesClassificationDecember 30, 2023December 31, 2022
Assets
Operating lease assets
Right-of-use lease asset, net (1)
$36,836 $39,314 
Finance lease assets
Property and equipment, net (1)
4,389 3,446 
Total leased assets$41,225 $42,760 
Liabilities
Current
OperatingAccrued liabilities$(13,972)$(13,081)
FinanceCurrent portion of notes payable and other obligations(1,220)(1,333)
Noncurrent
OperatingOther long-term liabilities(25,754)(28,452)
FinanceNotes payable and other obligations, less current portion(3,188)(2,132)
Total lease liabilities$(44,134)$(44,998)

(1)As of December 30, 2023, operating right of-use lease assets and finance lease assets are recorded net of accumulated amortization of $42,491 and $6,210, respectively. As of December 31, 2022, operating right-of-use lease assets and finance lease assets are recorded net of accumulated amortization of $35,646 and $4,864, respectively.

Supplemental balance sheet information related to the Company's operating and finance leases were as follows:
Weighted - Average Remaining Lease Term (Years)
December 30, 2023December 31, 2022
Operating leases3.74.0
Finance leases2.02.2
Weighted - Average Discount Rate
Operating leases4%4%
Finance leases7%7%
    
Supplemental cash flow information related to the Company's operating and finance lease liabilities were as follows:
Fiscal Year Ended
December 30, 2023December 31, 2022January 1, 2022
Operating cash flows from operating leases$14,903 $13,739 $14,081 
Financing cash flows from finance leases$1,346 $1,241 $1,274 
Right-of-use assets obtained in exchange for lease obligations
Operating leases$11,084 $7,058 $9,249 
The following table summarizes the components of lease cost recognized in the consolidated statements of net income and comprehensive income:
Fiscal Year Ended
Lease CostClassificationDecember 30, 2023December 31, 2022January 1, 2022
Operating lease costFacilities and facilities related$16,658 $15,724 $15,439 
Variable operating lease costFacilities and facilities related4,2223,8061,655
Finance lease cost
     Amortization of financing lease assets Depreciation and amortization1,3431,2391,250
     Interest on lease liabilitiesInterest expense165 121 154 
Total lease cost$22,388 $20,890 $18,498 

As of December 30, 2023, maturities of the Company's lease liabilities under its long-term operating leases and finance leases for the next five fiscal years and thereafter are as follows:
Fiscal YearOperating LeasesFinance Leases
2024$15,122 $1,305 
202511,751 1,379 
20267,936 1,206 
20273,880 778 
20281,599 372 
Thereafter2,346 106 
Total lease payments42,634 5,146 
Less: Interest(2,908)(738)
Present value of lease liabilities$39,726 $4,408 
Leases Leases
The Company primarily leases property under operating leases and has six equipment operating leases for aircrafts used by its geospatial operations. The Company's property operating leases consist of various office facilities. The Company uses a portfolio approach to account for such leases due to the similarities in characteristics and applies an incremental borrowing rate based on estimates of rates the Company would pay for senior collateralized loans over a similar term. The Company's office leases with an initial term of 12 months or less are not recorded on the balance sheet. The Company accounts for lease components (e.g. fixed payments including rent, real estate taxes and common area maintenance costs) as a single lease component. Some of the Company's leases include one or more options to renew the lease term at its sole discretion; however, these are not included in the calculation of its lease liability or right-of-use ("ROU") lease asset because they are not reasonably certain of exercise.
The Company also leases vehicles through a fleet leasing program. The payments for the vehicles are based on the terms selected. The Company has determined that it is reasonably certain that the leased vehicles will be held beyond the period in which the entire capitalized value of the vehicle has been paid to the lessor. As such, the capitalized value is the delivered price of the vehicle. The Company's vehicle leases are classified as financing leases.

Supplemental balance sheet information related to the Company's operating and finance leases were as follows:
LeasesClassificationDecember 30, 2023December 31, 2022
Assets
Operating lease assets
Right-of-use lease asset, net (1)
$36,836 $39,314 
Finance lease assets
Property and equipment, net (1)
4,389 3,446 
Total leased assets$41,225 $42,760 
Liabilities
Current
OperatingAccrued liabilities$(13,972)$(13,081)
FinanceCurrent portion of notes payable and other obligations(1,220)(1,333)
Noncurrent
OperatingOther long-term liabilities(25,754)(28,452)
FinanceNotes payable and other obligations, less current portion(3,188)(2,132)
Total lease liabilities$(44,134)$(44,998)

(1)As of December 30, 2023, operating right of-use lease assets and finance lease assets are recorded net of accumulated amortization of $42,491 and $6,210, respectively. As of December 31, 2022, operating right-of-use lease assets and finance lease assets are recorded net of accumulated amortization of $35,646 and $4,864, respectively.

Supplemental balance sheet information related to the Company's operating and finance leases were as follows:
Weighted - Average Remaining Lease Term (Years)
December 30, 2023December 31, 2022
Operating leases3.74.0
Finance leases2.02.2
Weighted - Average Discount Rate
Operating leases4%4%
Finance leases7%7%
    
Supplemental cash flow information related to the Company's operating and finance lease liabilities were as follows:
Fiscal Year Ended
December 30, 2023December 31, 2022January 1, 2022
Operating cash flows from operating leases$14,903 $13,739 $14,081 
Financing cash flows from finance leases$1,346 $1,241 $1,274 
Right-of-use assets obtained in exchange for lease obligations
Operating leases$11,084 $7,058 $9,249 
The following table summarizes the components of lease cost recognized in the consolidated statements of net income and comprehensive income:
Fiscal Year Ended
Lease CostClassificationDecember 30, 2023December 31, 2022January 1, 2022
Operating lease costFacilities and facilities related$16,658 $15,724 $15,439 
Variable operating lease costFacilities and facilities related4,2223,8061,655
Finance lease cost
     Amortization of financing lease assets Depreciation and amortization1,3431,2391,250
     Interest on lease liabilitiesInterest expense165 121 154 
Total lease cost$22,388 $20,890 $18,498 

As of December 30, 2023, maturities of the Company's lease liabilities under its long-term operating leases and finance leases for the next five fiscal years and thereafter are as follows:
Fiscal YearOperating LeasesFinance Leases
2024$15,122 $1,305 
202511,751 1,379 
20267,936 1,206 
20273,880 778 
20281,599 372 
Thereafter2,346 106 
Total lease payments42,634 5,146 
Less: Interest(2,908)(738)
Present value of lease liabilities$39,726 $4,408 
XML 37 R21.htm IDEA: XBRL DOCUMENT v3.24.0.1
Commitments and Contingencies
12 Months Ended
Dec. 30, 2023
Commitments and Contingencies Disclosure [Abstract]  
Commitments and Contingencies Commitments and Contingencies
Litigation, Claims, and Assessments
The Company is subject to certain claims and lawsuits typically filed against the engineering, consulting and construction profession, alleging primarily professional errors or omissions. The Company carries professional liability insurance, subject to certain deductibles and policy limits, against such claims. However, in some actions, parties are seeking damages that exceed our insurance coverage or for which we are not insured. While management does not believe that the resolution of these claims will have a material adverse effect, individually or in aggregate, on its financial position, results of operations or cash flows, management acknowledges the uncertainty surrounding the ultimate resolution of these matters.
XML 38 R22.htm IDEA: XBRL DOCUMENT v3.24.0.1
Stock-Based Compensation
12 Months Ended
Dec. 30, 2023
Share-Based Payment Arrangement [Abstract]  
Stock-Based Compensation Stock-Based Compensation
In October 2011, the Company's stockholders approved the NV5 Global, Inc. 2011 Equity Incentive Plan, which was subsequently amended and restated in March 2013 (as amended, the “2011 Equity Plan”). The 2011 Equity Incentive Plan expired pursuant to its terms in March 2023, accordingly no further grants were made following the date of such expiration. Prior to such expiration, the Company's Board adopted the NV5 Global, Inc. 2023 Equity Incentive Plan (the "2023 Equity Plan") to replace the 2011 Equity Plan, subject to stockholder approval. On June 13, 2023, the Company's stockholders approved the 2023 Equity Plan. The 2023 Equity Plan provides directors, executive officers, and other employees of the Company with additional incentives by allowing them to acquire ownership interest in the business and, as a result, encouraging them to contribute to the Company’s success. The Company may provide these incentives through the grant of stock options, stock appreciation rights, restricted stock, restricted stock units, performance shares and units, and other cash-based or stock-based awards. As of December 30, 2023, 2,148,474 shares of common stock are authorized, reserved, and registered for issuance under the 2023 Equity Plan. The restricted shares of common stock granted generally provide for service-based cliff vesting after two to four years following the grant date.
The following summarizes the activity of restricted stock awards during fiscal years 2023, 2022, and 2021:
Share UnitsWeighted Average Grant Date Fair Value
Unvested shares as of January 2, 2021770,183 $57.20 
Granted265,644 $91.31 
Vested(257,435)$65.14 
Forfeited(33,902)$58.25 
Unvested shares as of January 1, 2022744,490 $66.34 
Granted203,149 $118.33 
Vested(131,973)$63.72 
Forfeited(101,873)$67.08 
Unvested shares as of December 31, 2022713,793 $81.25 
Granted288,727 $106.37 
Vested(285,865)$48.98 
Forfeited(39,895)$97.24 
Unvested shares as of December 30, 2023676,760 $104.63 
Stock-based compensation expense is recognized on a straight-line basis over the vesting period, net of actual forfeitures. Stock-based compensation expense relating to restricted stock awards during fiscal years ended 2023, 2022, and 2021 was $22,379, $19,326, and $16,301, respectively. Stock-based compensation expense during fiscal 2023 and 2022 includes $2,186 and $1,131, respectively, of expense related to the Company's liability-classified awards. The total estimated amount of the liability-classified awards for fiscal 2023 is approximately $7,019. Approximately $34,186 of deferred compensation, which is expected to be recognized over the remaining weighted average vesting period of 1.45 years, is unrecognized as of December 30, 2023. The total fair value of restricted shares vested during fiscal years 2023, 2022, and 2021 was $29,792, $17,137, and $24,823, respectively.
XML 39 R23.htm IDEA: XBRL DOCUMENT v3.24.0.1
Employee Benefit Plan
12 Months Ended
Dec. 30, 2023
Retirement Benefits [Abstract]  
Employee Benefit Plan Employee Benefit Plan
The Company sponsors 401(k) plans for which employees meeting certain age and length of service requirements may contribute up to the defined statutory limit. The 401(k) plans allow for the Company to make matching and profit sharing contributions in such amounts as may be determined by the Board of Directors. The Company recognized expenses of $732, $1,648, and $334, respectively, related to the 401(k) plans for fiscal years 2023, 2022, and 2021, respectively.
XML 40 R24.htm IDEA: XBRL DOCUMENT v3.24.0.1
Income Taxes
12 Months Ended
Dec. 30, 2023
Income Tax Disclosure [Abstract]  
Income Taxes Income Taxes
Income tax expense for years 2023, 2022, and 2021 were as follows:
Fiscal Years Ended
December 30, 2023December 31, 2022January 1, 2022
Current:
Federal$22,085 $20,977 $14,251 
State5,633 9,040 7,353 
Foreign1,583 943 400 
Total current income tax expense29,301 30,960 22,004 
Deferred:
Federal(23,235)(15,401)(3,740)
State(2,487)(3,161)(3,238)
Foreign18 (68)
Total deferred income tax benefit(25,704)(18,559)(7,046)
Total income tax expense$3,597 $12,401 $14,958 
Temporary differences comprising the net deferred income tax liability shown in the Company’s consolidated balance sheets were as follows:
December 30, 2023December 31, 2022
Deferred tax asset:
Lease liabilities$10,381 $10,732 
Tax carryforwards2,328 3,863 
Accrued compensation11,275 11,945 
Allowance for doubtful accounts1,487 1,559 
Capitalized Research and Development Costs43,140 14,795 
Other1,998 1,025 
Total deferred tax asset$70,609 $43,919 
Deferred tax liability:
Acquired intangibles$(49,715)$(30,226)
Right-of-use assets(9,746)(10,361)
Depreciation and amortization(11,423)(9,467)
Other(2,562)(758)
Total deferred tax liability$(73,446)$(50,812)
Net deferred tax liability$(2,837)$(6,893)

As of December 30, 2023 and December 31, 2022, the Company had net non-current deferred tax liabilities of $2,837 and $6,893, respectively. No material valuation allowances are recorded against the Company’s deferred income tax assets as of December 30, 2023 and December 31, 2022. Deferred income tax liabilities primarily relate to depreciation and intangible assets, which are partially offset by deferred tax assets related to the capitalization of research and development costs under Section 174 of the Internal Revenue Code, and other deferred tax items. Beginning in 2022, the Tax Cuts and Jobs Act eliminates the option to currently deduct research and development costs in the period incurred and requires taxpayers to capitalize and amortize such costs over five years pursuant to Section 174 of the Internal Revenue Code.
As of December 30, 2023, the Company has $2,026 of tax-effected U.S. federal net operating loss carryforwards that will not expire, $82 of foreign net operating loss carryforwards (net of valuation allowance) that will not expire, and $172 of tax-effected state net operating loss carryforwards, of which $123 will begin to expire in the year 2034 and $49 that will not expire. The majority of the net operating loss carryforwards are subject to limitation under the Internal Revenue Code of 1986, as amended ("IRC") Section 382. Additionally, as of December 30, 2023, the Company has $48 of tax-effected state tax credit carryforwards that will expire in the year 2042.
Total income tax expense was different than the amount computed by applying the Federal statutory rate as follows:
Fiscal Years Ended
December 30, 2023December 31, 2022January 1, 2022
Tax at federal statutory rate$10,124 $13,099 $13,042 
State taxes, net of Federal benefit2,683 3,853 3,908 
Stock-based compensation(2,190)(1,495)(1,432)
Federal and state tax credits(9,064)(3,983)(1,242)
Changes in unrecognized tax position652 (73)96 
Other1,392 1,000 586 
Total income tax expense$3,597 $12,401 $14,958 
The Company’s consolidated effective income tax rate was 7.5%, 19.9%, and 24.1% for fiscal years 2023, 2022, and 2021, respectively.
The Company and its subsidiaries file income tax returns in the U.S. Federal jurisdiction and various state and foreign jurisdictions. The Company evaluates tax positions for recognition using a more-likely-than-not recognition threshold, and those tax positions eligible for recognition are measured as the largest amount of tax benefit that is greater than 50% likely of being realized upon the effective settlement with a taxing authority that has full knowledge of all relevant information. Fiscal years 2012 through 2014 are considered open tax years in the State of California. Fiscal years 2020 through 2023 are considered open tax years in the U.S. Federal jurisdiction, state jurisdictions, including the State of California, and foreign jurisdictions.
As of December 30, 2023 and December 31, 2022, the Company had $1,633 and $966, respectively, of gross unrecognized tax benefits, which if recognized, $1,440 and $847 would affect our effective tax rate. The Company expects to reverse an immaterial amount of unrecognized tax benefits in the next 12 months. A reconciliation of the beginning and ending amount of unrecognized tax benefits were as follows:
December 30, 2023December 31, 2022January 1, 2022
Balance, beginning of period$966 $1,071 $1,022 
Additions based on tax positions related to the current year447 131 124 
Additions for tax positions of prior years297 — 
Lapse of statute of limitations(77)(103)(45)
Reductions for positions of prior years— (139)(30)
Balance, end of period$1,633 $966 $1,071 

The Company records accrued interest and penalties related to unrecognized tax benefits in income tax expense. Accrued interest and penalties related to unrecognized tax benefits in the Consolidated Balance Sheets were $378 and $340 as of December 30, 2023 and December 31, 2022, respectively.

In 2021, the Organization for Economic Co-operation and Development (“OECD”) released Pillar Two Global Anti-Base Erosion model rules, designed to ensure large corporations are taxed at a minimum rate of 15% in all countries of operation. The United States has not yet enacted legislation implementing the Pillar Two rules, however, they have been enacted or substantively enacted in certain jurisdictions in which the Company operates. We are continuing to assess and
monitor the Pillar Two rules, however, we do not expect their impact to be material based on the legislation enacted at this stage.
XML 41 R25.htm IDEA: XBRL DOCUMENT v3.24.0.1
Reportable Segments
12 Months Ended
Dec. 30, 2023
Segment Reporting [Abstract]  
Reportable Segments Reportable Segments
The Company's Chief Executive Officer, who is the chief operating decision maker ("CODM"), has organized the Company into three operating and reportable segments as follows:
Infrastructure ("INF"), which includes the Company's engineering, civil program management, utility services, and construction quality assurance practices,
Building, Technology & Sciences ("BTS"), which includes the Company's environmental health sciences, clean energy consulting, buildings and program management, and MEP & technology design practices, and
Geospatial Solutions ("GEO"), which includes the Company's geospatial solution practices.
The Company evaluates the performance of these reportable segments based on their respective operating income before the effect of amortization expense related to acquisitions and other unallocated corporate expenses. The following tables set forth summarized financial information concerning our reportable segments:
Fiscal Years Ended
December 30, 2023December 31, 2022January 1, 2022
Gross revenues
INF$374,986 $395,878 $383,725 
BTS222,804 232,577 185,995 
GEO263,949 158,323 136,986 
Total gross revenues$861,739 $786,778 $706,706 
Segment income before taxes
INF$65,608 $68,259 $71,838 
BTS38,810 43,810 35,221 
GEO51,633 42,640 33,027 
Total Segment income before taxes156,051 154,709 140,086 
Corporate(1)
(107,841)(92,335)(77,981)
Total income before taxes$48,210 $62,374 $62,105 
(1) Includes amortization of intangibles of $43,677, $32,341, and $33,498 for the fiscal years ended 2023, 2022, and 2021, respectively.
December 30, 2023December 31, 2022
Assets
INF$222,435 $226,301 
BTS243,154 231,049 
GEO603,630 366,385 
Corporate(1)
101,373 111,988 
Total assets$1,170,592 $935,723 
(1) Corporate assets consist of intercompany eliminations and assets not allocated to segments including cash and cash equivalents and certain other assets.
Substantially all of the Company's assets are located in the United States.
The Company disaggregates its gross revenues from contracts with customers by geographic location, customer-type, and contract-type for each of its reportable segments. Disaggregated revenues include the elimination of inter-segment revenues which has been allocated to each segment. The Company believes this best depicts how the nature, amount, timing, and uncertainty of its revenues and cash flows are affected by economic factors. No sales to an individual customer or country other than the United States accounted for more than 10% of gross revenue for fiscal years 2023, 2022, and 2021. Gross revenue, classified by the major geographic areas in which our customers were located, were as follows:
Fiscal Year 2023
INFBTSGEOTotal
United States$374,986 $184,338 $248,262 $807,586 
Foreign— 38,466 15,687 54,153 
Total gross revenues$374,986 $222,804 $263,949 $861,739 

Fiscal Year 2022
INFBTSGEOTotal
United States$395,878 $204,036 $154,584 $754,498 
Foreign— 28,541 3,739 32,280 
Total gross revenues$395,878 $232,577 $158,323 $786,778 

Fiscal Year 2021
INFBTSGEOTotal
United States$383,725 $167,057 $134,003 $684,785 
Foreign— 18,938 2,983 21,921 
Total gross revenues$383,725 $185,995 $136,986 $706,706 

Gross revenue by customer were as follows:
Fiscal Year 2023
INFBTSGEOTotal
Public and quasi-public sector$301,427 $61,313 $223,109 $585,849 
Private sector73,559 161,491 40,840 275,890 
Total gross revenues$374,986 $222,804 $263,949 $861,739 

Fiscal Year 2022
INFBTSGEOTotal
Public and quasi-public sector$312,817 $61,726 $128,786 $503,329 
Private sector83,061 170,851 29,537 283,449 
Total gross revenues$395,878 $232,577 $158,323 $786,778 

Fiscal Year 2021
INFBTSGEOTotal
Public and quasi-public sector$304,753 $66,964 $86,628 $458,345 
Private sector78,972 119,031 50,358 248,361 
Total gross revenues$383,725 $185,995 $136,986 $706,706 
Gross revenues by contract type were as follows:
Fiscal Year 2023
INFBTSGEOTotal
Cost-reimbursable contracts$359,423 $162,721 $256,069 $778,213 
Fixed-unit price contracts15,563 60,083 7,880 83,526 
Total gross revenues$374,986 $222,804 $263,949 $861,739 

Fiscal Year 2022
INFBTSGEOTotal
Cost-reimbursable contracts$379,818 $155,632 $157,992 $693,442 
Fixed-unit price contracts16,060 76,945 331 93,336 
Total gross revenues$395,878 $232,577 $158,323 $786,778 


Fiscal Year 2021
INFBTSGEOTotal
Cost-reimbursable contracts$367,310 $133,272 $136,683 $637,265 
Fixed-unit price contracts16,415 52,723 303 69,441 
Total gross revenues$383,725 $185,995 $136,986 $706,706 
XML 42 R26.htm IDEA: XBRL DOCUMENT v3.24.0.1
Subsequent Events
12 Months Ended
Dec. 30, 2023
Subsequent Events [Abstract]  
Subsequent Events Subsequent Events
On January 19, 2024, the Company acquired all of the outstanding equity interests in Causseaux, Hewett, & Walpole, LLC, a provider of engineering and infrastructure consulting services in Florida. The aggregate purchase price is up to $59,500, including $45,000 of cash at closing, $2,000 of the Company's common stock, and a potential earn-out of up to $12,500.
XML 43 R27.htm IDEA: XBRL DOCUMENT v3.24.0.1
Summary of Significant Accounting Policies (Policies)
12 Months Ended
Dec. 30, 2023
Accounting Policies [Abstract]  
Basis of Presentation and Principles of Consolidation
Basis of Presentation and Principles of Consolidation
The consolidated financial statements of the Company are presented in U.S. dollars in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) and have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”). The consolidated financial statements include the accounts of the Company and its subsidiaries. All intercompany transactions and balances have been eliminated in consolidation.
Fiscal Year
Fiscal Year
The Company reports its financial results on a 52/53-week fiscal year ending on the Saturday closest to December 31st (whether or not in the following calendar year), with interim calendar quarters ending on the Saturday closest to the end of such calendar quarter (whether or not in the following calendar quarter). As a result, fiscal 2023, 2022, and 2021 included 52 weeks.
Use of Estimates
Use of Estimates
The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts in the consolidated financial statements and accompanying notes. These estimates and assumptions are based on management’s most recent assessment of underlying facts and circumstances using the most recent information available. Actual results could differ significantly from these estimates and assumptions, and the differences could be material.
Estimates and assumptions are evaluated periodically and adjusted when necessary. The more significant estimates affecting amounts reported in the consolidated financial statements include the following:
Fair value estimates used in accounting for business combinations including the valuation of identifiable intangible assets and contingent consideration,
Fair value estimates in determining the fair value of our reporting units for goodwill impairment assessment,
Revenue recognition over time, and
Allowances for uncollectible accounts.
Cash and Cash Equivalents
Cash and Cash Equivalents
Cash and cash equivalents include cash on deposit with financial institutions and investments in high quality overnight money market funds, all of which have maturities of three months or less when purchased. From time to time the Company may be exposed to credit risk with its bank deposits in excess of the Federal Deposit Insurance Corporation insurance limits and with uninsured money market investments. Management believes cash and cash equivalent balances are not exposed to significant credit risk due to the financial position of the depository institutions in which those deposits are held.
Concentration of Credit Risk
Concentration of Credit Risk
Trade receivable balances carried by the Company are comprised of accounts from a diverse client base across a broad range of industries and are not collateralized. The Company did not have any clients representing more than 10% of our gross revenues during 2023, 2022, or 2021; however, 26%, 28% and 26% of the Company’s gross revenues for fiscal years 2023, 2022, and 2021, respectively, are from California-based projects. During fiscal years 2023, 2022, and 2021 approximately 68%, 64% and 65%, respectively, of our gross revenues were attributable to the public and quasi-public sector. Management continually evaluates the creditworthiness of these and future clients and provides for bad debt reserves as necessary.
Fair Value of Financial Instruments and Fair Value of Acquisitions
Fair Value of Financial Instruments
Fair value is defined as the amount that would be received for selling an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date and is measured using inputs in one of the following three categories:
Level 1 measurements are based on unadjusted quoted prices in active markets for identical assets or liabilities that we have the ability to access. Valuation of these items does not entail a significant amount of judgment. 
Level 2 measurements are based on quoted prices for similar assets or liabilities in active markets, quoted prices for identical or similar assets or liabilities in markets that are not active or market data other than quoted prices that are observable for the assets or liabilities.
Level 3 measurements are based on unobservable data that are supported by little or no market activity and are significant to the fair value of the assets or liabilities.
The Company considers cash and cash equivalents, accounts receivable, accounts payable, income taxes payable, accrued liabilities, and debt obligations to meet the definition of financial instruments. As of December 30, 2023, and December 31, 2022, the carrying amount of cash and cash equivalents, accounts receivable, accounts payable, income taxes payable, and accrued liabilities approximate their fair value due to the relatively short period of time between their origination and their expected realization or payment. The carrying amounts of debt obligations approximate their fair values as the terms are comparable to terms currently offered by local lending institutions for arrangements with similar terms to industry peers with comparable credit characteristics.
Fair Value of Acquisitions
The Company applies the provisions of the Financial Accounting Standards Board (“FASB”) Accounting Standards Codification (“ASC”) 805, Business Combinations, in the accounting for its acquisitions, which requires recognition of the assets acquired and the liabilities assumed at their acquisition date fair values, separately from goodwill. Goodwill as of the acquisition date is measured as the excess of consideration transferred and the net of the acquisition date fair values of the tangible and identifiable intangible assets acquired and liabilities assumed. The allocation of the purchase price to identifiable intangible assets is based on valuations performed to determine the fair values of such assets as of the acquisition dates. Generally, the Company engages a third-party independent valuation specialist to assist in management’s determination of fair values of tangible and intangible assets acquired and liabilities assumed. The fair values of earn-out arrangements are included
as part of the purchase price of the acquired companies on their respective acquisition dates. The Company estimates the fair value of contingent earn-out payments as part of the initial purchase price and records the estimated fair value of contingent consideration as a liability on the consolidated balance sheet. Changes in the estimated fair value of contingent earn-out payments are included in General and Administrative expenses on the Consolidated Statements of Net Income and Comprehensive Income.
Several factors are considered when determining contingent consideration liabilities as part of the purchase price, including whether: (i) the valuation of the acquisitions is not supported solely by the initial consideration paid, and the contingent earn-out formula is a critical and material component of the valuation approach to determining the purchase price; and (ii) the former owners of the acquired companies that remain as key employees receive compensation other than contingent earn-out payments at a reasonable level compared with the compensation of other key employees. The contingent earn-out payments are not affected by employment termination.
The Company reviews and re-assesses the estimated fair value of contingent consideration liabilities on a quarterly basis, and the updated fair value could differ from the initial estimates. The Company measures contingent consideration recognized in connection with business combinations at fair value on a recurring basis using significant unobservable inputs classified as Level 3 inputs. The Company generally uses a Monte Carlo simulation-based option pricing model, based on key inputs requiring significant judgments and estimates to be made by the Company, including projections of future earnings over the earn-out period. Significant increases or decreases to these inputs could result in a significantly higher or lower liability with a higher liability capped by the contractual maximum of the contingent consideration liabilities. Ultimately, the liability will be equivalent to the amount paid, and the difference between the fair value estimate as of the acquisition date and amount paid will be recorded in earnings.
Property and Equipment
Property and Equipment
Property and equipment is stated at cost. Property and equipment acquired in a business combination is stated at fair value at the acquisition date. The Company capitalizes the cost of improvements to property and equipment that increase the value or extend the useful lives of the assets. Normal repair and maintenance costs are expensed as incurred. Depreciation and amortization is computed on a straight-line basis over the following estimated useful lives of the assets. Leasehold improvements are amortized on a straight-line basis over the lesser of their estimated useful lives or the remaining terms of the related lease agreement.
AssetDepreciation Period (in years)
Office furniture and equipment4
Computer equipment3
Survey and field equipment
5 - 15
Leasehold improvementsLesser of the estimated useful lives or remaining term of the lease
Property and equipment balances are periodically reviewed by management for impairment whenever events or changes in circumstances indicate that the carrying value of the asset may not be recoverable. If an indicator of impairment exists, the Company compares the estimated future cash flows of the asset, on an undiscounted basis, to the carrying value of the asset. If the undiscounted cash flows exceed the carrying value, no impairment is indicated. If the undiscounted cash flows do not exceed the carrying value, then impairment is measured as the difference between fair value and carrying value, with fair value typically based on a discounted cash flow model. During fiscal years 2023, 2022 and 2021, no impairment charge relating to property and equipment was recognized.
Goodwill and Intangible Assets
Goodwill and Intangible Assets
Goodwill is the excess of consideration paid for an acquired entity over the amounts assigned to assets acquired, including other identifiable intangible assets and liabilities assumed in a business combination. To determine the amount of goodwill resulting from a business combination, the Company performs an assessment to determine the acquisition date fair value of the acquired company’s tangible and identifiable intangible assets and liabilities.
The Company evaluates goodwill annually for impairment on August 1, or whenever events or changes in circumstances indicate the asset may be impaired, using the quantitative method. An entity has the option to first assess
qualitative factors to determine whether the existence of events or circumstances leads to a determination that it is more likely than not that the fair value of a reporting unit is less than its carrying amount. These qualitative factors include macroeconomic and industry conditions, cost factors, overall financial performance, and other relevant entity-specific events. If the entity determines that this threshold is met, then the Company applies a one-step quantitative test and records the amount of goodwill impairment as the excess of a reporting unit's carrying amount over its fair value, not to exceed the total amount of goodwill allocated to the reporting unit. The Company determines fair value through multiple valuation techniques, and weights the results accordingly. Subjective and complex judgments are required in assessing whether an event of impairment of goodwill has occurred, including assumptions and estimates used to determine the fair value of its reporting units. The Company conducts its annual impairment tests on the goodwill using the quantitative method of evaluating goodwill.
Identifiable intangible assets primarily include customer backlog, customer relationships, trade names, non-compete agreements, and developed technology. Amortizable intangible assets are amortized on a straight-line basis over their estimated useful lives and reviewed for impairment whenever events or changes in circumstances indicate that the assets may be impaired. If an indicator of impairment exists, the Company compares the estimated future cash flows of the asset, on an undiscounted basis, to the carrying value of the asset. If the undiscounted cash flows exceed the carrying value, no impairment is indicated. If the undiscounted cash flows do not exceed the carrying value, then impairment, if any, is measured as the difference between fair value and carrying value, with fair value typically based on a discounted cash flow model.
Revenue Recognition
Revenue Recognition
The Company utilizes the contract method under ASC Topic 606, Revenue from Contracts with Customers (“Topic 606”), which allows companies to account for contracts on a contract-by-contract basis. For the Company's time and materials contracts, it applies the as-invoiced practical expedient, which permits us to recognize revenue as the right to invoice for services performed.
To determine the proper revenue recognition method, the Company evaluates whether two or more contracts should be combined and accounted for as one single contract and whether the combined or single contract should be accounted for as more than one performance obligation. The majority of the Company's contracts have a single performance obligation as the promise to transfer the individual goods or services is not separately identifiable from other promises in the contracts and, therefore, is not distinct.
The Company’s performance obligations are satisfied as work progresses or at a point in time. Revenue on the Company's cost-reimbursable contracts is recognized over time using direct costs incurred or direct costs incurred to date as compared to the estimated total direct costs for performance obligations because it depicts the transfer of control to the customer. Contract costs include labor, sub-consultant services, and other direct costs. Gross revenues from services transferred to customers over time accounted for 90%, 88%, and 90% of the Company’s revenues during fiscal years 2023, 2022, and 2021, respectively.
Gross revenues recognized under lump-sum contracts were $427,462, $343,538, and $309,624 during the fiscal years 2023, 2022, and 2021, respectively.
Gross revenues from services transferred to customers at a point in time is recognized when the customer obtains control of the asset, which is generally upon delivery and acceptance by the customer of the reports and/or analysis performed. Gross revenue from services transferred to customers at a point in time accounted for 10%, 12%, and 10% of the Company’s revenues during fiscal years 2023, 2022, and 2021, respectively.
As of December 30, 2023, the Company had $849,515 of remaining performance obligations, of which $673,235 is expected to be recognized over the next 12 months and the majority of the balance over the next 24 months. Contracts for which work authorizations have been received are included in performance obligations. Performance obligations include only those amounts that have been funded and authorized and does not reflect the full amounts the Company may receive over the term of such contracts. In the case of non-government contracts and project awards, performance obligations include future revenue at contract or customary rates, excluding contract renewals or extensions that are at the discretion of the client. For contracts with a not-to-exceed maximum amount, the Company includes revenue from such contracts in performance obligations to the extent of the remaining estimated amount.
Contract modifications are common in the performance of our contracts. Contracts modified typically result from changes in scope, specifications, design, performance, sites, or period of completion. In most cases, contract modifications are for services that are not distinct, and, therefore, are accounted for as part of the existing contract.
Contract estimates are based on various assumptions to project the outcome of future events. These assumptions are dependent upon the accuracy of a variety of estimates, including engineering progress, achievement of milestones, labor productivity, and cost estimates. Due to uncertainties inherent in the estimation process, it is possible that actual completion costs may vary from estimates. If estimated total costs on contracts indicate a loss or reduction to the percentage of total contract revenues recognized to date, these losses or reductions are recognized in the period in which the revisions are known. The effect of revisions to revenues, estimated costs to complete contracts, including penalties, incentive awards, change orders, claims, and anticipated losses are recorded on the cumulative catch-up basis in the period in which the revisions are identified and the loss can be reasonably estimated. Such revisions could occur in any reporting period and the effects on the results of operations for that reporting period may be material depending on the size of the project or the adjustment. During fiscal years 2023, 2022, and 2021 the cumulative catch-up adjustments for contract modifications were not material.
A significant amount of the Company’s revenues are derived under multi-year contracts. The Company enters into contracts with its clients that contain two principal types of pricing provisions: cost-reimbursable and fixed-unit price.
Cost-reimbursable contracts consist of the following:
Time and materials contracts, which are common for smaller scale professional and technical consulting and certification services projects. Under these types of contracts, there is no predetermined fee. Instead, the Company negotiates hourly billing rates and charges the clients based upon actual hours expended on a project. In addition, any direct project expenditures are passed through to the client and are typically reimbursed. These contracts may have an initial not-to-exceed or guaranteed maximum price provision.
Cost-plus contracts are the predominant contracting method used by U.S. Federal, state, and local governments. Under these types of contracts, the Company charges clients for its costs, including both direct and indirect costs, plus a negotiated fee. The total estimated cost plus the negotiated fee represents the total contract value.
Lump-sum contracts typically require the performance of all of the work under the contract for a specified lump-sum fee, subject to price adjustments if the scope of the project changes or unforeseen conditions arise. Many of the Company’s lump-sum contracts are negotiated and arise in the design of projects with a specified scope and project deliverables. In most cases, we can bill additional fees if the construction schedule is modified and lengthened.
Fixed-unit price contracts typically require the performance of an estimated number of units of work at an agreed price per unit, with the total payment under the contract determined by the actual number of units performed.
Federal Acquisition Regulations (“FAR”), which are applicable to the Company’s federal government contracts and may be incorporated in local and state agency contracts, limit the recovery of certain specified indirect costs on contracts. Cost-plus contracts covered by FAR or certain state and local agencies also may require an audit of actual costs and provide for upward or downward adjustments if actual recoverable costs differ from billed recoverable costs.
Contract Balances
The timing of revenue recognition, billings, and cash collections results in billed receivables, unbilled receivables (contract assets), and billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities) on the Consolidated Balance Sheets.
Billed receivables, net represents amounts billed to clients that remain uncollected as of the balance sheet date. The amounts are stated at their estimated realizable value. The Company maintains an allowance for doubtful accounts to provide for the estimated amount of receivables that will not be collected. The allowance is estimated based on management’s evaluation of the contracts involved and the financial condition of clients. Factors the Company considers include, but are not limited to:
Client type (governmental or commercial client),
Historical performance,
Historical collection trends, and
General economic conditions.
Billed receivables are generally collected within less than 12 months. The allowance is increased by the Company’s provision for doubtful accounts which is charged against income. All recoveries on receivables previously charged off are included in income, while direct charge-offs of receivables are deducted from the allowance.
Unbilled receivables, net represents recognized amounts pending billing pursuant to contract terms or accounts billed after period end, and are expected to be billed and collected within the next 12 months. Generally, billing occurs subsequent to revenue recognition, resulting in contract assets. Unbilled receivables (contract assets) are generally classified as current.
In certain circumstances, the contract may allow for billing terms that result in the cumulative amounts billed in excess of revenues recognized. “Billings in excess of costs and estimated earnings on uncompleted contracts” represents billings in excess of revenues recognized on these contracts as of the reporting date. This liability is generally classified as current.
Advertising
Advertising
Advertising costs are charged to expense in the period incurred and amounted to $2,767, $1,977, and $895 during fiscal years 2023, 2022, and 2021, respectively, which are included in General and Administrative Expenses on the accompanying Consolidated Statements of Net Income and Comprehensive Income.
Income Taxes
Income Taxes
The Company accounts for income taxes in accordance with ASC Topic No. 740 “Income Taxes” (“Topic No. 740”). Deferred income taxes reflect the impact of temporary differences between amounts of assets and liabilities for financial reporting purposes and such amounts as measured by tax laws. A valuation allowance against the Company’s deferred tax assets is recorded when it is more likely than not that some portion or all of the deferred tax assets will not be realized. In determining the need for a valuation allowance, management is required to make assumptions and to apply judgment, including forecasting future earnings, taxable income, and the mix of earnings in the jurisdictions in which the Company operates. Management periodically assesses the need for a valuation allowance based on the Company’s current and anticipated results of operations. The need for and the amount of a valuation allowance can change in the near term if operating results and projections change significantly.
The Company recognizes the consolidated financial statement benefit of a tax position only after determining that the relevant tax authority would more likely than not sustain the position following an audit. For tax positions meeting the more likely-than-not threshold, the amount recognized in the consolidated financial statements is the largest benefit that has a greater than 50 percent likelihood of being realized upon ultimate settlement with the relevant tax authority. The Company applies the uncertain tax position guidance to all tax positions for which the statute of limitations remains open. The Company’s policy is to classify interest and penalties as income tax expense.
Recently Adopted Accounting Pronouncements and Accounting Pronouncements Not Yet Adopted
Recently Adopted Accounting Pronouncements
None.
Accounting Pronouncements Not Yet Adopted
Segment Reporting
In November 2023, the FASB issued ASU No. 2023-07, Improvements to Reportable Segment Disclosures ("ASU 2023-07"). This ASU updates reportable segment disclosure requirements by requiring disclosures of significant reportable
segment expenses that are regularly provided to the Chief Operating Decision Maker ("CODM") and included within each reported measure of a segment's profit or loss. This ASU also requires disclosure of the title and position of the individual identified as the CODM and an explanation of how the CODM uses the reported measures of the segment's profit or loss in assessing performance and deciding how to allocate resources. This ASU is effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. Adoption of the ASU should be applied retrospectively to all prior periods presented in the financial statements. Early adoption is permitted. The Company is currently evaluating the impact of adopting ASU 2023-07 and expects it to result in additional disclosures when adopted.
Income Taxes
In December 2023, the FASB issued ASU No. 2023-09, Improvements to Income Tax Disclosures ("ASU 2023-09"). This ASU requires disaggregated information about a reporting entity's effective tax rate reconciliations as well as additional information on income taxes paid. This ASU is effective on a prospective basis for annual periods beginning after December 15, 2024. Early adoption is also permitted for annual financial statements that have not yet been issued or made available for issuance. The Company is currently evaluating the impact of adopting ASU 2023-09 and expects it to result in additional disclosures when adopted.
XML 44 R28.htm IDEA: XBRL DOCUMENT v3.24.0.1
Summary of Significant Accounting Policies (Tables)
12 Months Ended
Dec. 30, 2023
Accounting Policies [Abstract]  
Schedule of Property Plant and Equipment, Estimated Useful Life
AssetDepreciation Period (in years)
Office furniture and equipment4
Computer equipment3
Survey and field equipment
5 - 15
Leasehold improvementsLesser of the estimated useful lives or remaining term of the lease
XML 45 R29.htm IDEA: XBRL DOCUMENT v3.24.0.1
Earnings per Share (Tables)
12 Months Ended
Dec. 30, 2023
Earnings Per Share [Abstract]  
Schedule of Reconciliation of The Net Income and Weighted Average Shares Outstanding for the Calculation of Basic and Diluted Earnings Per Share
The following table represents a reconciliation of the net income and weighted average shares outstanding for the calculation of basic and diluted earnings per share during fiscal years 2023, 2022 and 2021:
Fiscal Years Ended
December 30, 2023December 31, 2022January 1, 2022
Numerator:
Net income – basic and diluted$44,613 $49,973 $47,147 
Denominator:
Basic weighted average shares outstanding15,086,040 14,753,738 14,135,333 
Effect of dilutive non-vested restricted shares and units363,759 490,981 498,116 
Effect of issuable shares related to acquisitions24,527 15,467 22,932 
Diluted weighted average shares outstanding15,474,326 15,260,186 14,656,381 
XML 46 R30.htm IDEA: XBRL DOCUMENT v3.24.0.1
Business Acquisitions (Tables)
12 Months Ended
Dec. 30, 2023
Business Combinations [Abstract]  
Schedule of the Fair Values of the Assets Acquires and Liabilities Assumed
The following table summarizes the fair values of the assets acquired and liabilities assumed as of the acquisition dates for acquisitions closed during fiscal years 2023, 2022, and 2021:
202320222021
VISAximOtherTotalTotalTotal
Cash$7,027 $5,419 $1,316 $13,762 $— $1,480 
Billed and unbilled receivables, net5,042 13,937 1,609 20,588 1,794 17,728 
Right-of-use assets2,162 1,643 552 4,357 632 2,932 
Property and equipment118 2,870 38 3,026 1,510 3,741 
Prepaid expenses1,503 1,543 17 3,063 — 519 
Other assets— 156 158 — 13 
Intangible assets:
Customer relationships35,626 53,518 2,526 91,670 3,606 36,338 
Trade name3,025 2,266 210 5,501 268 2,098 
Customer backlog894 3,862 943 5,699 459 3,847 
Developed technology4,024 2,185 — 6,209 — — 
Other26 580 254 860 298 4,456 
Total Assets$59,447 $87,979 $7,467 $154,893 $8,567 $73,152 
Liabilities(16,535)(13,668)(2,297)(32,500)(5,623)(13,984)
Deferred tax liabilities(8,728)(12,428)(496)(21,652)— (4,521)
Net assets acquired$34,184 $61,883 $4,674 $100,741 $2,944 $54,647 
Consideration paid (Cash, notes and/or stock)$75,371 $139,569 $8,867 $223,807 $7,921 $95,316 
Contingent earn-out liability (Cash and stock)— — 610 610 6,299 5,133 
Total Consideration$75,371 $139,569 $9,477 $224,417 $14,220 $100,449 
Excess consideration over the amounts assigned to the net assets acquired (Goodwill)$41,187 $77,686 $4,803 $123,676 $11,276 $45,802 
Schedule of Proforma Consolidated Results of Operations The following table presents the results of operations of businesses acquired from their respective dates of acquisition for fiscal years 2023, 2022, and 2021.
202320222021
Gross revenues$96,314 $5,211 $29,965 
Income before income taxes$14,902 $985 $5,167 
These unaudited pro forma results are presented for informational purposes only and are not necessarily indicative of what the actual results of operations of the Company would have been if the acquisitions and related financing transactions had occurred on the date assumed, nor are they indicative of future results of operations.
Fiscal Years Ended
202320222021
Gross revenues$889,233 $912,127 $765,632 
Net income$43,284 $44,323 $49,769 
Basic earnings per share$2.87 $2.98 $3.50 
Diluted earnings per share$2.80 $2.88 $3.38 
XML 47 R31.htm IDEA: XBRL DOCUMENT v3.24.0.1
Billed and Unbilled Receivables (Tables)
12 Months Ended
Dec. 30, 2023
Receivables [Abstract]  
Schedule of Accounts, Notes, Loans and Financing Receivable
Billed and unbilled receivables were as follows:
December 30, 2023December 31, 2022
Billed receivables$155,988 $149,082 
Less: allowance for doubtful accounts(3,395)(3,445)
Billed receivables, net$152,593 $145,637 
Unbilled receivables$115,545 $95,104 
Less: allowance for doubtful accounts(2,274)(2,242)
Unbilled receivables, net$113,271 $92,862 
Schedule Of Allowance for Credit Losses on Financing Receivables
Activity in the allowance for doubtful accounts was as follows:
December 30, 2023December 31, 2022
Balance as of the beginning of the year$5,687 $7,952 
Provision for doubtful accounts1,261 (60)
Write-offs of uncollectible accounts(1,279)(2,205)
Balance as of the end of the year$5,669 $5,687 
XML 48 R32.htm IDEA: XBRL DOCUMENT v3.24.0.1
Property and Equipment, net (Tables)
12 Months Ended
Dec. 30, 2023
Property, Plant and Equipment [Abstract]  
Schedule of Property and Equipment roperty and equipment, net were as follows:
December 30, 2023December 31, 2022
Office furniture and equipment$3,487 $3,421 
Computer equipment31,999 25,816 
Survey and field equipment62,553 49,985 
Leasehold improvements6,881 6,546 
Total104,920 85,768 
Less: accumulated depreciation(54,652)(44,128)
Property and equipment, net$50,268 $41,640 
XML 49 R33.htm IDEA: XBRL DOCUMENT v3.24.0.1
Goodwill and Intangible Assets (Tables)
12 Months Ended
Dec. 30, 2023
Goodwill and Intangible Assets Disclosure [Abstract]  
Schedule of Goodwill
The changes in the carrying value by reportable segment for the fiscal years 2023 and 2022 were as follows:
Fiscal Year 2023
December 31, 2022AcquisitionsAdjustmentsForeign Currency Translation of non-USD functional currency goodwillDecember 30, 2023
INF$90,932 $726 $— $— $91,658 
BTS111,838 4,077 13 17 115,945 
GEO198,187 118,873 (10)(80)316,970 
Total$400,957 $123,676 $$(63)$524,573 
Fiscal Year 2022
January 1, 2022AcquisitionsAdjustmentsDecember 31, 2022
INF$90,725 $120 $87 $90,932 
BTS111,005 1,152 (319)111,838 
GEO188,186 10,001 — 198,187 
Total$389,916 $11,273 $(232)$400,957 
Schedule of Finite-lived Intangible Assets
Intangible assets, net, at December 30, 2023 and December 31, 2022 were as follows:
December 30, 2023December 31, 2022
Gross
Carrying
Amount
Accumulated
Amortization
Net
Amount
Gross
Carrying
Amount
Accumulated
Amortization
Net
Amount
Finite-lived intangible assets:
Customer relationships(1)
$314,662 $(116,086)$198,576 $222,998 $(87,054)$135,944 
Trade name(2)
22,384 (18,327)4,057 16,883 (15,933)950 
Customer backlog(3)
35,116 (32,681)2,435 29,419 (27,333)2,086 
Non-compete(4)
14,987 (12,690)2,297 14,110 (11,298)2,812 
Developed technology(5)
39,153 (19,816)19,337 32,944 (14,305)18,639 
Total finite-lived intangible assets$426,302 $(199,600)$226,702 $316,354 $(155,923)$160,431 

(1) Amortized on a straight-line basis over estimated lives (2 to 17 years)
(2) Amortized on a straight-line basis over their estimated lives (1 to 5 years)
(3) Amortized on a straight-line basis over their estimated lives (1 to 10 years)
(4) Amortized on a straight-line basis over their contractual lives (2 to 5 years)
(5) Amortized on a straight-line basis over their estimated lives (5 to 10 years)
Schedule of Acquired Finite-lived Intangible Assets by Major Class
The following table summarizes the weighted average useful lives of definite-lived intangible assets acquired during 2023, 2022, and 2021:
202320222021
Customer relationships12.47.58.2
Trade name3.61.82.0
Customer backlog1.31.41.6
Non-compete3.63.63.8
Developed technology6.8— — 
Schedule of Finite-fived Intangible Assets, Future Amortization Expense
As of December 30, 2023, the future estimated aggregate amortization related to finite-lived intangible assets for the next five fiscal years and thereafter is as follows:
Fiscal YearAmount
2024$41,169 
202537,199 
202634,837 
202726,710 
202820,862 
Thereafter65,925 
Total$226,702 
XML 50 R34.htm IDEA: XBRL DOCUMENT v3.24.0.1
Accrued Liabilities (Tables)
12 Months Ended
Dec. 30, 2023
Payables and Accruals [Abstract]  
Schedule of Accrued Liabilities
Accrued liabilities were as follows:
December 30, 2023December 31, 2022
Current portion of lease liability$13,972 $13,081 
Accrued vacation7,295 12,467 
Payroll and related taxes8,782 6,616 
Benefits5,433 5,160 
Accrued operating expenses8,701 4,540 
Other3,240 2,449 
Total$47,423 $44,313 
XML 51 R35.htm IDEA: XBRL DOCUMENT v3.24.0.1
Notes Payable and Other Obligations (Tables)
12 Months Ended
Dec. 30, 2023
Payables and Accruals [Abstract]  
Schedule of Notes Payable and Other Obligations
Notes payable and other obligations were as follows:
December 30, 2023December 31, 2022
Senior credit facility$195,750 $33,750 
Uncollateralized promissory notes15,303 18,492 
Finance leases4,408 3,465 
Other obligations1,188 1,814 
Debt issuance costs, net of amortization(1,914)(2,672)
Total notes payable and other obligations214,735 54,849 
Current portion of notes payable and other obligations9,267 15,176 
Notes payable and other obligations, less current portion$205,468 $39,673 
Schedule of Maturities of Long-term Debt
Future contractual maturities of long-term debt as of December 30, 2023 are as follows:
Fiscal YearAmount
2024$9,267 
20255,659 
2026200,784 
2027677 
2028 and thereafter262 
Total$216,649 
XML 52 R36.htm IDEA: XBRL DOCUMENT v3.24.0.1
Contingent Consideration (Tables)
12 Months Ended
Dec. 30, 2023
Commitments and Contingencies Disclosure [Abstract]  
Schedule of Changes Carrying Value of Estimated Contingent Consideration
The following table summarizes the changes in the carrying value of estimated contingent consideration:
December 30, 2023December 31, 2022
Contingent consideration, beginning of the year$15,335 $8,328 
Additions for acquisitions610 6,299 
Reduction of liability for payments made(2,600)(2,264)
Increase (decrease) of liability related to re-measurement of fair value(9,280)2,972 
Total contingent consideration, end of the period4,065 15,335 
Current portion of contingent consideration3,922 10,854 
Contingent consideration, less current portion$143 $4,481 
XML 53 R37.htm IDEA: XBRL DOCUMENT v3.24.0.1
Leases (Tables)
12 Months Ended
Dec. 30, 2023
Leases [Abstract]  
Schedule of Supplemental Balance Sheet Information
Supplemental balance sheet information related to the Company's operating and finance leases were as follows:
LeasesClassificationDecember 30, 2023December 31, 2022
Assets
Operating lease assets
Right-of-use lease asset, net (1)
$36,836 $39,314 
Finance lease assets
Property and equipment, net (1)
4,389 3,446 
Total leased assets$41,225 $42,760 
Liabilities
Current
OperatingAccrued liabilities$(13,972)$(13,081)
FinanceCurrent portion of notes payable and other obligations(1,220)(1,333)
Noncurrent
OperatingOther long-term liabilities(25,754)(28,452)
FinanceNotes payable and other obligations, less current portion(3,188)(2,132)
Total lease liabilities$(44,134)$(44,998)
(1)As of December 30, 2023, operating right of-use lease assets and finance lease assets are recorded net of accumulated amortization of $42,491 and $6,210, respectively. As of December 31, 2022, operating right-of-use lease assets and finance lease assets are recorded net of accumulated amortization of $35,646 and $4,864, respectively.
Schedule of Lease Term and Discount Rate
Supplemental balance sheet information related to the Company's operating and finance leases were as follows:
Weighted - Average Remaining Lease Term (Years)
December 30, 2023December 31, 2022
Operating leases3.74.0
Finance leases2.02.2
Weighted - Average Discount Rate
Operating leases4%4%
Finance leases7%7%
Schedule of Supplemental Cash Flow Information
Supplemental cash flow information related to the Company's operating and finance lease liabilities were as follows:
Fiscal Year Ended
December 30, 2023December 31, 2022January 1, 2022
Operating cash flows from operating leases$14,903 $13,739 $14,081 
Financing cash flows from finance leases$1,346 $1,241 $1,274 
Right-of-use assets obtained in exchange for lease obligations
Operating leases$11,084 $7,058 $9,249 
Schedule of Lease Cost
The following table summarizes the components of lease cost recognized in the consolidated statements of net income and comprehensive income:
Fiscal Year Ended
Lease CostClassificationDecember 30, 2023December 31, 2022January 1, 2022
Operating lease costFacilities and facilities related$16,658 $15,724 $15,439 
Variable operating lease costFacilities and facilities related4,2223,8061,655
Finance lease cost
     Amortization of financing lease assets Depreciation and amortization1,3431,2391,250
     Interest on lease liabilitiesInterest expense165 121 154 
Total lease cost$22,388 $20,890 $18,498 
Schedule of Maturities of Operating Leases Lease Liabilities
As of December 30, 2023, maturities of the Company's lease liabilities under its long-term operating leases and finance leases for the next five fiscal years and thereafter are as follows:
Fiscal YearOperating LeasesFinance Leases
2024$15,122 $1,305 
202511,751 1,379 
20267,936 1,206 
20273,880 778 
20281,599 372 
Thereafter2,346 106 
Total lease payments42,634 5,146 
Less: Interest(2,908)(738)
Present value of lease liabilities$39,726 $4,408 
Schedule of Maturities of Finance Lease Liabilities
As of December 30, 2023, maturities of the Company's lease liabilities under its long-term operating leases and finance leases for the next five fiscal years and thereafter are as follows:
Fiscal YearOperating LeasesFinance Leases
2024$15,122 $1,305 
202511,751 1,379 
20267,936 1,206 
20273,880 778 
20281,599 372 
Thereafter2,346 106 
Total lease payments42,634 5,146 
Less: Interest(2,908)(738)
Present value of lease liabilities$39,726 $4,408 
XML 54 R38.htm IDEA: XBRL DOCUMENT v3.24.0.1
Stock-Based Compensation (Tables)
12 Months Ended
Dec. 30, 2023
Share-Based Payment Arrangement [Abstract]  
Schedule of Share-based Payment Arrangement, Restricted Stock Unit, Activity
The following summarizes the activity of restricted stock awards during fiscal years 2023, 2022, and 2021:
Share UnitsWeighted Average Grant Date Fair Value
Unvested shares as of January 2, 2021770,183 $57.20 
Granted265,644 $91.31 
Vested(257,435)$65.14 
Forfeited(33,902)$58.25 
Unvested shares as of January 1, 2022744,490 $66.34 
Granted203,149 $118.33 
Vested(131,973)$63.72 
Forfeited(101,873)$67.08 
Unvested shares as of December 31, 2022713,793 $81.25 
Granted288,727 $106.37 
Vested(285,865)$48.98 
Forfeited(39,895)$97.24 
Unvested shares as of December 30, 2023676,760 $104.63 
XML 55 R39.htm IDEA: XBRL DOCUMENT v3.24.0.1
Income Taxes (Tables)
12 Months Ended
Dec. 30, 2023
Income Tax Disclosure [Abstract]  
Schedule of Components of Income Tax Expense (benefit)
Income tax expense for years 2023, 2022, and 2021 were as follows:
Fiscal Years Ended
December 30, 2023December 31, 2022January 1, 2022
Current:
Federal$22,085 $20,977 $14,251 
State5,633 9,040 7,353 
Foreign1,583 943 400 
Total current income tax expense29,301 30,960 22,004 
Deferred:
Federal(23,235)(15,401)(3,740)
State(2,487)(3,161)(3,238)
Foreign18 (68)
Total deferred income tax benefit(25,704)(18,559)(7,046)
Total income tax expense$3,597 $12,401 $14,958 
Schedule of Deferred Tax Assets and Liabilities
Temporary differences comprising the net deferred income tax liability shown in the Company’s consolidated balance sheets were as follows:
December 30, 2023December 31, 2022
Deferred tax asset:
Lease liabilities$10,381 $10,732 
Tax carryforwards2,328 3,863 
Accrued compensation11,275 11,945 
Allowance for doubtful accounts1,487 1,559 
Capitalized Research and Development Costs43,140 14,795 
Other1,998 1,025 
Total deferred tax asset$70,609 $43,919 
Deferred tax liability:
Acquired intangibles$(49,715)$(30,226)
Right-of-use assets(9,746)(10,361)
Depreciation and amortization(11,423)(9,467)
Other(2,562)(758)
Total deferred tax liability$(73,446)$(50,812)
Net deferred tax liability$(2,837)$(6,893)
Schedule of Effective Income Tax Rate Reconciliation
Total income tax expense was different than the amount computed by applying the Federal statutory rate as follows:
Fiscal Years Ended
December 30, 2023December 31, 2022January 1, 2022
Tax at federal statutory rate$10,124 $13,099 $13,042 
State taxes, net of Federal benefit2,683 3,853 3,908 
Stock-based compensation(2,190)(1,495)(1,432)
Federal and state tax credits(9,064)(3,983)(1,242)
Changes in unrecognized tax position652 (73)96 
Other1,392 1,000 586 
Total income tax expense$3,597 $12,401 $14,958 
Schedule of Unrecognized Tax Benefits Roll Forward A reconciliation of the beginning and ending amount of unrecognized tax benefits were as follows:
December 30, 2023December 31, 2022January 1, 2022
Balance, beginning of period$966 $1,071 $1,022 
Additions based on tax positions related to the current year447 131 124 
Additions for tax positions of prior years297 — 
Lapse of statute of limitations(77)(103)(45)
Reductions for positions of prior years— (139)(30)
Balance, end of period$1,633 $966 $1,071 
XML 56 R40.htm IDEA: XBRL DOCUMENT v3.24.0.1
Reportable Segments (Tables)
12 Months Ended
Dec. 30, 2023
Segment Reporting [Abstract]  
Schedule of Segment Reporting Information, by Segment The following tables set forth summarized financial information concerning our reportable segments:
Fiscal Years Ended
December 30, 2023December 31, 2022January 1, 2022
Gross revenues
INF$374,986 $395,878 $383,725 
BTS222,804 232,577 185,995 
GEO263,949 158,323 136,986 
Total gross revenues$861,739 $786,778 $706,706 
Segment income before taxes
INF$65,608 $68,259 $71,838 
BTS38,810 43,810 35,221 
GEO51,633 42,640 33,027 
Total Segment income before taxes156,051 154,709 140,086 
Corporate(1)
(107,841)(92,335)(77,981)
Total income before taxes$48,210 $62,374 $62,105 
(1) Includes amortization of intangibles of $43,677, $32,341, and $33,498 for the fiscal years ended 2023, 2022, and 2021, respectively.
December 30, 2023December 31, 2022
Assets
INF$222,435 $226,301 
BTS243,154 231,049 
GEO603,630 366,385 
Corporate(1)
101,373 111,988 
Total assets$1,170,592 $935,723 
(1) Corporate assets consist of intercompany eliminations and assets not allocated to segments including cash and cash equivalents and certain other assets.
Schedule of Revenue from External Customers by Geographic Areas Gross revenue, classified by the major geographic areas in which our customers were located, were as follows:
Fiscal Year 2023
INFBTSGEOTotal
United States$374,986 $184,338 $248,262 $807,586 
Foreign— 38,466 15,687 54,153 
Total gross revenues$374,986 $222,804 $263,949 $861,739 

Fiscal Year 2022
INFBTSGEOTotal
United States$395,878 $204,036 $154,584 $754,498 
Foreign— 28,541 3,739 32,280 
Total gross revenues$395,878 $232,577 $158,323 $786,778 

Fiscal Year 2021
INFBTSGEOTotal
United States$383,725 $167,057 $134,003 $684,785 
Foreign— 18,938 2,983 21,921 
Total gross revenues$383,725 $185,995 $136,986 $706,706 
Schedule of Revenue by Major Customers by Reporting Segments
Gross revenue by customer were as follows:
Fiscal Year 2023
INFBTSGEOTotal
Public and quasi-public sector$301,427 $61,313 $223,109 $585,849 
Private sector73,559 161,491 40,840 275,890 
Total gross revenues$374,986 $222,804 $263,949 $861,739 

Fiscal Year 2022
INFBTSGEOTotal
Public and quasi-public sector$312,817 $61,726 $128,786 $503,329 
Private sector83,061 170,851 29,537 283,449 
Total gross revenues$395,878 $232,577 $158,323 $786,778 

Fiscal Year 2021
INFBTSGEOTotal
Public and quasi-public sector$304,753 $66,964 $86,628 $458,345 
Private sector78,972 119,031 50,358 248,361 
Total gross revenues$383,725 $185,995 $136,986 $706,706 
Schedule of Revenue from External Customers by Products and Services
Gross revenues by contract type were as follows:
Fiscal Year 2023
INFBTSGEOTotal
Cost-reimbursable contracts$359,423 $162,721 $256,069 $778,213 
Fixed-unit price contracts15,563 60,083 7,880 83,526 
Total gross revenues$374,986 $222,804 $263,949 $861,739 

Fiscal Year 2022
INFBTSGEOTotal
Cost-reimbursable contracts$379,818 $155,632 $157,992 $693,442 
Fixed-unit price contracts16,060 76,945 331 93,336 
Total gross revenues$395,878 $232,577 $158,323 $786,778 


Fiscal Year 2021
INFBTSGEOTotal
Cost-reimbursable contracts$367,310 $133,272 $136,683 $637,265 
Fixed-unit price contracts16,415 52,723 303 69,441 
Total gross revenues$383,725 $185,995 $136,986 $706,706 
XML 57 R41.htm IDEA: XBRL DOCUMENT v3.24.0.1
Summary of Significant Accounting Policies - Narrative (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Product Information [Line Items]      
Impairment, long-lived asset $ 0 $ 0 $ 0
Goodwill and intangible asset impairment 0 0 0
Revenue from contract with customer 427,462 343,538 309,624
Contract with customer liability, revenue recognized 27,479    
Advertising expense $ 2,767 $ 1,977 $ 895
Transferred at point in time      
Product Information [Line Items]      
Revenue from contract with customer, percent of gross revenues 10.00% 12.00% 10.00%
Revenue benchmark | Geographic concentration risk | CALIFORNIA      
Product Information [Line Items]      
Concentration risk, percentage 26.00% 28.00% 26.00%
Revenue benchmark | Government contracts concentration risk | Public and quasi-public sector      
Product Information [Line Items]      
Concentration risk, percentage 68.00% 64.00% 65.00%
Revenue benchmark | Transferred over time | Customer Concentration Risk      
Product Information [Line Items]      
Concentration risk, percentage 90.00% 88.00% 90.00%
XML 58 R42.htm IDEA: XBRL DOCUMENT v3.24.0.1
Summary of Significant Accounting Policies - Estimated Useful Lives of Property and Equipment (Details)
Dec. 30, 2023
Office furniture and equipment  
Property, Plant and Equipment [Line Items]  
Property, plant and equipment, useful life 4 years
Computer equipment  
Property, Plant and Equipment [Line Items]  
Property, plant and equipment, useful life 3 years
Survey and field equipment | Minimum  
Property, Plant and Equipment [Line Items]  
Property, plant and equipment, useful life 5 years
Survey and field equipment | Maximum  
Property, Plant and Equipment [Line Items]  
Property, plant and equipment, useful life 15 years
XML 59 R43.htm IDEA: XBRL DOCUMENT v3.24.0.1
Summary of Significant Accounting Policies - Revenue Recognition (Details)
$ in Thousands
Dec. 30, 2023
USD ($)
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Revenue remaining performance obligation amount $ 849,515
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-12-31  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Revenue remaining performance obligation amount $ 673,235
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-12-31 | Period One  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Revenue performance obligation expected timing of satisfaction period 12 months
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-12-31 | Period Two  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Revenue performance obligation expected timing of satisfaction period 24 months
XML 60 R44.htm IDEA: XBRL DOCUMENT v3.24.0.1
Earnings Per Share - Narrative (Details) - shares
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]      
Antidilutive securities (in shares) 19,290 25,979 7,448
Restricted stock      
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]      
Antidilutive securities (in shares) 689,360 742,671 777,683
XML 61 R45.htm IDEA: XBRL DOCUMENT v3.24.0.1
Earnings per Share - Schedule of Earnings Per Share, Basic and Diluted (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Numerator [Abstract]      
Net income – basic $ 44,613 $ 49,973 $ 47,147
Net income – diluted $ 44,613 $ 49,973 $ 47,147
Denominator [Abstract]      
Basic weighted average shares outstanding (in shares) 15,086,040 14,753,738 14,135,333
Effect of dilutive non-vested restricted shares and units (in shares) 363,759 490,981 498,116
Effect of issuable shares related to acquisitions (in shares) 24,527 15,467 22,932
Diluted weighted average shares outstanding (in shares) 15,474,326 15,260,186 14,656,381
XML 62 R46.htm IDEA: XBRL DOCUMENT v3.24.0.1
Stockholders' Equity (Details) - USD ($)
$ / shares in Units, $ in Thousands
12 Months Ended
Apr. 13, 2021
Mar. 15, 2021
Mar. 10, 2021
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Class of Stock [Line Items]            
Proceeds from common stock offering       $ 0 $ 0 $ 172,500
Public Stock Offering            
Class of Stock [Line Items]            
Proceeds from secondary offering, net of costs (in shares)     1,612,903      
Shares issued, price per share (in dollars per share)     $ 93.00      
Proceeds from common stock offering   $ 140,693        
Over-allotment Option            
Class of Stock [Line Items]            
Proceeds from secondary offering, net of costs (in shares)     241,935      
Award vesting period     30 days      
Proceeds from common stock offering $ 21,150          
XML 63 R47.htm IDEA: XBRL DOCUMENT v3.24.0.1
Business Acquisitions - Narrative (Details)
$ in Thousands
12 Months Ended
Feb. 22, 2023
USD ($)
Dec. 30, 2023
USD ($)
acquisition
Dec. 31, 2022
USD ($)
acquisition
Jan. 01, 2022
USD ($)
acquisition
Acquired Finite-Lived Intangible Assets [Line Items]        
Earn-out of cash fair value   $ 4,065 $ 15,335 $ 8,328
Business combination, acquisition related costs   5,575 $ 2,639 3,274
Visual Information Solutions        
Acquired Finite-Lived Intangible Assets [Line Items]        
Aggregate purchase price   75,371    
Axim Geospatial, LLC        
Acquired Finite-Lived Intangible Assets [Line Items]        
Aggregate purchase price   139,569    
Payments to acquire businesses $ 119,736      
Consideration of common stock 13,500      
Axim Geospatial, LLC | Uncollateralized promissory notes        
Acquired Finite-Lived Intangible Assets [Line Items]        
Notes payable $ 6,333      
Other Acquisition        
Acquired Finite-Lived Intangible Assets [Line Items]        
Aggregate purchase price   9,477    
Payments to acquire businesses   8,000    
Consideration of common stock   $ 867    
Number of businesses acquired | acquisition   5 5  
Consideration transferred of common stock   $ 640    
Earn-out of cash fair value   610    
Series of Individually Immaterial Business Acquisitions        
Acquired Finite-Lived Intangible Assets [Line Items]        
Aggregate purchase price   $ 224,417 $ 14,220 100,449
Payments to acquire businesses     5,882 69,501
Consideration of common stock     433 $ 6,787
Number of businesses acquired | acquisition       8
Consideration transferred of common stock     15,850 $ 25,700
Earn-out of cash fair value     6,299 5,133
Series of Individually Immaterial Business Acquisitions | Uncollateralized promissory notes        
Acquired Finite-Lived Intangible Assets [Line Items]        
Notes payable     $ 1,606 $ 19,028
XML 64 R48.htm IDEA: XBRL DOCUMENT v3.24.0.1
Business Acquisitions - The Fair Values of Assets Acquired and Liabilities Assumed (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Developed technology      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets   $ 0 $ 0
Visual Information Solutions      
Finite-Lived Intangible Assets [Line Items]      
Cash $ 7,027    
Billed and unbilled receivables, net 5,042    
Right-of-use assets 2,162    
Property and equipment 118    
Prepaid expenses 1,503    
Other assets 0    
Total Assets 59,447    
Liabilities (16,535)    
Deferred tax liabilities (8,728)    
Net assets acquired 34,184    
Consideration paid (Cash, notes and/or stock) 75,371    
Contingent earn-out liability (Cash and stock) 0    
Total Consideration 75,371    
Excess consideration over the amounts assigned to the net assets acquired (Goodwill) 41,187    
Visual Information Solutions | Customer relationships      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 35,626    
Visual Information Solutions | Trade name      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 3,025    
Visual Information Solutions | Customer backlog      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 894    
Visual Information Solutions | Developed technology      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 4,024    
Visual Information Solutions | Other      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 26    
Axim Geospatial, LLC      
Finite-Lived Intangible Assets [Line Items]      
Cash 5,419    
Billed and unbilled receivables, net 13,937    
Right-of-use assets 1,643    
Property and equipment 2,870    
Prepaid expenses 1,543    
Other assets 156    
Total Assets 87,979    
Liabilities (13,668)    
Deferred tax liabilities (12,428)    
Net assets acquired 61,883    
Consideration paid (Cash, notes and/or stock) 139,569    
Contingent earn-out liability (Cash and stock) 0    
Total Consideration 139,569    
Excess consideration over the amounts assigned to the net assets acquired (Goodwill) 77,686    
Axim Geospatial, LLC | Customer relationships      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 53,518    
Axim Geospatial, LLC | Trade name      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 2,266    
Axim Geospatial, LLC | Customer backlog      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 3,862    
Axim Geospatial, LLC | Developed technology      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 2,185    
Axim Geospatial, LLC | Other      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 580    
Other Acquisition      
Finite-Lived Intangible Assets [Line Items]      
Cash 1,316    
Billed and unbilled receivables, net 1,609    
Right-of-use assets 552    
Property and equipment 38    
Prepaid expenses 17    
Other assets 2    
Total Assets 7,467    
Liabilities (2,297)    
Deferred tax liabilities (496)    
Net assets acquired 4,674    
Consideration paid (Cash, notes and/or stock) 8,867    
Contingent earn-out liability (Cash and stock) 610    
Total Consideration 9,477    
Excess consideration over the amounts assigned to the net assets acquired (Goodwill) 4,803    
Other Acquisition | Customer relationships      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 2,526    
Other Acquisition | Trade name      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 210    
Other Acquisition | Customer backlog      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 943    
Other Acquisition | Developed technology      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 0    
Other Acquisition | Other      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 254    
Series of Individually Immaterial Business Acquisitions      
Finite-Lived Intangible Assets [Line Items]      
Cash 13,762 0 1,480
Billed and unbilled receivables, net 20,588 1,794 17,728
Right-of-use assets 4,357 632 2,932
Property and equipment 3,026 1,510 3,741
Prepaid expenses 3,063 0 519
Other assets 158 0 13
Total Assets 154,893 8,567 73,152
Liabilities (32,500) (5,623) (13,984)
Deferred tax liabilities (21,652) 0 (4,521)
Net assets acquired 100,741 2,944 54,647
Consideration paid (Cash, notes and/or stock) 223,807 7,921 95,316
Contingent earn-out liability (Cash and stock) 610 6,299 5,133
Total Consideration 224,417 14,220 100,449
Excess consideration over the amounts assigned to the net assets acquired (Goodwill) 123,676 11,276 45,802
Series of Individually Immaterial Business Acquisitions | Customer relationships      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 91,670 3,606 36,338
Series of Individually Immaterial Business Acquisitions | Trade name      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 5,501 268 2,098
Series of Individually Immaterial Business Acquisitions | Customer backlog      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 5,699 459 3,847
Series of Individually Immaterial Business Acquisitions | Developed technology      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets 6,209    
Series of Individually Immaterial Business Acquisitions | Other      
Finite-Lived Intangible Assets [Line Items]      
Intangible assets $ 860 $ 298 $ 4,456
XML 65 R49.htm IDEA: XBRL DOCUMENT v3.24.0.1
Business Acquisitions - Results of Operations from any Business Acquired (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Business Combinations [Abstract]      
Gross revenues $ 96,314 $ 5,211 $ 29,965
Income before income taxes $ 14,902 $ 985 $ 5,167
XML 66 R50.htm IDEA: XBRL DOCUMENT v3.24.0.1
Business Acquisitions - Pro Forma Consolidated Results of Operations (Details) - USD ($)
$ / shares in Units, $ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Business Combination and Asset Acquisition [Abstract]      
Gross revenues $ 889,233 $ 912,127 $ 765,632
Net income $ 43,284 $ 44,323 $ 49,769
Basic earnings per share (in dollars per Share) $ 2.87 $ 2.98 $ 3.50
Diluted earnings per share (in dollars per Share) $ 2.80 $ 2.88 $ 3.38
XML 67 R51.htm IDEA: XBRL DOCUMENT v3.24.0.1
Billed and Unbilled Receivables - Summary of Billed and Unbilled Receivables (Details) - USD ($)
$ in Thousands
Dec. 30, 2023
Dec. 31, 2022
Receivables [Abstract]    
Billed receivables $ 155,988 $ 149,082
Less: allowance for doubtful accounts (3,395) (3,445)
Billed receivables, net 152,593 145,637
Unbilled receivables 115,545 95,104
Less: allowance for doubtful accounts (2,274) (2,242)
Unbilled receivables, net $ 113,271 $ 92,862
XML 68 R52.htm IDEA: XBRL DOCUMENT v3.24.0.1
Billed and Unbilled Receivables - Activity in the Allowance for Doubtful Accounts (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Accounts Receivable, Allowance for Credit Loss [Roll Forward]      
Balance as of the beginning of the year $ 5,687 $ 7,952  
Provision for doubtful accounts 1,261 (60) $ 1,243
Write-offs of uncollectible accounts (1,279) (2,205)  
Balance as of the end of the year $ 5,669 $ 5,687 $ 7,952
XML 69 R53.htm IDEA: XBRL DOCUMENT v3.24.0.1
Property and Equipment, net - Schedule of property and equipment (Details) - USD ($)
$ in Thousands
Dec. 30, 2023
Dec. 31, 2022
Property, Plant and Equipment [Line Items]    
Total $ 104,920 $ 85,768
Less: accumulated depreciation (54,652) (44,128)
Property and equipment, net 50,268 41,640
Office furniture and equipment    
Property, Plant and Equipment [Line Items]    
Total 3,487 3,421
Computer equipment    
Property, Plant and Equipment [Line Items]    
Total 31,999 25,816
Survey and field equipment    
Property, Plant and Equipment [Line Items]    
Total 62,553 49,985
Leasehold improvements    
Property, Plant and Equipment [Line Items]    
Total $ 6,881 $ 6,546
XML 70 R54.htm IDEA: XBRL DOCUMENT v3.24.0.1
Property and Equipment, net - Narrative (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 02, 2021
Impaired Assets to be Disposed of by Method Other than Sale [Line Items]      
Depreciation expense $ 14,343 $ 11,722 $ 11,473
Other Direct Costs      
Impaired Assets to be Disposed of by Method Other than Sale [Line Items]      
Depreciation expense $ 5,534 $ 5,125 $ 5,018
XML 71 R55.htm IDEA: XBRL DOCUMENT v3.24.0.1
Goodwill and Intangible Assets - Schedule of Goodwill (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Goodwill [Roll Forward]    
Beginning balance $ 400,957 $ 389,916
Acquisitions 123,676 11,273
Adjustments 3 (232)
Foreign Currency Translation of non-USD functional currency goodwill (63)  
Ending balance 524,573 400,957
INF    
Goodwill [Roll Forward]    
Beginning balance 90,932 90,725
Acquisitions 726 120
Adjustments 0 87
Foreign Currency Translation of non-USD functional currency goodwill 0  
Ending balance 91,658 90,932
BTS    
Goodwill [Roll Forward]    
Beginning balance 111,838 111,005
Acquisitions 4,077 1,152
Adjustments 13 (319)
Foreign Currency Translation of non-USD functional currency goodwill 17  
Ending balance 115,945 111,838
GEO    
Goodwill [Roll Forward]    
Beginning balance 198,187 188,186
Acquisitions 118,873 10,001
Adjustments (10) 0
Foreign Currency Translation of non-USD functional currency goodwill (80)  
Ending balance $ 316,970 $ 198,187
XML 72 R56.htm IDEA: XBRL DOCUMENT v3.24.0.1
Goodwill and Intangible Assets - Narrative (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Goodwill and Intangible Assets Disclosure [Abstract]      
Goodwill $ 1,755 $ 2,891  
Acquisitions 123,676 11,273  
Purchase price adjustments (3) 232  
Amortization expense $ 43,677 $ 32,341 $ 33,498
XML 73 R57.htm IDEA: XBRL DOCUMENT v3.24.0.1
Goodwill and Intangible Assets - Schedule of Finite-lived Intangible Assets (Details) - USD ($)
$ in Thousands
Dec. 30, 2023
Dec. 31, 2022
Finite-lived intangible assets:    
Gross Carrying Amount $ 426,302 $ 316,354
Accumulated Amortization (199,600) (155,923)
Net Amount 226,702 160,431
Customer relationships    
Finite-lived intangible assets:    
Gross Carrying Amount 314,662 222,998
Accumulated Amortization (116,086) (87,054)
Net Amount $ 198,576 135,944
Customer relationships | Minimum    
Finite-lived intangible assets:    
Useful life 2 years  
Customer relationships | Maximum    
Finite-lived intangible assets:    
Useful life 17 years  
Trade name    
Finite-lived intangible assets:    
Gross Carrying Amount $ 22,384 16,883
Accumulated Amortization (18,327) (15,933)
Net Amount $ 4,057 950
Trade name | Minimum    
Finite-lived intangible assets:    
Useful life 1 year  
Trade name | Maximum    
Finite-lived intangible assets:    
Useful life 5 years  
Customer backlog    
Finite-lived intangible assets:    
Gross Carrying Amount $ 35,116 29,419
Accumulated Amortization (32,681) (27,333)
Net Amount $ 2,435 2,086
Customer backlog | Minimum    
Finite-lived intangible assets:    
Useful life 1 year  
Customer backlog | Maximum    
Finite-lived intangible assets:    
Useful life 10 years  
Non-compete    
Finite-lived intangible assets:    
Gross Carrying Amount $ 14,987 14,110
Accumulated Amortization (12,690) (11,298)
Net Amount $ 2,297 2,812
Non-compete | Minimum    
Finite-lived intangible assets:    
Useful life 2 years  
Non-compete | Maximum    
Finite-lived intangible assets:    
Useful life 5 years  
Developed technology    
Finite-lived intangible assets:    
Gross Carrying Amount $ 39,153 32,944
Accumulated Amortization (19,816) (14,305)
Net Amount $ 19,337 $ 18,639
Developed technology | Minimum    
Finite-lived intangible assets:    
Useful life 5 years  
Developed technology | Maximum    
Finite-lived intangible assets:    
Useful life 10 years  
XML 74 R58.htm IDEA: XBRL DOCUMENT v3.24.0.1
Goodwill and Intangible Assets - Weighted Average Useful Lives of Intangible Assets (Details)
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Customer relationships      
Finite-Lived Intangible Assets [Line Items]      
Weighted average useful life 12 years 4 months 24 days 7 years 6 months 8 years 2 months 12 days
Trade name      
Finite-Lived Intangible Assets [Line Items]      
Weighted average useful life 3 years 7 months 6 days 1 year 9 months 18 days 2 years
Customer backlog      
Finite-Lived Intangible Assets [Line Items]      
Weighted average useful life 1 year 3 months 18 days 1 year 4 months 24 days 1 year 7 months 6 days
Non-compete      
Finite-Lived Intangible Assets [Line Items]      
Weighted average useful life 3 years 7 months 6 days 3 years 7 months 6 days 3 years 9 months 18 days
Developed technology      
Finite-Lived Intangible Assets [Line Items]      
Weighted average useful life 6 years 9 months 18 days    
XML 75 R59.htm IDEA: XBRL DOCUMENT v3.24.0.1
Goodwill and Intangible Assets - Schedule of Future Estimated Aggregate Amortization Related to Finite-lived Intangible Assets (Details) - USD ($)
$ in Thousands
Dec. 30, 2023
Dec. 31, 2022
Goodwill and Intangible Assets Disclosure [Abstract]    
2024 $ 41,169  
2025 37,199  
2026 34,837  
2027 26,710  
2028 20,862  
Thereafter 65,925  
Net Amount $ 226,702 $ 160,431
XML 76 R60.htm IDEA: XBRL DOCUMENT v3.24.0.1
Accrued Liabilities (Details) - USD ($)
$ in Thousands
Dec. 30, 2023
Dec. 31, 2022
Payables and Accruals [Abstract]    
Current portion of lease liability $ 13,972 $ 13,081
Accrued vacation 7,295 12,467
Payroll and related taxes 8,782 6,616
Benefits 5,433 5,160
Accrued operating expenses 8,701 4,540
Other 3,240 2,449
Total $ 47,423 $ 44,313
XML 77 R61.htm IDEA: XBRL DOCUMENT v3.24.0.1
Notes Payable and Other Obligations - Notes Payable and Other Obligations (Details) - USD ($)
$ in Thousands
Dec. 30, 2023
Dec. 31, 2022
Debt Instrument [Line Items]    
Finance leases $ 4,408 $ 3,465
Debt issuance costs, net of amortization (1,914) (2,672)
Total notes payable and other obligations 214,735 54,849
Current portion of notes payable and other obligations 9,267 15,176
Notes payable and other obligations, less current portion 205,468 39,673
Senior credit facility    
Debt Instrument [Line Items]    
Long-term Debt, Gross 195,750 33,750
Uncollateralized promissory notes    
Debt Instrument [Line Items]    
Long-term Debt, Gross 15,303 18,492
Other obligations    
Debt Instrument [Line Items]    
Long-term Debt, Gross $ 1,188 $ 1,814
XML 78 R62.htm IDEA: XBRL DOCUMENT v3.24.0.1
Notes Payable and Other Obligations - Future Contractual Maturities of Long-term Debt (Details)
$ in Thousands
Dec. 30, 2023
USD ($)
Payables and Accruals [Abstract]  
2024 $ 9,267
2025 5,659
2026 200,784
2027 677
2028 and thereafter 262
Total $ 216,649
XML 79 R63.htm IDEA: XBRL DOCUMENT v3.24.0.1
Notes Payable and Other Obligations - Narrative (Details)
12 Months Ended
Aug. 13, 2021
USD ($)
Dec. 30, 2023
USD ($)
Dec. 31, 2022
USD ($)
Jan. 01, 2022
USD ($)
Dec. 07, 2016
USD ($)
Debt Instrument [Line Items]          
Debt covenant, liquidity availability   $ 30,000,000      
Amortization of debt issuance costs   758,000 $ 724,000 $ 1,210,000  
Other obligations   $ 16,491,000 20,306,000    
Weighted average interest rate (as a percent)   3.50%      
Senior credit facility | Line of Credit          
Debt Instrument [Line Items]          
Maximum borrowing capacity         $ 150,000,000
Senior credit facility | Revolving Credit Facility          
Debt Instrument [Line Items]          
Maximum borrowing capacity         $ 215,000,000
Second A&R Credit Agreement          
Debt Instrument [Line Items]          
Minimum fixed charge coverage ratio   3.25      
Second A&R Credit Agreement | Revolving Credit Facility          
Debt Instrument [Line Items]          
Maximum borrowing capacity $ 400,000,000        
Aggregate credit agreement 138,750,000        
Available increase in borrowing capacity $ 200,000,000        
Outstanding balance   $ 195,750,000 33,750,000    
Interest rate during period   6.70%      
Covenant, net leverage ratio   4.00      
Minimum fixed charge coverage ratio   1.10      
AR Credit Agreement          
Debt Instrument [Line Items]          
Total debt issuance costs incurred and capitalized   $ 3,702,000      
Amortization of debt issuance costs   $ 758,000 $ 724,000 $ 1,210,000  
XML 80 R64.htm IDEA: XBRL DOCUMENT v3.24.0.1
Contingent Consideration (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Commitments and Contingencies Disclosure [Roll Forward]      
Contingent consideration, beginning of the year $ 15,335 $ 8,328  
Additions for acquisitions 610 6,299  
Reduction of liability for payments made (2,600) (2,264)  
Increase (decrease) of liability related to re-measurement of fair value (9,280) 2,972  
Total contingent consideration, end of the period 4,065 15,335 $ 8,328
Current portion of contingent consideration 3,922 10,854  
Contingent consideration, less current portion 143 4,481  
Change in fair value of contingent consideration $ (9,280) $ 2,972 $ 2,333
XML 81 R65.htm IDEA: XBRL DOCUMENT v3.24.0.1
Leases - Narrative (Details)
12 Months Ended
Dec. 30, 2023
renewal_option
lease
Leases [Abstract]  
Number of equipment operating leases | lease 6
Office leases initial term 12 months
Number of options to renew | renewal_option 1
XML 82 R66.htm IDEA: XBRL DOCUMENT v3.24.0.1
Leases - Schedule of Supplemental Balance Sheet Information (Details) - USD ($)
$ in Thousands
Dec. 30, 2023
Dec. 31, 2022
Assets    
Operating lease assets $ 36,836 $ 39,314
Finance lease assets 4,389 3,446
Total leased assets 41,225 42,760
Current    
Operating (13,972) (13,081)
Finance (1,220) (1,333)
Noncurrent    
Operating (25,754) (28,452)
Finance (3,188) (2,132)
Total lease liabilities $ (44,134) $ (44,998)
Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible List] Property and equipment, net Property and equipment, net
Operating Lease, Liability, Current, Statement of Financial Position [Extensible List] Accrued liabilities Accrued liabilities
Finance Lease, Liability, Current, Statement of Financial Position [Extensible List] Current portion of notes payable and other obligations Current portion of notes payable and other obligations
Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List] Other long-term liabilities Other long-term liabilities
Finance Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List] Notes payable and other obligations, less current portion Notes payable and other obligations, less current portion
Operating right of-use lease assets $ 42,491 $ 35,646
Financing right of-use lease assets $ 6,210 $ 4,864
XML 83 R67.htm IDEA: XBRL DOCUMENT v3.24.0.1
Leases - Schedule of Lease Term and Discount Rate (Details)
Dec. 30, 2023
Dec. 31, 2022
Weighted - Average Remaining Lease Term (Years)    
Operating leases 3 years 8 months 12 days 4 years
Finance leases 2 years 2 years 2 months 12 days
Weighted - Average Discount Rate    
Operating leases 4.00% 4.00%
Finance leases 7.00% 7.00%
XML 84 R68.htm IDEA: XBRL DOCUMENT v3.24.0.1
Leases - Schedule of Supplemental Cash Flow Information (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Supplemental Cash Flow Information      
Operating cash flows from operating leases $ 14,903 $ 13,739 $ 14,081
Financing cash flows from finance leases 1,346 1,241 1,274
Right-of-use assets obtained in exchange for lease obligations      
Operating leases $ 11,084 $ 7,058 $ 9,249
XML 85 R69.htm IDEA: XBRL DOCUMENT v3.24.0.1
Leases - Schedule of Lease Cost (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Leases [Abstract]      
Operating lease cost $ 16,658 $ 15,724 $ 15,439
Variable operating lease cost 4,222 3,806 1,655
Amortization of financing lease assets  1,343 1,239 1,250
Interest on lease liabilities 165 121 154
Total lease cost $ 22,388 $ 20,890 $ 18,498
XML 86 R70.htm IDEA: XBRL DOCUMENT v3.24.0.1
Leases - Schedule of Maturities of Lease Liabilities (Details) - USD ($)
$ in Thousands
Dec. 30, 2023
Dec. 31, 2022
Operating Leases    
2024 $ 15,122  
2025 11,751  
2026 7,936  
2027 3,880  
2028 1,599  
Thereafter 2,346  
Total lease payments 42,634  
Less: Interest (2,908)  
Present value of lease liabilities 39,726  
Finance Leases    
2024 1,305  
2025 1,379  
2026 1,206  
2027 778  
2028 372  
Thereafter 106  
Total lease payments 5,146  
Less: Interest (738)  
Present value of lease liabilities $ 4,408 $ 3,465
XML 87 R71.htm IDEA: XBRL DOCUMENT v3.24.0.1
Stock-Based Compensation - Narrative (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Restricted stock      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Deferred compensation $ 22,379 $ 19,326 $ 16,301
Stock-based compensation expense 2,186 1,131  
Share-based liabilities paid 7,019    
Weighted average vesting period $ 34,186    
Cost not yet recognized, term 1 year 5 months 12 days    
Fair value of restricted shares vested $ 29,792 $ 17,137 $ 24,823
Equity plan 2011      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Number of shares authorized (in shares) 2,148,474    
Equity plan 2011 | Minimum | Restricted stock      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Award vesting period 2 years    
Equity plan 2011 | Maximum | Restricted stock      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Award vesting period 4 years    
XML 88 R72.htm IDEA: XBRL DOCUMENT v3.24.0.1
Stock-Based Compensation - Restricted Stock Awards (Details) - Restricted stock - $ / shares
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Share Units      
Beginning (in shares) 713,793 744,490 770,183
Granted (in shares) 288,727 203,149 265,644
Vested (in shares) (285,865) (131,973) (257,435)
Forfeited (in shares) (39,895) (101,873) (33,902)
Ending (in shares) 676,760 713,793 744,490
Weighted Average Grant Date Fair Value      
Beginning (in dollars per share) $ 81.25 $ 66.34 $ 57.20
Granted (in dollars per share) 106.37 118.33 91.31
Vested (in dollars per share) 48.98 63.72 65.14
Forfeited (in dollars per share) 97.24 67.08 58.25
Ending (in dollars per share) $ 104.63 $ 81.25 $ 66.34
XML 89 R73.htm IDEA: XBRL DOCUMENT v3.24.0.1
Employee Benefit Plan (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Retirement Benefits [Abstract]      
Defined contribution plan $ 732 $ 1,648 $ 334
XML 90 R74.htm IDEA: XBRL DOCUMENT v3.24.0.1
Income Taxes - Income Tax Expense (Benefit) (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Current:      
Federal $ 22,085 $ 20,977 $ 14,251
State 5,633 9,040 7,353
Foreign 1,583 943 400
Total current income tax expense 29,301 30,960 22,004
Deferred:      
Federal (23,235) (15,401) (3,740)
State (2,487) (3,161) (3,238)
Foreign 18 3 (68)
Total deferred income tax benefit (25,704) (18,559) (7,046)
Total income tax expense $ 3,597 $ 12,401 $ 14,958
XML 91 R75.htm IDEA: XBRL DOCUMENT v3.24.0.1
Income Taxes - Net Deferred Income Tax Asset (Liability) (Details) - USD ($)
$ in Thousands
Dec. 30, 2023
Dec. 31, 2022
Deferred tax asset:    
Lease liabilities $ 10,381 $ 10,732
Tax carryforwards 2,328 3,863
Accrued compensation 11,275 11,945
Allowance for doubtful accounts 1,487 1,559
Capitalized Research and Development Costs 43,140 14,795
Other 1,998 1,025
Total deferred tax asset 70,609 43,919
Deferred tax liability:    
Acquired intangibles (49,715) (30,226)
Right-of-use assets (9,746) (10,361)
Depreciation and amortization (11,423) (9,467)
Other (2,562) (758)
Total deferred tax liability (73,446) (50,812)
Net deferred tax liability $ (2,837) $ (6,893)
XML 92 R76.htm IDEA: XBRL DOCUMENT v3.24.0.1
Income Taxes - Narrative (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Jan. 02, 2021
Income Tax Disclosure [Abstract]        
Deferred tax liabilities, net $ 2,837 $ 6,893    
Effective income tax rate percent 7.50% 19.90% 24.10%  
Unrecognized tax benefits $ 1,633 $ 966 $ 1,071 $ 1,022
Unrecognized tax benefits that would impact effective tax rate 1,440 847    
Income tax penalties and interest accrued 378 $ 340    
Domestic Tax Authority        
Operating Loss Carryforwards [Line Items]        
Net operating loss carryforwards 2,026      
Foreign Tax Authority        
Operating Loss Carryforwards [Line Items]        
Net operating loss carryforwards 82      
State and local jurisdiction        
Operating Loss Carryforwards [Line Items]        
Net operating loss carryforwards 172      
Tax credit carryforward 48      
Net operating loss carryforwards subject to expiration 123      
Net operating loss carryforwards not subject to expiration $ 49      
XML 93 R77.htm IDEA: XBRL DOCUMENT v3.24.0.1
Income Taxes - Income Tax Expense (Benefit) Reconciliation (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Income Tax Disclosure [Abstract]      
Tax at federal statutory rate $ 10,124 $ 13,099 $ 13,042
State taxes, net of Federal benefit 2,683 3,853 3,908
Stock-based compensation (2,190) (1,495) (1,432)
Federal and state tax credits (9,064) (3,983) (1,242)
Changes in unrecognized tax position 652 (73) 96
Other 1,392 1,000 586
Total income tax expense $ 3,597 $ 12,401 $ 14,958
XML 94 R78.htm IDEA: XBRL DOCUMENT v3.24.0.1
Income Taxes - Unrecognized Tax Liability (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Reconciliation of Unrecognized Tax Benefits, Excluding Amounts Pertaining to Examined Tax Returns [Roll Forward]      
Balance, beginning of period $ 966 $ 1,071 $ 1,022
Additions based on tax positions related to the current year 447 131 124
Additions for tax positions of prior years 297 6 0
Lapse of statute of limitations (77) (103) (45)
Reductions for positions of prior years 0 (139) (30)
Balance, end of period $ 1,633 $ 966 $ 1,071
XML 95 R79.htm IDEA: XBRL DOCUMENT v3.24.0.1
Reportable Segments - Narrative (Details)
12 Months Ended
Dec. 30, 2023
segment
Segment Reporting [Abstract]  
Number of operating segments 3
Number of reportable segments 3
XML 96 R80.htm IDEA: XBRL DOCUMENT v3.24.0.1
Reportable Segments - Summarized Financial Information (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues $ 861,739 $ 786,778 $ 706,706
Segment income before taxes 48,210 62,374 62,105
Amortization expense 43,677 32,341 33,498
Assets 1,170,592 935,723  
INF      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 374,986 395,878 383,725
BTS      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 222,804 232,577 185,995
GEO      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 263,949 158,323 136,986
Operating segments      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Segment income before taxes 156,051 154,709 140,086
Operating segments | INF      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 374,986 395,878 383,725
Segment income before taxes 65,608 68,259 71,838
Assets 222,435 226,301  
Operating segments | BTS      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 222,804 232,577 185,995
Segment income before taxes 38,810 43,810 35,221
Assets 243,154 231,049  
Operating segments | GEO      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 263,949 158,323 136,986
Segment income before taxes 51,633 42,640 33,027
Assets 603,630 366,385  
Corporate      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Segment income before taxes (107,841) (92,335) $ (77,981)
Assets $ 101,373 $ 111,988  
XML 97 R81.htm IDEA: XBRL DOCUMENT v3.24.0.1
Reportable Segments - Revenue by Geographic Location (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Revenues from External Customers and Long-Lived Assets [Line Items]      
Gross revenues $ 861,739 $ 786,778 $ 706,706
INF      
Revenues from External Customers and Long-Lived Assets [Line Items]      
Gross revenues 374,986 395,878 383,725
BTS      
Revenues from External Customers and Long-Lived Assets [Line Items]      
Gross revenues 222,804 232,577 185,995
GEO      
Revenues from External Customers and Long-Lived Assets [Line Items]      
Gross revenues 263,949 158,323 136,986
United States      
Revenues from External Customers and Long-Lived Assets [Line Items]      
Gross revenues 807,586 754,498 684,785
United States | INF      
Revenues from External Customers and Long-Lived Assets [Line Items]      
Gross revenues 374,986 395,878 383,725
United States | BTS      
Revenues from External Customers and Long-Lived Assets [Line Items]      
Gross revenues 184,338 204,036 167,057
United States | GEO      
Revenues from External Customers and Long-Lived Assets [Line Items]      
Gross revenues 248,262 154,584 134,003
Foreign      
Revenues from External Customers and Long-Lived Assets [Line Items]      
Gross revenues 54,153 32,280 21,921
Foreign | INF      
Revenues from External Customers and Long-Lived Assets [Line Items]      
Gross revenues 0 0 0
Foreign | BTS      
Revenues from External Customers and Long-Lived Assets [Line Items]      
Gross revenues 38,466 28,541 18,938
Foreign | GEO      
Revenues from External Customers and Long-Lived Assets [Line Items]      
Gross revenues $ 15,687 $ 3,739 $ 2,983
XML 98 R82.htm IDEA: XBRL DOCUMENT v3.24.0.1
Reportable Segments - Revenue by Customer Type (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues $ 861,739 $ 786,778 $ 706,706
INF      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 374,986 395,878 383,725
BTS      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 222,804 232,577 185,995
GEO      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 263,949 158,323 136,986
Public and quasi-public sector      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 585,849 503,329 458,345
Public and quasi-public sector | INF      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 301,427 312,817 304,753
Public and quasi-public sector | BTS      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 61,313 61,726 66,964
Public and quasi-public sector | GEO      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 223,109 128,786 86,628
Private sector      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 275,890 283,449 248,361
Private sector | INF      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 73,559 83,061 78,972
Private sector | BTS      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 161,491 170,851 119,031
Private sector | GEO      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues $ 40,840 $ 29,537 $ 50,358
XML 99 R83.htm IDEA: XBRL DOCUMENT v3.24.0.1
Reportable Segments - Revenue by Contract Type (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 30, 2023
Dec. 31, 2022
Jan. 01, 2022
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues $ 861,739 $ 786,778 $ 706,706
INF      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 374,986 395,878 383,725
BTS      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 222,804 232,577 185,995
GEO      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 263,949 158,323 136,986
Cost-reimbursable contracts      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 778,213 693,442 637,265
Cost-reimbursable contracts | INF      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 359,423 379,818 367,310
Cost-reimbursable contracts | BTS      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 162,721 155,632 133,272
Cost-reimbursable contracts | GEO      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 256,069 157,992 136,683
Fixed-unit price contracts      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 83,526 93,336 69,441
Fixed-unit price contracts | INF      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 15,563 16,060 16,415
Fixed-unit price contracts | BTS      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues 60,083 76,945 52,723
Fixed-unit price contracts | GEO      
Segment Reporting, Revenue Reconciling Item [Line Items]      
Gross revenues $ 7,880 $ 331 $ 303
XML 100 R84.htm IDEA: XBRL DOCUMENT v3.24.0.1
Subsequent Events (Details) - Axim Geospatial, LLC - USD ($)
$ in Thousands
12 Months Ended
Jan. 19, 2024
Feb. 22, 2023
Dec. 30, 2023
Subsequent Event [Line Items]      
Aggregate purchase price     $ 139,569
Payments to acquire businesses   $ 119,736  
Consideration of common stock   $ 13,500  
Subsequent Event      
Subsequent Event [Line Items]      
Aggregate purchase price $ 59,500    
Payments to acquire businesses 45,000    
Consideration of common stock 2,000    
Earn-out of cash $ 12,500    
EXCEL 102 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( -!Y5U@'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 " #0>5=8JJY4A.X K @ $0 &1O8U!R;W!S+V-O&ULS9+! M2L0P$(9?17)O)TD7#Z';B^))07!!\1:2V=U@DX9DI-VW-ZV[740?P&-F_GSS M#4QKHC)#PNY+HE0FOLA>4WEF0X0M?G0 M!P3)^2UX)&TU:9B!55R)K&NM42:AIB&=\=:L^/B9^@5F#6"/'@-E$+4 ULT3 MXVGJ6[@"9AAA\OF[@'8E+M4_L4L'V#DY9;>FQG&LQV;)E1T$O#T]OBSK5BYD MTL%@^96=HE/$+;M,?FWN[G5=8F5R<(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 -!Y5UBF 9QHJ < #(Q 8 >&PO=V]R:W-H965T&UL MM9MK<^(V%(;_BH;N=-J9$'P!-FP39@B$7=IM2D.Z.]M./PA;@">V164Y)/^^ M1^9BG)$/]H[X$C#XO+:>2/)YIRNJV(!G&C?YU]-A7]:Y[*,(C95) D MC2(J7F]9R#?9PU'AHSIPD;\O!KX,O53>.J07RVH&DH'_CF$]LUJ*/T M/!XFV5^RV9[;[C:(ER:21[M@N(,HB+>O]&4'XBC@RBH)<'8!SIL NUT2X.X" MW*H![5U .R.S;4K&840E[5\+OB%"G0UJZDT&,XN&Y@>Q^K_/I(!O XB3_2%_ M9H(TR5^S$?GIW<_D'0EB3NYV*^>4R-D.^9W'S\+8F?(2' M_YJ&E\2R=5&M0ENOH.:!#\F:>NRF 0,] M8>*9-?H__F!WK5]T=$R*C0R)%MYF\Z M/FA473Z&Q I\.@<^G6I\!G&$=HE%U01D2*X#J'D!U MJX&:,A%P7TU4!*9.;9\ZH;2?FDKG)C2^+C1#8@5H[P_0WJ--':9"*&;C(/&@ MX6,W*?1G D=)5S#LNRFV[EJ]W2DT-"Z MI R)%4C95IZQ6558/;!EH+((Z&+W--*.PA-"]U\ZY&/(YS2\()/8N]1QPR7J M@C.E5B1WE.O:5)ZX^NM,"1(-J M S2D5@3HY "=*@ ?Z0N9^#"Y!8O RR@B@_:$9+O3=-N=*\M^KZ6'!M>F9TBM M2"_/_6TT0=[3&_@^J"<7^S?D,YQ'_HCU?0Z7!'M/9F#G5V1*Q1-YX-2_T'(T MZ@-,J14YYD[ QG-YE./CAFLYXI*S-( YP.U8>GI&78(IM2*]W"?8>(+_EMY0 M'<'L]\@WL98<+O>)A^'KAO.2?F?4-IA2*Y++C8.-Y_MOR1T>'%/!GX/8TP]@ M7'/\68O-J'$PI5;$EEL'&\_VWV*;\D2"A_@[6)<_:7%%U[4<6\O-J'TPI5;D MEAL(&\_ZLX$Y$(R68\(%>AW=BM<0CZH-Z1RVPG4YFE(KDMEK M-.>A%A\N,E*C>H)H?O!;#3X M4\O+J#\PI5;DE?L#IY(_^,K"L/D40SH& Y0F,+/Y9)(DJ7YJ.Z'YC>EV<89X M5&UNY_ #3NX'G$I^X L/P;]3L5U&$MK=JQ-*]SKO,,2#:L,Z1_KOY.F_4RG] MWR_H;IQ9&*[5:V6OND>HY8: MKEA&S6CF;TJM2"W/_)U*F7\V',D0S-*2"WVR@>M\I@(>'@//8R $,OY64LO/ MJ ,PI5;DESL !T_@=_QF$0U#!!L]6@ M[+,[(;+=!'@T9,5-6HBX?FG7P^-J4SR'07!S@^!6VDZ8K2#CQ<;I"9ER6$;= M@2FU(JRCRJ%*[F":SL/ @\')J3;MP%5JEP^9K1_:JG4R-561^-RW+SO7K6<= MF#S]=RNE_\45B=F*P@V1/U()TUFLS+H6ELG,?KA3ZQXWK].SN[VV>VCC#L0Y M/(";>P"W6JU0)RH]26Y8EG%G2K!#.(@ M2YBG@K^\'DV3\ \BP9OKB_WUX1O)U::6))/)9"L9)$35>A)5RZ7=K,9OL'9O M/8?E<'/+X5:R'$- )>#Q,HE]]D)^8_H)$I>R+,ONN$ZOJUTTQX-K4SN'Y7!S MR^'B5N'HP9Q7*HWA0VW>?$*LK*P+#ZM-[!PFP\U-AENQ4&E';%<65\X,EQM_ MTQ(S:C1,J16)Y4;#Q7W! '#Y6V1E*?)W&@L\KC8FH\:B=51DKBQ65JR?$$\5 MS6SKS0^?'GX0,,C*X%OYZ=M?$_Q.E4-+2,@6$&I=OH>95FP+]+<'DJ^SDO4Y MEY)'V=L5HSX3Z@3X?L&YW!^H"QQ^)M'_'U!+ P04 " #0>5=8=!V$-3D" M "Z!0 & 'AL+W=OBO-+.Q<2L* *R(XDK#/@MEP.I_8>!?PG4"KSL;(9K(3XL5.5F461!8(*!3: M.F#S>H5'H-0:&8S?1\^@.](*S\2RPPH>!?U!2EUEP8< E;#'#=5/ MHOT,QWS&UJ\05+DG:GUL_#% 1:.T8$>Q(6"$^S=^.][#N2"^(HB/@MAQ^X,< MY0)KG*=2M$C::.-F!RY5IS9PA-N/\JREV25&I_-94Q*-5MQ_7G-/::B-K=T, MBZ/%W%O$5RR&,=H(KBN%/O$2RO\-0L/30<4GJ'G#2?10P_K MJ&,=];E[5B'1DDB&5HM+>/T&R:B'8MQ1C&^B^((97$+H5R],K1.M =UA5C^@ MKZ(QO02MU]L>LDE'-KF);"V*J_]KO\.&8$;NT9(*24I\"2D\JR<&\N"ZAD*% M:+CVI=6M=HUIYNOQ7[CO:ALL#X0K1&%OI-'@O;DYZ3N%GVA1N^K<"6UJW0TK MTUQ!V@"SOQ="GR;V@*Y=YW\!4$L#!!0 ( -!Y5UC,#X6VY@8 +(< 8 M >&PO=V]R:W-H965T&ULK5G;;MLX$/T5PBV*%G!BD=0U M30PD3G=;H-L$3;K[K$BT+50279'*9;]^A[)CV>+%";8/;23YS.@,R9DSI$X? M>/-3+!F3Z+$J:W$V6DJY.IE,1+9D52J.^8K5\,N<-U4JX;993,2J86G>&57E MA'A>.*G2HAY-3[MGU\WTE+>R+&IVW2#15E7:/%VPDC^KI*%^R&R1^KZP;N)ELO>5&Q6A2\1@V;GXW.\Q< M_U0W7_*SD:<8L9)E4KE(X<\]F[&R5)Z QZ^-T]'VGC&@':!KIEU85VF,IV>-OP!-0H-WM1%-S:=-413 MU&H:;V0#OQ9@)Z>SJV\W5U^_7)[??KI$%^=?S[_-/J&;SY\^W=Z@(_3CYA*] M?_L!O45%C6Z7O!5IG8O3B80W*_M)MGG+Q?HMQ/*62Y8=(^J-$?$(-9C/7F*. M.W.R;SZ!>+=!DVW0I/-';4&W3<-JB5(AF!0GIGC6#GRS Y5;)V*59NQL!,DC M6'//1M-W;W#H?31%]YN<[<5*M[%2E_?I+!5+!+.&,G7!?K7%?5I"\,997+N* M.E>J -Q/?3\F_NGD?C<<'47CP,=;U!Y/?\O3=_*\*,J2Y5 9,@8,[THFQJAF MTL1R[2C<>3\.2)#0 4T#S ]"&IEY!EN>@9/GC_KNY4P#G0*F),(#ICHL(7%( MS$3#+='02?2Z8:NTR!%[A)(OF.@6 9=+UD!=V5W_)N*A3CRF43C@;4#1D(9F MWM&6=^3D?+58LZB#42@4?">$!51_DX]#TSTV3+-'$R[83YB,^/6L%0R4#Q-F-J)9OH QO& M=#CW!E1"L6\FB[U>CCPGW2^U3.M% 5EUB.;&T=[,DC#RR("H 0>EU:>6>H5W ME!,[J?[)>?X M_9LS/?F M#_O)D)Z.(I$76,CUDH3=FK1.\7,[.6JHF_#>1)M;'9C0("+4PK 7(^R_J$,H MBQ3*?2$+9FX3L%/47MLG_"YO^T'WRH;=TG:>9;R%S@"MTB>E:\: =:T*_#@, MAA-C@$519,NY7M.P6]2 8M."^.[,BY&EKDQ^Y!,M^PPP* RVU=,K&'9+F.IE MBGHA5-?,'C,F!.)SE'$AURK,A"Q@!P)QL+2I.R3L:-HZX]6J9.IYQFO9P!;' M')VN:2 4D9:\!H7$(..6Z'KIPV[MN]KK(0[-A"YJ4*6UB=!1.$AL1;"7/NS6 MON*6R?U^[L!R(;H> MPD+P\7!MFW"A%R>V4=_9&;IU (*=EJ4\ MDEY8B5M8UZE9\GIQ)%E3'1QM73Y)F%!O2-8 2P+?LC\AO<@2]Y;OV^'E_(IA MU[=[Q M\K/N\%O;6*(K)8FI MEIPZ*HP3&^E>3HE;3M>Y>6B5Z"I)$S]*-(XZCOC8MPD.Z>64N.5TQJNJD&J# MM9;/;0W/;(R=_LQ]%#(>W/Q_1_LQ]R)+8F<#>B-Y]G/)2Z@_XMV;F.#H8[?/ ME$_FXRJG9+_ZO.HW>=N/O9=MXI;MZ^8YEX0:A3%ZZQU[& I%@^[3LF4?43#V M/$_]0V*9-NILHY5+WA3_LAP2C3\_+810S6)765HI8&>9P[HQCI\NXEH5=$'V MC^9ZC:<'-!Y6-DB[+4S?&2<.QG$2C$D0=!'";4#HF/9@<_BP*52]Q"7+6'4' MU?;Y6+;#]4\WIZUC!)Y6K#ML+Y^,9X:FOF&HUT:091])^]:"NEN+\SPOE!Y M#5-'74?0;F?IJH":9B1JV)-[,0F&)QL&G!]A&%<+W;ZWH.[> C8O;=667>._ M.8B#AK]A2_55Y)X]*\?[D@OQP1B!WC4HNY]8JYFP5DXC:;T=B*(@2H8;6@,N3'QB.YVC M?=] W7V#)L%='KXRB$ [D3>?EQB QO.2R<01^ MFO4'LO6-Y*ON&],=EY)7W>62I >#W.8=>;W.C/EMM/U-._P-02P,$% M @ T'E76&0)XV_] @ 4 H !@ !X;"]W;W)KFK)''@$(])3$*>\;D1#9N6GR((($\P;-()4S M<\H2+&27+4R>,<"A%B6QZ5A6RTPP20V_I\!ZX)XM(J '3[V5X 5,07[()DSVSS!*2!%).:(H8S/O&P#X?VI82Z(BO M!-9\HXV4E1FECZIS'?8-2Q%!#(%0*;#\6<$0XEAEDAP_BZ1&N:82;K:?LU]J M\]+,#',8TO@;"474-SH&"F&.E[&XI^LK* QY*E] 8ZZ_T3J/]61PL.2")H58 M$B0DS7_Q4[$1&P*[N47@% +G4(%;"%QM-"?3MD988+_'Z!HQ%2VSJ8;>&ZV6 M;DBJ'N-4,#E+I$[XP[O;Z=W-]6CP,!ZAB\'-X'8X1M.K\?AABDXFF$$J(A D MP#$_11_1>V0B'LEAWC.%7%XE,8-BJ8M\*6?+4B,(&LBUSI!C.6Z-?'B(W-9R MIRHWI>G2N5,Z=W0^=TN^J< "9$$*1.?HDJ0X#0B.T81RH@OL^V#&!9-E]J/. M:IZ[69];G;USGN$ ^H8\7!S8"@S_PSN[97VJ,_Z?DE6VP2VWP=V5W9_(8P., M08ADK06/9RC##*UPO 1T0E(4TCC&C*,,6/[@3^MV(U^BHY=0?QPKWVI8=L]< M;;K<$U2A;Y;TS>/H\^)$>"DBRLAO.:%Y,!POER/[SW"NHE]JZ("G"K!&Z]"5B^(KC :4C2Q3[JUE[J71$5ZG9)W=Y) M/:1)(L_T/Y1X^Y 2WQ-40>^4Z)TCT(^N[\ZKK6S6%_@!@17^;LG?/9[_L/+N MOD*RO4[7X[C9VV_K[>K2.IS^BUHOT!WBHC:PU86Z\[M5=ZS-F M"Y)R%,-<2JU&6QYZEE]?\HZ@F;X!S*B0]PG=C.25#Y@*D/-S2L5S1UTJRDND M_P=02P,$% @ T'E76%KR/[_3!@ !\ !@ !X;"]W;W)K4&=MA^&?6!D MVA8JB1Y))^E^_2C)MFSIQ": @2 6I>=.?([DW4/Q]%G('VK!N48O>5:HL\%" MZ^7)<*B2!<^9.A9+7I@G,R%SIDU3SH=J*3F;5D9Y-B2.XP]SEA:#T6EU[UZ. M3L5*9VG![R52JSQG\N<%S\3SV0 /-C>^I/.%+F\,1Z=+-N<3KK\N[Z5I#;=> MIFG."Y6* DD^.QNG W" 9KR&5ME M^HMX_LS7A+S27R(R5?U'SVNL,T#)2FF1KXU-#_*TJ'_9RSH0.P;8[S$@:P/2 M-G![#.C:@+[6P%T;N%5D:BI5'&*FV>A4BFWEW,T;GMS$R%_=? MQI_'MY/K;^/-@R/T=1*C]^\^H' MCF"";D2A%PJ-BRF?[CL8&E9;:F1#[8)8/<8\.4;4^8B(0RC0H?I%#* MI*LG7JPX.$EK^Z"R+W/FTRCT<4"CT^'3;D2ZL"#T@R#=F$X],.=D:WY K# <]P G@#!EDE@9[)Z/$I$H4QM M8R83E(%*$YA.T.V Y_@A;M&!8-1W6[ 8@!$WBD*83KBE$UKIW.D%EVBZ,ZLA M)F'GW;[GA.UQ 5 .]8(6CR[*#6C?J$1;&I&5QH/0+/LEC:C[:HIIT.KA)0!S MG-!Q6T2Z,$.#1@1F@IU&%3BO2)1+*6:I!FNY ]!PJ$]:- <#;TH:/. <%Y$ ML=M#9$?>8&NNO%MRR71:S!%_,5I9<3ACKKT<*&4>U%M\*&_[$21-!,D;T^9' MM&0_I<@RI-E+V2R?//*"F\D"*S_23:K$-[.^/5NZ.!Q1M[W(8P@7^"'MR4.X MT5C8JCY&GPP):19Q28A-C=Q.2XE5[DQ 6K2;; +?;ZC."LZ8I>6;$Y!2DY@(C%D;ML@'!,/%(FQH <\S(]E!K M=!"VZ@4CT-,7%#OTVK"Z-A1#O3$(!%D==' MJ]$IV"Y4ZD(B.ID+9-15&-2/<-A)Q .1T'4&2I _T1.%#@]I!K)@NV:9;U_ MF4F1;Z@9!0-2ZJH,LUQ"I\T(@/D=XC$$"ZG;5U@:S8+MHN6ZT-RD6[T9'9!) M5V<<8;(;S#45 $?#MN:,(9A/=O8F^U0:W8+MPF4]-(]\)B0WV_BJ95*[E1H@ M4$*".\RZ,-/C;OF'8-CQ8&:DD3'$+F.N7\6%=,7'D5$?[>H$P8S\==HB&<2Y MD==3G4BC98BUTH]NN5Z/#L@"=S:;KFN*;)L% (NB@+9) + ]TEDTJ@)0JQZ M;,QD87*:T99&\JL%DQS48\2J2=ZJQP[J+3Z4M_T(-AJ%V#7*!5-I@MZG!9H: M"<9D'/&$;UY%+22!1BERAQFJV,$'D+ M*1<@U=D, BAZ3-J;01C5LX4BC3@A]J\TWZM/SH85>S+5;L[-EC#/C4ZI)KU" M8J65V;U/S6* 5\!!/^(]NCW'/J\/+UOT+?!+7A[&-F_IL^(;) M>5HHE/&9<>D<3;DL >;Y3 B]:90OV!YZ MC_X'4$L#!!0 ( -!Y5U@37ZF'10D %=) 8 >&PO=V]R:W-H965T M&ULS5QK<]LV%OTK&+7336;JB #X4FI[QI' QKNM[;6=W=G9 MV0^T!%F<4*1+TG;\[Q>D&%%X""+KFTZ^V**$>RYX#W !'( \?LZ+S^6*\PI] M6:=9>3):5=7#^_&XG*_X.B[?Y0\\$[\L\V(=5^*RN!^7#P6/%XW1.AT3Q_'' MZSC)1J?'S7=7Q>EQ_EBE2<:O"E0^KM=Q\?*!I_GSR0B/OGYQG=ROJOJ+\>GQ M0WS/;WCUZ>&J$%?C+(IGU-3F[+.B,T?RRK?-T: MBQJLDVSS/_[2!F+' -,]!J0U('T-:&M %0,2[#%P6P-7-0CW&'BM@:=6:9^! MWQKX3>PWP6HB/8NK^/2XR)]149<6:/6'AJ[&6@0XR>J6=5,5XM=$V%6GT\N+ MF\O?SF=GMVR&;F[%O]_9Q>T-NHS0]./9Q:_L!IU?B!\NI__X>/G;C%W?_/1# M2'#P"V+__'1^^Q]TA#[=S-";']^B'U&2H=M5_EC&V:(\'E>B>K63\;RMRH=- M5JMSF59P:S*9VLVF^7HLF>E/E\\\&ZYG=^FRQ2.HF'J?H*DX61^<9FL8/ MB;DF[ #6Y?0[!_!"G<3;GZ(T@JER)BI5O45RAO\?9.^20GQ%Q"#;Q9D6M M<]_[\B&>\Y.12&XE+Y[XZ/2G'[#O_&)B

M&218! 0F<4BW'-)>'/;A;8,4[(2:3ES'G\B!GNK%,*4*&7H9XHC%' M+A$9G!'/][UM,2DJ[C8J;F-']T3E/)N+<;4437O&-Y_>UMFH20JK/%WPHOP; M8G\\)M4+^N]UGJ9(C$O/<;'XGREN+F1[AP2;08(Q2+ ("$QBW]NR[UG[1$/S M43W!6*!YOA:SKC*ND[J)6T]//SYUE'8\M?H;2EHOEPS2900$)K'A;]GPK6Q< M\U(,@?-*D%'6Q*"D+!_KG/4SRL14>6?P,?%CQ1[:]WPM\H3X ?65Y ;IDT&" M14!@$H_!EL?@%3R:N NT<"O9?QKHPXC"A8YQI!1AUFH/C3 0F!3AT%\_9#F+UR4$M/).K&5RQ=4K;A8 MV(D!K2[TG%2K>I03TT14Q5]$R8*G<4U<;;$G.1[JB-:J#^V(H#:S3;9HF1OEDH#XC*#29F4X-P78YY*K(YYPO2K0L\C4J M^3S/%G'Q(O+LDA=MZ)%WCR%V[,8,AE_A04;0:*QD#1(B@T M>=>Y4S1(#T6CI[I$=,$!AWBBY*.IW>-0[OHY9:!.(R@TF91.ER!V7>)UVS1V M\,%G G3Q8>('@;I/ ^J4@:)%4&@RFSLG.^Q:QO#-&J(K#.HHU!:11B&5$AWE M2-W9M%=]<*"_A:A .E&!V$6%5ZJS=O3!_<:@*1!/DQY G3)0M @*3::S$RB( M7:#X$^HLT04#3+4=$+O?P0-4'Y\,U&<$A28ST\D*Q"XKV!>JK?%N:G(GDT 5 MYNP^!K, B<9 T2*B*QER0&0:.KV V/6"/0M5,9M_AZAEI4/TA3/V/$*I*JU- M>Y>0?GI"+VKT4QC^Q"6N1HQ>3A"CZ8 MH9RZ"#44(80$X9ZS@:1;H9/P+UR$$M"3$:!H,U T!HH60:')C:!3(HC]',6@ M1:A^Y( X>**-+J "0C^G#-1I!(4FGV7NE %J5P9>MPBU@P_MB507 8CK4JJ> M4 /URD#1(B@TF/9;&!SP;W%0@G;" M!SWT&,L\C:Q'=)*I:)1U]_$^DNKE>*3=KDS1)2_\U(CD'U M\-4.,;77<7 6[..3@?J,H-!D%CM=A-IUD6]R ,WNH:?N?8'Z9*!H M$12:S'$G[] #C]% '4"C^BD(7:ZT5V9PE^SADH&ZC*#09+8Z'8;:=9A+,:DL MFCEBP5?U*RJ>>*OSHS=I7N[I<89G0'"H,@,JQX"BL3XW$$&YE!^A[L08UR[& MV'=<6F-IQ\7UL:J)V7T,?MX95&L!18M<72^2 R+3T(DHKEU$L>ZX.(VL3XT$ MZ2((]L*)1U3-?MJ[Y,Q>U<'Q!Y5@H-!DFCH)QNWW,HU>U.@'*8+ "[13389R MV%-W\PV%/"A(JK7B\\XJ9^I5#O\?%?2*6D2E?"D/G M72 FZ\7F+3Z;BRI_:-XZ+^D4VVW&PO=V]R:W-H965T&ULK9MK<]NV$H;_"D?M=)*9.B8NO*6V9VPQ:7NF23QQ?!4F+)+" Y#/Z8NOR8LD%%HL'"^KBL:Q^U&LA&N=IDQ?UY6S= M--OWY^=UNA:;I'Y7;D4!WZS*:I,T\+:Z/Z^WE4B6;:--?DY=US_?)%DQN[IH M/[NMKB[*79-GA;BMG'JWV235\XW(R\?+&9F]?/ UNU\W\H/SJXMMUO!N_.]E66V$46=E853B=7E[)J\CSTF&[2*?V?BL1Z]=J0KB[+\(=_\N;R< MN?*.1"[21II(X-^#F(L\EY;@/O[IC<[VUY0-QZ]?K']LG0=G%DDMYF7^=[9L MUI>S<.8LQ2K9YQU[HS)]W53;GI&\,=;+*B^Y\\ M]1TQ:D!\0P/:-Z!J VYHP/H&[-@&O&_ VY[I7&G[(4Z:Y.JB*A^=2JK!FGS1 M=F;;&MS/"CGN=TT%WV;0KKF:?_E\]^6O/^/K;Q]BY^X;_/OTX?.W.^?+1V=^ M??>'\_&O+W_?.6?.][O8>?/S6^=G)RN<;^MR5R?%LKXX;^ >I*7SM+_>37<] M:K@>H _KBP0VU6HQ%^LYA[J\.=2E#;FA^3'/2 M-J=(\]C>_%])\83;]A^/%AKCYG&(ZG7S@IF8^VLJG+CP 2ODB8K[KL9 MDC69J-]CW=Z9Y;A9F3W>U]LD%938MBS3+A5/L_9*?RW>I#)QM53YD,*V< MQ?/QD>.=,G).:2P^D;%)U_O[KO>MD1,+,)IF2;!?:Y4!9G;93D A9*1SP!.]3HO BT MRQ/F^51Q!5'14)T],:)R261P)=R[$EI=N95QWJ('D(^S+'>+9K7+(=#3<@=S M!?,I1.[6)XI+NNC,5T8PQ@QQAOL3[?V)K/[<-67ZXTSRR]*!22T'QAAGD79] M2ED0*9[H*A(QZBN^("J?N8;!(>[ %*[5G?DZ*>Z%)(55DE7.0Y+OA%.NP+5" M)B1(9_)E#9FJ,KK97V(R%A$-U?F$R&@4**$:8RK&#(-&1NQ$K'[^#ESM0! N MLWI;UDE>2RJI-Z^KU/EDE4SO>H H8H4*2-XK454PF5[6R.1)X+#* M="^H%[CJ=,)T).21%FB(+G!= P:0 6.(G6.N1XN/#+*E6 U/4N*5(!DZG& MDUYO=7P[@1>JOB$BRE7'=!&AQ#10 ]\0.^!TF:*6J6+$*W4M 'CD_,FS9)'E M+;O\VF(.^)YM8-%O7R4I3*\ZDYV"HPTY*=NT@6N6%^Z"0" :2E*%T%J8=HDT.743\PS8T!:XB=:[X7B^-\T5'DC'B^ M[ZO>(#K&7!5L4'.0.TRKRL VY!# M:?VA ^E0.^G,7T%N%$,1-KJ'WB=$%KHJ'2 JPZ)#!Z:A=J:1J0^<:5<=\92* MNN[@M.X7'5$WV29I8'A%4A6M$E;=G42);2Z:EM&+IH)%"!]4A(S8>(O0^X_( M:*02.J+BKNL9NF )&H'I!;KG'0'D 1#>BA*=:CQ?74-0$0Z#\:(BI"1K:D[ M Q[1PV6>HPH@J'LZVOB4ZO&JRR(6J1N2&)'!AI=S0^ZD RK1 ZBD5 :SXD$& MZN'Z#CTI!)W46GPJ:],^'2"(VB&H[=-VL95UA#%..F]ZVFS#JB,+"*NVY\>Z MMVB/ZZ #NX6(<75[A F]R%4W=YC,#Z+(E 8&=*)V=+JMRE2(91]1L(-MM^EF MRJ Z\P1:B0L1A8'J$5(6\EED\&= )WH G795NI;%K5?MPRD&10'1P!#5>7X8 MJV: Y /41@B;I>$*D%,%1(/*)E.0S27.H9 M1I -8,7<5V6Y55; %O>8\P\KL+WZ .24UN)369OVZ0!OS YO-V4%;5J.:?OT M3A09I+MY)999XWQ,4KGV/Z.=JM,7"0'2U"F/Z-2(P4RQ,/ ,-,<&FF-VFIOF M,&"T#H G M9H>GJ7/(M#/7)9D.-%I('I3$B.2,N+YGV.VR 8O8 2P:>79DI97I0*-Y=% 2 M(Y*S*#"%X8!%[#@LTH>J$07$8;=?$K"[+9^%:(^:Y?E3O7IV8)\(] OT)$6/ M6;->E_E2CFU;4H>O\G:C+%N\X@R+(804:K-7%VG]A=CQ3+EHP"QV)&:-=Y-O M>N9ZBR()ZB1RNL:CT%,W 8@..B-2SR!B3,="0@S^\H&YN+V8]0'F:U=0%T]I M=W0'J0F"O2_.0[2TW2%!NGTAX^$!-@N&HU:N5Z'46O I&I/P-\L1??JK63IU[FHTXQ/0^W)$:3$%7&F#BPF(WYDRM!\0"-N1Z.Y MR27GEY]"2LAOSD+<9X4L<;4[)LC:Y1)U5\<<%GIR-NW@@=NXG=NF M=:&L:&"-K-': =?A"LB1:^E.EW&J5DYB1.69Y\4 :OPU5:Y#1^)7"[B5 %\=_*>T%I_*VK1K M!UKD=EHTG?4X;^1QR%FY:]"B)]=9S%?K1G-,1",M:'251TR/Z_"!Z_@!KAOO M*T?'=>4BS^Z3KNPK25_HY6#489W'_/%#1;W'R/-:KCY-$!4)F>GQT0'M/#O: MM0^6#=N78]SR$'KCH:>N]9B,>>J1/Z+RJ*D0Z@T8Y]DQ[JM(\Z2NLU66[A^) M>3G$>CY[^0[&,7E,JF6[H9$X@'V'=H'UZJ]^)/9P<'?X^MJE0 M=$][XF[J'$:I6LV>8RJ@-=4#A!!-&U=O(#KOJ"J8K7QBF,=RJSK9ZJ(=T%T] MF"QU:LI"1)KSNH1JR_;YZ$<:&U'=MS]VJ9WV@8CNUP[[3_<_J+EN?T:B?'Y# MWL?=SV(&,]VO=#XE%>!\#4.^ I/NNP!XHNI^^-*]:K$E)D_T9>8/_SHZO_ 5!+ P04 " #0>5=8;K*J0#@$ #X"0 M& 'AL+W=O_D@\%W@VG:^P7NRT/K%+[ZDTVC@":%$ M[CP"H[\57J&4'HAH_&@PH]:D5^Q^;]$_!=_)EP6S>*7EWR)URVET'D&*&:ND M>]3KS]CX<^+QN)8V_,*ZECT^BX!7UNFB428&A5#U/_O9Q*&C<#YX1R%I%)+ MNS846%XSQV83H]=@O#2A^8_@:M F"]-SLF\F9$O^Q.D0JA7OF M*H.@,YA7EH2MA6\EFB!@)[$CFUXSY@W^O,9/WL$?)G"GE5M:N%$IIOL ,9%M M&2=;QO/D(.(U\CZ,!CU(!LGH -ZHC< HX(W>P;OD7%?*"97#@Y:""[3PS^7" M.D,5\^];'M=XQV_C^5MT84O&<1K1-;%H5AC-CCX,3P?C VR/6[;'A]!_0[Y^ M)_YN[_[["=Q*O6"R!U\49F!6R(D#HTMOWN1<<;6T]G!-VCWH9DX#6$6(/4*V$ MT['/_J0^?D"+GS042 4=J3O9RO4(3R#31\2K[WO<[N=YFP2MR%;E:4VG1CKA7;> M0@CA[C[O+''?#&HW'=5>!_;V%_Y[E[Y)^;8AM+&[>6B.=HV&)K\5N7JKH\>= M:5Q0TL*;@RZCGS+U8&YWVV?-93W-=^+UF^B.&:I6"Q(S4AWTSTXB,/4[HUXX M78;93@&AET+XI/*ER^T%Z#S3VFT7WD#[V)O]#U!+ P04 " #0>5=8L=YC MYU$? ;9 & 'AL+W=OH716F< MQWXY'+";L26RN[JJNNI7CVY_O;7=9[?2NB\>UDWKOCE:]?WFS&&]5IUC^]U8[??')T=^0\^F>6JQP].WGV]44M]I_N?-Q\[^.TDC%*;M6Z= ML6W1Z<4W1S=G;]Y?XO/TP#^,WKKDYP)7,K?V,_[R0_W-T2D2I!M=]3B"@G_N M]:UN&AP(R/A5QCP*4^*+Z<]^] ^T=EC+7#E]:YO_-'6_^N;HU5%1ZX4:FOZ3 MW?Y5RWJN<+S*-H[^6VSYVA _)"Z].][QP+B^< M$]T\$5'YK>K5NZ\[NRTZ?!I&PQ]HJ?0V$&=:%,I=W\&W!M[KW]VQ, J[*.[, MLC4+4ZFV+VZJR@YM;]IE\=$VIC+:?7W2PWSXUDDE8[_GL<_WC'UV7OS-MOW* M%=^UM:[S 4Z T$#MN:?V_?G!$;_5U:RX."V+\]/SBP/C78357]!X%WO&FUAF M\=\W<]=WH"W_,[5B'N]R>CS<06_<1E7ZFR/8(DYW]_KHW5_^[>SZ].T!:B\# MM9>'1O^#LOJSQB[>*V<_PXAHF$S_"/NF7\$F#_1N(C%+W>I.-//_+O[TZ/S]]2Q-^?W/SD7X_>_N"%KI2][J8:]TB=1N@LBXV0^<&9%EO M:>1NP)GQX4XOAX:8$-9WIZNA,[V1)[Y[J%:J7=*ZU\:1P7N.SPD1=]_=^NEG M3V0DK+T9:DVS"5-VN0M3&_C8#7-G:J,ZH&=6W#0-O-WKKI+'8#.T3E6\ 'QG MKAJ8$&B/;-"- >.DA+-5*OE9\<&X"JC[+ZTZHM[/#ZRS'=(*_X^+ 'iB M0:>*J_.3JXOCK=:?X0D:Y1%'T6V-(K8LQ#O5#UVM'HNJL4X[$@%8"KV>ZZZX M.(,/GF]7&I[L"ML5K>V]]!>@2':+(\'(,":,C,._*%F9B MF';_\=5 =?.2> M,#]^#D\AR]U0K7;&^ TDR1L@^AO@O_"G]/Q 2TCV\+PDX_5I]A M^6$JI$LY\/L;5J)^I?I"+1;@F7FOD"( N6K-BBK,^+*:T\B5:"IR#5B)2@R+ M=O7P+R[$@Q@YT"-8#[VGG:&G HP%<6=?07 O8%#QT M9;IJ6 -=M"T&A]_B M)A3,L0BHSEO3*-FC<:9%KU0Z+UL%.;NJ@-, >@4[3$ M8+L6G5WCJ(<6QCJ 4_,0F@CB0>= CT*-5LTLT8,IUNA[U0S$]0T\;VL@@:PG M/EK_ J@$O@'];8L6UN8<. ZV2VL++R=4IX22N)$Q7LA!ZD^6=FK4PD9YPU;R M^FWQ09FN0,I3!@V.9T@\ \BAF*.0@'28=3U'RT5KYPF\])@)LC=,#23 LE!J M:!G 7AO\$;7#:X&E\5'8N!9X@[=6>9A"(*[6(!6 M["6L86EMO35HKD']3;?.E37.^DG?ZW; ;599$ VOZ![T"RC0K#'^T1MD*FLQ MSC"T@"\)0--2Q8_,BEOE5O0>_? =V(![M%9 5_BFPA]T\HT7'GUA<)NT+Q6/X)^=Y\AD%G )L6M M *P!]FU7!@PP^:HU6FKVN^0+.XTZ2Q 55MN@/I!:@S,'CPR: \Z+=ATPBJPZ M_9NXL#58?=A7^@'6 GH&CU0 !F!5G7&?Q8L W7/5?O8+IE7H!]PWWB%_T*@J M#3@M9LD/K1LZE +,TX'<60E-^!2=K>@<30$J@=\! 1D;$L[-BK]% ST';PTJ MX5@4$\**'AZ- 7JG9('I]DX76P_:.[XH35J/[""R2KQ""T@S$S2PA,74KV"> MR"J=X E>@V@ M7).3#AB)K*P"\PFJ!914P"IBB$/][ZQ#%SSOK )<1Y -34-;@TGL/)KS/,.M M@_865/6?J$DI]*E-3<^05N('/ \91<:[N-7)G(*S;(NSTZ^\)5@2$1WO:0=L M[_#1% : *B,*>%NL[!8>Z^#SZZ_@/Z^^8H1P_=4("0:W-QH;34 "N]PDV"C1 M=VTT1=?-8TG+)R;>PL)AA-:H8W:UF\[^ L^!,G[+1']Q[$)MX*4',I3@?ZY? MP3*N+WD9UU=?C:>>YM 6W&"A>A#0?.A).T1--\,<0AH:# R*,\?R@8,1;9=M M&3;M WE![QP=>RU2PRT8YQ4[%&8MJ@N,NQC X.@@7?P(%G0/KH&Y.P<]JO4< M00)%B_"(2YTJ.8Q_>$?P(>PKL!!]-[!13)P*Q&6UAMV'4(K)8V?+B&OK80!O M%/2R0(+334-NN65?ANH#[H3V.D%_1"(*;(Z:&S*ZZ$QA!W:$@]+H (;NMQ@- MB/T!:-E#R @:ADMGJ+?6"BT5,14]/9MXYS^O!3R9=C.PI02#YK4U8F.VW!6\ MO[2X[]X4/X*TF^(L'7^$\H8V0)=?!TO8!B(]]K^<&Q*Z63+L[U$]Q<.C@Q > M&"T8=JMY!Q.GA3W -HPR':CY/U( P4H!X>8:A&1A!+*K "0,3)%959$9O//+ M4"]Q*3-9W_F!]>6+(LF"FX! ><\"=I9=3@P1N?"4\3S_&-^+&91)X&E1"Q"[ M*BS%/F3;\EG#NW:..X+V*U)"+)Z:V//FXJ#LD]%H_C"-&S8"0\%%P(A]HSDD M\^02_2A8;]M347F'E^&U Z2F/L!CQ/U^&#&,]TO1N24?;M0C?P+@RB(T40\Z M^12>ZP9864("VU8R.1:,W5* +\9LF )F'PT6Q.S&A";:' I%X/5I_X$20*I):)+$$RG,6.#7J5P*U /B8-( MNH@!O:7C,< &+26&\/$7? J8"1R)Q@000@ Q!&A<'WE/_[3+$^+JCG0.4>V\ MI<<(P@5@ U&]]W3T>35T$ QB&&DI+F1UM[BS&\EF9( ,MQR0AA"']Q,!36\! M>$P87*#/(_ '%9D>2J87? A8&A.JP$*8H7)CMW93@=P9)[ILA\"Z&R-^EMRF M2Y-HT1LF6&_AGY#'^W!S]SZD\":?OX4P%W0SGY@#Y38XS7\;M> M]"&9A-UJHB EN'C*\FB?1/"!XZSXWH>0*K!U9ZC4.XNNQ? E"W0#7DCI;G6_ M=^A4C>69&%@C,/A"T)WR:((_O,4 M-DJ=<,AO&.?0WI\>"+CHB\)60&'1@%S M.AP7^1A>CSR""SE 3_5>5L/.^-ZGJLLL7M'M$J HQAX ,[OZ&*$5(C$(E&#W M(IB*R0I$Q+ K#"G ME?/_E44#0QM'IJOW3Y7O*.4R[&TG4F42ZQ94!(1 F4H)(8?ZA!DG%I=* P82 MK:3EW-28J'(4B=]3ZD.W+C _J?KXNDJH[/Q=8VJ#W#7ECC#^UBLL\,(X_,6L MN,.(%:;"Y*KMO$-CEOBL8YHNV\NY7!\/*%29I/TD*?^F>&Y>[.8 1WN6[ )" MW(@A8>EH927;X)4B)PR#JYBGG9(#&I6A43B\ A]J) Z!-WP"EY0>0J,VK"D2 M2FA!82[%[B06\Y6_I3&?&UDKV3) ,]L6??G^;4;8&7"V,J2?GS5LH_6FL8]: M>[3&( 1$*[R+:/^PWO54X%#.MF2)&T+V#"BT)+N8:>G@"QD_(R04R@YK.44H ME)IF2,3O6J?^<&3]642EY2[D$MPD)KU)1A4X\' MSJH%OCX0U"[8MIQ\<>9N/TV"2OX9JGFM]%"0 *93YR"Z=,4M"1)1)ZH>K41" M^S1\RN(RB?FK!EW6PK ?\+$=?YDO))9U!T>^$;L-X&O5-9BF7$O55;)/=L.[ M#Q2?[8V*WN M$N_")73_0/R\ I,2"YUC]Z_02(HY#SFM6?.PLJ(!D';# LB&;E'VLP\>P MN:A,1A%!95T_V_=D,.>D&%-;.1\LX:5D\,;\&R4UU,;TE/&6]"A60#%'OL8 M3K R'0S31ZY%J_GP:]11D8_]-I;0J<7 P2NYC[�Q)9R ;8#/64[$D)CX3 M"_DM820D1TJ-"U6L7![+WP:8L_DG20Z MD#T$#RBF%YHH_X&Y$Y*#6G9:<\[BAE+$&9L^O.U^N=Y MB7NV2U8(RVKA# +8*B;-#Q3UQW(LPE4$M 46(S@?6$5\GK<-0#2'Z0?-FR!+ MF.VF%JGRB.!%#!6"9NHG^&&!V7D9RW:R]SP]^@&0N\MC2X%7._A%2A>8F%N M(N?Z6I(F8F:U-HYR'A2)$& 1DWV >B*3=G+Z>C(5)AAT/3%,B9G99$$F\JW^ MXJBUE6+FWL%[#"_RX<>YCPFGDQI)RF7F@W*%.S[3/VY$B0+ZP(+C+L4,4KY4 M+DLJ<3EO,.VV]+E,U/J]9G>K7 +ZTK00//9#C/MO..X/7YO#Z2!RI^0(V^AX M,-$BI?O$LU/. & *YU)&^84423'4?T(WQE2^;*_3 RDYV["&\!QA\4WK]6@EVU+@ M/3!V83KG&V&D4X1?]BF%C/F^#8_U&*PC[6S,4\6%9-0WV/I.2CI*GS%V89N! MA?O&?,9< $6]:':"6<]%JT:]/?@^=:+0BYA!'M4(?'?;U-)\D\T:>Q5@0[=V M+17ND*F'#VN?C29T)N^6M"6Q9R9IWV#MQ84SZN;=!Q8%5*7M10;'E'$$ER\\ M"W981!28[3P/R&[ ;F)?CC:V%]N;-6E(^E]A$?@8)+/)E:''7LMQAFUBVV;M M42.#->;^O^^PFRT5]5P%N94L4)NZDM[VF*39G5[RSVS9^M#NZ&<<-89$7J4> M8]798;DJUFA^-DV:[>EUM6K-KX,O[6WI'(*3B;BI$*L2%' TCQ# #/-??&ZT M96/2Z(G MR4+;8.B$VZFIUD,E/<5LNU(*46-"IC+0>M#6L"E@=L-3L73RPV%#N^E@79UI M'F/C&YWFT-CT47UN[+*,G["+!IZLS 8!%+4SM6J-0FUM>TSYKCX!XJ&.>Z\; MB[$YJ8&%44'"-Q*S[/$ ORV>V!]!\,X3%/RGXEZA=.04_A_;_JG8%G8ELA/3 M5/_'0.XR1:^[&V ,=D-&YW7Y)>#+:1V(:QF$)CD=^%\^K5@'G5( QLKWXGY* M"K^I 1MZDR9/.-/F31'UGA 5H&[Q?7I=1E&Y)X[>4-*\;=B8%PH:(<7 M?5G;EZ312VU=FN6WOII-BZ["R"1)_^OQ_/$XD$E[9%9\D-R"K E<*O5,I/4+ M%\,L$;]!(]^@TD-0C4]_UY3>ZH M/9A:%6A,Z7GK[JG;*%1P)P( CI7">&FIGN4Q*M$&\!P@Y=92VY/M=,(^ #W2 MAL=!@Y1/A==B2M%[MMAJ!#X[T0-R\ E@#2-0=U;^;)QG9^C85XJ3)" OZ3J1 MAG[UB^TH7%N,1!H7Q#VL?O[IT;PT@*=KXW366\@EB]K#YWCSIE N4FM5>S; M%]12@V>L>LEK^CPFU0GP4%7SIY6"=V0DFPV BK./&W-=J8%:&[%O MVU0"/H-\I?K5V29X3S%+LV"O(IT$E1HUMUV)!]/0N""(Q6C#*T0:BJ14SHKO M1_W+J!E!C=+F%&S4#[8Q\C3?*:]/ORJ+5]ASC/.]/MW;-CUNQOZ-/=,[="?R M9I/? &8^!N"SB]/7Y?7YI2>(D/0? M).J)S-S5^Y$&;WV8%]"OG??*M"YH28[%V-J;]!3GL*'S(PA#NT=O/?6&\&2H M4H71?4:;#QO"TR>4D5+-(^+WLR4S>U M4J >KRY?EU=G5_AX3(KOV=]E/$/S[/KE17E^<872"-V-7/_<,5$K[/QZZ&'E M_H2-K]J-?8KO7\G? ^7E]V8)J%E0I@E)(8NK!G##G51GTN.HH<%]W,BR9XTS M+&),&C=OD6Q+J1P\G.(3EA2NQ#GQT)'WY4*7_!JZO<'Y-/[,(\1133)4?J3( M-U$$EOB"!9\E]?R H$"VDN+3G1@K+NE05#BU$-R?KT$7:HO]CN5>>^Z7+$%2 MP%-Q/ KG: ?@D7'TR3 <1!X2XX?'((#06P1[OGSGDN.?7:@H8E30Z;3)AL]+ M,)*LDR?F ON M;)TTDX:FW#4=XF(N*@/36=N_1U;E#O0BR8\A M:=J>18%\JD@)8Y,#I6F#_[V"=0PN/V5L@\I3@GCHJ?4L:;^0;"6G4\=G8&-K M);D;SL #C%+5(R<.<4[-9BQ0E::Z- 1]K=:=]'\0-L0.]A4>OO,)L[6!L+ ' M& Y?$>K!1S&%16<.2DG1N3YMYOF6^]0'D&6'GE..7R"'VW"07)[GEA=;T=R< M7-Z EZ.@EN7%C1Q1_ +%T S=X_8F14MF_V&Q Q7Y#=MFNTJ2.JIHT*M2^976 MQ4EZV01XI$_Q*3H_5+ =NV!(T"MI$T@,!];YT#Y[F?8OR52HY\DQ0S)LTE". M[WQN[5:"'LTGT\DY^DX'.E"%OS;*K 7C8C82#U!1*9Y7Z]='G2F^'73@7J=[.A-5K8Z'C63QGKS\ M)%\1&LY1;I5JV;U+3U[LF,7,R4"]['X<;CRBK"\?$O-7/ BZ0!+\X,SCD(L- MESZ +=Q(^=#)N1]J-AP-(ZG!T [)FS6YD\%A*L"W>XH5\*>(Z!@8MS,\^2#B M/C;'P5R6)AG92D+K:!;C"?R;/6>^#D)#-DP=81L.#:@D<$RW8B0>)*OJM71G M!=@).W:F5%V2LXG$:/P>VSHQ=2$7J !?P/EPNXIOGHN',=Y,Q*[FE[0XYM!6@ TZ:&SV5VX98&3G6Z!"'Y8PGDH<22X^L,S]O:YUV% M=O+LOBFM+/@@,L7/?HOP:]2T(STO&(75H0#E W@^%>U/Q*7@A.4KO?\N%3+N M63GO'%I4)/=8=1%1>3/XP$/F+U#/,+6Q#$8*4 M:9.,!N V7)Z*ZB$Z]%,H..:^B)_G("I](YXK=TFQ,A@K2ME'QOZXFVY(14RE MP2D8*Q8W$F@GL>I:)7\U,!D93P8;QF_?F)Q+P:'IF [MBT>R!, M=U8@S'08DL52-^B%<9J.=(]SF<'(3B19",Q&1K*^&VJUY**P(CL+W5['.ID!#[1Q?86V]"ERV>Q&0LA=?TU4/#Q[1\M$ : M#/@32SYTB<7(&O]FP;:)GK4#I1?H+AS#/INC\9Z:7+!$6?M-JSMZJ(RM^ZQY MTH,_I2&)N914CABV\;Q)YL9?H)&<)"P^)==NQ5. GW;J'AB-8/6A2J\&&.O& M0B;8&US[6F5;R8T=C#W9C. #9%N .[JM'E.K07=Y" :B-C[23T'VB1KEAB$# MV[-)2TB#,1-AV12R^T%[W_8LY"%1U&C1."OY!U8%E.> )SCIA@P)%%Q^D0%? M%+-!,$MY9X#1]/-HZRI_SU'H592ATM,+J/6ZWGTH"0#?^XY,,H%XZ]A2D/JX M2E-Z%RI@FBJ._CX;U H/.DV;3"Q'C>&=H=W]M'@>:S%4$GS!8_N9\KM=(J_B M[HD]_RU=K\-A0YT(+DZ1-&J]F#Q?)V^;^R2:BDU5P2N1BC#S\4BT-*?EW2QR0X!DLD"EAYAB(=-! M,HPX^9:1&>*3XGFT5GR! X)CB+F)"'KN1;PDZJ^ OVU'>#C+%4U\'_=0T7>: MKUI*[I#RAP5#^UETPU,:2LN)N?VH=^@RT(2&7KB02IZ0F#\S,+[I)];R/'[< MHU*AS,#0#02W1&WLY8(!OA=1#).0P#V,5B)__,@Y'OP9LH MQ*+3"\?PO!MK+<=[F-Q '.(65(RB=,EVC/9_D0_Q6]>&RCS+2ZRN#_9$C M 5WDDDRF%MB\+[&X;N5(CC]6D90%_/.4Q1H)=K=$D!U_]I11/H$OJ02O),VS MD^8^MN>:Z!W#\8HI3NV:\[$V9H?1Y!(%PFS>F6:]3.6H;0-<*C(=W8!YQ\]_RT/_$3WN:0 (=[0AK%T M>NN+W.[8U>0,*-*(/5)_M[/BY>6IWR#Y^%['\^XH>25>N?NMELIO-FU:S<.& M-$X9PWH1_W>/V0V5ESU$%OG,M7H8;$I]#AU?P\0M\G40X.!';]]#Y MJ8>B45N\HR<]%!Z+=%R'?3+7[+[6X.V01DN-M7.38=1MSGGK?-K&O.K M5]-#YH7P&7RQYZ)0\>'K%Q+(DO;%FRFQLL^ )MQ .LN5?3RJ3,6.R5W@(.Y5WIK[:>)I4!]42Z-D0HNC2[CBY<%A[&,<^YAW MF!R;*%-)[!:\GG"9+G.NH41E9)!T-6#2<0G;L??W-ER=^GH=TV16E@O'<\V2 MY)W+J>A!3GB#]\4+U;@EW&> IADZVWOS4ZASYG);#H8-/FYD,"$Y(V.G".4, M8=E#3ZDL"IJ43P"L*>+$/W&QIP,0+[TG2$*!,F$1["L MOC#)Z&V)R>)Q4%X MMSZ;NOC_)/F##1"1+>G/4E !K>WY;S>$3PO_ER]N^ \^Q,?YSV;\#>2':VCT M EX]G;V\.N*>5_]+;S?TYQ_FMN_MFGY<:051)3X WR^L[?TO.$'X>R#O_A=0 M2P,$% @ T'E76 3X,W@P! ]0D !D !X;"]W;W)K&ULK59M;]LV$/XKA 9L+9!9MN.T768;L),6]8>L0=QN&(9]H*F3 M180B59**XW^_A]1+-#3Q!FQ?;)%W]]QS+SQR?C#VWA5$GCV62KM%4GA?7::I M$P65W(U,11J2W-B2>RSM/G65)9Y%HU*ET_'X35IRJ9/E/.[=VN76 MN;HLN3VN29G#(IDDW<:=W!<^;*3+><7WM"7_I;JU6*4]2B9+TDX:S2SEBV0U MN5S/@GY4^%72P0V^68AD9\Q]6&RR13(.A$B1\ &!X^^!KDBI 0:7UO,I'<9 M#(??'?J'&#MBV7%'5T;])C-?+))W",,K%7W9H=&?3 MA(G:>5.VQF!02MW\\\4="=)>'=G&N9HRMA+"U-I+O6>WUFA\"T(-O)NG'NZ" M42I:Z'4#/7T!>C)E-T;[PK'W.J/L[P I>/9DIQW9]?0DXC6)$3L?G['I>'I^ M N^\#_X\XIV_@#<,UB@I)#GVQVKGO$6S_/E['F\<( N7<4%+1*<$$?V M@9+E]]]-WHQ_/L%VUK.=G4+_;Z7ZGZ!9K[G*3.5/JOYB-(U.RCW['6.G0]K2 M/@C@HC(V&FPTE!ZHW)&-)3]COB#V8;5=,]D2W7Z!RBA*?QR_/6.;LK+!)'KP MI@7C.T4]_K5T0AE7HT+L51(06NOD]8A]+J2+J'65<0\-^P3@6H"L!X#T:RUM MZVYW;->!>S;P8G+FY%[+7 H.^V<@Z1%3UD'5%]PS'I'WM>(6F0X!21R@$$Z( M_ZJ0E+-/%5D>LX13(>.,O.'W2-2KY.K3]4WRFG&=,:F%JH/M0?I":D9<%*U_ M;);$8Q3@QSLJ/[C@,)>>&K*U/CIP"[$C<_C/4;-2 M T-7F%IEL&:\JE3(LR5OC:L:TNBH)D;D2()_QR!.+!VR"AX!*Y<:*9*@XSRR M$7M\Q-['GN2=7Z0# *7T, Q90JE,67%]#!)16]M,"WK@JF[:-;8#5(2/?1>! ML#TXAS%!X40('"H4T8>F<[AF8QFS+'86: V/V*$@W8 %'ALM3$GL,W^$"%.D MS]R_F2(_?3M%GO"&T^.YF9X.KN*2[#X^.)"), .;6[G?[=\TJ^8J?U)O'D0W MW*+^CBG*83H>O;U(F&T>&[#OC\4R(GP7>962# N2Y,;Y;! ?]2V_Y M%U!+ P04 " #0>5=8K=%1KJT$ !]"P &0 'AL+W=OV@5Q:["[0(FCV@L5B'VAI M9!&12)>D[.3O=X:456?C>/-BD^+,X3DSPR$7>Z4?3 -@V6/72K,,&FNWEY.) M*1OHN+E06Y"X4BO=<8M3O9F8K09>.:>NG211E$\Z+F2P6KAO=WJU4+UMA80[ MS4S?=5P_74.K]LL@#@X?OHE-8^G#9+78\@W<@_U]>Z=Q-AE1*M&!-$))IJ%> M!E?QY75&]L[@#P%[#P^H']VVE'+FANX4>V?HK+-,I@%K(*:]ZW]IO8_PZ!G2GBE:HW[97MO MFT8!*WMC53&;4&S^X9K6$PLXM+JI!PPKCU&\@I&G+ O M2MK&L$^R@NHYP 0)C:R2 ZOKY"SB+907+(U"ED1)>@8O'56F#B_]/Y5W!Y7L M[ZNUL1J+XI]3@CU<=AJ.#LJEV?(2E@&>! -Z!\'J_;LXCSZ>(9N-9+-SZ&], MR5F,TPQ? K-K;D3)X'C!N 5A6,G;LF^YA8JMGU@E=J)"(R:Q4PA9J@[HLVV M[5WIHQG?@<:3S&3?K1%)U0S-.CQ[#M,P; K&55F05O 6J:,'M0#;<(N4^K9B MJBQ[S43-#.! 6$'TD#)Z:C21KC002&$D3 ^C$*O*!Q2,F\$CZ%(89**9CFV"Z* M+ GS(O8F15&$^2Q%Q?+#:^44TJ/MOZY*94(>!+()Z'R9RZU#2< M%_-AUS#+9B\#)=(P9GJ,$-8$AK$:JOTEX,OXKJ'DO0&" M$9@_K) 3B:/4>@,,N+O4J0ZQ(BI!>QK6X Z.V1JP##NP/M6U:O$"=T>6KULZ M:ZZQ2#PD'"<(4(I6C+Q)RE&GH,B\14+MV?TW"KY4"*1Z_?2?+YLQ@9?LL[?X MRUFX*XOAA0.N<@^7SM&7> #XEWRWL,/_:=ZC#*GW)OOY0^O[=+(GCCR7 G.:Y@@VG2/3*)S/8OR?A7&<'R&Z'D:5,/AJ M\'<%MC]>?N^%&>HIR<)I4A#7+"\8'J5YFHQ-_(TJLR(+TR2G88+G/)[EI#*? MYF&*W$[=N9.C)Q&F:>,>?H::O[3^=31^'=^65_Y)]WYBU=8]L-;*XG/-#1M\'X,F URO%;;E84(;C"_NU;]02P,$% M @ T'E76,HIR (( @ L 0 !D !X;"]W;W)K&ULC911;],P$,>_BF4D>$%SFG8#E212NPW!PZ1J%?" >'"32V+5L3/[LFS? M'MM)0Y':PDOCL^__\_^:NR2]-GM; R!Y::2R*:T1VR5C-J^AX?9*MZ#<2:E- MP]&%IF*V-<"+(&HDBZ/HAC5<*)HE86]CLD1W*(6"C2&V:QIN7M<@=9_2&3UL M/(JJ1K_!LJ3E%6P!O[4;XR(V40K1@+)"*V*@3.EJMEPO?'Y(^"Z@MT=KXBO9 M:;WWP=*<(!X%J#$9RBSF#QHA;4E]ZJ XF\ >/,SO*$R\G.ULVA<*_PZ5>2 6)Q&^/%8VI;G MD%+7_Q;,,]#L[9O93?3I@L'%9'!QB?[?+^(?%'("0[:0:U6XF2.Z+,$(59TR MS(ZZJ %3A5FQ)->=PJ&AIMUI'%=#%_Y)'V;Y@9M**$LDE$X:77VXIL0,\S$$ MJ-O0DSN-KL/#LG:?%# ^P9V76N,A\!=,'ZGL-U!+ P04 " #0>5=8!'?N M=10- !-*@ &0 'AL+W=O7A(ZL7&M._M2JE.?%A7M7TY675=\^SBPA8KM99V:AI5 MX\W"M&O9X;9=7MBF5;+D3NOJ(O3]]&(M=3UY]8*?O6M?O3!]5^E:O6N%[==K MV=Y=J_IYMORY<0GA52EBHXD2/ST,Y75-0;KH6;S7Z=:^N>HLGUHK+XI=>6TVNLB\N.HBF!A?% M(.;*B0D?$1.$XCM3=RLKOJY+51X*N(!..\7"K6)7X4CE!/5C5 MWJK)JR^_"%+_^4?TC7?ZQA^3_O3 _ 8Q[-/#)S_4XK)I=252YW%/="M%OFID M?8?:0=-6E4)6E3 +?H<*MYVL2UTOA<+K[D[HNE/P1&=QQ6U^UK:7E?BV=NA! M97ACJMX-69CU6K6%1H.E,O!D1Y>=*E:UJ!M](]M6VZG 0Z&MD*)IS:TN54MZVGYNBU8W-. Y%>](H-TI N58 M6UG+ZLZ2$ R\QMU2 7XZ%K3M)9NFTL60/=3NDCIUNL =C7Z#--"%$J>74MZ< M[0>9BI^.^9.TIN&E**1=B:9OBQ74A!$D! .?S!(OF@6N^[W7-+R!XBW0L9(= MQ!6&G"^M-7 K/=CH;L6V(5K M6>@**8,XLHI7LGY/YEXB(^!>3WP_O9R.#*Q(F]:*1K;(,WJD.C.%MY7XWG1* M!(''%U:\DW=R7CGG_,!]?YA7>CE$S&-O+_J6WY2JDTAYXY+U$V9,D<:PA#*K M,]15MQNK544GUTUX76EY9Q2'$L+1 MO+IS-?ZKBPQ9 4!QYA6=07[U!!%0F#(>:6-7A&Z,#63Q@<%W!U&7=NLIU**Z ME1A_K'B)T3T(+JJ> ?-!4GAH7IB^[L@3A=*WE,0>#PB.H5KR3"<_C-T])=!^ MK>9M#S8EPO"/ NYK3.1(;&A8B>^ =]1N-%?@?=NXVM3H0!"K2RU;:#2V\/*# M7HLW.USWQ-NWU^(4=(7YV"W%8D)M)F?>/="F[&G5BHC?K1I/#=9AJQTFABU\ MR[)L*2$P*+ >4(RF:VT'VLCV4SXXG'>4BJ!$%JT9HD\>KNVN7$$1]5+5 \(R M]KG(&Q*]-+>JK3G#K.*L&?)T":184MN'*-[=SV.DRTD0Y5Z2YF.GG01![LVB ME,) $P*YYB3UHB@B#Y%1!J&N33>D!F1XB>]OA]C#-\VM! >=*=[_27/'9_C\ M#)__7_ Y9F1[GR\(=5QIR#%#+ON6AB:,_43!;_DD2SJ0P76?>_%L=E#UF>>C MB'* +.@(D5T*5P42+UF-#C,X),T\*?BDE!I/L3S?,,K8.K:X+&$6#*7 M4^(C%;\U=&O"5B7F\D!AU6+JHHFL4 T)WQ8"BB1"!8:U^6N^9\NUB,9\[EDQR6+Z@L/%ZX?*>)'RC?\]'Q-*?1(]0:Q M%X;^0?DF7I:%H_(-O-1/2W0=EO>%<>V)!>V&> MHZ11!>/E\MJ4JOI-A6S_C$K^S"D^!5/2_G$0]>X>AZR($;O-U?)?(-:.9N\R M;C1C.MZHUY1Z+;S!E1P\I9)Y4GFLE(/_F'IOJ]CWO3@^Y-Z@XHD?\ IDJ./< M\\/LD4).O5GV!\S28>+-_*>4,OGOJ;6<>$$4?:[ES[7\WZCE\&$MLW%8V9L- MDP?.9'?*HW]5]F@(5T\.UXAHW.<7;DE_4-U%9>Q>W86VM&0GW]AA=X0L<(5) M^/',H1.;Q8A$&[*\=>'V#G\RM LR_GM-Y7DB9H"&&7X3+PYR_ 9>%*3T&WFS M-,3%EU]D81 ^YU=QYHLK$+G!R+Z>NYL][T&!U6!;B>?'(JI$:'3XTM$-BZ:4?T5\, M$\RH1QKM;$W@"N>W0:GMBR!)!91+LOV3"/5^KW*?B>MA=\9M2E! 5[JQ(DJ\ M%(HE$30C=1/229^:L%[12W7BDU)T#1,,3+,21C;PY2Z^WFV M'VDNB_>568H,[HV\##[,R8->FNS%Q6>P[SCC%J<991RU#+V8+^(\)8EP?Q*>[2P\C1&5X$Q\K[H'A7TBHAA. MBG&1!N#*I'^,Z-$#FH@IT4XH36-Z A-36'^-X-..H,,D3L+3:YZ7>0:F-+Y M\?,D>4:.X',2KD#>5F,?9>RC$'6?^>PM+P^I39YPN;J=SB75P7:F&RUV>+C] M3'SV(*I8 [O_1)T%3[I;D#A0_JARO O RB$' @XNKRP&GX"@!'!4 M.F,8"[R0+V(L-?Q0;/L?+BD MJ+$<2]5$3$"?U!'2X^9@RA13Z=)Q0MZDY7USVCAP,@_YZL!^U>!#VU>N"5\<9 A^:LZ&/CHZ[[;CJ-XWLW/XI M%C"]SP+>\-% B_#71%A0K9A@ D8G+PP8K7(O3Q-$&H2,MLXP#N44WP%#N1,* M.O>)"^28(*AK #AZX\BSVXXIP0,U?8# !@R3[--TWL;.$MU/ #!82W@IX,4= M#$2HW]@;N:>Z\^[YYOQPYY_8@80Z%!\SSA*&N]ES>^!7_IIFM(_ZT>#VM<0: MJZ,BQ$I*O$N4+6ZXF]\C:WNZOW/-&!^&DS& +7U M10!(2P!=CP!N;+$=9<9(H6TN4(2'-")CS0%NPC9,+HTA7#!U MY6@M]0 [&/9+L?JH".)*_E[CEJ>9S6J(!Q2C+U,>A9TQ2FY,7Y6C/7)]9%?! M?2=1C9&7:F%_VZM";WMPS']Q5?]%W?/@*34_':)=3?.??Y M"ZQ/(EJ6Y5X8T:R?@]H%O)B9I>"%6"L0B1OB" 8 *&'N%F-)$3)WR['&R<65 MM+I@X@13[:@L@8Y3)ACA%!07[&^:^.(K7?6\G_-(>]_]N/;@\I>CA.,%YYJX M_8!,#Y.%][RIQV'^PD\/-PC0ME4+.H>^1T)&,^P]'N*Y3L1[W,;(8H'N]MC> M$$K4]M2#*^*@UZ@VG(#CM7'LZ[&+T2=^6+8L^4-&P@( H/O:;_=T]ZWDI?M$ M<-_FP1N++E8+W6VJ ]PL# M.X<;&F#W!>FK?P-02P,$% @ T'E76/IVS<3] @ ;P< !D !X;"]W M;W)K&ULG55M;],P$/XK5D!HD\*2.$E?1EMIY44@ M,6D: CX@/CC)I;7FV,5VUNW?&:K];6&:+%;,-6\ GLY\V5QE74HU2\ M 6FXDD1#/0\NDO-EYOR]PQ<.6S.8$Y=)H=2-6WRHYD'L!(& TCH$AL,MO 8A M'!#*^+'##'I*%SB<[]'?^=PQEX(9>*W$5U[9]3R8!*2"FK7"7JOM>]CEDSN\ M4@GCOV3;^:8T(&5KK&IVP:B@X;(;V=VN#H. 2?Q$ -T%4*^[(_(JWS#+%C.M MMD0[;T1S$Y^JCT9Q7+I#^60U[G*,LXLE%P(JPF1%/LNB6UQ#"?R6%0+,++)( MXERC<@>X[ #I$X ))9=*VK4A;V4%U:\ $:KK)=*]Q"4]BO@&RC.2QB&A,4V/ MX*5]RJG'2Y_ &Z1'OET4QFK\-;X?RK3#R0[CN.MR;C:LA'F ]\& OH5@\>)9 M,HI?'5&9]2JS8^C_RW^WT]V-^"!L(,J97 ZVW."1X6- 7H M_L &EL1;Z!YTB/.<)'D>3B<3-\NF83RAY",8!&0.F,D2D$.32K6%K5N!M[E4 MK;2&G*1A.LU/W9AE.#X&#XG$YN88:)A/4\^0AZ-T_)#R;U*2/,RS'&?3/$SB M[&^5T)".LU,_9O3T('JO)4G1.7$4-)R,*+EPW8G;>\(EL6OX(]D6B_[/=6?" M(V*KO>$>F$916)[)&,=Q.,TIN=+JEOLN?%A+$M)10DY&\2GY MJKF%EZJN/44KL3WY_HNY#PJ% >-I5ZC8'=DC78#_VR-%HVFO[-#]B@9-L &] M\JW>$,_9]VK\F%UT3?7#OGJ)+IK$NA@BH,30^&^&PO=V]R:W-H965T.8!4PM4W3?ON=(:6)E&;:"_C.=[^[L[EC MNI'J7A>(!IZJLM8SIS"FF7B>3@NLN#Z3#=:TDTM5<4.B6GNZ4;[ ML5=Q43OS::=;JOE4MJ84-2X5Z+:JN'I>8"DW,R=P7A2W8ET8J_#FTX:O\0[- MCV:I2/(&2B8JK+60-2C,9\Y%,%F$UKXS^"EPHW?68"M927EOA2_9S/%M0EAB M:BR!T^L1+[$L+8C2>-@RG2&D==Q=O] _=;53+2NN\5*6OT1FBIF3.)!ASMO2 MW,K-9]S6$UE>*DO=/6'3VX84,6VUD=76F>1*U/V;/VW/8<RIU1M"O(S\R7BNY7F6?@=0;7#ZUH MZ,2-"S6:J6@(;S24.^IXHW^4Z\*RY+79KQI^7ZRT4?2A_#E4>T\.#Y-M\TQT MPU.<.=0=&M4C.O/W[X+8_W@D[W#(.SQ&_]]K.@H[G.J1"+"WA_M[&U0(7$,N M2VIP/0&Z,JQ6J(9KV]$$G8;!MSP7*4+>JEJ8U@)VP7 "(S=,SOLW"^!25DUK M"/!J0JCQ> PLHUMWHTI#*MC9] M?P_:83I>]$/AU;P?K3=1%L@.&?,?\+4$L#!!0 ( -!Y5U@8HXGLB 8 ,L/ 9 M>&PO=V]R:W-H965TLTE M 9+-[78+W'9QFVM1%/V@R+2MKBSZ2"I.^NO[#&4[SCF;;>_ZP3)%SCSSPGG3 M^<;8+VZIM:>'5=NYB]'2^_79=.KJI5Y5;F+6NL/)W-A5Y?%J%U.WMKJ:!:95 M.Y5QG$U75=.-+L_#WB=[>6YZWS:=_F3)]:M591^O=6LV%R,QVFW\W"R6GC>F ME^?K:J$_:__+^I/%VW2/,FM6NG.-Z9/>FM/RGBU:5UXTF:@3=6(ZMYYL]HR0X-5TPW_ MU6Y-1NR3 TT7@13 S>4:SJ^E,_>XK0! MG[]\;\QLT[0M5=V,/G2^ZA;-7:OIRCGMW?G40P933NLMWO6 )[^")R3]9#J_ M=/1C-].SYP!3*+?74.XTO):O(M[H>D(JCDC&4KV"I_86JX"G?I?%=-.XNC6N MMYK^<77GO$7<_/,E/PQ2DI>E<"Z=N755ZXL1DL5I>Z]'E]]_)[+XAU=L2/8V M)*^A_XY;>Q7O96V_X:C]\>U24[W$J7;4=.3YM;+VL>D6=%^UO::[1^3OVEA? M,;_3"V2U)U240#R'QZN6'G5E7;CD(! +21N-:Z@<2%M4#W=&[P;:OX-V($5T MZ-6=MJ1$-/!K4D196M#U[6<20D2%*BB)XCPGH4C@*=*H3%)Z_^-?2)1%) K>*Z(B5S06 M\2F-"SR4R*(RC^G6>.AW0DD,P6F.E9 JRG(6KO ;9^H4?ZE,HA0 O_&;I#]7 M78\B3-_TVK&#]P;G,@UR8SR+_,D).POC. 6^2"6-E2A/]U8'"PNV,",1@TSL MO;0S?&>>*LJH%&P4>&4>+)-*GAY8OH]#7.&)B/(T#?%S(J.B%#2W9H72?V < M0O1YD#6.],,:74+/R!NZTZCJLQXAP,'*0=ITM5EI\M4#K7N[-DZ["=WTE@.< MH:(0QF_-:EUU'.FUL4!XBAFK$60#^#--@L+#K1WBR3^$-[B)C8.N2$NG:6V; M&FET<*E,"3="3N5A;8UV[@XE[%(3VHAG,B:'A: :"L'13D2=]A$!^CA;6+'C MD#K*\V/&8Z;WUCC$:EWWJWYPR$<,,2_OOFNZQNLW+2: &>[S-PJ?H29PIP5Z M\"U;NFS6#GG'D:9$$F49)_=8(/WB(N-=#M4TY)O$E95EP>=%'L5I$HX5IW/" M16:FJ:L00&/$+4A5D0"HB)3,3[D"((:!6A2+=##;_0]YK4U!YFNEYV!_$<:IU"@1$*SIB7HX ?\*Y43 M]&%CQT!3,<*/CJ0TY;N[A2^U\LPI1P=K@@B5G M$:IOZ#ZGX8K^6RPD2/,"HF#$= ^H_C^ N*(=8O*_(M88R'B,Z7$7AV8_*9G^ M8273YTKR3# D,Q>U;=\/;TGZ/Y:%O_=B;2!I7S).$^ MDD=T@E14B1AZH%)1@L*$D8[[&]S8/DXPO[%WCRKLT'7FO>?1]^E^J\7"Z@66 M5!TJ>-"#OG%+NU[2Z0?,?"!Z;A#KB6-TH+F'-@BSK\U[<%"/L1&Z3HB.WPZ M#B_>K,/GVIWQB+:P7.)K6ULFP/G<&+][80'[[_?+_P!02P,$% @ T'E7 M6+;P652H @ Y@4 !D !X;"]W;W)K&ULC93; M;MLP#(9?A?"&71GU,8=F28"DW; !+1:T.UP,NU!L.A8J2YZD-.G;CY(3+P/2 M8#>V1)&??IHFISNEGTR-:&'?"&EF06UM.XDB4]38,'.E6I1T4BG=,$M;O8E, MJY&5/J@141K'PZAA7 ;SJ;>M]'RJME9PB2L-9MLT3+\L4:C=+$B"H^&!;VKK M#-%\VK(-/J+]UJXT[:*>4O(&I>%*@L9J%BR2R3)W_M[A.\>=.5F#RV2MU)/; M?"YG0>P$H<#".@*CUS/>H! .1#)^'YA!?Z4+/%T?Z1]][I3+FAF\4>('+VT] M"\8!E%BQK; /:O<)#_D,'*]0PO@G[#K?+ N@V!JKFD,P*6BX[-YL?_@.)P'C M^)6 ]!"0>MW=15[E+;-L/M5J!]IY$\TM?*H^FL1QZ8KR:#6=) MMUA<01:'D,9I=H&7]6EFGI>]PENQ%[86:(#)$GS.3!CXN5@;J^G'^'4NYXZ8 MGR>Z9IF8EA4X"Z@;#.IG#.;OWB3#^/T%O7FO-[]$_]^R7(2;.+'M M4",P Y42U+AF E02;-:H^[*<6!)O2>%FJS5*"ZW2ON=4!0*I9WKR"[R%) NO M1VFWB,=)?_LS*YB/&H7I]0"2-,R'(Z#*:9+@"Z=1,$N>ENU)X3@PQ=;NQS"E-9T9WX- M7Y5E@@3FHS"G/&F1AUF2P;G"1B>]UZ#>^ ECH%!;:;LV[*W]$%MTO?O7O9N M]TQON#3TR2H*C:]&@P!T-U6ZC56M[^2ULC07_+*F08S:.=!YI90];MP%_6B? M_P%02P,$% @ T'E76)KQSB+A"0 [Q@ !D !X;"]W;W)K&ULG5EM;]LX$OXKA"^WFP ZQ_);G&X:($F;O0+7-DC:/1P. M]X&6:)M;B=22E-WLK[]GAI(CY[W[Q9%E%=:4,^.J6A[YR2N8\J2P.AX/!]+"4VO1.3_C= ME3L]L74HM%%73OBZ+*6[/5>%W;SMI;WVQ;5>K@*].#P]J>12W:CPM;IR^':X MM9+K4AFOK1%.+=[VSM(WYV,:SP-^TVKC.\^"=C*W]AM]^9"_[0W((56H+) % MB3]K=:&*@@S!C3\:F[WMDC2Q^]Q:O^2]8R]SZ=6%+?ZM\[!ZVYOU1*X6LB[" MM=W\4S7[F9"]S!:>/\4FCAU->R*K?;!E,QD>E-K$O_)[@T-GPFSPQ(1A,V'( M?L>%V,MW,LC3$VBD).']R&+ 0#3_,&J/GT>CP":/I4'RT)JR\>&]RE>\:.(2' M6S>'K9OGPV][Q69:Y6A9>_/=L M[H,#4?[WV)ZCQ?'C%BEYWOA*9NIM#]GAE5NKWNE/?TNG@U^>\7>\]7?\G/6_ M&J87C(J7K8JX?O%C8 DGNWPB$2Y5SC&I#UGF3\INAN%%& M6R!J-^.&K 6WS,0H&4\GS?ZZOJ=).IOA0\"!BN>7IF??"),%!&NQ"RM"[H/WF6V$^3XW1\(/:'R?1H>""^V""+QI?G MH1JFX^1H-!&3<3(;'XN+VCEE@JC(. QCH==8.4Z&TR/:=7HT?4V$$F#A/?1D M=[4]1&("7&:$]3&V,A*7=:@=[=UP(B MH#9XI8/&(G"OL&;Y#X2BA/8!+D1 M#YCQYFAO2B[@@AA.APWTV$DZ3:9 M*'51:3594NKST:@IY%<2MR-K>%[HC<2J>\&)!KUPXVNM1Q,T&-""MQ M+LTW O^L5$YG,A&?^F=]L=^[]YY6)7LYJH:,R*%!P34B$W\ HZ0((@N4< MKUZH0.C"1).G2D7T S0] Z6/WO4_;G7N9:. MF 2/EK5TT@3K?%]CEWA I16/A/BT@EU@0*:2BPL&E-39''(#;+QH; M#P:/&NN++RL4B"?F<^*LI2XXF\/*V7JYNL?=:<.WCS$S;QOR1NJ8CMLR9AK) M5P71_*Z1RPIP[:6C&4OK!G&(V-4<_F>P)SXRUZUYP$C!<$""NC%1WT$W&C&W M#N4.3[ZS"L=J-R9-#2!Z5(Z2&%9]G:UB+O#:G4RD[WUQ_ICM%]C#&'L%-40H MYTASL= .Z/*B!&>AE:%M$F,#6*DY7_'1DEIZKR*].A3GN+Z\=N$M*)$5=<[M M!_K2S+J#V"\_0% " 1XDN,M M'(&>WA&GKFCAO>&39#Y[J@*8_&'5;S2D#H1KSN20!5?;AE4O>4J$W6L[!%IB M+S8)"=&B4MSC%[=_D1=SJD[(;>48Y"#6$"O.0Z@FHK59:6*C@P+CQUUULQ5! MA_WI*-I2O*^=C14WNV4# M$#MOA1:5;1+Y0#-Y\OK\7^34/'SU 80R>)IHLA MB*XQ]P"5 ZFFP<,;759PB>8EHBIJ3T%1$IYEQ <*9%454'YR'" M,1"0$6WS@]A3"N!#'30A8,2XCU3&TBG^MN7H,;A8K%JX[FG14W@M]'=\@B)N MJ=A4![CH"O>B[$?:3[=^-*TDK:*HAT7-PD(/-_0DAW9[-R(-G&-H-"L,-TTT MY)&=_B"U[A&J1.%;R76$2"T6E";4*FO(^#T51X3E/,HS-TPEVNFFIPHKDJL$ M6R;DV%O*VBRB'\? "RZ0"3TI%QL1*=#5&2_C/0?RIBYX68[-1+ B$QN.L/F[B9I MJC$AMC^O QW 8NA8R-%5M2/;XH<^)S9""VH9P*0*GEKTQ_&T0X9V17B)HY1J MZ)MLQ2T1RK>XW$C]W"09<-M)1HTQ]T:MK6;+ULG6>N92I0CG9'C7;Z.U& MMWU[A]0<)PI75R&[)>^1ZFNN:;!8:+ SE['TM1-_K_-ETW\[>(P97-K0+WIB M0ZP>378VE.P>',":>=L'.E7(& ?Q_OK#S5E3O!5:G5'1)_B!6WRQP3'"=KTT@X4;8C_?]JR^0UJWV$ M:JXZ@C_JXYB_%7PZKFR/.I%*M-8^* M5X&-P;=P6W 0M2HEOR"I"9J4H$!1( M;H)B TQ'V&B21?;@S@D9^$(HH&/D5C:YUS;QC<)27#?G# M:Z*HG*ZY*\ADI4-S5Q59;II+Z&T-VDY_)2GX +J'5GW/ZE:Y&[C?3+]PUQAO-P\XE-)8 , "8( M 9 >&PO=V]R:W-H965T)*D2I)Q?7^^ATI65& V,"Z%^M(WO?= M+_+.RX,V7VR%Z.!;+95=195SS4V2V*+"FMMKW:"BDYTV-7>T-/O$-@9Y&4"U M3%B:SI*:"Q6MEV'OP:R7NG52*'PP8-NZYN9XAU(?5M$D.FT\BGWE_$:R7C9\ MCY_0_=8\&%HE TLI:E16: 4&=ZOH=G)SEWO]H/"[P(,=R> CV6K]Q2\^E*LH M]0ZAQ,)Y!DZ?)]R@E)Z(W/C: ; > MP(+?G:'@Y3UW?+TT^@#&:Q.;%T*H 4W.">6+\LD9.A6$<^N-5DZH/2H')%I1 MHN$^7Z:YC8F>8)@P^$EEEX6=58OF2("&W!M_8R;<[=I'Q'HMK MR-(86,JR"WS9$&L6^+*SL=:U<'2CG 6N2AAB+P1:N!>VD-JV!N'/VZUUAB[, M7Z^EH3.2OV[$/Z(;V_ "5Q&]$HOF":/UCS],9NE/%T+(AQ#R2^S_J5S?QP2? M*X2=EO1:Z1@2>.R V\@*[FC3H>GE"K[;CPO0I M>[N(V9R(6;QXS^"S=ER>S5P,2'>WC[I!(W0)>9S.IJ?8-ZTQ'M5HLE+RL_HL35<^104VE _ M *J/>D=C81PW+_^F%M=EF-Q\$]) <.[@E-&RNV+G GC.->''];T>><3B[W>I M*TEP2:C_Z=)K#2 9]>X:S3Y,*$JV;I7KVOBP.PS!VZ[W/ZMW$_0C-_0H+%5K M1]#T^OTT M--I6[A=!,FP58[FBM!K&B0H_$*=+[3VIT6WL#PUV#]+U!+ P04 M " #0>5=8(T)5J)@( #Q)@ &0 'AL+W=O%N>\MRW)U M.QB89"ER;OIJ)0K,S)7.>8E7O1B8E18\M9OR;!#Z_FB0OM69&I]WPMZS<"+7"Q+&A@\W*WX0GP2Y4^K9XVW04LEE;DH MC%0%TV)^WWL,;M\.:;U=\+,4:]-Y9B3)3*E?Z>7[]+[G$R"1B:0D"AP_K^)) M9!D1 HS?:IJ]EB5M[#XWU-];V2'+C!OQI+)?9%HN[WN3'DO%G%=9^:+6?Q6U M/!9@HC)C_[.U6QM@<5*94N7U9B#(9>%^^:;60V?#Q/_"AK#>$%K7#!P&1S-V@!"T:&23UOK=N7_B% M?4'(?E!%N33LNR(5Z3Z! 4"T2,(&R=OP+,5W(NFSR/=8Z(?1&7I1*UEDZ45G M)6/_>)R94L/X_SPEI",1GR9! 7%K5CP1]SUXO!'Z5?0>_ORG8.1_>P9@W *, MSU$_H_JS^TZCJJ7]O!3L2>4K7FS92DO$FI&S)#3-RP\1OE5PA^,KC9<@$C$N=:#XO#:N,2-ELRR2>%T(!6"EYUNQ2 MA>EW0?VE@^*(<(+5TH#CG+T"N*H,'N,Y=0@7JLJ2]F*;QTL M44C\((@SK-0\D[^#2J9X@>VOL!%O(#),YX>JK+53R[66Y=*AE-8$M(- (%1S M%ZI@E0D#4;1@A2J15!.E4X>;0,YXQ@L0M.ED7].U,IWU+4.@SE>J$#1X+?J+ M/IO+C;"RY780VLJJU&H([Q[^ Q340^HJ^:9V.%#)*3MCEE$1*45A,23*E.:& M<6-U4"PR<*PBM5M8ER?S A))!.QU9JRU> M6C\V"MQ2:6!M6O\M6ZJU@#D\6H^UC?YJ%BFY#E%*>)94F75[@D6D'/%,\ADY M\):0:"H4;]3\#;R77?=>/O[4NZG7<6-0AVJ%6U0(>PN8957N:)^,@8!::U[[5&H_,3"*U MVPE'Z^0T0PJ#JFQ]%>D^ ,HBJ: 5R%TIEEO%,FE.B6%G6T.D.Y9KF2'.!%L* MA,Q,;%61VG7(&U)9I:^Q,FQQ+(#':6<[4@.;>D[D6F!P\4I2JO M7!3PG 3XO4V^5[!U/ TLP:N1%P8^52"S$O88D&W[1SAKMS["><*'_YLXHZ$W M@N=:G+$W&<6'./^WZ> 7>XX!G3?L$5D.!S/V(J@P$P&;*]AG\L/KOPNN4:#_ M2*+X>-CI1?TQB_O^?KP;%F(H[(>G,+Q#-;;=W NU#T<$XV_H[X#<^!OZVU-? MPLT2]0^-^G^JNKU@.-+B>\ %.]*1.R#](3W]C1<53L;L6&\M;O#0*C_NG:]8 M@!#T(WJ(O'$T=2-(4[563E$Y\ 7L\*)X9'_#.'"_XW@_D]=NKF94NUWK(S;H MFPL8:=<;=M/R!M9K05(_V'L'F*8_&H[K[R-$B1Q@[:S8K& F 1T,<; )('F\5Z(LQ"N&-!Y-2$6A[TVF/JD( M%7(Z^7)Q0BJHZH/@Z1/%'AYW@K8-?EN93YZG#T*L::L+L<'!E+QM[KQL2]G4 M[J Z+7"TIM/?F:RR\YZZ@6M,5;]"JMHS MC4AK8_I-$A1=]X&-#(>$HC(X3A M-"*3AS \!L;D Q.?C<<3>IU@9CA%BS4.*40;=*%-%H&_UW7M3A"HOZ,H9N"/ M51_0:MSNK(CF8NI3NS".\/^9;C&0VMN&_52W@0YQ'%)NBKW8G[ S]R_#]OYE M^)7W+V?W7>Y?+O MR((L/\=6OS\>]EPST+R4:F4_:IJILE2Y?5P*#J>@!9B?*W1@]0LQ:+]R>_@7 M4$L#!!0 ( -!Y5U@[;$0:C , -<' 9 >&PO=V]R:W-H965T;)&<>?/>S'"X&IU_D)8YT%-GK*RS-H3^.L^E M;+E3,G<]6YS4SG)=WBEML\TJ[=W[SK7C7\FL,5T78/W*V^?Z[BW>+ M']^0<'F4&*5 -+@1O0V#9@R1X\ M9E0Z*[AD^$X <1G\,-WJWKL:/!(]8'$3K7JO,6$TD%^.E2'VWGDAY\EU.FW* M_!7W4GD?-;_R,EKMM-$!TD##*UOR[)Q$M'ODM#,\Z>R=T>4>[DANS-E!G0QE M>TC'G#ZXD1_9SP!-XCI.0PJT9M0K'R(5A4X4YHT57()%!C,]3:0D%T[YWHJ=T0&&67&!6/D$]-F,I7*FFIQGN"1)U(4.6# M=2-::4H2TV /Q4'QH-N[ 520R'2&AHJ4S\K# <3(_-QES4^&;<>^24^*(/6# M#=/X>7ZV;:5B_F$]/WD?ET:]"AFNX+N8_7&7DIV=D6@37I]&]&PO=V]R:W-H965TIHV?>CT 2)!$0U), !H1?WZG@4IB7(M)^V+1%QV]^SNV05P MN57ZO:F$L.QC4[?F:E99V[VB88;7W6BQ4JI=,,MAGHS-YT6O'!"33V/ M@F Y;[AL9]>7;NY.7U^JWM:R%7>:F;YIN-[=BEIMKV;A;#_QB]Q4EB;FUY<= MWXBWPO[6W6F,Y@PF?'F;T'ZWX9T46S/Y9N3)6JGW-/B^ MN)H%!$C4(K>D@>/O7KP6=4V* ./#J'-V,$F"T^^]]F^<[_!ES8UXK>K?96&K MJUDV8X4H>5_;7]3V.S'ZLR!]N:J-^V7;86\2SUC>&ZN:41@(&MD.__SC&(>) M0!:<$8A&@76FV9IMW01A_.52<-<+*EI+RU&JL2W\*M@KU6#7!M.X;J<6VBG/?-\U'0[:(K.: HC]J-J;678UVTABE,%<\ Z M8(OVV&ZC)S6^$;G/XL!C41#%3^B+#[[&3E]\SM>*:S'Z>L=WH)9E-UKS=B/< M]Q\W:V,U>/+G8]X/NI/'=5/MO#0=S\75#,5AA+X7L^LOOPB7P:LGD"<'Y,E3 MVO]3EOZ?)O9]RW[.K5H+C7"'H<=L)=P.WNZ^,LR07*7J0FC#>-=I=0\-M.>G M=POV;:W6O/:@!!DC^^Q7 M;#J/A8F/G=0PT_7:]!SIMXI):Y@5NC%3XU'LH7GD2A>RW0!LJUC9:T#0; /R M0&0KM$!1%H*5JD:;PSX'L8 ?3)7P%8JF>K%V;07,=BK&(=^" MP_#MQB4&/5TTU&3V?1V_7IAD7I(F>P/8EJNF =[1!62#][926OY-U3_VU\(; M^\5&&DI0@>K33!JJ9J#M6Z+L>&$<,'D;+C5[Q^N>-A/B M8P2X"\(/O.UQ04-BG&:6IH$79C&[8(O4CX)!%X2BY<);)@GF5Z$?A^S=H.M9 MM$B])%X\Q\)RX8<)P_VI%-*MQ;&W"B):6F1^M/@$@G#PDJ5)XB6K@!0N_3@Y M(@ABD&>%^3#,_#@^0 CCT%NEL8,0^VDTA1 &H9>-:ZD?9&4'7 [K58@\Z M]% N>Q*C]*5"D;7"=1>0M0<#R\&%'AC]3]O6HN9.F3MR/I_APW7@,9Z[R\,% M9N)TY;&+<.7%T7)8O@B77HSDDJ5.N.M^O?L,D*< 7)1':Q'UW+JG<^@";2I; MCG8\XM>)&8]"=.(UG7?JP;%82[Z6-2K^15YS8V0I)PV26H55%A H 8W3P!O5 M#\V=%#TA[EK2U ,YGKL?G2;TKHO4"\(5^O#I;)PXOV !;QFA]8,@[:]L4$?> MY:-;:W'"J3UUM*!W( 5SNV] ?&Q IZPB>Z&?+(9T>Z2^;R<:S[!_&J22VMB] M:V,/VN=00&,Y?6[_''FU0H5'Q*L4.4Y'7D6)EY'$":\>N];/)P^Q1NB->VX: M!!1)'-YDA]G#B_9F>,@=MP_/8=P^<8L 940)T&ULG97;;MLP#(9?A?"*80." MV+'3 [HD0--VV"X*%.T.%\,N%)N)A>K@2G33[.E'R4Z68FTQ[,;6@?SUD1;I MR=JZ.U\C$CQJ9?PTJ8F:TS3U98U:^*%MT/#.TCHMB*=NE?K&H:BBDU9IGF5' MJ1;2)+-)7+MVLXEM24F#UPY\J[5PFSDJNYXFHV2[<"-7-86%=#9IQ IOD;XV MUXYGZ4ZEDAJ-E]: P^4T.1N=SL?!/AI\D[CV>V,(D2RLO0N3S]4TR0(0*BPI M* A^/> Y*A6$&..^UTQV1P;'_?%6_6.,G6-9"(_G5GV7%=73Y"2!"I>B571C MUY^PC^#M.QEYIU,_H+,*((%O1LDZ9"O$VU#]?#C;.')\<7X^5S$G=[X>;U0+*>^$25.$ZX& MC^X!D]G;-Z.C[,,KM.,=[?@U]7__+/\A U]JA'.K&V$VX!MKO'4>QMGHW=U[ M:-C Q<[K&M9UH"]@@?-5TR:%93HB(L=N&1!F H4FA758)<0DB!+Y%J];_M< MLYO80,E7P\E%2PAM V2!F(!+AVDK\"2H)>LVH*26-(QX3VB$XM81F6B/G&6T MN$-^4%D'L #3.!O"]+5PD75[,#< #PSM6XY):-L&--'1+0(+H=,19[&)I\RM M<%4(ZH(C*1G/#Y_DC1?MRLA?[(&/W"$]9XBM#XZ+? 'H\'1^&00B0Z*8CQ@ M<]]@;$!J$V9*$'OVF?@K]4OI2Z%@@X(_3+C_L0KR3I!'HZ>"P^Q\GC/"H7?M8;>Z:ZYG74_Y8]YUYBOA5I+1%"[9-1L>'R;@NF[73<@VL<,L M+'&_BL.:?Q#H@@'O+ZVE[200OI0H M &T; 9 >&PO=V]R:W-H965T6RP6^X&V:)L=271)*D[ZZ_=<4I(5QYY,6^R7 MA))YW^<^2+W<*OW%K(6P[*XJ:_-JM+9V\_SBPBS6HN)FK#:BQB]+I2MN\:A7 M%V:C!2\<455>Q&$XN:BXK$>7+]V[]_KRI6IL*6OQ7C/35!77]]>B5-M7HVC4 MO?@@5VM++RXN7V[X2GP4]O/FO<;31<^ED)6HC50UTV+Y:G05/;].:;_;\"\I MMF:P9F3)7*DO]/"V>#4*22%1BH4E#AS_;L6-*$MB!#5^;WF.>I%$.%QWW']P MML.6.3?B1I6_RL*N7XUF(U:()6]*^T%M_RE:>S+BMU"E<7_9UN]-DA%;-,:J MJB6&!I6L_7]^U_IA0# +CQ#$+4'L]/:"G):ON>67+[7:,DV[P8T6SE1'#>5D M34'Y:#5^E:"SEV_KA:H$^\3OA'EY8<&1WE\L6NIK3QT?H8YB]K.J[=JP-W4A MBH<,+J!*KT_.7/&D?>RW-HE2FT8+] MYVINK 8B_GO(9L\Q/#5"&ABA;\7H\OOOHDGXXBOZIKV^Z=>X M/QF/;Z=F[8.%Z>(.26P$0Q*S>\&U<>YU3HX#QNN"5A';"OB&&VPKD:SF.?L! M+N,E^[-;J.,U*EH)0Y7FHA9+:<$K"Z9A2K)F M09;E6$QAZ*2C/6#%"4N"+'=>BDD][ZX\F[%/HMHH38Q9+X%'YW_G1+<& %H_"106WN-)(R C6&0S"*_F":QR^(%U_H> M.-YR70#&01+#]<%LDK"KQ4(W8$K&PVO<5?TH"N)I1O_R-&-7I*13GS*A4,W< M+IL2K6&AFAK61!1E@EB6LQN^D0B'_ ,L/R#/N5ZL7:J\%K?H99N*$'>C#,A2 MH ) 14BF><;>P8<:3/)\AK]AG.UCHK<:EDW#8!+F6(!''N4/7=/'YSF,^[V1 M/GR6URLY+YV'3M,\F$; +99P>!P#1:ZQGJOE>6.$EV/8*;81PD[)I03@UP+% M:R&]D\@J7BEMY1_^Q2G\E<;)&=&E$^#>VX0LR"8QX35[C/2'@((^TR1(22:6 M61C,(A#^,@3B(X(XF"53MW\2S')(OS),+0\@RD=A#U7!$+MLS0L'^UK5YUUY M."B9D 8A)TZXXWSBI <8. M-)T2SS3SWZ \229\6N\"GR9'(TT2HGPV":B0<$"32M'IZ.V'F]%9#Y=DALIQ M5122GBBU@V-EYP ^TMD1YU+V+0!WS#?'T'#0@RF4.3KV;"&R&VNHEG)/BD1I M7-95F\:-)/>,;S;E?3?N=$,=:=98A=E(DXK_A\&6*@K,6QX6Z.:6*$YID01A MGK>+-&ZG2DMS>L!:I'=J=W-B'$PPZ6*VR>AO'LY I19?SND0NC?EH'5&>4CM M/4CSS/]/T&\[E@32_3BYH2")HXI34-W T2OA"EI34TM;U6X*(MJ- M,@XX;)+%U.+/6#[I)YXDCVGBP5R>S29_:9I]:OKTJ*-Z..#KG$U8F8ZS9P$R M8)P_:T\UZ3AZYF:]I0_X\1ML\%:8[?_=C=;)1WYB[L MF#9L*5S7W4J+5DPBG+D-U'=EULFA:H71OF1?:K4M1;%RQ1'ECD85.-*=%OV= M%JP9=P6APT<4DW-4LUK30^JL)2!*Q!.*T9V8L\WO;T/NDQIB;J _>->2/V(< MAP/&--E]"^.C6 I: #T 34"H+)NB*X<'U J^!KF_.76?1.[L[OIB/ID\S"O7 M8U>:>MZCTM+BI)\_Y9+M=@3$-\4AR_&=I5.V54T)Y#ED,-7H 4BZHK"7/G>D MAIN\-)JFIM,1SKQ5/];O8'M4MRXBM;BSJ%Y(,;K]@L^3^) MDMYHR&[Y#7+^TKEZOSU=^[-Z,% #0ML!]025>T*E-PBGD?\/DFXP,,RW&57O M%83]2;\]6[EVGB(L41(QZGD[1E0Y'O(@):!#?Q>%7C!AKN#'+]A/?&,<7'TW M=W&7^3M<_.00=M;68? M!_<-%,*ARWE?P+=W_ND:%NJOI[LRCA0HQS6,%#72[^Y1=J:$A8N"@SAA.]-*-2RLQ/G3-?C'X!%()1)<^]!@?*_\UI'_; M?TNZ\I]0=MO]AZB? 0X)1Y5B"=)P/,U&3/N/._[!JHW[H#)7UJK*+=>"HSO3 M!OR^5,IV#R2@_\)V^3]02P,$% @ T'E76!+0&335" WA8 !D !X M;"]W;W)K&ULM5AM<]NX$?XK&)V;7F88BP3XFMB> MB9V72V=R\<2Y=CJ=?H H2$)#$@I ^N5^?9\%*4KRR7;FFGY(!(+8W6=W'^RN M>7)C[%>W4JIEMW75N-/)JFW7+Z=35ZY4+=VQ6:L&;Q;&UK+%HUU.W=HJ.?=" M=37E89A.:ZF;R=F)W[NT9R>F:RO=J$O+7%?7TMZ=J\KU:IPV#;-J<3IY';T\C^F\/_!WK6[ZN-]K?>=_ARTPZ=6&J M?^AYNSJ=Y!,V5PO95>UG<_.+&OQ)2%]I*N?_9S?]65Y,6-FYUM2#,!#4NNE_ MY>T0AQV!/'Q @ \"W./N#7F4;V0KSTZLN6&63D,;+;RK7AK@=$-)N6HMWFK( MM6>?U=K85LXJQ:[4$M%NW>]$OZ DHBSCZ9I5XZ];>9JOJ]@ M"D0C++Z!=/Z!.CF\+K$P_H&WQCO;NZ6;)_O9ZYUH(4 M_S[D;Z\M/JR-+LI+MY:E.IW@)CAEK]7D[-E/41J^>@1K/&*-']/^O2EY5,EA MB KA7K)G/^6Z?:.4=#@O L\ MLM(TO3WR]%LG_1'I7&=E4RHHHOKB3V\PGG>ZFGM;7U2Y:DQEEG?LF:S7K]A5 MJ16D'("??[F:/&=/(K_6UC2$3U9LI635KI@;E,"72LD&AY2%!0**DN0-SP8( MSKMPR%G:__CVFZB@HY,S[MY^>=F:Y ME76#[-;,\2XAF;J652?;0068XKL0Q=LL:,NI@XRA,CUG4(LCVN*(6RM?_7?8 M!G"F5FRFH%)Y]6JQP"G2+&LJ$K]+#TW=H@%Z0Q60@,<&K>1;!\KW7E-8#.0M MZQH)FI;^5&DL<&&YD1\\ZYE, #QF!] M-BWET_=%?U<6NH&7%"'=](V7D""S MN(L-"9O.'O+\)7NG70FQ?RIIAVK,4$M5/0.^33W=V8G\#F=_DTV'GLPVS^^M M<0X6KE73 21N%SMB(HN#(D]I521!GN6TRD60\82!QHQS'N1AS+C@09)E+,J3 MH"@2!E8PGHJ@B L6)7D@ "$2J=?UQ1"CE_OFCEB>1D$F"JRR/ TR;RH+L0K3 M3>FZGT%Y.P)-DR -223- YYX+5&0B]RC%'F01R&+A?\12 MI#%>B"#DV8#O,9-1D@9A$N$W!CQX&(=!",\N1@;\'#W'OS +\IA6!0^$2+#( M,H0 .[V-0[J/6 P/ !.N0"J+^T44)E[IA\T%VR,L"(SZ*E'L/,'P> 1G4UAC M1\B,B*/^+A_!Q;C(B7V>_XN>.G>>.LI3A]C2,Z(7P0K"V_M4W1U_%[U>.]!\ MDQVB22P2OTH#$48]>8 1(01YHB $42@C:0C< KE(<2Y/[H4T"B.$!%2*(L0Q M'\(H>U-'H'*4A4%2<*P+I#D#,A+;*AF.4L'4KAWBIFRY*3Z5QL EM[=\.-^8 MEFTO.LK!6'?Z@D?WLY1NU;<-6BB4"U2ROIO1IL*]UW>1AS]&+0L)7H6PZ-'#.EFOT$>12#Q'YL9E . M#=1?-$F"!G.UUA2&%:8V,@_+&#$"NF,==(,L>D,88:TQ1B#!2H MU#UWVI4\D'\T*'^,.@E$ZK[#X604_H5P[N7?']F[^X=N_?%^2Z"9 V34"]U[ M0Q!J^1]HVN$*7):4RB$WU+.VM+I16Q('_=/NH+?3Q_JB0K6#Z@35A?ZF[[N\ MVYZB/$:)I0; J7ZF5 )RU-\$;_&WG*+!AB:9B+^B=A"G*:IWD.890PV/$O%0 M5]I:V+2ZH[&Q;7O6/>C\>Z"/_92'<1 *[P2P)#F9R+"B0GT?.L^#)(Z8\%91 MV7D>/HA\:V!HSD=C*][VV'O(H^]!/O1_J$LS]$&O6,"'4/C^BYZ(PGT?>90' M!?+#$4W!T%(*V'H(^=; ,$XT2Q'T1X-+&?<,!,$R;SQ!(Q;\#RXA-6&*R0=]-L<$ MQ(L@$1EHB;D"^/[?5/R.+(%]B>X6O6LL\YWUFT;!ZZD $N%OYL< M"".*.4VKJ1^),QHM!^:@< ON5QBG_;27%D1 _JAG%(6094@22""0:L@(\;!? M/XJT3_B%&BK\N!]A..<9'YB4YI[%(D,S2Y[P*XX2EG _[@H4X10:(.KOT7U9=/Y[TGQ_'W?'C[>O^F^7V>/_E]Z.T2XT9NU(+B(;'63)A MMO^:VC^T9NV_8,Y,BZ+NERLEY\K2 ;Q?&--N'LC ^$G[[+]02P,$% @ MT'E76!Z%!@W7 @ #08 !D !X;"]W;W)K&UL ME55M3]LP$/XKIPRQ+UF3IBWCI:T$!<0FT!!LX\.T#VYR32P<._BEA7^_LY-V MG005^Y+8OKOGGCOGN8Q72C^:"M'":C"NKIE^.4.A5I.H'ZT/ M[GA967^03,<-*_$>[8_F5M,NV: 4O$9IN)*@<3&)3OO'9T/O'QQ^V&H2'490X((Y8>_4Z@J[>D8>+U?"A">L6M_L*(+<&:OJ+I@8U%RV;_;< M]6$KX#!](R#K K+ NTT46)XSRZ9CK5:@O3>A^44H-403.2[]I=Q;359.<79Z M[^8&GQQ*"Q=+>IIQ8@G6&Y.\@SAK(;(W(/H9W"AI*P,7LL#B7X"$^&Q(96M2 M9]E.Q'/,>S!(8\C2;+ #;[ I%FWX.IJ7R;%I M6(Z3B'1@4"\QFNY_Z!^D)SNX#C='-=8 !,"U"+82,+&,EEP60+!6YQA270JE><%Z\)UXL;+46#*+T#B=5R1)RD">P VX!JR"O=%1 M/$KI^^$R%RX4L#<@HY,Q4P"[E0ADPQ[&5KTU9+/AHB4]H_8.9%\H*J+; M^ 2;/\#T#U!+ P04 " #0>5=8#=V!2?$> "_8@ &0 'AL+W=OZS M7VK=%O>KNO&OCY9MNWYY+$KYU6%;VTJD_. M3T^O3E;*-$=OOJ?//K@WW]NNK4VC/[C"=ZN5G&&]L43L]?'UV?O7Q[=HDOT!/_,GKCLY\+ M7,K,VL_XRT_5ZZ-3G)&N==DB"07_W.D;7==(">;Q18@>Q3'QQ?SG0/T]+1X6 M,U->W]CZOTS5+E\?/3\J*CU77=U^M)M_:ED03;"TM:?_%QMY]O2H*#O?VI6\ M##-8F8;_5??"B(>\<"XOG-.\>2":Y3O5JC??.[LI'#X-U/ '6BJ]#9,S#4KE MMG7PK8'WVC>W+(W"SHM;LVC,W)2J:8OKLK1=TYIF47RPM2F-]L7C\-.3[T]: M&!H)G)0RS%L>YGS/,&?GQ2^V:9>^^*&I=-4G< )SCA,_#Q-_>WZ0XCM=3HN+ MTTEQ?GI^<8#>163$!=&[V$-O;,7_?3WSK0/%^9^Q%3.]I^/T<#>]]&M5ZM=' ML%V\=G?ZZ,W?_W9V=?KJP&R?QMD^/43]S5OEC4>A?4#:3:M8Q9L*/C!-:=:U MIJ]O;.-A-15]/[:(__@PO>5=QN5='ASWO?&EJHM_:^7&)OW@EXO?EQHFMUJK M9@LV9&U=ZPL#_\U-HV#^\!@L##8PK +655R>GUQ>'&^T_@Q/$)4M4M%-A7H! MC[1 [U:UG:O4MBAKZ[5OB]86H(UZ-=.NN#B##QYOEAJ>=(5U16/;PO"+[Y=PE.M=F:5OOS2*0,CY_#4R@+WY7+'1I_8DKR MQI-I<>V!) '[C;:<^<3T@/XZ0R(E74'VQKX5R#S_/2 #EQ%';@Z*,8_ MO,;E_.!; \97^S%%^',42!M@,ZZ58T6&+Y,B>-!N#?X&-:0I2MN@RS/MEH7S MQ_1V6OQX??T!&/*E,\ 5L,(-^"U\ R6P4I]!!'$HY(WRX.O6.)('9JNV4/,Y M."-B/"LCL$RMT.SX() R[B3X;G1R1!F,%2DU2@[$J?T4%^HA#,PE-$V*B,YB/PEVEZFFF!V.LT7>J[HCK:WC>5C"%&F9 CU:?P!'# M-["'FJ*!M7D//I-8#NN%E[-9YQ,E<2-C@I"CU!\L;=E:_[0YK:CENT;217QFQ)_T-DW M09/H"XL"6%MO6C9O2?=, U)J.]D8#2K2'0@N&L8EP%ST$36:1F1I@[@7MD&C MM[#9W&>().9@,7!?@IQ EINE 8^T5'>T&3L'TF#4T"Z=Q@U$N!!87Z-RTAY; M=ZYCBO4:]K<&+,TM^:GSG4"5@' =*R#O"Q$]KLS*R 6@(T$_\ M#B;08T/&N6GQ2_(6,UT;T$_/HA@1%LRW9HU$RX3N.EM@;FORQ5:=#D@@29/6 M(]N93"2OT +B[PD:6,)B:IX3G2IP$E-*"IL?'9!"GP+ MJ#IPI@31D8 \&@=G/6*DF;.J*D W%F2\3%.!OW F>!J1(=H5=$:P=?X7-3O' MII6IZ!G:)?@!CT,>@Z$WVD'R-8 DFN+L]%$PDPN:A&.#YT$-'#Z:XS386@C3 M7A5+NX''''Q^]0C^]_P10[BK1T$]9#H1$PQHHWW,<+$?18,3=.QK3=%VO9W0 M\HF)-[!PH- 8=$1GR&. M [OP1=R%+PY'1^AG_Q7\[/MH*<#FM:Y+$+/_W'4)QHE-R:B[^NMC9C@!0LY* M@PU#=,Q,9?S$('H3D!UO;P1.P#BOZYJ05L/P!)4>$ )93# 2C4=PJK$\,X7!3"6A#-RL\,%K"DHUFNT.<%O8 V\ $@MI-27 JX!^';&*\91!X6M0"Q*X*2R$U6>3^J/%=.\-]3%8&9T(L'ALX\.;B MH.PS:C1^',9W:XDLP+$!Q;;6'.F'Z=+\4;#!(^6B"K"A!\$/3#7W7 'V[TOL4WC.=;"R; KL$&7H!X2VI)T$4D'2\4__OLL3XNJ.= [-V@=+CT&ACW!,N>B?Z?.R2).O!6MQR,#4$9KR?"*X'"\ T@;@ MBWP!Q69'LJ&%Y0-$0GF@H&%,$() MVK/?1?9V"*R[-H(.R-E[>B3$'E$SLPST+<3:E7*5+]Y:^*=X3,'JZ:OWU[=O MZ<>S5T_&G[^Q%>UJ$E-X[?KV)K[U_/1R4KP-J8";/!4P"6F)0>* H%L=1.) M%6(FK!=E]RP'O89R"CF:GAIC"@:_:T4?LD'8K68*,@$73XD['?)"(1R.?=Z'8OZ5R-Y9F4*T%@\)4\2LZC$?[P%@.H M:CP:!4S3<709TC)ZX!%\3"V'6>]E->R,'W6# M<0YB\#S*TLT" #1&3 ".776,T J1&(2;L'L13*7\$^)XV!6&\]LP*/YD1C.7 M8S%%V4Q,&_3GBHS!/8X&AC:.#%?M'ZJ_HY3O M86\[DOV4"+V@4N:TN%DB5V-:_ $CCBPNEP80$JVDY5Q7F'OTE#^XHP22;GQD M?E;0@E=O4SH6AOQ58X*(W#5EX#!KH)=8IP8Z_,6TN,4X&X;"?+EUP:$Q2T(B M.<^ [N5<7Q\/*-0DR^1*K>=E\=@\V4WK#O8LV06$N E#PM+1RDJ.)"A%?V(8 M7*74^Y@5)Z"(V:N*8T44(+"C-2=B=7W%_Y*Z+Y MV,A:R98!FMDTZ,OW;S/"SH"SE2']_*QA&ZW6M=UJ'= :@Q 0K? NH?W#>M=2 MW4QYVY EK@G9,Z#0DC)DIN7$YT*_-Q&!5U_3)+QP8H7IOU6B.[$4(#6KL>G1WH'>Q45 M1$>EIW!-W[=:-E3G];P#5&ON$JA@?S4M?L6B&M;/L 0B&PJ+QPT94)R.E+38 MJ)$G@@$1.X,S>X<917"M$><#9G=M0/:&&+7N6H8)$-*#B<0,_S&*#_$#-@10 M):67RT@&^M#,?\8U+VU=]9F%DY59/&A8+!3@%I^'&&7/X$ZB(&0/V0X"_#(G M"HXPL"(YJ(73F@.::\H?]=CT@>.FQZ!1E)Q\4OPVGZ-GG'<.K".F]/I"?DK: MTF'E/7UX4=QV[DZS0LR-KO,W+HOCXNQR'X=^SE=\8+W]M8;G>8E[MDNOUM"K M?3I]9_2&+4I6[*:0()7?T)>AMRLPO\K)@C(Y[WZ9&* >QB::-T$OFM[-.U!Q M!RT;Y_I0^EP__FF.J3NA99WLO3 ??0]NW?>!I]C>'?0BV5B,VN>@R'U]G9 F M8MJE,IX"(H(IH(F3$& ?F#U-DW9R_GHV%$8?NAHA,\&T3;8@D_A6?95J9:5> MM)=XB]BC3WX8&*5">DP1Y$:2$AU]HEQ$3,^TV[4H48PXL(:R.^-B92M=?ZT" MD!47^KS!F'P1$AVH]7O-[D;%.!6K+X=<8=8[=W;0@Z6X$X;Z*0469$%&\^2' M"8XWC1T>)06_YG!42]EP2H@TR45BO"AUW"S13J&/630<$@["I!QH,F)Y0)_ M6-B_USV#NQT&HBG7%CL N'V$E(9+=&.D^F9 (ET?J@32XK(3]AZ(\/< RE0R M^U.1?Y\S@Y@NEI4620&DY#0PP3#-ZV[1 0PYHVK?-YKDW.Z"S>4!4."IN^=+ MIU!C.&A:091AP21=-T&/EF) [)H3*18VM/.A14/:!OCE$!GUF!^:U%B/P8Z3 M#<)P.RVD-_L:&Y%)20=9 $99;-VP:EJ;SQC2$'A' QD=4%^T:M!U@N]36P*] MB(FP0:HS]%V-+2UT7*RP4 RFI[$K*2_&A"-\6(6D&N%(>7="6Q(;*+):/FLO M+IP#+]Y]8/M 59I69'!,B1, )\*SZ#%$1)'9/O" [ ;L)D8=Z U:\1*]"KED M,176LHY!,NN^,K38B3A,%(QLVU[CSL!@#;G_CQUVLZ6B;J HMPD+U.9.K[4M MQIJ[PTL:C2U;&QOQPHB#JGSB5>[;ELYVBV6Q0O.SKO.@M=7ELC%?NE"AV%!3 MN)>!N-T-DZL.K6>]G0(@G'T**9Z&C4FM[V/%C$&9Y%G98M).RH)\M&4DZ0$, MRA>-V]*6' #DYKO7 X?>LM]"=B =2(/%AK;8H[53&JJZ4CINV7;E,T2-B0F7 M.->#MH9- ;,;GDH9X$/N_#RY\_.#[CPTC7U,Z>Q1'_ZGJ?2XTK4FCQT;:C / MZZ-6R^+Z]@9<(""HXNKT:A*;V;B+0MZ0,L4-'1' 3$=(]L<70\H_I.M1]3<^ MSX#8D.DGAU)&RH36PJ_'L^UQG";!WVGQ7D(K61/L4ZHGY;D=G^A-T!#G51#E MCTUS9R& PH(IEB81]&&X6AEJX^,)KU'U6E1&G&H$;Z&3(]@/1PUH5,8AFM(/ MX.ZH$ANSVR.H@J%BI)>7,5@>@_1U],C13VTLE82MTQG[P))*BP(C$4DM"Z^E M80&W9(-E6# $F1Z0UO^LVF<'=*I4P@'R3Q'5I&3_E7UR3K"@/.! M2-."N"LIC#].+4@#>+HR7O?Z+CB+6)D[4Z$-P&U+OCP**60@4X6GAYQ(\=G; M"?F\7UHF"9PC<3D-L\-T*-.LL%K7E'W+'M':^%K8[&)BSL\-AT5XM@@'7SB, MQ&GVE.9;6]-P-[W!O&_8JK;98:9OCYTVJUGG/%<5X\Q-'IFD-E4QA168_K*5 MM$Y(X^#XXU^@T::.%)\RCN& 0 Q\V3WV"*#B[./&3)>JH[8/[ PTI7BT*%]) MQ#M;Q\!8S-(TVJLT3\)$M9I9-RE\-T/C@IX1(4Q0B!S?Y+.<%C\..M)0,Z(: MY84[; 6-MC'QM+]37IP^FA3/L8L,QWMQNK<1;MA>]R>[X';FG3IU= ^;N+IQ>3RXOG/,9W%ZC_0X$W CN$=4*96F<9'+>FG6=C: XU%*!L6W9HZE#&OY;;!>NHUH?Y0ETC4 MYQF2(T-P0F&NJK>8-LP\0&_!?V&]?2TZ0RTZ.Q?I7<32T5J,?S MIR\FEV>7^'C*">[9WY/4I?W=U;.+R?G%)4HC=GX -V9ZUT115?P>8L[ST,,= MJD%#GQ)J>_WW0'GYO6D&:N84ON)4R.*J#MRPD^2T.*(9YJ-B\]^PR+=GC5/, MX8X:MV"1;$/Q(;8_ARP(!4AI3&QK#[Y"K1HTB;=@ >#D6?#.0@OI+ (3[F8,=N$.R%ZH7/3CNY6%#!S)_3>0&2.V 9 M299]2*N0D\>M/99X;J7NS0HL([.RK^NRDN&>[O'P@%9$SXA3;Y,A"1LF>.T!8LT,*A',T MPR-?J>V$W VG]0!&J7++V0@<4[,9B[/*XV?=+ ";:[+E 1MB=]\2CW>$*'QE M:G@98#A\1:@''\6XF/HQ)Q+W^VSAF TG -V!+!UZ3FE-10XW\>RF/$^Y76=+ M&ILS5FOP;D\[M92%'WP M\D-$E3?CH=Q*U;![EWZ%U$U487Z*^OP"'3Y52:DD;J /IZH%7> 4 G'F<4SP MQ'/68 O74I/PTA--C1@#,I*$CJTBO%FS8] >4P&A%4:L0.BPIA9YKN8^^&C) M/C8G8KZ7)AG82D+K:!;3@=/K/?WP!Z$A&R9'V(9# \HS'M-!],R#]$H%#1T3 M!SMAA\Z44M9RVH08C=]CRPNF+M9\B!_X LZ'J_7842/F3(3^7LLTK %8T% MZL:W6@VR1XU>V-:08UL"&L#2J.$S*RX>2N9RIL\04FC9) \EEAQ?9WC>5*&V M*G,GSZXJKBE,"CY:1O%SV"+\&O4L2,D?H[ J9K5# ,_GW,)I@1RLN3T;1=&C/Z\IBO2># MP71(3C*IGAL7Z."^'/"<<-X:9A6TH M0I#:3Y;1 -R&RU-)/42'?H]5C+XOXN_(;BLRYP+(U$<"^@5/1J82B8)"5\&*_9T%N:F5?#E GH#DU[ M ,)T1!MAIL>0+-7/0"^,UW1(;YC+C$9V),E"8#8QDO4=\Y?B5QE=LV5DZQ"" ME+1"GF\>@$GF FV@WP';&\T^E\I1LE6Q513[#H4#:*]:)U@*;V*JNII;V$.T M0!H,^!/K='1,>F"-_[1@FTS/FH[2"W3U@V&?S=%X2Y5S;)6JPJ;5CAZ:I+9& MUCSI3QS3D,Q<2BI'#-MPW"QS$XYH9ZX#E7QII0SX8P]V8S@ V1;@#NZ*;>YU:#3XH*!J(N)]%.0?:9& M?@5@30:9IL8#F&!>]TS>ZGQ>-4BZ$NC2=,.XS4 MOST@\2KM'FS1I2?IR%X(&ZI,<&F(K/OCR6CON3"CN,6V>.#2VY%EX-F4S/J' ME).L#3%A#@"EY3G><\'UC4&FCF^$2[VOL2\(ZR*Q<[8==%_*$;&9U,0'?;/4 MI$II8%2Z<.L&*5=ENUF+C8SQ9!R']E'[^N6+!*5SP?%95K2JTC08%YA.T/"0 MF-R,Q [=B:-W&N?S^/?.UG=9-)4Z-:)7(A5AYN-Q,>EX68Z=GI1,%JATEU(L M9#I(A@DGWS R0WQ2/$[6B@^W(CB&F)LF0<\]27>B_!/PMW6$AWNYHI'OTQXJ M6J?Y,H_LRI1PD"+VM"0W/*:AM)R4VT]ZARX#36ALL(FIY!&)A9;IX=T-J987 M\.,>E8IE!H9N(+@%:F,KAR^G>!-,,$QR#B=?Q!K#8-OY>AL)V/E\)__,Q,CW MX"E=L>CTPC$\[X=:R_$>)C<0Q\E]1VGE"$K'3-=@SV?YD+!50[@ ?CF MNKK#0!.KN*-]) ]^N\A_3OW]00VI]8E:_7>R05(4EC9_SL?"X]^=3YY=/9L4 MWYU-7CQ[)A7%YR\NO[$PE2.M!QZX^F%PX*IWH]E?/'UU2'CI@L6SPUD]_/7^:>!XL0P&C/FQ;[FQRU5D\0A.IT:@7^VT>/;TM!"86_3H"^(= MM #)*P$.X\D/*6_VALU+5MB=Q7E18#F"7+?MW:H6NL&S8]Y[FGSYJIATR6+, M[G4.;S+B%_@\:6PY3GWH:.'5?5&K#1[2ST^%18\0C/>8)ZC"0I%(.OP:DZI4 MH/Y:BLT:$F,K:N27[2@N8LO7_ABL%A MSQXV<4%PLXT]@WGN >-D ,7<)2TE$4&G$YR\]"6SQXK56W,?3K@&P(L??P+3 MX"M3[EP8E72;$[NZ?]M5_SH]:E_4_@&<2,!L3,1BJ'=RZ*-I9D83:3A9:(*1 MXQ/ *%U2]]&9R;4!&.\(?4S@A=;.E +@=#F_W+O3<#JXDU3\=FP'/'@?("A7 MH^<2K9'VI0N^L'S-7KNO<2K$GM(F3#K+Y6N\W)(R^J.[P$-PIX)#"<.D$U\A MQ6=1YP02)SKJ9L7&*0E.XQL[: M[=B&@YN7IZ$HQ7,R2\O5T9EF2?+.Y7PK8@VZK@)V>%NS!&*:8YRAT[U7/\1B M7E]NB\ZPP<>-#":DS\C4#D&),5AVUU*^AB(#%:+<%855>%7WGC8WO-%X2[RR M ?%L^<+9T+8="UAR6E <1$ 6!YUJNM;W[/#5O!_I7E!0LNO*KE&D^:W+#H() M9%*Z@VK_M[^"#OT;H(#0&770_V]3^=4V=&OI R=3W&HRQ,7'Z/7 #?R*9_DP MNY4:=O V#Y")Q^M=KF__((>-WQZ? B3[:7":E(F1P0[TWP%*JZVG3/[C(Z0@ M;Q\]034 :>-GW9HN#! ?3 2\$*@B@>!G>+A9R ]Q_V$:!?M3LI+6",EXD#ZV M"CC*TF&]0P+ZV(]XLS1Z7OP6S>@[77+\]@LX.@=+NOGMW2]'3R1K+K!20@NM MJ# I!]8%.+!9E*G\@R)",I:.*IT93R@-%J\OR=@0KN\PK52YAA4%5 MHGJ8KW@D9$2MTI442]@J\9$N>,#A F(>9M\:^D< \APN7XA4&O+[-)J-AQW0 M0=D.K%[. TR"\ 6U=UK<(G7HL[]&K+CKEO9/Q&6>8]3>3'47OWCJ;XHY@,]F#/F!F0ABKI7W(B4&*E_$0!(>UU-MCFCSUGV\QPJ:* M+;CW&;/M)]C<%5AJ<*_[E!.H :%K^\P+QTR+\ M=89K_IL$Z7'^TPZ_@&]&_U3K.;QZ.GT&EMGQ7TO@7UJ[IK]0,+-M:U?TXU*K M2CM\ +Z?6]N&7W" ^#&PO=V]R:W-H965T=\?FZRUN;9 MUH@.WJ10=AK5SC57<6R+&B6SY[I!12>5-I(YVII5;!N#K Q!4L1IDES$DG$5 M99-@RTTVT:T37&%NP+92,K.9H]#K:32(=H9'OJJ=-\39I&$K7*![:G)#N[A' M*;E$9;E68+":1K/!U7SD_8/#3XYKN[<&7\E2ZV>_N2NG4>()H<#">01&OU>\ M1B$\$-%XV6)&?4H?N+_>H7\-M5,M2V;Q6HM?O'3U-+J,H,2*M<(]ZO4WW-8S M]GB%%C9\8=WY7HPB*%KKM-P&$P/)5?=G;]M[V NX3-X)2+#=)0HL;YAC MV<3H-1CO36A^$4H-T42.*]^4A3-TRBG.98NN&: K6/"5XA4OF'(P*PK=*L?5 M"G(M>,'1PLD/MA1H3R>QH\0^/"ZV2>9=DO2=)(,4'K1RM85;56+Y/T!,C'O: MZ8[V/#V*>(/%.0R3,TB3='@$;]A?PS#@#=_!.U3O[]G2.D//YL^ABCN\T6$\ M+Z4KV[ "IQ%IQ:)YQ2C[^&%PD7PYPG;4LQT=0\\6),VR%>B[EAL2J'$;R(5O M'%,EW+ZTO"'AN#.XM8[3T\42GBQ6K8![7N&A#T+5&L5=:S!PP1T7&,&UEDWKT.P9A[!HZ6XVP;?B*/8C MQO )!F.X1U)=K>F(R\;H5_2'ELQ$RO@K<#4"]H6V7:&"Q&Y!&YHF%EQ92E71:')^>=Q M!*:;$MW&Z28H&PO=V]R:W-H965T/@]Y=UPKQ:JLX)+O-=@NK9E^NL:A3HL@R0X M3CSP[$-RB$ R(:GP?,8-S2!9[:1_377CMIV3"# M-TI\Y+7=+8-I #4VK!/V01W>X*!GXO J)8S_PF'PC0.H.F-5.P03@Y;+_L^^ M#.?PG(!T"$@][WXCS_*66;9::'4 [;P)S1E>JH\FLE*RX MX,PG,\U\V"&\IZI]*RO5(C!9PT>?@UC#]1-J*JE>H8%?.VLL.9!RH#H&2Z$W M3%2=&-'6S/#*@]QRT3F,?Q_5N?.YJ.#\^3CBC1+4#AP?ZY*-RMNO2VN T>"? M6AUA25KY-ZV'HU8V:#6]5G5&:_6]ULVHM1ZTXFD5>""H.^TAN*%H^$H>QB>A M3\741Y.1S.%U[_&']_!Y#Y2UV&X(ZIBY)S/) / +DQUU03B.WW.7, =W0[ MR>E.LX+ )C-B&H>S:4+_:9@DQ0DB-Z;SF3#$:J3[(BBKJ'%_[KCA[O;H"O)P MDI:.:UZ4D*;A+$O'E'VFRKS,PRPMG)D6<9A,"Z>RF!1A1MS.%6YTTF#IFK;^ M&3%0J4[:OM>.L^-+==TWZ&_N_3/WCNDM)R$"&PJ-K\I) +I_.OJ!57O?KC?* M4O/WYHY>6]3.@=8;I>QQX#88W^_5WU!+ P04 " #0>5=85_3DFR(& !L M#0 &0 'AL+W=OAJ) MELU8)DD^7FK;CHX.XMZY/SIPZZZQK3GW+*R72^WO3DSC;@Y'8G2_\=7.%QUM MC(\.5GIN+DSWY^K<8S7><)G:I6F#=2WS9G8X.A;[)QG=CQ>^67,3MN:,-)DX M=T6+3]/#44* 3&/JCCAH#-?FU#0-,0*,[P//T48D$6[/[[E_B+I#EXD.YM0U M?]EIMS@,?+OX M'UT@#Z?KQC W8]W"L _:>O9--VL3[K>.0S#=X$( 8+J=LM^MGM@&_L0:Y^OE M4V?TFKTH^WG-+B%QYAJDLVWGK*-(&7+:_@=A!&A&&*\?8=0]1MUCG$:,S19& MW6/$N*%XB$@VU1WNH 9M[P96-RZ 9KKV!&5F0ZT;=F>T#S%:8LQ('F5A)O;C M;MR,:_;MTP4[OK5+]@4"/;MT'>BW_T]U6+#7K.")+#!F7(D*H^"IR&E,>9%+ M3-Z\*J60[^*1*A-V8IMF4'+=3OJ%-[6QUS&Q.&M1;S.>*$D\JK0 79Y40,6S MLL2BJ!03!2]DR6*A?.MF;]=A8T;)!>2"1J4LRR13/,T*EJ?0"]PD._V8$"4NE$7"TI*E4"H'CTQ@R0LE0&56VH+@%C4_P. X3%+ZAQA1 M$$6>;G3-8(K>;@.H^P.1Y0S@LO)A)V6?VDZWQO('>FZ9/PX5= M!99F/ >P+ 4R@IMA44%50@TCY2S->0K\EUY/#6OUTD15,ER5.21#G0RX!9,Y MD2=5^2!IHNNKQLU9"?.FO(0-*[(@SZN*J:RB/56P,W.-;K6"SSI3+UH'BCN8 M.)&*#%]F&[UR+N&T^]7]V!N%5$ DR$RQ,L<(&(HKF*:/K"%G$5,55XJ"JRQX M550QVE1.&R)3O*Q2.N)9W"E2+N#M[=S>$3G/TFP7$U@G+S&!':H"8PK;)0DF M9-"TOU&5:A?ZS8RG).ST[:,DW"DIXNBFY"I.5)431Y@_D[L;#7<4O")VV1^( MXJ>)_9JE"D92F.2"ER7A5_ >;8@DB8'VFL)4T0Y4S*']*9QOI\;',& Q"'%XE'X)\%!Q\7/3C$ M@(C.55S*9+")4A5[?UM35ZH?,7/7B*18#)=NW7:Q3-IY2ZYS<;]]Q@,['YV; MWJ#HD*64@#.B-0J>EWET1IF04P0,E1>QC DNXT1E.)/LA:Z5;;I6]LM="\4H MOAZCH5QCJ9A/V5<3\'**U?[+:M W/->B7A3TZRTJGI()R6S^0;C;"*?59'@= MF"U[SKQ;$I6E2A56)CXDAY8$DNT^11WJIVUH[VD;^N@=/.]1=5KJF @75#@1 MTX-+$=.EXE6>H8C6*&-L8B#',-NOD,21"!%5)=2,*E0H(A7(AP\]F+\CF/@D M^ZGPLJRX3"E"*I0!$1M?D:.&H*]0P@]B$2TIES'/%=J/C'E>H1]6[$0'6\7SG4S(A:?K'\&9W\REQW+^@'Z[WWR&?M9];!$-C9B!-]NCE[ONW?;_HW"J^ MIR>N0U.)TP4^AXRG"SB?.92L84$"-A]81_\#4$L#!!0 ( -!Y5UAS7<$Z M2P, #X( 9 >&PO=V]R:W-H965TDXN;?[T@YJKHH7OO% M1U*\YY[C/>1Y>53ZL]D#6/*U$=*L@KVUAZLH,N4>&F8NU0$D?JF5;IC%J=Y% MYJ"!5=ZI$1&-XVG4,"Z#]=*OW>CU4K56< DWFIBV:9A^V()0QU60!(\+MWRW MMVXA6B\/; =W8#\<;C3.HAZEX@U(PY4D&NI5L$FNMKG;[S?\S>%H!F/B,BF4 M^NPF?U:K(':$0$!I'0)#/Z*]\[IA+P0Q<*_&1 M5W:_"N8!J:!FK;"WZO@:3OEX@J42QO^28[=WF@>D;(U5S/^- 3P[4\^X">98OF67KI59'HMUN1',#GZKW1G)DC0."8UI>@8O[7-//5[Z#-XPST^;PEB-&OEG M+-,.)QO'9G4-?W^$]K%H!1-5D M4Y:JE=:$Y)VR@.:-8M+XZKWBDLF2R]V@?&.IG TVGLI (^VC1O3@[(Z@@3!# M:B7PCILK@H6"I@#=%VNPDO@52K9/<7XE29Z'B_G0,& 9D#QO0 M8VA2J;:P=2OP2G?'02[2,%WD$V>S#.U3\)!(?.%K?7/<=#WAV_:NL[YE&L_%$ $UNL:7,RRH[KI5-['JX#M$ MH2SV&S_<8X,'[3;@]UKA:W.:N #]7X;UOU!+ P04 " #0>5=82*I:H=$" M R!@ &0 'AL+W=O-<@VFKBNOG671Z'CO[SN"GP+79ZH.+9*'4O1M\+:9> MZ 2AQ-PZ J?F$2]02@!+'RY4TW1?6O6U,.^:ML:K:.-.X$G7?\J?-.6PY9.$[#FSC MP#K=_4:=RDMN^6RBU1JTLR::ZW2A=MXD3M3N4FZMIE5!?G8VUW2_VCX#KPNX M>FA%0R=N?:CI/1S>\85$P=:L3@6M5V9>"J+K!X"PA( MXJ"3O>@\9WN)EY@?PRCT@85LM(=;S1?^+V82YY;=^&#[_/%L9J>C%_ M=L7>D^/=9)=%IZ;A.4X]2A.#^A&]V<0A#XCZ@'$ MD9_&(>QZ"\%6'E>HEUVU,I"KMK9]2@^S0T$\Z^O JWE?3:^Y7HK:@,227,/C MD\0#W5>H?F!5TU6%A;)48[KNBHHZ:F= ZZ52]F7@-AA^$[._4$L#!!0 ( M -!Y5UAC\[9U*P8 /,/ 9 >&PO=V]R:W-H965T&)FVM&3+MJ;F^TO:GU8<&N\F6RK18ZLH4=46-GIT,SL31 M><+P#N#G0J_-SII8DYNZ_L2;M].3@<\"Z5+GEBDH_-WJ5[HLF1#$^'-#<[!E MR8B[ZY[ZI=,=NMPHHU_5Y2_%U"Y.!NF IGJFVM)^K-??ZXT^$=/+Z]*X+ZT[ MV$0.*&^-K9<;9$BP+*KN7WW>V&$'(?6?0) ;!.GD[A@Y*2^45:?'3;VFAJ%! MC1=.58<-X8J*G7)E&]P6P+.G;^IZNB[*DE0UI;>55=6\N"DUG1FCK:'AM<+. MC(XG%LP899)O")]WA.43A(6D=W5E%X9>5U,]?4A@ BFWHLI>U'-YD.*%SL<4 M^!Y)7P8'Z 5;U0-'+_AWJE\4)B]KTS::?CN[,;9! /V^SPX=EW _%TZJ([-2 MN3X9(&N,;F[UX/3Y,Q'[+P_H$&YU" ]1/[U"DDY;"%W/J-=GGXP'J>R7\7JA M*5_ *-I049'EK6J:NZ*:TZTJ6TTW=TC+5=U8CA$R>HYDM81"X8!GL)\JZ4ZK MQCB7.3MC(6FM851E %JB*)@CNNQ@?P5L!PI?Z^6-;B@07H=SEO_9%J;@5#9T M-OT#J<'L#"$YD7H5O6J;1E?Y'5TWJC*E

*GJPN:M94K!."3]Z#S M/@3N^6WBB]Z^OZ3O*/.]+)!8)#+&]_FS5 KY\L$J$UX?TCB2SU1,IGJ93[CD(? MC*,$*R$#+TZ8>8#?, Y&^(MDZ$4@\(7=)/V@JA:UE?[1:H\-O%4XD9'CZ^.; M)O=&Z#7T_0CT121I&(ALM-7::9BRAC$)'V!B:Z5>\5Z](,V\3+!2P)6)TTP& MW3N_:*#/03+V!TR3+2>V1[7B]7VH(U9((6&0)O*(";^0PELX1/ MA?!9,VQ3/DW1KR[T+8:4%8QE=;ZH:O"_HV$$ 3*$.TN: 0YVP'\0) 1Y6-DA MJ 4^P*!>'&2;()\=-#X'NHR!UADXR[S8]T?.K+&7N%,N"4$4NOL()I(N\]$W MH+UP3CI;HO86?X$^CS?$+8IGD!<>1<]+6T4-F+/10%4XRV!(/_AR!:!BQ=N*%7]UQ7*ENP&SPZ6+N_ []0>:[JL2L;6ODAWD^73S[^H2M_M-@W=S M.ZQE7']?NX$7(BE8"/,[M4;/VM[84 "S\>$<4+V&T[9A-ESRNC+G];."..H* MH:M]O'^J: DY#BD91Y2.Y6[Y"<9H1N.4Y'A/<1%CM&C@B?'#PL%(W2_=7Q1B M7/2]K?\_X/YDZ_[D6QO6;+_7/;IL+8^FFPCNIIW7G_%6,WI?#!QDO#\&SIP7 M'S4EKYON.O;W*:'F\T;/L22U*Y+S$ANO_J>*V,^-E?Z,(1) #R=(#@A0W?AAA:$E[C@YJ+-,8:@>)[ M*=K>]3VKF(MOM)U=^@J]S]^3G8<8 FWNGIL&M0@"=6^R[>GV17O6/>3NP;OG M\#O5S L,;:6> =4?)YA'FNZ)V6ULO7+/NIO:(JK=SNK;]AAEL MW_FG?P-02P,$% @ T'E76+ B]'^W @ YP4 !D !X;"]W;W)K&UL?51M;],P$/XKIX 02-'RVI>5-E([0" Q46T#/B ^ MN,FEB>;8P7;6[M]S=MI0I*Y?XO/Y[O'S^'(WWTGUJ"M$ _N&"[WP*F/:61#H MO,*&Z2O9HJ"34JJ&&=JJ;:!;A:QP20T/XC EXAE[N%%WE'QUV]K8QU!-F\95N\1_.]72O:!0-*43;&(C!:GO &.;= 1.// =,;KK2) MI_81_9/33EHV3..-Y#_KPE0+;^I!@27KN+F3N\]XT#.R>+GDVGUAU\*#JM*<]DRSQ7'1;PM6:;FM>F1@UO']B&HWXW#PS=8.."_("VZM'B M%]"B&&ZE,)6&CZ+ XG^ @*@-_.(COU5\$?$#YE>0A#[$89QNK#H.((LX4RMSM&]"'B>[A&9G_P%.U0(3$,I.76NG@&5 M IL-JJ$<)Y[(>6*XZ91"8:"5RC4=L>9(33,@/\-KB!+_>A+W1CB-!EU/+&">IIGN<\,(4G^4AO#-5%:#'Y--=Z;7\" -XT0PG?@IZ20C M]9,H@7,%#4Z:KT&U=2-&0RX[8?H^'+S#%%OVS?LOO!^!MTQM:Z'IR4I*#:\F M(P]4/U;ZC9&M:^6--#08G%G1)$9E ^B\E-(<-_:"8;9G?P%02P,$% @ MT'E76,'M!9.& P 00@ !D !X;"]W;W)K&UL MC59M;]LV$/XK!ZT8$D"-WF4YLPTDZ8(-6-J@:3<,PS[0TMDF2I$J2=5-?_V. ME**YFV/DB\PC[YY[[H4\+_9*?S([1 M?6R'-,MA9VUU&D:EWV#)SH3J4=+)1 MNF661+V-3*>1-=ZH%5$:QV74,BZ#U<+OW>O50O56<(GW&DS?MDP_7J-0^V60 M!$\;[_EV9]U&M%IT;(L/:#]V]YJD:$)I>(O2<"5!XV897"67UX73]PJ_<]R; M@S6X2-9*?7+"K\TRB!TA%%A;A\#HYPO>H! .B&A\'C&#R:4S/%P_H=_ZV"F6 M-3-XH\0?O+&[95 %T."&]<*^5_M?<(S'$ZR5,/X+^T$W)^6Z-U:UHS$Q:+D< M?MG7,0\'!E7\C$$Z&J2>]^#(LWS#+%LMM-J#=MJ$YA8^5&]-Y+AT17FPFDXY MV=G56V71P#U[9&N!P&0#[^P.-;Q;"[YE+G$&SCZX0W.^B"QY='91/:)?#^CI M,^A)"G=*VIV!GV6#S?< $5&=^*9/?*_3DXAOL+Z + XAC=/L!%XVQ9]YO.P9 MO#%RXT._JFO=,V'@KZNUL9HZYN]C,0^(^7%$=XLN3<=J7 9T30SJ+QBL?OPA M*>.?3O#-)[[Y*?35 ]W*IJ=2J0V\H';'Z)]T<)S^X*D[\*2\)W70)7O4=&1@ MHP3==',)5"ILUZ3U5*Z#G<3OI/" DBL-M<:&6]BPF@MN'^$5)/,BG!4QK;+, M+SY*:G7!+&HF^#=LH-.JY<8H_0C2TTN*,(LS2*HPGZ=PRR63-8) NK,&\C"/ M*\C"O"S&+!UR3\*DJNA;)3F17%L@X-Z;U\I8$X*DYY$RSEJE+?_FK> L">=) M?@YG:5C.TG/XH"P3(Y?3J4J3/)QE!11Y6.5SN.FU1FFA<^ $3(Y>@C(/TW+F MHDYF);R@0B'EPAAZ5+[W]HHJ45!>*I?K.862P8D^+:8^+5[D2TR-YZ%5,7AM77^8W_]^A[#\] M?,M-35A_(M-PU:J>\D9Z.:5JR#X)5,:P+.9N6=(G#F=5[H09E#.O4/ERN&H@ MVQ %2,MT;!;*?5*&)?7 L91'!\]ZBWKKAQ<5T-$87OAI=YJ/5\-8^%=]&*YW M3&\Y]8S #9G&%S/*L1X&UB!8U?DAL5:61HY?[FC&HW8*=+Y1U&"CX!Q,_QI6 M_P!02P,$% @ T'E76&AX\T\T P -P< !D !X;"]W;W)K&UL?55-;]LX$/TK VVQ2 U^K1C9VT#B=/%]E @2-+L8;$' M6AI;1"A2):FX[J_OD))5I[!]D8;DS)OW1L/1;*OTJZD0+7ROA33SH+*VN8DB M4U18,W.E&I1TLE:Z9I:6>A.91B,K?5 MHC2.QU'-N P6,[_WH!.6W-@@U.R4NK5+3Z7\R!VA%!@81T"H]<;+E$(!T0TOO68P9#2 M!1[:>_2_O7;2LF(&ETK\RTM;S8-) "6N62OLH]K^@[V>D<,KE##^"=O.]SH+ MH&B-574?3 QJ+KLW^][7X2!@$I\(2/N U//N$GF6]\RRQ4RK+6CG36C.\%)] M-)'CTGV4)ZOIE%.<72R5M%QN4%H@T_ 2-?/ENGAF*X'F8W$%61Q"&J?9&;QL$)UYO.RD MZ+KFEEK+&F"RA*$(!4<#]]P40IE6(_QWNS)64^?\?ZP,79+\>!)WFVY,PPJ< M!W1=#.HW#!9__I&,X[_.2,@'"?DY],43W^B0UCAADOIDE(Z1V*'3,,' M2$9AEHW(F(19.H';LN0NP) D37/C6\M-OS%.8AB'Z70*CU3^;K 0EN!LQ06W M.Q_1L%W76S4K$2[2)DY4) ZO->=8.:JQ+R,!Z/]MJ7K=8N MJE%Z+^H4%F3AE,J5=81,HTBRD& "S M$P &0 'AL+W=ODXF2_OC.4+,NQ5TE3H"\M8%B\ MGKGPS'"DTY60?ZH%YYH\%'FIS@8+K90DSJ9 %T]"5\Y%: M2LYF9E.1CZAM!Z."9>5@?&K&KN7X5%0ZSTI^+8FJBH+)QW.>B]79P!FL!VZR M^4+CP&A\NF1S?LOUK\MK";U1BS++"EZJ3)1$\O1L,'%.SF-<;Q9\ROA*==H$ M+9D*\2=VWL[.!C8JQ'.>:$1@\+CG%SS/$0C4^-)@#EJ1N+';7J-?&=O!EBE3 M_$+DG[.97IP-H@&9\915N;X1JY]Y8X^/>(G(E?DGJWIM !*32FE1-)NA7V1E M_60/C1\Z&R+[&QMHLX$:O6M!1LM+IMGX5(H5D;@:T+!A3#6[0;FLQ$.YU1)F M,]BGQ^\XF*3(X1V;YEP-3T<:0'%JE#0 YS4 _0: 0\E[4>J%(C^5,S[;!AB! M-JU*=*W2.>U%O.3),7%MBU";NCUX;FNB:_#\\'X^^^

MLYRW)CS?EG4, IGW6?",C"[NM,&MPS[;X$*8Y4SS&=&"Z 4G%Z)8 MLO+Q!T4@"TA84LX)*VN77')"5,D%3D$N3HACIC@UIA8)-W&9MF>:8SM+N2$N Z5DR21%:P/>^L.@!)KA6'=-@T[0@D MK]5=8RR%-,X#;I1"P[8E>\18-9H+."1)Q#3/YL;%$,BHECW$I^NZ0_)!E,F. M-A_-MER4\R/-9;&EU2'UK=#W (%&EN?3C48?GA=O@9N4(LD3W0]=RXDBA+0< M%Q ['GWJ$<^#)=ZP:<8Q[G*&/4'FMT'FOSC(##W)'9J.9EQF*A$5Z'L#W-\7 M6L\@_ZNA]=G<,X!S1";WL''.R0W'VQ^@5_/T0;MT0:ORY\73"W(%?CMN=S9B[\_ M^V\)2E!0BH+^Z8EOQ']A904%%]D][E9OD"%%T5&L M.:(#XD 4VBXV7"MTXWH$,E5SF/M0GE 8=EBN%Y@G]9SZ&7K;R;S)JV*J@E7IS]5+I;\.:(T1IMTFM=)&=?P2[D3@+<$2603:$&M3,2T XEHAY">N, MR^JEI1)Y-C/44QH>Q7I?:5(28-7I&T$E7V"%?<^;B7T4_ 2.,DX3KX/VX,JD<-E'=@!:!K[_ MI&8P,),"+[.O;'T9IRW]MPJ+2PXN3;)Z&YD2;NJ\F3*)2X&^,! BDR.;A&&$W0AF M_!AJV9"2NXUVU*1DQ]XJ;[&XJY,%%+6!ZQ&0#ZO>04UWLN$B5'&QC759Z,+_ M-9X.W/OW+*_X)CEMEW50BH<4;P#/\NQ>-L8M&^-7LG'+E<^1L%?(_R3\KY%P MU/F04G Y-Y^+X'T&*]OZFTH[VGZ1FM0?8C;+Z\]9[YF<9R6>? I;[>,07B)D M_8FH[FBQ-)]EID)K49CF@C,@!2Z ^53 ^U;300'M=[KQ7U!+ P04 " #0 M>5=8'!0/-UL# !=!P &0 'AL+W=OD M%,4%;/>+1=[+<\]#^HZS@U2/>HMHX'O7]GKN;8W9786AKK;8"1W('?;D64O5 M"4-;M0GU3J&H75+7AG$496$GFMY;S)SM5BUF2^&NV:S-=80+F8[L<%[-%]WMXIVX812-QWVNI$]*%S/O26[NDYLO MX:/"@ MC]9@E:RD?+2;O^JY%UE"V&)E+(*@SQ/>8-M:(*+Q[XCI325MXO'Z!?V#TTY: M5D+CC6R_-;79SKW"@QK78M^:.WGX$T<]J<6K9*O=+QR&V#SWH-IK([LQF1AT M33]\Q??Q'(X2BNA,0CPFQ([W4,BQ?"^,6,R4/("RT81F%TZJRR9R36\OY=XH M\C:49Q;W1E:/[ZY)5PTWLJ.[UL(=UYLO8M6B?CL+#96QP6$U0EX/D/$92!;# M9]F;K88_^AKK'P%"XC>1C%](7L<7$=]C%0"/?(BCF%_ XY-H[O#X.=%;H7 4 M?2N>Z3]F8*F4Z#?HUG\O5]HH^L/\DHJD,^=TUP]>^(?/2-D)C MGD]INUC]M+8O6X2U;*F[FWXS-G?S'VHPY!!C+,#/I)R ]0$"!]$H^!! MM'L;_$1E;4F;JT%H2^63Z/>2S@L.OD.9!' U8E!1GJ9\E"=E+ M%G &#P/6FSC-_82G;\F1I0%+@";$&AOGX]POH]BZTB*(TY\P8(-*R)/$3\K( M F8!3UX91-QG24EVQHJ \XD"X\PO<^XH\""/CRFPB/G%Z,N#J#C#@=H*NQ4J MX!,+QOV\M.=0,,M]8E$4?A[GED5$]/+7@RA2O\C<021%4!8_'$3I%Z5SE72H MR4])C/U-E#,_SR)7+ DR#J?Z)CP:>1VJC1OL&BJY[\TP_2;K]'8LAY'Y&CX\ M/)^%VC2]AA;7E!H%>>J!&H;YL#%RYP;H2AH:QVZYI?&PO=V]R:W-H965T M;18AW8KDG;#,.P# M+=&V4$ET2:I.^NMW+F4I3N-ZQ;!]L:\DWO%THVP>-3+F5EK*4JGU-0S[OO)K!%5.SD[<>_>Z[,3 MU=FZ:N5[S4S7-$+?7S,Y.UF(I;Z3]N'ZO\30;K915 M(UM3J99IN3B=G ?'%RFM=PM^J^3&[,B,,IDK]8D>WI2G$Y\"DK4L+%D0^/LB M+V5=DR&$\7EK;#^VN6.7.;"R$M5_UZ5=G4ZR2:LE O1U?9:;7Z2 MVWQBLE>HVKA?MNG7QO&$%9VQJMDJ(X*F:OM_<;NMPXY"YG]'@6\5N(N[=^2B MO!)6G)UHM6&:5L,:"2Y5IXW@JI::XS\,#]L(QT=#9"_\Q4795F:)6IM.2_7D^-U8#&G_MR[FW&.VW2'0Y-FM1 MR-,)^&"D_B(G9\^>!(G_\D"\T1AO=,CZV0WH5W:U9&K!+E6S5JULK:&GG4Q> MW8*<1K+I7+9R4=F]G3OH9W\66Q<6+N36!?C/[J30QC7$M85[3+0E20';2%13 M&"RKP7-SS%ZCR*)F?S@5!PJ&ELIF+O78UITW06^1_2S:#IL#&YXO.ZV1..S) M4FH8?,K@U\]B$GPO3U,(0>3Q.& W5EC)8B\)0Y9[?N2SU OCD(&^(&<+FW&& M+U'((M]G'Y2%N:*WSZK'&?/<"_V @LT3WWGU(T2\D- H[P.:HAH\C(_8-(B] MR \@A%X:^4?;>*;;RLQK^K*5M+L0^=A!Q\DD*\)$&6U@'W9%MBGD.1:5Z9JE\RN)&LQN_95 MK=YZOF-FI38M/KGEQ";1WCU[DO$@?4G66J/JJD2S2NSPM8 /YG94\QC6/X+A ML1(4A*!*'+.W$J-CC BUH#[X7I@%O9"&W!6N$%K?@6L;H4M0S0LYX.%E2Q>R<@G3A$UM+U81$!*)!G'. M+L6Z F2JKS!Y#=X+7:QLU]10PTC>9[A MU^?QM[@=LT9FJ>\E?@X!-O(@?UB:L3_'2.YS5_7MLZ)=5C2&H#6-=D;T?#"XL(Q9,J:1$LBN)S:RH^B)15J)1VE9?^Q=3U"OB MX1'I10FXV><$IL8))T[%C]GX$%"()PV]B'Q"C'TO"Z#XRRX0'REP+PM3MS[Q MLCP\.L"_9.1?\L/\>P5^N"/.[H"XIAWH6@+B!>)PV>\CX4$O^T?$=S><#>@R MD-6"<*)G'1H ##KT=HYH=TRLU_7=0.)A.S78-#NKP'A-L?\/(X7J(BQ;['?H MV!CPB(30\_-\*T1\NY];.BIY;M-!U8>PAQV:>PEF#!@;TV_N9]!2Q:?G='+\ MAKL 1)#[!%HORN/^/P2*!I,$6S.X9 4P5?50]Y/(C9$\"YT6CZ!UB4(O01IL MC MIUY=]*4U[!I H+%)>^,^%!_TL1_%YTP_( <%0&B#S'^JX'Q+4(O^B'D[80!IVNI*U6B[GF24/4]/PWZ?ZB^A(QZ((4R$,&,'^WA#-D($N3G*7[*W M8FU< WM".;&N&@R97GF:IFZ#)LQ&@/LU.E[<>_JNE\'^- CIO!.",6-]T)@' ME0G]AA?;!<[9S86JD7KIK(9T$T-_^[C2^'6^>Y_V%ZWYY?VU])S1Z9%@M M%U#U7Z0XT.C^*M@_6+5VUZ^YLKC,.7&%V[/4M #?%TK9X8$IBWP8 #(3 9 >&PO=V]R:W-H965T&QU?-^W?;FFM)S>KJG8GHZ7WZ^>3 MB2N6=I6[HV9M:[R9-^TJ]]BVBXE;MS:?Q4NK:L*31$U6>5F/3H_CL\OV]+C9 M^*JL[65+W&:URMO;%LNECX\F)P>K_.%O;+^E_5EB]UDD#(K M5[9V95.3ULY/1F?L^;D.Y^.!7TM[[>ZL2?!DVC1_A\WKVV*H*@F#&^U[F:% 9+MY=;Z6_C+[#EVGN[$53_5;._/)D9$9D9N?YIO)O MF^L?;.^/#/**IG+Q?W+=G579B!0;YYM5?QD6K,JZ^\UO^CC%OBGC]]:]=-Z_-I9^<'Y3XO2V.B$@HX0D7!^2)P5\1Y8D]\GHG2>=W62_('V=3YUN@X\_'_.VD MI8]+"XQY[M9Y84]&H(2S[0<[.OWZ*Z:2[P[8F@ZVIH>DGUZ!@;,-,M/,R<=V MOZX[2@+;E$QOMR<><^*PFG=+2^9-!7H&L1$+CCC4 \CWRYZNY3]V1N9EG==% MF5>DW"DG15,7MJW#Y6;3@JD#HER/J.?D9>D*7/O=YFV/#8+,VM74MD-V[SQA M\0DG/^;U!J6";/>OVL8Y:/A@ZPV,?/W32S(F0JO?B9<"5HEF:$24,%3&!"15GO&@]S%_?5C8E1 MC&J18:6-HCJJT@E6B1HR5-9%L[)D:A$ABW#>#(8J2542KBA#N8Q2"1"N% MH88E)!7Q1TC*.8LF2D:5$"3E5*5X(6C"=6_?(95,*II(AM\4YL'#-*$)/+MH M6N0G]Y9\P[[%OT13DX95QJD0$@NM$0(\Z70\)GM,4G@ ,^$*;NFT6[!$1J&O MZZ+:S' N7P6L_M/!!" N:Y_7BS("#-LQG%701L;(C$B1Y+R>82-HFIF /N(# M-#OHW$;HV B=@)8.$=T5K' 9!%S;6.2KVZ,GP>O, >;;[ 28I$+&E:(B81UX M8"-""/ PF@ H(2,J@=T"N5 X9^2#D+*$(22 $F.(H^G#F'>JQH RTPF5&<B0\M>%LB4PA[VXL].E#'Y%#'Y)/KV-N. M3&3>-BORX@9^U8C.16QT%@E&(7MEFT6;KY=E0;=CL<[NKH_8+7 MH2^ + J *B#Q"]U&3)UY2'"W:MCS*3@8J@4/!!-!:P8$%7B+6813!HU^?HK MPQG_+M2-5"G0G"JC"5)2A,1G8 M MT@05&JO Z(>F7L*9;WC0+BE$;! MC((%?$A$+-0HGF#X0\N9H1GRPQ%-05![,NC:9_E.0=]WQD.7V36/ RQ3 \O4 M?V89D/TFHOH>P78SQ';D>XQB![4]@6)!TY8N_XL?EYMI%5B(RO1^D[ORV;I[ MX%#DX1)"BTJ;\I Q(%FF.#IJAEC#X384T ML18*]>6(I@>BZ<_9SB[;9K8I^A9[!:*4A7V4< >U/H%P41NFAOC'#/&W:_N_ M:'?1./\,Y6XUW;0NCO%;F3'*,@/G1*R7'/%F 4%AU%1QGM5A+A10% MQH A/^%7RB21/,ZJ HU1 0/I%R#BY,YW#-!G$;_6A$EX4_OND\;P=/@@=-9] M!]D=[[XFO&ULK5E=;]LV%/TKA%8,+9!$'U8D.[,-.-;: M>6@[(VFWAV$/M$3;1"12)6D['?;C1TJR;,F,'&]\B?5Q[Q'/D>[E(3/<4?;$ MUP@)\)REA(^LM1#YG6WS>(TRR&]HCHB\LZ0L@T*>LI7-TY3F!G M$!-K/"RNS=EX2#";+(/L^SU*Z6YDN=;^P@->K86Z8(^'.5RA1R2^ MYG,FS^P:)<$9(AQ3 AA:CJR)>Q=YCDHH(G[':,>/CH&BLJ#T29W,DI'EJ!&A M%,5"04#YLT53E*8*28[C6P5JU<]4B_3W!7E)9@$YFM+T#YR(]<$&S*EF.(,.D_(7/E1!'"6[P0H)7 M)7CM!/^%A%Z5T'MM@E\E^(4R)95"AP@*.!XRN@-,14LT=5"(661+^IBH]_XH MF+R+99X8/Y;O&] E>,0K@IMC!-Z^>0?> $S ES7=<$@2/K2%')YZB!U70[DOA^*],!37 Y\H M$6L.?B8)2IH MN15D_/VY.Z]3L0(Q3>@YUP!S_%ZF@%-7Y/N%NF>)CWJ3O\5 MDAO@:-,;;'KUJ^H5>+T7\.:,)IM8@!DIRUV5S9\?91"8"93QOW2*EXB^'E'U ME#N>PQB-+-DT.&);9(U__,$-G)]T:ID$BPR!-93T:R7]+O3Q+,LA9K)[B2N0 M4K*Z3N4WG0#(.1(Z%4NTL$!3C70[=H;V]EB:LQ%15T2#Q&U-XK:3Q =*DQU. M4R"K35:>@&2%%RDJ60!<4]01*I&##D)G(Z*NB :AH"84=!)Z0%M$-@@L&H9C*-OQWN_^57,.3T4FJX:!%M7,LE]:I(;"& M;/U:MGZG;)-DBYC 7$U#Z%E:'8YTJO1/2LL+@[ ERFF0.PA;0=%I4']PJW_U M@YK#H)/#%P8)7R+&5(,1(*>R5-5$*:1[TI'I1+NT8YL$BPR!-51TG8-/<8S/ M?A6D(3&-HD6FT)IR'MD^]_\VVRN0(Q;+&429PQ6CG.^[E-['S[.)EG+G R_^ODRB1:;0FF(?O*IKWJRZ1MVJ4;3(%%I3SH-A=;L= MZ_3DXZRK4Z[.M6+ZFAKR@G8]:J/:IN@<5I/4P<"ZW0Y66Y!43OE$^=:Z*W%] M:Z[9_W^I>4::DHLZ+?+51OEM\M5&_6"CW4/9MSM=N.ZIQ(-40LN^\\D7?THFT2)3:$W5#\L'=V"^,HTN(HRB1:;0 MFAN"AV6$U^FK_T-E5H#-:FHON;5!_?8\>@:JI&0?;>;*"EH5F^)J#MP046Y] MUE?KC?=)L=W"YL66 M\8(*6<;%X1K!!#$5(.\O*17[$_6 ^M\4XW\!4$L#!!0 ( -!Y5U@M.?]Z MSP( &H+ 9 >&PO=V]R:W-H965TR(-I,Y=Q7 MI422U4$%\Z,@&/D%H=Q+QO6]J4S&HM*,H[\JI-#._4\EH@5Q1P4%B/O%.PN/3,+8!]8I?%)=J8PPVE7LA M'NSD*IMX@25"AJFV$L1=O$GFGB@\$^PW MS?1BXAUZD&%.*J9OQ?(2VX2&5B\53-6_L&S7!AZDE=*B:(,-04%Y4YT2092[$$:5<;-3NH4ZVC#1SE=E=F6IJGU,3I9-;L M!H@<9G3.:4Y3PC6X4)J:0F &=PKSBL&UJ:BRL5-I M?"+U"Q">P<5C14NS145Q)K4ER1;N-SZMFOY5B5),6)9SX' MA?()O>3SIW 4?'?0QAUM7*O'.VA7]=R#*;/[\;JL?Z[-=F1=V7>@ZHQ#J,Y;B-W:P_@!8E4#LIA1SET*IV)HJPT2K<#G!KO MK..H(QSUZ(!1#^0''?E!CPYP:\=O.N"PHSQT*LTJDW7S?Y539!N(\ ]N**=% M56SC.MSA;W1.M@N](7).N0*&N=$*]@_, M$2";QJZ9:%'6S=2]T*8UJX<+TPRCM O,\UP(O9K8_JQKKY/_4$L#!!0 ( M -!Y5U@'; ?#!P, ($, 9 >&PO=V]R:W-H965TI%P&^_&3 M9,?-F..5TD"^Q)*E<_0^TBM\,EAQ\21C1 7K-&%RZ,1*97W7E6&,*9&G/$.F M1V91TW)90YHX%]-Q:C 5^HA#(<"Y"+-"7BUP4F M?#5T?&?SXI;.8V5>N*-!1N8X076?C87NN666B*;().4,!,Z&SKG?O_ #$V!G M?*>XDEMM,"A3SI],YSH:.IY1A F&RJ0@^K'$2TP2DTGK^%DD=!V>Y/] MLX77,%,B\9(G/VBDXJ'3I3J.#6:Y* P(O M:,+]Y J.CS[\G<;5="5B4"(&-F]S1]Y"=4/+-C:U3"BLH5F(<#--Z)P8E@9\ M6F?:+1C!'4W-/+,K>DC.2.ZAAZ\Z-UPK3.5C%6 NI%4MQ%RPOLQ(B$-'WR") M8HG.Z/T[O^-]K,%LEIC-NNP;3'U5-I39%B4O*8&DYFBKY.<+=.T"YCHO1[W6 M6=MO#]QEA;!6*:SU$F%OL/\-F"@B%&BG(SRH?BPMX>,,]*S+,7N7"']W"#IDHTN8V6V?.K@JI?U@\@Y4S%L@;! M]YX_QMZA.?9NQ2L_U;5"7WF6_E95XA^*:0LE;TSZ7)SXM47!_GS[GW6#5HUQ MW:V"TA3GWXB84R8AP9E.YIUV]?=&Y/5NWE$\LS7FE"M=L=IFK/\CH# 3]/B, M<[7IF+*U_-&ULS59=;YLP%/TK%I.F5MH" 0))ER U9=,Z MK5/4:-O#M >7W 2K8#/;)-V_GVT(#0F).BF3]@+^N.?XWF-?^XXWC#^*%$"B MISRC8F*E4A97MBV2%'(L>JP JF:6C.=8JBY?V:+@@!<&E&>VZSB!G6-"K6AL MQF8\&K-29H3"C"-1YCGFOZ>0LL*-Q@5& M&\@R3:3<^%5S6LV2&KC;WK)_,+&K6!ZP@!N6?2<+F4ZLH846L,1E)N_9YB/4 M\0PT7\(R8;YH4]LZ%DI*(5E>@Y4'.:'5'S_5.NP ^L$1@%L#W'V ?P3@U0#O MI0"_!OA&F2H4HT.,)8[&G&T0U]:*33>,F :MPB=4;_M<D\7L&@3V,K?QFEWZ_34/Q"2DT2JXZ/ND.2Q*X:3#'][(,Y) M%I^)K*5# ML+^7D!UF81@,O;V4M'>>W1SXRI0O B6LI+)ZS)K1ID*Z-H7!WOA454Y5H?-, M4Y5==YBO"!4H@Z6B='JAR@Q>E3)51[+"/.X/3*I2P3135?T!UP9J?LF8W';T M DT]&?T!4$L#!!0 ( -!Y5UAU*WBUP0, *(, 9 >&PO=V]R:W-H M965TE5Q- MG+76FWO75?F:5D3=B0WE\&0I9$4T3.7*51M)2=&0JM+U/2]V*\*X,QTW:\]R M.A:U+AFGSQ*INJJ(_&]&2[&;.-C9+WQFJ[4V"^YTO"$K.J?ZR^99PLSM50I6 M4:Z8X$C2Y<1YP/<9]@RA0?S%Z$X=C)&QLA#BJYG\44P= MHG3T1RQE<* M;:A$\S61%+U#<\BNHBXI$DO4 Y[W@+=H1A3+$>$%REA9:UJ@FXQJPDIU"^PO M\PS=O+Y%KQ'CZ,^UJ!4@U=C5<%RSJ9MW1YNU1_-/' W[Z*/@>JW0$R]H<2S@ M@L_>K+\W._//*F8TOT.!]Q;YGA]8#O1X"1TW=-]"S\[3/Q!^ASPK_=60FZLU$_]=,T?XR;7:BB^Q84!8[ M%M1I.W%O)SZ;V1GE FK=!;D=7S.WKRF674GL*'Y)'[_D;#JT]7G7W'E0G,D6 MZL2*(F6JMT)P^RL-)1FJ.KJ!$MTNW]K"VVX3'[Q=''EI[(7>(%DLP#")@B1( M!_EB ^(@"H+ GC)I;SD]:_EIN81.PEQ83>)#+X&XX.^V5)D(@#\M66Z&71#, MY55SIM6O0I"^.' 0!TDT&@3@)2P<>:,4#^S;8"G&L=W\J#<_NM \4ZHFB[)_ MUY*6Q+C6 CJL;S53S'1;OS0]>G%,/XS\9.#Y)0I'83Q 918M?Q3X=L?8^]FW M>&<][SN/*V1YM]/ 2!(&?CQP;$7ZL8?3 3*S(<,XBH.#E&B=NP?-&USHJZ8) M5B@7-==M:].O]HWV0]->#M9GI@%OFL*?,FWW_I'(%8.W7M(E2'IW"51MV3;$ M[42+3=,B+H2&AK,9KN%/!)4& ,^70NC]Q&S0_RV9_@!02P,$% @ T'E7 M6"[BDV^'! (A\ !D !X;"]W;W)K&ULO9G; M;N,V$(9?A5 7;0)DHY,MQZEM((D.W:)!@LUF>U'T@I'&MA!)U)*TO7G[4H?( MEJ-H;6"V-[%$\?]&]/R1Z)G)AO%GL020Y'N:9&*J+:7,+W5=A$M(J3AG.63J MRISQE$IURA>ZR#G0J!2EB6X9AJ.G-,ZTV:0S"5O)),[@GA.Q2E/*7ZXA M89NI9FJO Y_CQ5(6 _ILDM,%/(!\S.^Y.M,;2A2GD(F8983#?*I=F9>!.2@$ MY8RO,6S$SC$IEO+$V'-Q\BF::D9Q1Y! * L$51]KN($D*4CJ/K[54*V)60AW MCU_I?KEXM9@G*N"&)7_'D5Q.M0N-1#"GJT1^9IL_H%[0L."%+!'E7[*IYHY& M&@E70K*T%JL[2..L^J3?ZR]B1Z 6VBVP:H%UJ,"N!?:A@D$M&.P+G'<$PUHP M/#2"4PN<0P6C6C JDU5]NV5J7"KI;,+9AO!BMJ(5!V5^2[7*2)P55GR07%V- ME4[.'B0+GY:ZN7>)7STD _?E;N'R(UWY5Z_W(7PG-B5 MW.Z0^X?(S5)N=\E0J[L99=\NQW>#<)%8*P.2D]1O[Y2UTG MGR2DXM^.F[NN8(-N6/%$OA0Y#6&JJ4>N +X&;?;K+Z9C_-Z594R8BPGS,&$^ M)BQ @K6\,FB\,NBCS^XY"P$B0>:4Z+T#9O/@&1-]O6N$'\X(WLXP1];0V$YKY6W8Y&W8G[?54Q*']7_X M74^F>C''9@H3YF+"/$R8CPD+D& MESB-2QS,-X&#Z15,F(L)\S!A/B8L0(*U MO#)JO#(ZXDT@(&19I'XC-:^!,Y*I'VC*2R$34I 3M0&MMJ6G75;JC76LE3!A M;@5S=I_'CFF-#;O]W/8P@_J8L )UG+)1>.2BUZ7/-2_1(18071&[SO#E M!5BTMF>LK6>L_W'/VA_L:$MATMR:MKMMM0;FV![N[4Q0H_JHM "+UC;+MBIJ M]A;29E<;RB.R!B&5,XK=:X/EF@;)*(OW?T U/HG*BW HK6- ML2V!FC^E!FJ^K>Q9ICG% &:MOCL/U!+ P04 " #0>5=8 M\L[6*O & #Q-0 &0 'AL+W=O4WJY"X7G^6&,86^IDDF3T<;I;;'X[%<;%A*Y5&^ M99G^9I6+E"I]*-9CN16,+LM*:3+&CA.,4\JST>RD/'LDSR/$."K4Y' M9^YQ3/RB0EGB$V=W\N S*BYEGN>?BX/+Y>G(*7K$$K90!8+J?[?L@B5)0=+] M^%)!1W6;1<7#SP_TM^7%ZXN94\DN\N0/OE2;T]%DA)9L17>)^I#?_<*J"RH[ MN,@36?Y%=U599X06.ZGRM*JL>Y#R;/^??JV$.*B \2,5<%4!MRH0[Y$*I*I MGEK!JRIX3ZW@5Q7*2Q_OK[T4+J**SDY$?H=$45K3B@^E^F5MK1?/BH%RHX3^ MENMZ:G:^D_J,E.AL\67')2^B)]$;])X*08L8HI<14Y0G\A5Z@7B&?M_D.TFS MI3P9*]U^01DOJK8N]FWA1]IR,7J79VHC49PMV=($C'7'Z][CA]Z?8ROQ+9L? M(8Q?(^Q@@C[>1.CEBU=]';-C(K8X0L0Q,7H,UXKT(*.G(-T2B9^(C.W(7VEV MA)PG(PU!23T<2-D&>:2-<85>W.E1\ 276:*9FL^3Q@ZDY(IB?Z\ MTA71I6*I_*OG2L[WK7C]K123W['G933)QRT:S'W]P ^>GON!!PB)( M6 P$,T+EU:'R;/193$7V1D_]*%^A!94;M*)>$_@GX]M#I;N%7)^05JFX6VI"\*0N9$CCU]+X5FGJ26V1IW.>T>+F>'UX MI^A'7$*5'MF+7*J^F>SUCI/[3I_Y2GZF>6Z!<5I\AI=75WT:6RE#-48$A9! MPF(@F!$*UVE,@_,L\U/5#%"T0&D1*"V&HID!.W!Y+M@L94<-#HK;F:=<,O6# M5F83@;8:0]%,N7$C-[;*?4WO4Y;I&T#E^[13,#2ODE+6FU150"-;=J7B#>F106@1*BZ%H9L :?^[:#?K[XI9! M6WI/=71Z(Q%T'AX!(:0]CX%Z;5!:#$4S%6[LMFNUB+/?U(:)PY_ >U4&==.@ MM B4%D/1S&@TCMJ=/,\$!>JW06D1*"V&HID!:ZRY^PUO/L1=@!KTBG:8PDV] M,&Q["U#K#44S5[P:[XVM5O$[O(4=.%3RBG8H^<1I)\T1:)LQ%,V4O''/V.Z> M!SL+.V^PXFYWC21HCW'0)F,HFBEXXY^QW3^_WZ5S_4#62C6;MOC?+!)#](@Y5H)F93AC/HA2K9TV6&ZO,S8#MR,WJ,&%HIER-P87VY=_;YC@>K[08E]F M2W[+ESN:)/?H,DV+GR0X35#OKI?>4(!Z7%!:!$J+H6AFS!J/BX-GR?DQZ.HT M*"T"I<50-#-@C67&=LL\).>WHP8')>SNE,">YW8RHFXYU\/8:3^8P^ZOP([C M>=/^716XL;'8OC+\'8DZJ&$%I46XN][L3R:X+6:W5##U'?<1+1N'B>T.(C!R;A=O9@Z2%I$>E9Y/4G?GNJ)5TCB_WPX+<#4]?&+A*[71R8 M7]MI@Y4$79$E72<9X&E[&V!/*=\]F$),'0\V_]I-XG XP&X3 MAMTG_'_X3]+X3^(]2W)-0(TI*"T"I<50-#-@C8,E=@?[S14_>_W!D0#UI:2[ MDUD7#=I36$^IJ=/9^3T^>+4E96)=OE-4;.S>96K_GDA]MGYOZ:Q\6Z=U_L(] MCO=O'S68_&ULO5U=;]LX%OTK@G>PZ "36J2H MKVX:H+6FLUUT=HOIS.S#8A\4FTF$RE9&DI,6V!^_E..$XH>OQ/1R7MK8H0[% M$U[I'.I2]_R^:3]W-YSWP9=MO>M>+V[Z_O;5=W,7OU37-_WPQ?+B_+:\YI]X_]OMQU9\6CZA;*HMWW55LPM:?O5Z M\8:\*@C-AR,.37ZO^'TW^CD8QG+9-)^'#^\WKQ?A<$J\YNM^P"C%?W=\Q>MZ M@!(G\L<1=?'4Z7#@^.=']'>'T8O17)8=7S7UOZM-?_-ZD2V"#;\J]W7_2W/_ M=WX<43S@K9NZ._P;W!_;AHM@O>_Z9GL\6)S!MMH]_%]^.3(Q.H D)PZ@QP.H M?@ [<4!T/"":>P ['L .S#P,Y^%;^MQ'']Q=M])[[INN#-^H]]U57#'Z,+SH)?;WCPKJS:X/>RWO,N:*Z" M-UW'^V/#EF^"]./7A!);KXVF^?3A->N(T"0U^;G;]31?\N-OPC0JP%&-^ M&CA]'/A;"B(6?/TRB,(? AK2R')"JSF'D\/AU')X 1_^CW+W,@BMARNCB9[^ MC-$!CYT\G3L1P[>"_9ZO;W9-W5Q_M;$,H@P7F5?=;;GFKQ?B*M+Q]HXO+O[Z M%Y*$?[,QA E6(($I[+$G]M@!/3K!WKMJ5_7\[(.X FV"][N^W%U7ES5_G/'_ M^2#:!^][ONW^:R.589**"58@@2FDQD^DQN"4'/%8'GBT40="N%+W )8>P(8; MWMU%>+Z\&_,!M5 &F3P-,@$'^7O5[KZJ%7VN\N'#RU?\^JN%#.L^R'8\=[&T@-J,F(I#AG5 M6 *[=F4)"4QAB812!H8@3P?%?]9T[Z'I]1!GS0DFB\P+WY4H,%IK*S$@@ M$Y"9CZW056W_]3"'N-"^M\+W6.?,$6A,#B&9S@W8FS,W2&@J-U1R0R>XX;=E M)6CY(HQHQ^U3AIJLQ&&DTP)VY$P+$II*BQ3C!%;C_^IO> M%4610$NI\H(IK M+#25#RFO"2@T+WYM>B&2WISF@YE7VYPQ_:8$]^+,B0]Q3*0Z)K \'CEG*R6Q M0(HUCG!5- %%IK*B133!%;3!;_B[;"TT)=?@GJ"H,0D*$NI<;E%%_)/WQZM*4!Y78:S4I 8U$2,9TZE!E;I8:"HU4NR2";4K#%>U MX>V#!SO_-0TFWOAU:Q3CIHJFPF9K8L%^&R=N?6A MLZG4V136V= R4_"_8'5X3B"8;GE]^&UW4]U:[YIP/ZYK):AH!1::RK$4[33R MN0A%49?64=$*+#2562G_*2S_9ZT$4],#1'%"$SVL43T %II*C/0 %/8 $V'] M:UMNQ!6RW'(K8:AKYZAH!1::RJOT$33Q&LJHJ_2H: 46FLJL=" 4=B#S0MGB M/T*J.U>X)V=>?-@/*NT'A>W'W!OT9;G^7#?75M8PG<4*%:W 0E/9E3Z%YE[C M&=.!K%#1"BPT-6M ^ID(]C.SXCDRW4R6ZZL)<$?.V0 ^O$PDO4P$>YF)<)Z= M;8'I05:H: 46FLJP=#01]1G2$:J/044KL-!49D>90/##AWDA;3Z!8"$U8AHW MP\>'"XFD"XE@%S(1TX=G-E:J4--[4-$*+#254NE?HMAK$*,Z&%2T @M-958Z MF A^$C(OB,U'((9?AOMQ9L6'^XBD^XA@]_'F2[4-?N*-Z*.OROJ'X,.'E948 MU(P@5+0""TVE4!J5*/,:LJ@F!16MP$)3F94F)9IXF'(BWRJRI!(QDNMQBNHJ ML-#4;%KI*ACL*IZ;=,5,HT&B/-*7]N'>G7-D?5@-)JT&@ZW&S,0K9LDM2IB> M10/WY*F0O\9X0R(_D*[M*9(!_*F4GES. E_IG)5\S,(TI(EAE7753IBX6F4B.E M+YO,(_JVY"MF:F0A_.+$N JAJF0L-'5[E%3),:R2OSW[*C;ULBYZX'-P90P+ M365,:N48ULHSLZ]BBU:VS2:X-V=N?*CE6*KE&%;+?U;Z56QJ[31-,EU#P6?K MS*T/L1U+L1W#8MNV[N24=@7C.^]S1%7L6&@JMU*QQ\SG@E2,NCJ/BE9@H:G, MCO;?8FS ->5_',7&KB6X*V=B?,C_6,K_&);_)\(93K>",9TG&JIUP$)3^936 M(?:Z?3=&7:U'12NPT%1FI>>(8<\Q+X1-QT%I8MR040T'%IK*BS0<,6PXIF[( M0)H5C.P\VU -"1::^BH#:4B2T&<<)YA68X6*5F"AJF;8DR M8V\UW),S+SY,2R)-2P*;EA-Q/#>_"D9WGG&HE@4+36566I;$ZVZ&!-6PH*(5 M6&@JL]*P)/ CAGFQ;#YGH"334Z#AGIQY\6$W$FDW$MANG(CEDWE5,)SS%$,U M*%AH*I6CEPIYW;^0X+YE"/GH%8!66E!S?U#1"BPTE3_I1Q*O&Q025$^"BE9@H:DO!I.>))UX M2'(BJRJUI0H1W?3"X*Y48*&I5$@3D<(FXKE95:DM=2C4'X; G3M3Y<-7I-)7 MI+"OF)E4E9K/,N)8-UQP5\[$^+ %J;0%Z53:T-RP/IZ92)69^CAGJ3&;4 4R%IK*C!3(&2R0_ZPTJLRR 352T @M-958:C0PV&O/"U[09U%1_J"X#"TVMB"!=1@Z[ M#/!&#*1.P;"N,PT5KI'L-!4 M'J4?R;WN0,A1S0DJ6H&%IC(KS4F.L ,AM^Q B/6%>K@C9UJ\%!4;516#G<4G MWE8/55'?[S;57;79EW7]-7B_W9:]^%59!];"JE;R4)-_4-$*+#2M*-FX*IG7 M+0F/\$CDXL(5:' :O:/29N'$LY,3V56/QZGI5:FET)O93J^Y:<5BV8G"FR2D MH[.'K<%S$Z(><97K51AG1NT@2SN2ZF^^+>S-QJ6(M!&.ZHB%L,J?797/\C0A MBHWZ699F242-X9BM:#YJIHUF5 4LG,JPF5U)+S03;:+06%.U-2.QOGA36-%2 M1DZ-:%3#*X1%[9R.P[$550@D^C4%7%<@W2B".G,' ]B*49**6-& M7JNM(6&4&I%G:Q>&C)VZ3XWKB$X4$OVSLC.(I2(IH5&2&@K$UI!0O5UA:\?B M+#QUNQC7$9TH)/I,*^J4?#%Q#LX^"KEJJ9^RI>.ZI<3KACV"6J5TA0M7H,%I M]([$W43=TUF+4,12]C0GB?$:6%N[* G-B+4UBZ)3KFY$WVYD^/%&(RJD9*):%>LY4);IE3 M7+@"#4ZC=^11X(*?<\/] 20=/Z-(#*-K:45S4T.;K1B+]97697?#>5^4?7EQ M+M3M-5_QNAY6XO8[<=@@[9Z^#5I^-8STU1NZ6!K?OR6O"C)\OY0P%^>WY37_ MN6RO*Q&<-;\2D.'+8:MW.SP ??S0-[>"S$5PV?1"8A]^O.'"$+=# _'[JZ;I M'S\,'=PW[>?#:5_\'U!+ P04 " #0>5=8;C7(IL$" "%!P &0 'AL M+W=O MI0.*%>VZ/0Q[4&PF%FI+KB0G[=]/DATO%S?K0U]LD>8YXJ$L,EHS?B]R (D> MRX**L95+65W8MDAS*+$8L JH^K)@O,12F7QIBXH#S@RH+&S/<89VB0FUXLCX MKGD6T^JVU,#M]8;]L]&NM,RQ@!DK?I%,YF/KW$(9+'!=R!NV_@JM'I-@ MR@IAGFC=QCH62FLA6=F"508EHF&*:=!*/J'ZV&\E5U^)PLEX6@OE$0)-TH>: M"*(/0Z /Z :$JIQ ;(&^5\!QXU]P5B),G] NC$.&3A.0F!3BG0+?W2;H].0= M.D&$HA\YJP6FF8ALJ1+6V]IIF]RT2,RER@3S2#;)? 5DH[N=Y& M[M0[RIA .D"^\QYYCN?W)#1["=PU<*\'GAR'?\-T@)Q>^(X:OSL\W_#Y_SN\ M&2OGA+:']'LR%Y*K"_6GK^(-8]#/J)O,A:AP"F-+=1$!? 56_/:-.W0^]E7K M-JZ[&Y0^,)?%COYKP( 4W&#G> MGIK#J-%YN"?F,"9TAV=[6NRM!E4"7YI&+U#*:BJ;R]MYNUDR,2UTSS]5,Z89 M"?]HF@%UA?F2J+^_@(6B= 9G*C'>-/W&D*PR;7#.I&JJ9IFK.0E&ULK5;;CM,P$/T5*R"T*T&3)FW3+FVDMN$J :M= M%AX0#VXR;2P2N]A."W_/V,F&-LT6)'A)[,DYXSEC9\;3O9#?5 :@R8\BYVKF M9%IOKUQ7)1D45/7$%CA^60M94(U3N7'55@)-+:G(7=_S1FY!&7>BJ;5=RV@J M2ITS#M>2J+(HJ/RY@%SL9T[?N3?W4P)D;)2HAO9O(FG3F>"0AR2+3Q0/&U@R7DN7&$ M87RO?3K-DH9X.+[W_M)J1RTKJF I\L\LU=G,&3LDA34MB3PGA+?\X..@)9_0^];NM]!C\_3WU+> M(UXG_4A-T.QF8/T%?]K-I2A6C-/JU^(IF2N%)>1@C\F7^4IIB;_=UZYMJ)89 M="]C2M&5VM($9@[6&@5R!T[TY%%_Y#WO2N'_=!;_)V='Z1TTZ1V<\QZ]D@)S M*V$'O(3.XUOQ0\LW%7<7C<<3/\"3M3O,R"ELTO?[?G@,BT]AX6@X"OP&=J1B MV*@8GE7Q'D\"XXDHH$O!\&3-0>"/!RT!'2B$M63&':A).)ITAS]JPA^=#7]! M%4L(4,D9WRB"5:BJ,^0":TLJ\IS*RGIKK)==&JL%Q@=Q^;UQ*_G++M!DW%)X M"@IZPVY]8:,O/*LO9GEI2NT_*0R[%+8$=F+: D]!02\8MQ2Z!_VG +FQ?5R1 M1)1<5Z6XL397A;GMD"W[ J\052P1I=>+\2S):N>7DVT MV-HNMQ(:>Z8=9G@- FD ^'TMA+Z?F 6:BU7T"U!+ P04 " #0>5=8@63? M4\P" "/" &0 'AL+W=OM-<[):$%00,\O^H?9NO,R(@K%@WVFA MER,G=5 !:MP.M&(#XB< +Y!0J\,X0]'/3 QR^!^S4 MOO%C[WV?R7]$]LART%D.GF+?EHC\Z[S/;L.1U!SVZ%AG?A0-TG3HKG>-](2% M R_%7=@CB6$G,7Q2XF=0ZA(19LXDPG- YG1#A:AF>EXQRF L+]7!Z+?"_LU)IW&Y/^L?W*XLA@GX9[FWJCP2,VF MG>;TU7D]6@'IX;;Q YSX>T(/PP8XC?>%NCO7A;VJOQ"YH%PA!G.#\RX24TBR MN?Z:CA:K^@:9"6WNH[JY-'\,(&V ^3X70F\[]E+J_D&R/U!+ P04 " #0 M>5=85PAX!30# #!"0 &0 'AL+W=O\4I0PN!%(5F6)Q>,<*-],'=_9 M+MR29:',@AM/5G@)=Z#N5S="S]R6)2,E,$DX0P+RJ3/S+Y/(V%N#+P0V, MC)(%YS_,Y$,V=3SC$%!(E6' ^F\-5T"I(=)N_&PXG79+ ]P=;]G?6>U:RP)+ MN.+T*\E4,75>.2B#'%=4W?+->VCTC U?RJFTOVC3V'H.2BNI>-F M0XG.#/ASP2NI M-Y(35VG/S?YNVG@YK[T,CGCI!^B:,U5(])9ED.T3N%IRJSO8ZIX')QD32 =H MZ)VCP N&/0Y=_0GFF&;Q:'E&Q[A:X/_E+KS3J*N M!&1$H4]<2O3MEE.*]+G98)%][TM'O=VH?SMS%5W*%4YAZNB[1H)8@Q,_?^:' MWIN^4/Y/LN0_D>V%>=2&>72*/9YC:N.))>*Y/0P+6!+&"%MN%QX!B[Z UL21 M)397\3H>AZ^BB;O>#=2A4?1Z'.P;)2==_,< C-L C$\&X$;P-;$WOBFI;'OV M<5-^?<)KPG!'DQ^$?D?XH=%%Z'5TCP^"XP>C86NTIR=L]80G]7P51,$%SW.; MT(KIV]0^2/K\G!05'OKK!]'KCJH>JR#PQAU=)SW\QWQ&K?[H+PL:]$/PFU*. M>DHY[&KO,^K6>W)HM%?OM21WYW$K02QMDR"134Y]W[>K;1\RL\]O9WVN^Y.Z MG7BBJ9N;:RST,9:(0JXIO4&D:TW4#4,]47QEG] %5_I!ML-"]U@@C('^GG.N MMA.S0=NUQ;\ 4$L#!!0 ( -!Y5UB79^LHJ@, .(0 9 >&PO=V]R M:W-H965T21'/.]HCK:,6F+ZK:5&B5#)*&I>*7"/Z[OTJ+<5I0[*NH!A+A3FT%<9F5*)&S4&E:YQY3H76)(;J/*GV7)#0&E)0\I[+DT%<\)':4[U*C3T362SUH4P^NN-Z#*!,-L+L3_L2'SH#?#H M.S=:ERK3>C]/**3?V2/'R2Z>DFNT _C0#V#GFNX<[38N+L5$;/U2'+H0/-Z& MG'?G:1_AVY[G'+OS-,R=S4+OC#L/[08>[S<>0!UQMDS9DF:J@=^!GIKACGR4 MZ.+IF(BMG_:A=\'^-9TY:2!H_V""/.#$[Z<3\,\;$Q!Z)4NWSD M2[-S -6G_[\)?Z*Y0"DD"F;=!LH.O#Y0UP/)BNI,^LBD.N%6EUL@&^ Z0#U/ M&)// WW,;?_6B/X'4$L#!!0 ( -!Y5UB>)@C7 , #L* 9 >&PO M=V]R:W-H965TLFCJI(Z] U0%2:3JM MT[JALFX?IGTPR4&L)G9J&VC__6P'4F !=1+2OH#MW/.<[_&=?;TE%P\R0U3P M5.1,]IU,J?+"=66284%DBY?(])BIFKBP%DM2"BMP-/*_C%H0R9]"S M:R,QZ/&YRBG#D0 Y+PHBGH>8\V7?\9WUPAV=9268X1G5?CH2>N35+ M2@MDDG(& J=]Y]*_B+O&WAK\H+B4&V,PD4PX?S"3F[3O>&9#F&.B# /1?PN\ MPCPW1'H;CRM.IW9I@)OC-?M'&[N.94(D7O'\)TU5UG?.'4AQ2N:YNN/+3[B* MIVWX$IY+^PO+RK;;=B"92\6+%5COH*"L^B=/*QTV 'YG#R!8 8)=0+0'$*X MX6L!T0H0666J4*P.,5%DT!-\"<)8:S8SL&):M Z?,G/L8R7T5ZIQ:C 2.H.$ M>@;"4KA^G--2GZDZ Z8S[CU\)4(0$#1NZ>@W8.'^@6C"^FQ"RQ?NX;LI2D(%IG I M)2H)BL,$(::RY%*O\BE,GN$65<93^*8R%* RPF!,S5US(4N28-_1EXE$L4!G\/:-W_$^-*EZ3++X2&1;BD>UXM$A=IT FC2A MQ%Y)^*3O5HE-ZE4L7Y2RZ_Y5*NUV&.U478.1'[1WBJ[!R///=VK.W7A6"Q0SVYY(2/B< MJ>I-JE?K#NC2/OP[ZT/=&56-S M-U5;=$C&C3$*.4TWIM4PC(JI6I9HH7MK' M>\*5;@7L,-/='0ICH+]/.5?KB7%0]XN#/U!+ P04 " #0>5=8;Q?!<\H$ M ""& &0 'AL+W=O8A"0V)* 0D)7\?<'%7$'(<>@7B83N MO3B'OCB'@.='EGWA.T($^)8FE"^,G1#[<]/DX8ZDF+]E>T+E+QN6I5C(VVQK M\GU&<%0DI8F)+,LU4QQ38SDOQJZSY9P=1!)3$\IA1D)'-PKB YVL4Y E%Q%\Q.?+6 M-R)DF25Y(XOE9%C7K./+%]_5C]?4%> MDKG'G*Q9\G<L2/(\FA9+;\H MGDV1+=G$-/\SWHI,_AK+/+'\P%ATC),$8!J!*RHPW<;W"0$7G!/!P1FXE8T3 M'>0(VX Z^/4E$3A.^!L9\/GV$KQ^]0:\ C$%=SMVX+(4GYM"HLOG,,,*R:I$ M@D:00 0^,2IV'+RC$8FZ!4Q)J^:&'KFMD+;B)0G? MOZ#2 +V0I ZZ>DPR(= M:>#8]:.VBWKVJ4?]SPV3G[(+CSB+_E4]J;+03%TH7]GG?(]#LC#DTN4D>R#& M\M=?H&O]KF(Y4;$.YUG->::KOER1;4QI3+=RK268AD3%MBSA%25RV7E8SBPK M<+RY^=#F,0RS_2" ;AW60>C4"!TMPHOPZR'F<:XIRJ8ML]W6K!#9KN?VP"G" M(/)L-3:WQN;JL47_2060HBF4T-S!G'8/U3#B#-E(#U1_O59BT23^J)!,5Z_"# M5N-4UE3Z656:B/94U;J\6PX-?UY#JQKMK@JLH+76*RJJ, \YZMZ#J,&(?DI% MJ_3VO![J:Z@B"")K!%KCNE!K<*=$M,IN3VKU<0U#_)'5"AMCA'IG?"D9K:;5 M\M$B>VX_-X8+]8Y[6DCAT$VESSM^GXMR;$P<>I.)Z42N6_%^"0^'C8E#O8L_34R'%@TA].U! RKC+&M,3ALOAWHS M/RFG@>(=PNN_,"NB('1&E@=J?!AI_>Z4H%;9G5G[KT"*F#,;!B/(&J=$>J=\ M*4U%0]>$_8>MA_;,OD:- 2.] 9\65:1P5^@$,Z=/1!77:?XNQ,:(D=Z(/[S[ M4XEKTLWN5-6Z'!M71[.I9!5-Y,(5[Y?P=-1X.M)[^I-D%2DVR8$/_<%24L3Y M,FYDIX\:8T* MH)%7:-28)M*;YHOIZM _S_P!(2VVYW9V8\5(;\5/$-9@># %W< ;$!G&]=J_ MA&BV3G-3DFV+0VX.0G:@HCS\K$?K@_2+XOBX-[Z"Y^OR.+PI4Y[.?\*97*\< M)&0C2UIO/;GBLO+ N[P1;%^<&=\S(5A:7.X(CDB6!\C?-XR)QYM\@OK?#LO_ M 5!+ P04 " #0>5=890%UV (# !R"0 &0 'AL+W=O43&P4BF75[8M MXA1R+#IL"50]F3.>8ZFV?&&+)0><&%">V6ZW&]@Y)M0:]LW9E _[K) 9H3#E M2!1YCOF?,61L/; <:WMP2Q:IU ?VL+_$"[@#>;^<&'PGL!8[:Z25S!A[T)OK9&!U=4"002PU U9_*YA EFDB%<;CAM.J M7&K@[GK+_M%H5UIF6,"$93]((M.!=6&A!.:XR.0M6W^&C9Z>YHM9)LPO6I>V MH3*."R%9O@&K"')"RW_\M,G##L )G@&X&X!;!_C/ +P-P'LIP-\ ?).94HK) M0X0E'O8Y6R.NK16;7IAD&K223Z@N^YWDZBE1.#G\Q%BR)EF&,$W0-968+L@L M S02 J1 Y^@KYASKVJ#3""0FF3A3I_=W$3H].4,GB%#T+66%4'C1MZ4*21/; M\<;]N'3O/N/><=$-HS(5Z --(-DGL)662I"[%31V6QDCB#O(Z[Y#;M?U&@*: MO 3N&+C; (_:X5\P[:!N(WQ/C5>5QS-\WG'EB8B(,R8*#NCG:"8D5Y_1KZ8J ME%[\9B^ZM5R))8YA8*G>(8"OP!J^?>,$W?=-&7Q-LNB5R/:RZU?9]=O8J^PV M9:Q$A@:I>^=JZ(2]7M]>[6;BT,B]N'3VC:+6&(Y4V*L4]EH5CN+'@@BB6VSC MUUFB@UV5KA>$04UG@YGCAEY-:&LH1PH-*J%!J]!IP>-4]7^TY"0&A)/?JG>J M\20;90<'>LYK8B:')J[GU@2WAG2DX+ 2'+97-F==?7E16I1![9QKEP!=FJ@L4LX+*LH]7I]7%863F M9>U\K"X4Y?S_3U/>1FXP7Q J4 9S1=GMA.K5X^6$+S>2+5=8&NP=G_\& =-@ &0 M 'AL+W=OB>R[_F:\\+YD<1I?C-:%\7F:C+)YVN>A/EKL>&I?&I,DC-+1[+IZ[7,VNQ;;(HY2_CES\FV2A-GS&QZ+WA.N^ ,OOFT^9_+9Y*"RB!*>YI%(G8PO;T:WZ.K.<\N :L1?$=_E MC<=.:>51B._EDP^+FY%;9L1C/B]*B5#^>^)W/(Y+)9G'/[7HZ/"996#S\4_U MMY5Y:>8QS/F=B/^.%L7Z9N2/G 5?AMNX^")V[WEMB)5ZL^+,+9=29V3E:. MEFKE@VINJFCI)DK+P_A09/+=2,85LW="+'91'#MANG ^I$68KJ+'F#NW>O9-BWAWOGY8M7S@LG2IVO M:['-Y0?DUY-"YEQ^\F1>Y_=FGQ_NR>^>SU\[Q/W#P2XFAO"[4\)1%8[U\(F< MJ<-TX<-TX4J/].AI,Q"I&0BK&;@R^=L+4K-@N4JO\DTXYSSW MWY#G_FER:TE,\TX.W@FD/GN7B3QW[L(L>X[2E7.;B&U:F!SO9::53'D:>9I1 M[!%7SO]3TTMW&$$>8?0P3,N2'K*D8):W\_DVV<9A(0^03#$KHG_#\H1A2G2O MY#4R&*,@\%RWE:EI'&-!69"F5-DA50:F^DF>I?MGD74^%&-OVIG%[C!YN"E! MYM2\0VH>F-I==>;AF3Q3Q]7TY>MH8UR^H,[0\K8DIEF>'BQ/;2_MJ4WOEL0T M[_[!NV]G:?N=:B.(>EZ[*+O#,,9!X)N+,CAD&5A;VH%AR>Y#@<^F[>SJ<=KJ)BR@?>DU=GUTQOIV_G,^RE60;!-C MTJ#DT'*WI:9/@-K'D?6-'%G=R6VIZ?[57H[@S?Q;SI?;V(FC)3=ZA:.Q\\S# MS+0?W,&1Y_I2NS^"M__^P@Y_]!8V*#GXP%I2TR= ,05BU@L;Q)3!_BVIZ?X5 MN""87(X5-AR-ID!E7X).D,(3!!+ [&L6+KB3AHG9EU46L:6F6U4T@GSK-0P" MSF#_EM1T_XIS$ PZ)^-8K3/50(OXM(T17 SGWV.Q,IJS"AZVU'3#"CQP8+V00909[-^2FM[@5D!#8* YO<7= M;> 0AE"[?T.Z,(,#B@(S,1#%,@1FF2'@1;K,,B;8\U$[5\,X/"5]X$44WA 8 M;V#PJH,UA*6$M9/#W8EL-O/TU!I7-. ^1GN!P_P%BPTM=5MJNG7%'X3:7NK$ M:I_$EIKN7X$*@4'ER)YU)+J?O^# O%8%0UW814Y!IAOJWI:;[5V1#8;(YFB(%QT)E(TB4P M'^&>U!IW:\"-C,;:AN$+UAE #ZK@@UJ_2$.M-DQLJ>G^%:707[I(U/KE&FJU:V)+3?>O^(3"?'*L MFN%HH/T%1Y[IBRD687 WY)X_\5ALY$$M^'R="OEUXMEXIYI5 +&EIIM6 ,*0 M[6)F5F^,L:6F^U=@PV"P.1G 6+=Q0P+$2/O^Q"[4$-Q[!Q-33,-@IAD"8*S+ M+F,4^)UVG7$<)2[K2591#CM".?"=GK2+L@$A;0(S#?,]TM-,9(V[4.%>AFF9 MPRP&"PXN^$NP"%,LPJQ?O&%6VR:VU'3_BEG8+UV\.1(-[%YPY+F^%)4PN*'1 M5];]4 8+#CZLEX 2IJ"$6;^4PZPV4FRIZ?>O*WCQ8'@Y4M9'HJ%N&!PZU-BD M\=N=\H=3'\-L%:6Y$_.EE'=?3^79,=O_%FG_I!";ZN<\CZ(H1%(]7/-PP;-R M@'Q_*43Q\TGY"Z'#+\)F_P-02P,$% @ T'E76+]W8L/Q P J1< !D M !X;"]W;W)K&ULM9AK;]LV%(;_"J$!0PLLT)1K (6^EY3):;!6JKH)0YFMH23RDE? ])TE%R51^E2L0ED)(+D5E31, MHF@8EJ1@P6QBKSV(V81O%"T8/ @D-V5)Q/,=4+Z=!G&PN_"I6*V5N1#.)A59 MP6=07ZH'H<_"EI(7)3!9<(8$+*?!;7R#XY$1V">^%K"5!\?(-&7!^:,YN<^G M060B @J9,@BB_YY@#I0:DH[CWP8:M.\TPL/C'?V];;QNS()(F'/ZKAJ, M Y3#DFRH^L2WOT/3H"O#RSB5]A=MFV>C &4;J7C9B'4$9<'J?_*],>) D R/ M"))&D+P4#(X(TD:0OA1<'1$,&L' .E,WQ?J B2*SB>!;),S3FF8.K)E6K9M? M,//=/RNA[Q9:IV:_<9YO"TH183FZ9XJP5;&@@&ZE!"71!?IFG8,%61/.71U.1=0*C;UC8PV37P+G$2,627*(U^04F4I#T!S4^1QU:>],BQ6_X'89? MXF'TKL\CGS#L"=;Q;]#Z-[#T](A_[PM6*+@PG;>ON__]03^/[A64\I\^4P<^ M3?4)PYY@'5.O6E.OG)VR'2)(,T1LZB&"%DOH<]%-TT/ ,Q AT0"5]5"0#%!. MGOMZ^=R-&C6D84/J,\Y-&#>$9!>+CN[_L71<&[:N#9WHOP3) 3%2]GKDU)[; MTWS"L"=8Q[-1Z]GH-=-WY--4GS#L"=8Q==R:.O::OFY:VF3,:)]6^_'XG=JW8,3T!YI0U4D*T9UU/UW]*I,9'KWL6 M7[3:Q_"@AJF7V"M;"Y8HXQNFZFI?>[6M-]_:*NN+ZW>F#FUKHWM,7<3^2,2J M8!)16&ID=#G2*2;JNG!]HGAE*Z4+KO0ZWQZN0>_2A7E WU]RKG8GY@5M=7[V M'U!+ P04 " #0>5=8=H.1XO4" #<"0 &0 'AL+W=OS!6LA'M0#0Y"GCN1I:"ZV7E[:M MX@5D5%V()>38,QB0=EV*Z.!*#1G.=Q* MHHHLH_+/%7"Q'EJN]=QPQ]*%-@UV-%C2%*:@'Y:W$FMV[9*P#'+%1$XDS(?6 MR+T<]\WX!M!-Y;!?Y&X)>!5F1E6!.J:3208DVD M&8UNIE#FIE1C-"PWJSC5$GL9ZG3T68ADS3@G-$_(3:YIGK(9!S)2"K0BYV2* MWTU28(N8D^M"%Q+()Z49)A 2,DI3"2D6R2@34K._M%R;.^!EMQ;DFN5,PSG' MM6KR/YV IHRK,YSI83HAIR=GY(2PG-PO1*&020ULC6$:6#O>A'15A>2]$M($ MX@OB.Q^(YWA^@WS\%KE;RKV7,!5SH4Q>?XYF2DO\ ML'\U!5W-TFF>Q6SV2[6D,0PMW,T*Y JLZ/T[-W ^-J7@/YF]2(A?)\1O1Y)V:O'.(O-M$7JF"+7(_=/N[Y*W> M1Y)W:_+N(?*@B;R[3][I^>$.>:OWD>1!31X<(@^;R(,]'O-7[2/*P M)@\/D?>:R,-]#ODK=Y'DO=J\EXK^?T"\$8PUR";^'M[_$&W;S;&"_[6 M&8[D[]?\_5;^;WC[P0.IR'43?W_O/^/AI^/L+L#^,*3K^&X]K$*SM\Y><^_Y M2F7*61UEZ@J6BS+XW@F-![N97&!UR^09@#VSX70SQ5SPM<7 MNN@?4$L#!!0 ( -!Y5U@ Y:S_] ( +<( 9 >&PO=V]R:W-H965T MN M*_("2BRN60V5>K)DO,12#?G*%34'O#!))74#STO<$I/*R4;FWHQG([:6E%0P MXTBLRQ+SESN@;#MV?&=_XYZL"JEON-FHQBMX /E4S[@:N9W*@I10"<(JQ&$Y M=F[]F\E0QYN GP2VXN ::2=SQI[UX.MB['@:""CD4BM@];>!"5"JA13&WU;3 MZ4KJQ,/KO?IGXUUYF6,!$T9_D84LQL[ 00M8XC65]VS[!5H_L=;+&17F%VV; MV#AV4+X6DI5MLB(H2=7\XUT[#P<)?G0B(6@3@K<[7L$#?")X32B0!@2ZG(#&AX@I] M1$\/4W1Y<84N$*G08\'6 E<+,7*EJJT5W+RM<]?4"4[4F4)^C4+O PJ\(+2D M3]Z2[IOTX'6ZJQQWMH/.=F#TPA-Z,_R"YU1Y56Z0F0-,!?I].Q>2JYWUQV:P M48SLBOJTW8@:YS!VU'$2P#?@9._?^8GWR6;W/XF],A]VYL-SZMEDS3E4$M6, MFZ/$EHB".@J(MIO@Q6:_T4R-IGXW;#(_'*9J,3:'OFQ1WL#OHEX!1QUP=!9X MOTDW.,>:V(;7*"0'A=-@&!_1]8/\($I2.UWXHQ2LY4X4"P5J<0[ ML)Z2N$O7B* R/H"Q!:C_:H=(. M*GW3PJJFQ-7*5BL$.]6?A'WN4LO<>?X19C\HBJ,3F(,.^"TM45'HAT=,[D%;T2W] M.^8K4@GULEBJ/.\Z5?N4-VVR&4A6FTXS9U+U+7-9J"\+X#I /5\R)O<#W;RZ M;Y7L'U!+ P04 " #0>5=8XJ6V>= # #\#P &0 'AL+W=OU8WO\"_V]$:_$+)' "T;_)BNYG3L3!ZSP&NVH_,+V?^): M4*3Q,D:%^07[VM9S0+83DN6ULV*0DZ+Z1S_J0+0<8/B$@U\[^*G6+VZPA(1*EXK^_N[*_#JQ6OP I "?-VRG5 ^8N9* MQ5A_U\UJ=N\J=OX3[*YP=@$"[PSXGA]8W!>GN$/C[G?=716G)EA^$RS?X 5/ MXBTEN"Z$Y#N5R1+\\U$9@&N)<_'-)JY""^UH>H->BA)E>.ZH'2@P?\!.^O(/ M&'MO;%)' NL(#QKAP1!Z^IX4J,@PH%CM&.LZ5OZ)\=>EXR$-0V\RIF34A0NP,P8P)*H?6P.4,R[)3Y.@-M(5*N$=OJN)ZI*%O!".8Q'8-2:,A M&=3P^?>$SU2N"Z$J<$>M34;27PPO"N/CW.^;!=,X">Q")HV0R:"0.UP0QD'& M\8I(L$89H40^VE@.XCRW%(T$UI$\;21/1ZW!TS&%CP36$0Z]PU'M#:[V1U9L MSB7F.=!!. ,?.!/V0]7K[YIIE$3>44Y:[(*@;=8EVNHIX"#1^T*U)10IJHB2 MGW@%2LYR5:,9?ZR*A97T(.9S5VHLM&X$#HT"'+=3@*.V"F.A=<4?F@4XW"V< MGJ>!I;H'7G"F T;CIN5@ M$_-L\2.A=<4?&A&PO=V]R:W-H965T2EYI:9.H75]X;HJ+Z"DZDS4 M4.',4LB2:NS*E:MJ"71A025W?<\+W9*RRDD3.S:7:2(:S5D%!N[9JM!FP$V3FJ[@ ?13/9?8,90\ AUX:!XFL-U\"Y(4(;?SI.IY)^)X_)D\/,W)\=/(OC8N1^]Q^G]NWO.,]O%UB92-?YKG$ M3(K\NLR43?A[R&G+.!EF-+?G0M4TAZF#UT.!7(.3?OPP"KW/[_@=]W['[[&G M&'\RY*E%119E+N Z/??#*''7 UJ37FMR2"L8TFI1X996$ ;GPUI!KQ438QZJ>B05&P_+G.=@"[Q<@PI1[LY M0W]8.>Z5XW>5'X6F?$@KWOE6_%$83OX_07>KFIC"?$OEBF$9X+!$H'<6X=G( MMMBU'2UJ6V RH;%09@'.+P46F:YC:E;_QTG_ E!+ P04 " #0 M>5=8D; 3#J4& #V-0 &0 'AL+W=O,2?2<)EE^U=M(N;T<#/)PPU*: M]_F69>K,BHN42K4KUH-\*QB-BDQI,L".,QZD-,YZ\UEQ[%[,9WPGDSAC]P+E MNS2EXNLU2_C35<_MO1QXB-<;J0\,YK,M7;-')C]M[X7:&]24*$Y9EL<\0X*M MKGH+]Y+@J^BAR*VHKM$/O"GWUAU09[F MA3S)B__HJ4SKJ<3A+I<\K3*K&J1Q5O[2YZHA#C)@_$H&7&7 YV885AF&YV88 M51E&YV;PJ@S>N1G&589QT?9E8Q4M[5-)YS/!GY#0J15-;Q1R%;E5 \>9OK,> MI5!G8Y5/SC]PR7)T3[_29<(0S2+T46Z80!^72;RF6OP<_8H^4"&HO@706Y]) M&B?Y+[.!5,5KR""LBKHIB\*O%.5B=,^Z\OBE\M?82ESL MUGWD#M\A[& 7?7KTT=N?6RMFQ_@L[*.A4V"&%HQ_#L8M,-B"">R8WVG61\[W M,>2,VC@3C7''[1BCS8?U#3,LN,-7N4N);K-O-W_SDCIWW;3I"PGQ(6 )(T P0]]1K>_( M1B_U#?F>9323[U 2?]G%42R_(KI7SSU=QHG::1/:BNTJ= F;%##=.>[G0Z?\ MFPWVAR)"EAI P@@0S!#1JT7TK"(N4BYD_*V(WXBO5%>K1(WS?$>SD"EUB=*3_#H)%EPFLS%[NG]0( NP6CU<=WJ8VNKESTG M;WK.MC:V(KJV\?BT5<:CJ7O:RN,3,; S=,:G[0Q9/0($,\28U&),K&)\+L:4 M+%)QBPDU1D9Q)IDJ1B(UDE'C&)HCBK9,A*H3:^M>KZWXKD*5,-U%)>6*5\9%G,!0H%4QT16M&PZ(/0?Z@8>JCP=E.<:1/1 M"NXJ(B3,AX0%D# "!#.DGM923T%'EU-(?2%A/B0L@(01()BAK^LT[YN.]6&^ MH\]QNDO1D@N5-\[6**2JN%<&E7985X%!:3XH+0"ED8IFC R\XQ&TJ>"!8^#^ M6#A^8'N>[+6D94!&I#K7JJRUD,[*0M)\4%H 2B-0-%-\W(B/00-TA8.2&9+F M@]("4!J!HIDR-R:/:_48ND9I4),'E.:#T@)0&JEHAU$:OX3I5Z)T8^.X=A_G MD84\B]#B#4VW[Q]>(O)B+1C3#VZKC* 6#BC-!Z4%H#0"13.5;KP>UX,-R: V M#RC-!Z4%H#0"13-E;LPEU^XNW<59$9)7\3.+4+BA8LT*H[9P-_3G&=ZJ-JCA M5-%<]]"9[>-C'P.TT "41J!HIHR-+>7:?:GOQ.7.PVA0FPJ4YH/2 E :@:*9 M=T'C:+D7L#$;U,@"I?F@M "41J!HILR-F^5:S92NP^CIR7!PY+1^]KJQE]M9 M05"S"I1&H&CF!(/&KL)VNVJQ5I%YK;\85'X'M8V@*]CA=Q9W>#'Q6A2TE]M5 M05!: $HC4#13P<:NPG:[:E%^MT[T%R"E(>2+MM>BL)Z@# M!4HC4#13S\:!PE;K8_YQ)W-)LTAKMZ2)_J+=*AVH\531##]UZK4]V'Z5]# & M#(=M*0/0*A(HFBE+XQAANV-T:WQ>C79"Z[-E(N91JSR@EE%%._Z^.IX<:P-J M!H'2"!3-U*_QB[#=+[JII_QD3**$?>^]TH[K+.#HY*$9'6L'Z@"!T@@4S=2N M<8"P?;K/#UH#=FIG";U3:\#MN\;#=X%N>YM'9*9]4@ M:3XH+0"E$2B:J6[C^^ )Z!L_!C5V0&D^*"T I1$HFBES8^Q@^URE/[FD2=M\ M2_WVL1-"3TC+(OW2$:N$\;?C>?"5^*!V3T4S9M-.'-PR= 5U&UL MK5=;;]LV%/XKA%8,"=!$5\MR9AM(H@WK@ )!TFX/PQYHZ=@B2HDJ2=G-OQ]) MR8HMTUIG],4FJ7/[OD,>'LYWC'\1!8!$WTI:B8532%G?N:[("BBQN&4U5.K+ MFO$22S7E&U?4''!NE$KJ!IX7NR4FE;.8TW\ +R<_W$U2DA$H05B$.ZX5S[]^EOE$P$G\2 MV(F#,=)05HQ]T9,/^<+Q=$1 (9/:!%9_6W@$2K4E% 5FA04\,OH7R66QVB=!6><^0'ZJ/P5 OU:Y9 ? M&W!5Y'WXP3[\AV#48@K9+0J]]RCP@M 2T./WJ/M&/;"HI^/J?^#J%GE6]2,T M89^,T-@+SR:C+(E4ITH*I!A&?7(R @*E1&24B88#^ON948K4QM]AGO]C2T3K M*+([TL7D3M0X@X6CJH4 O@5G^?-/?NS]8B/Q1QI+?Y"Q(X*CGN!HS/KA;L\. M=_M[M((-J2KU#;$UD@6@5\#<1FSK8&HTA8Z=221@DQT+I M:*P7,C'IF9B,,G&?YT0C%TC=':KZ?FV(:!=LH%M;\0&*)>1(,C6\*96$JC>:&RVV MQH2C+::-E:/I*?I9D PY.I4*9M-@0-$HB LI2GJ*DE&*/C&)J2X/9RH%J,+< MU8@:.&&YC8OD!&7DQ<,B<2ID*25I,EY*CC#.>HRS\3K8<*ZAU8SO#\0YP#9T MLY/ PUDPR.'CJ9#O)9/A81B-\\),^]Y;\^-=>!]0$$+U7T[Q1F% ZH ML A%4>(/J!B/]5(N#AI!?YR+ BLF=(?W=LS_[\;H7$S_HP98Q"Q%P"85AN%@ MY[L'O6\)?&/>$"IUK*EDVT?VJ_T[Y=YTYX/U!_U^,3WUFYGV\?,1<]4<"+4G MULJD=SM5MQAOWQ/M1++:=-@K)E6_;H:%>H,!UP+J^YHQN9]H!_VK;ODO4$L# M!!0 ( -!Y5UBV][W@: ( -4% 9 >&PO=V]R:W-H965TF;$!0,U$M M2+RIE1;4XE9O8M-JH)5W$CQ.DR2+!64R*G)_=J6+7'66,PE7FIA."*I_KH"K M?AE-H_W!-=LTUAW$1=[2#=R _=Q>:=S% TK%!$C#E"0:ZF5T.CU99<[>&WQA MT)N#-7&9K)6Z=9L/U3)*'"'@4%J'0/&WA3/@W $AC;L=9C2$=(Z'ZSWZ.Y\[ MYK*F!LX4_\HJVRRCUQ&IH*8=M]>J?P^[?!8.KU3<^"_I@^U\$9&R,U:)G3,R M$$R&/[W?Z7#@,'O,(=TYI)YW".19GE-+BURKGFAGC6ANX5/UWDB.2?QQ8C.+NXW*&M EKZ"-HT)1=*VL:0 MM[*"ZB% C-0&?NF>WRH=13R' MA]5SC&CVCT[3OW2*#UI-@-[X@6)(J3II0]<-I\/,.@VM^L<\#+P+JC<,&7*H MT369O$*9=!@B86-5ZQMWK2R. ;]L<.Z"=@9X7RME]QL78)CDQ6]02P,$% M @ T'E76'S]U^Q&ULO5A1;]LV$/XKA%8,+6!'(B7+4F8;2)P5+9!U1MUL#\,>:)FVB4JB2E)Q M\N]'THIDV;2<=>Y>;%&Z.W[W\:/NQ-&6\:]B0X@$3UF:B[&SD;*X=EV1;$B& MQ14K2*Z>K!C/L%1#OG9%P0E>&JY,1N;>C$]&K)0IS;/MR1EV[$#G9<;G^EZ(_4-=S(J\)K,B7PH9ER-W#K*DF8D%Y3E@)/5V+F! MUU,8:P=C\0'X5@5U MZCFUX_[U2_3W)GF5S (+,F7IGW0I-V,G.GBH@]AT%TP@%5#NBU#G[EX)M$=\A,6G=8XLF( MLRW@VEI%TQ>&&^.MLJ&Y7L:YY.HI57YR2*^![/8 \Y%O M?R+>C1!$6M/8^05V/[WYKD6!$S)VU.X2A#\29_+S3S#T?K$E=:%@K13].D6_ M*_KD]X)PM9[Y&J1:"P"?3'D79VCBZ-?#X\0/(S\Y$>$YB+LHX=[D@1_%!PB/C?P@".T !S7 02? +TSO%0-OV8%O<(P/ M(C0X &BQ0L/0LR,,:X1AIY2G)>=J1]M0A9?4\H6"M7(HV ;;@BRX0(>0>P;%:^[]M1Q36JN%,3GUB>G)9% M?$E97"A8*TWH-57.^WYA5+XM;M%@. @.EL!J%P4#9%\$N%>#X?>*H_)LS>G# M*#J$9C%#T#^%K"E_L+/T[+_60$KQ@J944F*OZ^CHQ=\/ N@?L6BUB^/H!-:F MCL'N0O92(TQ+TP.F(^VS5?]!83=UO ?F$DO3U^@N9V=/57XS)JCI:/[Z]4GJ M%G6A^J![*N3?UD2[83_0UH\CJ1M& M-1DH&#?SQ$[6I;MH4V-DA="JR MJ5>7XOL,%I-ARO)U7Q*>G17GA:*UF6N:']C=_9P6Z>5YZT;RZ;Q6>JJJ" &2 MMM"LK/XO<[4Y;]HZV-W7-6KENMXH3ONE./^=4D7=+X(!"F)X6"N/S?Q!>.I; M!39M'^QLMRJE_'O4\1&<$,'#3M5B%43AX0>@NW=FH0^,?L-\37.A,*R4FW>JP4D0( '$( 9 >&PO=V]R:W-H965TA(]X+>:]R1 T/!>-JYN5:EQ>^K](<"Z(&HD1N M[JR%+(@V4[GQ52F19$Y4,#\,@HE?$,J])'9K-S*)Q58SRO%&@MH6!9&'*V1B M/_.&WG%A23>YM@M^$I=D@RO4/\L;:69^XY+1 KFB@H/$]WK-D59X.CZZ7SMV MPW)'%,X%NZ69SF?>N0<9KLF6Z:78?\::9VS]4L&4^X=]M7<2>)!NE19%+381 M%)175_)0Y^%$$(X?$82U('RJ(*H%D0.M(G-8"Z))$DNQ!VEW&S<[<+EQ:D-# MN7V**RW-76IT.OF*)@<*/L#*U$>V90AB#6X1?J L@/ ,%E2E8LLU+(E&.%N@ M)I2I=[&O30#6QD_KPZZJP\)'#EM@.H H> ]A$$8=\OE3Y$,G#]MRWV W[&'# M'CJ_Z!&_6_>,,3/TESN4IFAAB;;R*=^;)CB' M0G"=*QB&D)%#E].\WVE4.?50C1JJ4:_3->6$I]C#U*\/NR*I$)XDA+ W&2VF M<<,T?F[5ME[0+LKQ:Y;I*YFUX"<-_.3%95HY?'0.MHGMDF 0C&)_=PKQGTVM MX*9-<-,75MNTZ]1IT/H-_XGT>9HJ7*1+8V+L%@:IZAK!I< M-=&B=#WB3FC3<=PP-]\$*.T&5=8 M)+,,:Q(# #,"0 &0 'AL+W=O4( ;IU+BQKZ- Q>N GSEL^$X;*25+2I]5 MYRZ9&I9*" J(A6+ \F\-%>*2;+]#J&2J^F!9<_Z)-&VL9**ZYH&4+EAF4.6G^\4OKPP[ M]H\ G!;@' *\(P"W!;AO!7@MP-/.-%*T#Q$6.)PPND%,14LVU=!F:K24GQ.U M[ O!Y&PN<2+\!M(TCJ[00A944A> :(H6=545(!=7X +-,<_0K2P/=$>:,E/K M=1F!P'G!/TCHTR)"EQ M$I%Q])DDD.P3F%)8I\[9JILY)QDCB ?(M3XBQW+ES_.&T^OG5*?*-:]P#%-#'ALV)(5MMXUJR?*#=SQ?E34QV6-["YJ3]ZPDS<\*>\V)YC$??)2/0,G MQ#7,_E[:GG^@K2?(\>P#:7U!@=>OS.^4^2OUS;I!SDD5G(MOS.>A\#MZX08Y72O"Z M=&UKY!V4RNNHP!J.#DKE==#8\<8'I6+NW',EL)5^+W 4TYJ(YE+H1KLGR8V^ MB0_&9_*ITKPL_M$T[YQ[S%8YX5)T*BFM02!KF#5OAZ8C:*5OTR45\F[6S4P^ MMX"I #F?4BJV'?6![@$7_@502P,$% @ T'E76#@NC"HH P VPD !D M !X;"]W;W)K&ULK59K;],P%/TK5IC0)L'R3K/1 M1EI7$$-,3'OQ ?'!36Y;:XE=;+<=_'IL)\O:U"U#VI?6=LXYON?Z=?LKQA_$ M#$"BQZJD8N#,I)R?NJ[(9U!A<,5EJK+IZZ8<\"%(56E&WA>XE:8 M4"?KF[$KGO790I:$PA5'8E%5F/\>0LE6 \=WG@:NR70F]8";]>=X"C<@[^97 M7/7<5J4@%5!!&$4<)@/GS#\=I1IO /<$5F*MC;23,6,/NG-1#!Q/!P0EY%(K M8/6WA',H2RVDPOC5:#KME)JXWGY2_V2\*R]C+."(:K=1TPR33L)5]0O6RWTBNOA+%D]E7 M4$D3Z#VZ41NJ6)2 V 29073.A$2'(Y"8E.)(0>YN1NCPX @=($+1[8PM!*:% MZ+M2Q:'5W+R9R8TP_0):-R)M!'6D"Q*> J ZV+X,G%,-BK.(+\&(7> M.Q1X06@)Z/PE=-_0 PM]M)_^!=-CY%GI&V["=DU"HQ?N7Y,?9V,AN3H8/VTI MKB4BNX2^+$[%'.OO$3[X,M/:\I-GHEL8W416WJHGWJV;\>-!1/X'3,63!S9O:2MEW2O MEULFRN7E< MQTRJI]HT9ZKZ JX!ZON$,?G4T1.T]5SV%U!+ P04 " #0>5=88>=4^L # M #E$@ &0 'AL+W=O@G2K=6T29VN6K>[UV[B)-8 <[:3;/_]V89"BJD[>E_,R.'TAG*-5Z*U8*\Q<3<1) 4R>*$!= ?K9@K@KB(W1ELS8NL82%PO.CH#KWDI-'YBY,=7*#:WU M;;R37%VEJDX6-T3-@0!OP9UZ0-;[D@"V 9^PW',JJ;J@6J8+N*'XGI;MR=?7 M1&):BC>J[NO=-7C]Z@UX!6@-ONS87N!Z+1:A5'!ZB'#5@;QK0= 3(-=D=0'B MZ ^ (A1/E%_]3#DTY>AQ>:BFI)\7U,\+,GKQ$WI_-X1C2>MM:W_24*N03"OH M]^]2-'A%EH%ZP03A!Q(4O_\&L^C/*7LO)/;(;-R;C5WJA9JS9,I@6Y6;*KT> M' J80CV]AU-RI[8G>=*3)\^1IU/D;55V2@[S%([(G=J>Y&E/GCY'GDV1IQ9Y M/H^S$;A3VA,\Z\&SY\#S*?#, H]GLV@$[I3V!,][\/PY\-D4>&X_*^E\/@)W M2GN"SWKPF1/\RXZHA-Y(PJ?P9Q8^BI/Q ^,1'Y[>\HAY">]0?L=G^=H_+"YQ_;U-B0W=$?W M>UKC>D4(PR'%H5^,0SO'\]Q:O\W5-I&Y(U9EOBGDG)*G.X(WA-N.Z@KF\8DP\-O=/1 M[VP5_P-02P,$% @ T'E76&[![!&R! 8!D !D !X;"]W;W)K&ULQ5EA;^(V&/XK5G::6NG:Q$D@T %22^YT-ZVGJMWM M/DS[8!(#5I.8LPV4:3]^MI.&!%)?F3SU"SC&[V._CU^_/*\SVE+VR)<8"_"4 M9P4?.TLA5E>NRY,ESA&_I"MV\8X.L\1VQW@S.Z'3O0>>ZX)XNE4!WN9+1""_R Q=?5'9-/ M;HV2DAP7G- ",#P?.]?P*H9#9:!'_$'PEC?:0+DRH_11/7Q.QXZG5H0SG @% M@>37!D]QEBDDN8[O%:A3SZD,F^UG](_:>>G,#'$\I=DWDHKEV!DX(,5SM,[$ M/=U^PI5#/867T(SK3[ MQT9#!R1K+FA>&8B309,3H%C U6J*IAB936TOW2:'V_4$P^2N1 M=F+R(&CR>'$CF4O!E.8RG#C2&W(!OB#&D-H58QV;S7U%Q";Q.\Y8W0;TQ@<8+7\"[ MQUPPD@BY+USM41?#1@25,:[X"B5X[,B4P#';8&?R\T^P[_W2Q8Y-L-@26(NY ML&8NU.C!2R&]1 Q?S(Y#^EK&<[' ,FL),-N!YK@[M-/=UUO$4O#G;Q(2?!8X MYW]U\1[:Y-TF6&P)K,5[K^:]9XS8&,\Q8Y+,I$%Z%WTE3*1AU/_29N+[030< MN9LF+\>CX##P^^U1<<>H?N#!>E3+DW[M2=_H29D4R\AH.@/PDVKC+J=*Q'[3 M*3@X6.WT>!"$ 3QPR;BV_[B'4>UY9/:\<28R@F8D(X)@#E:(I%U>1T<.11X\ MW$GCE*=&N"6P%CN#FIV!D9UO6D5(:M &,ZF*P$8F:5(LP HS0CL)&AS%9Q > MQX5QVE,9L@368FA8,S0T,C2E7("""K"3DI7AA"X*\C=.WP.!6=[%CQD.2AS$ M0 _DI520HB%%NRZU,34"G4JA); 6A=#;2S+/Z/5'1!C8H&R- 9U+%O="0)U. MKJ/N4#%5DLL[3JW#:.@?A%O',!C!(#I(1%UHX4!IJZ[D"AN2$QK]^_!]3<0. MK#)42+4$8:>=K 8=$B$#RM2G%;:&W"]F(< M&C7GT6$'_X!;4I!\G3)=_T== ?>%!317%EUY #V=D@=L MEA%3JVBQ+;0VM_NR! [>.@_8K%"F5M%B6VAM\O<5#S37**_. V:8T) 'K-8V MMM!*NMS&U7..V4)?X7.0T'4ARJO;NK=^37"M+\+Y04U0OU29 M_ M02P,$% @ T'E76'T4&.L ! <@\ !D !X;"]W;W)K&ULK5=M;Z,X$/XK%G< M!!5PSG:2O7]_MJ$$B,-R4EJIY>69Q_.,Q\/,XD3H&]MAS,&/JJS9TMAQOK^W M+);M<(682?:X%F\VA%:(BUNZM=B>8I0KHZJT'-L.K H5M9$LU+-'FBS(@9=% MC1\I8(>J0O3?%2[):6E X_W!4['=5'AFA6D M!A1OEL8#O$^A)PT4XJ7 )]:[!E+**R%O\N9+OC1LZ1$N<<8E!1+_CGB-RU(R M"3_^:4F-;DUIV+]^9_^LQ LQKXCA-2F_%SG?+8W( #G>H$/)G\CI+]P*\B5? M1DJF_H)3B[4-D!T8)U5K+#RHBKKYCWZT@>@9P."*@=,:.&,#[XJ!VQJX"C7L;+6FU7CC7/%&^B KZ3F.P;^J'.<#PDL(:W3Y[SK6SF3C"G.3.#: MGX!C.Z[&H?4<=>VRT95_"M+K@VN(VQ MIS>6%>2>[5&&EX8H$0S3(S:2WWZ!@?V[+C"W)$MO1#8(FM<%S9MB3U9X6]1U M46_!AZ)N4_.C+GP-3:!H9+T\)B%TPUBDS;$?& W,\[S8'L)2#2RT871F&XCQ M.S'^I)@_*:KE:?N)%/]B<2>*0B<<2=' ;!=Z\4B*!A;X@>?II02=E&!2RHNH M'3]7$ERL?>=$?A3X(RD:''1A'(YV+]7Q^:'G^GHQ82CIB*1@:H P3$MQ*#SZB@X 65!ZQ3%]^RF-Z2 M++T1V2">T#XW#/;_***%,T M,#\TKZ0\['5"<'9IG2FK[:U@SQ-H"X_'=58+A)'IC@^!#AA#TX57Q#EG<<[< M8CM3FW/IB1>9<326IL$%KADZ8V4ZG&_"*Q\1>&Z)X&3S,*J\,\6YFC"+%'+C MWL]8J,8F"$T[&@O5X/RHG^Q#H> TIS/5 MP(:GL]%E]8:1"M.M&NH8R,BAYDW?WCWM!L<'-2Z-GJ_D0*F&G#--,XU^1534 M( 9*O!&4MAF*!H4V UYSP\E>C3ROA(L!2EWNQ%",J02(]QM"^/N-7* ;LY/_ M %!+ P04 " #0>5=8-O[P?H " "+!@ &0 'AL+W=O- MA6-GMM/"OY_MI%D+*>*!E\2^ON?<#]O'TXV0#ZH$T.BQ8ES-<*EU?>YY*BNA M(FHD:N!FI1"R(MI,Y+"3;_D,^S8A8)!IRT#,;PV7P)@E,FG\[3AQ']("=\=; M]J^N=E/+DBBX%.P7S74YPV<8Y5"0ANE;L;F&KIY3RY<)IMP7;5K?TPE&6:.T MJ#JPR:"BO/V3QZX/.X!@? 0=H#P.2 ^ (@Z0/160-P!7*N]MA37AY1HDDRE MV"!IO0V;';AF.K0IGW*[[7=:FE5J<#JYJFHFG@#0'#@45*,%(QP=IZ )9>H$ M?4;W=RDZ/CI!1XAR]*,4C2(\5U-/F^B6P\NZ2/,V4G@@4A"B&\%UJ= 5SR'? M)_!,VGWNX3;W>?@J8PK9"$7^)Q3Z8320T.5;X(&#AP/P]'7X=\)'R!^$[U43 M]3L1.;[H -\M:"K!W"B]W0N%?E\LE9;F;OP9ZG?+%P_S6;TX5S7)8(:-("B0 M:\#)QP_!V/\RU*OW)$O?B6ROCW'?Q_@U=K.MA;'D*#.'3=)EX^2E-J=ZJ(4M MU<11685<)Y/(;.9ZMS,O?8)Q?+;OE+YTBJ*X]VD+\7:N:05RY>1.F40;KMM3 MWUM[1;UP0O+,/C=*VPKC?YI6IF^(7%&N$(/"4/JCR2E&LI6^=J)%[<1@*;21 M%C&PO=V]R:W-H965T)- DSVEEII&K:F7EVPTV"!NRL[32=?[_&4$+ B:HJ+PF&CU/;.=>5R Q65MWP+3%]9<5%1I8=B[S"9\I\J"P;U 0\GW4\=W7D]\*]8;59]P9Y,M M7<,#J._;>Z%';J>2%Q4P67"&!*RFSD?_+O-)33"('P7L9>\8U:4\__@;:@L-9;\E*:7[1OL''JH.5.*EZU9.V@*ECS3U_:1O0( M?G2"@%L"'A*"$P32$LA;"4%+"$QGFE),'S*JZ&PB^!Z)&JW5Z@/33,/6Y1>L MON\/2NBKA>:IV1>VY!6@1_H"$MV@PQ!]>M'/E@1T-0<&JT)=HZL,%"U*>:V! MWQ\R=/7A&GU !4./&[Z3E.5RXBKMJ59VE^W\\V9^?&)^'Z.OG*F-1)]8#OFQ M@*N+Z2K"KQ7-\5G%#):WB'A_(>QA8C&T> O=-W1LH6?GZ?]2=HL\*_VH&M+= M'V+TR F]Q4X(8.K.UMF&&=B9=6#P\Y[>-;[@Z(*;,X;6M2;+8P(&1@?@U(O\ :^QZ"8A,1N.^IL1^=; MSH7.5V8S'HVF\\-D:'P,2H,!)AMC L^SVXX[V_%9VX]]&B91_&1#-V/,^K8J"\Y/PC =EF;!:;7H1'&'98=_ M]AO=%O>V3&RE^M]"$J:CIVR,\O'X';'!@C0D4S3:B&2B^-0OK M)Z[T,MT<;O36"T0-T-=7G*O703U!MYF;_0]02P,$% @ T'E76 V1DS#W M P Y@T !D !X;"]W;W)K&ULK9=M;]LV$,>_ M"J$610+,D:AGI;: U$:Q MT6).WVFI9IFZ@DNB1E)_WT.\J*;$N4E@%Y8^OA M[OB[(WE_:GK@XH?<4JK04Y&7F;=X=LY#K5#;?$WHP=Y=HUT M*DO.?^B;+ZN9Y6@BFM-,Z1 $_O9T3O-<1P*.GTU0JQU3.YY?OT3_7"_\-6:CNS8@NMZ)I4N7K@A]]IDU"@XV4\E_4O.C2VCH6R2BI>-,Y 4+#R M^$^>FD*<.6!_P,%M'-S7.GB-@UB2KTUH01=*IX AH?E8"W#/Q4^J7,>$'1-_)$)9J@/V'A+.B:"D%7Z/0.W4D);ZZ^,K)D.5// MU^AJ015AN;P&K^^/"W3U_AJ]1ZQ$W[:\DJ15T#.*; M@^AM>"MW)*,S"_:9I&)/K?3#.QPZ'TT9OE&PBWR]-E]O+'KZE<)^0'DSQXP: M9_ 8(JI#Z!ZQ3['CQ7AJ[\_3,%E%GMM:7?#Y+9\_RJ<78D:$>(;N=2#"O,*. M(<*SD5W/C3MX?2,O#CTS7=#2!:-T=UDF*E@LL&>@QTJBNY0),.B-C;$;!1U" MDU7B!V;$L$4,QQ%SZ-JDS"B""J(5KY9J7>702C->E-1\+_4E@H34]P?+4FZ*]-@Y+@#1$E+E(SO&PZ%U-K6Z68F MR*0W?N2$3M*A[%OY7H('9AP[)RUR7M]P7_K0L['I-I'>J.N^5;3+O,\T&/]' MZ_A9,9TW*Q4I-VR9FWMO$^:\[A,_B7"W>9CL/-#$<&""3H*(1_4GK4]Y$[Z> M5" 4]1HR<[K]\9/(#[N8!C,0DQ /8)YT#(\+V8+"-&6,' ^*T#-(P85BOP9[ MM2>3Y_8DWV 5.C ?.!_BD;WA%^RS0[C^ OJ#B TK)/BN.-XKOZ7+[D"D[Y]>46/L2H MT ;P?LVY>KG11_WVTR[]%U!+ P04 " #0>5=8&G.',RT% 7'P &0 M 'AL+W=OW, M,9!8&I:A[8*FV1Z*/=#2MDL&;3ZMDUFTUI*3)2P#5#O,QSS!XN(:/;<\NU'A]\)JNU4 _LV72# M5W #XG9SS>2=W:*D)(>"$UH@!LMSZ\(]BSU'.506?Q#8\KUKI+JRH/2[NKE* MSRU'1009)$)!8/EW!W/(,H4DX_B[ ;7:-I7C_O4C^B]5YV5G%IC#G&9_DE2L MSZVQA5)8XC(3G^GV5V@Z=*KP$IKQZA=M:]O0MU!2*N @+/)LRND5,64LT M=5&Q7WE+ODBA!LJ-8/(MD7YB=E4D- ?T!=\#1S^A3Y@QK%*'WD8@,,GX._GT M]B9";]^\0V\0*="7-2TY+E(^M84,0,'82=/89=V8]T1CKH<^TD*L.8J+%-(N M@"TC;\/W'L._]+2($20GR'?>(\_Q_(& YB]Q=RMW;\ ]TKO_AHL3Y#SM'K_$ MW:O<70T9?IM+O\+SG\TEB@A/,LI+!NCKQ8(+)B?D7T,)JQ⃟I<[X!B=P M;LDRQ('=@37[\0(MLD6&02+#8$UDE+T*8ET*'+0;8$QB!%0B8F(WA! M,B((\/>H #&4DQIN5,&I0G\W\\;^:&K?[7-]:!2.)W[7*-(&=BR'AL Z')ZV M')YJ.8R72ZB6%%F!JD&NN)25"M &6 +%((\UI.OL<>2<.*/3'I.#9NYDTN-R MT,P+W*Y9K.W'*UD*6Y9"+4NW!8.$K@KR3S/:%E# DHC!4AT>#" W]'L#:'YH M- G#'C$#0,ZH3\N0D:J9=P/=';7=';VNNTBLL9 [E#)+$1\X0 M)W5[X7Z40>#T.#DT&@>]V1EI S]VXAD"ZW \;CD>:SF^VDTWN3?%F2I<2*[^ M#.J<$VE"*C:)%1M-@46C=+>PK% MU4Z:3U(NTS93F2X!Z5';K)[*]=?JQ=ZKBE5PN*/T^J7*I)2+C*+%IM"ZE.^DH:O7AC="Z4"U)\UH@C/TK62$ MIZ3Z$#E(MR&)UB3&)%ID%"TVA=9-S$Z-NN'_6+&T4O?H+)E$BXRBQ:;0NEG: MB6A7KZ)?5;$&A/+HH&29%,&14;38%%J7\YVH=O6J6NVJ$@8I$1VN!ZD^%-%! M7T/K6SN:::-RVQ1:E^F=X';UBONYT8UXN?@&B4""(KC?$&7XQ+(Q.1SS7O][ MF3Z:HS-A5&N;0NL>U.S$MJ>5B<]GHJ#BY=EH&MO_;A3TOMC.]0$=FPRC:+$I MM#H9]MX!8 YL59V\2GYI68CZ,*U]VI[N7E1GFKWGE^Y95)_1[F#J(^./F*U( MP5$&2PGIG(SDWH+5I[#UC:";ZIAQ086@>76Y!IP"4P;R_9)2\7BC&FC/PF?_ M E!+ P04 " #0>5=8B<2T9J@# ")"P &0 'AL+W=O_+O(2:R&N^ ::_K+BHB=)#L?;E1@ I+*FN_!#CV*\)95XZL^_N13KC6U51 M!O<"R6U=$_%] 17?S;W V[]XH.M2F1=^.MN0-3R"^K*Y%WKD=RH%K8%)RAD2 ML)I[M\%-%F!#L(BO%';RX!D9*TO.G\S@8S'WL(D(*LB5D2#Z[QGNH*J,DH[C MWU;4Z^8TQ,/GO?I[:UZ;61()=[SZ1@M5SKVIAPI8D6VE'OCN [2&QD8OYY6T MOVC78K&'\JU4O&[).H*:LN:?O+2)." $\0E"V!+"/F%T@A"UA.AG":.6,+*9 M::S8/&1$D70F^ X)@]9JYL$FT[*U?6!'2Q 8KJB[1 ^2:MZ7QPQ=O+E$;Q!EZ'/) MMY*P0LY\I4,T$_EY&\ZB"2<\$4X0HD^X"(\JYA! M?HTB_!:%.(P< =W]##VP]-!!S\[3_R3L&F$G_FI22!1:00&"5$@JHK:*B^]($ 6N-#9R$RMGJNES&N @',W\ MY\/\.% 13I)C5.9$C<(.=>1HW#D:GW7TJ"T 4N8DOT5,7QE\A=ZW]I;-&7;Y M:D3C@UC">!KU; U!T73< V4.4(*G;E-Q9RK^@2F>/UV9REX@O?5-2;+5Q^4D M'LQ_%08)[EEQH()1,NYY<:*B$RLTZQG RC M2'#%HVCF:GG5T5Q*VUC>'KOI;)O3]L&;T/[U4QM>& M2WIJJ::#8.)QV+,UQ%Q-^J:&F"1V.THZ1\E91W^I$H0KY&0P51 E_9@=((Q[ M.S ;@L;3$U$'^/4>Q^?K&5=Z9]'F?C#IA^;^=M[!>%!_HG$RZ7EQH/2&P4'/ MC0NFSU/_W/L'/4H-8FU[/:G/]):IYC;OWG;]Y*WMHGKO%Z;/M+W/JTS3I'XB M8DV91!6LM"2^GNB"))J^KQDHOK&=T)(KW5?9QU+WRB ,0']?<:[V S-!UWVG M_P-02P,$% @ T'E76,:4WKR4 P ( L !D !X;"]W;W)K&ULK5;;;MLX$/T50BT6+9!$U\AQUA801UUL%RT0.&WWH>@# M+8UMHA2IDI2=[->7I!35D6@C"_3%YF7.X9P9*,CGWMDK5 MU[XOBRU46%[P&IC>67-18:6G8N/+6@ N+:BB?A0$J5]APKQL9M?N1#;CC:*$ MP9U LJDJ+!X70/E^[H7>T\*2;+;*+/C9K,8;N ?UN;X3>N;W+"6I@$G"&1*P MGGLWX74^-?;6X N!O3P8(Z-DQ?EW,WE?SKW . 04"F48L/[;P2U0:HBT&S\Z M3J\_T@ /QT_L?UGM6LL*2[CE]%]2JNW 40=(!H"DB. N /$+P4D'2"QD6FE MV#CD6.%L)O@>"6.MV$$O6(WN2@,*'RK3&[S]&;UV_1:T08^K3EC<2LE#-?:8\, MKU]TIR_:TZ,CIX<1^LB9VDKTCI50/B?PM91>3_2D9Q&=9,RAN$!Q<(:B((H= M#MV^!!Y:>.2 YZ?A_V!V@0(G_)F:N,].;/GB(WQ+G0Q6Z/AC^TCX>IR@!3!8 M$R7/T+N'@C8E81MT4_&&*8GN0.B4,;.DN-['^@)UL"6H1C")OBXYI4@_H3T6 MY3=7!EL/$[>'IBI=RQH7,/=TV9$@=N!E?[P*T^!/5_1_)UG^F\B>92;I,Y.< M8L\6F&)6P!E:P88P&V*=G1H$X:4KBBW;Q+*94KS+IFDZ\W>'P1G;A,$D?&Z4 MNXS,7=LYQ%SV8BY/BKDI2V(NF+0EM$3ZJBE]1VHNNV4!%"N]H6^1VH*N2T( M4^@1L'");4]+#WQ,DLE [-@FC(=:'391XI::]E+3%TK5G\R!2I- G3]A=3FK M63IR*)H.A8UM!GG.QQ:!6]2D%S4Y*>H#KB48]Z7"JE%V2$E%E"T;3B63D0_G MDZ$2ATT8Q ,Q#J/DTBWGJI=S=5+.$LJF^)6D_Y.@JQ.A;46-+<[#>#H0Y3"* MC^1HVHN:OJQ@ "M/EXKI^(6G\2#LMV.C43W)'42']:25X1_T#A6(C>W!)"K, M%Z3][/:K?9MW8[N;P?I"MW]MM_:+INT=/V*A:Z1$%-::,KB8Z' MVPYEQ97N=^QPJUM8$,9 [Z\Y5T\35=8Z3.Q M)S8" J!0 &0 'AL+W=O$E]MAS MSIR9S#CIA7Q4#8!&3XQRE0:-UNTJ#%71 ,-J(EK@YJ82DF%M3%F'JI6 2P=B M-(RC:!DR3'B0)>YL)[-$=)H2#CN)5,<8EK\W0$6?!M/@=+ G=:/M09@E+:[A M /IKNY/&"D>6DC#@B@B.)%1IL)ZN-@OK[QR^$>C5V1[93'(A'JWQI4R#R H" M"H6V#-@L1[@#2BV1D?%KX S&D!9XOC^Q?W*YFUQRK.!.T.^DU$T:O ]0"17N MJ-Z+_C,,^3B!A:#*?5'O?>=Q@(I.:<$&L%' "/)%#V2UMNPV8U+U:&-.,+M3SEH:6Z)P>EL#ZV0&N<4T %J4VVMT%OT M@*7$MESHU18T)E2]3D)MPEE06 S4&T\=7Z&>QNA><-TH])&74/Y-$!J=H]CX M)'83WV3<0C%!L^@-BJ-XAI37>X-W-A9AYGAG5WB'S)$O!N$U^K'.E9:F97Y> MRMNSS2^SV3%:J187D 9F3A3((P39RQ?39?3AAM;YJ'5^BSU[Z%@.$HD*F<&T M/\FH'2JA+FGU;$O'9B?TF,V2\'A!P&(4L/A/ ?*Y=VXI6/Q307C6OPQD[:94 MH4)T7/M6'D_'AV#M^__9W;\B]UC6A"M$H3+0:/+.1)=^,KVA1>NF(1?:S);; M-N8Q VD=S'TEA#X9-L#X/&9_ %!+ P04 " #0>5=8\+'9 TX& #J*@ M&0 'AL+W=O%>QLMN5\=SJ?L]66Y D[H3M2B$]N:)DG7+PL-W.V M*TFRKH/R;(X M^)!NMKQZ8[Y<[)(-N2+\T^Y]*5[-.Y9UFI."I;0 );DYF[V"IS$.JX :\7M* M[MC!-:BD7%/ZN7IQN3Z;.=6(2$96O*)(Q)];%LW?Y+Y-Q$$ ]$<"4!N U !W) "W ?BQ 6X;X-:9::34>8@3 MGBP7);T#9846;-5%GKW@I/DU%'%]^(#M:\N0Z(^"*;,2$<@9> M@JOZ*4B_D#5XDQ9)L4J3#%P6S6-63=?SF/ DS=@/ OSI*@;/G_T GH&T !^W M=,^28LT6O(KB^9'_I9J*YDZN_4]5K3MDN69&S MF6@FC)2W9+;\_COH.S_JLFB3++9$ULNPVV78-;$O?RHI8Z*;U4G5/L%-?%#' M5RWU=AGZ,,#18GY[F)$A+ C]( C[L%@##)O5Y20^8?#,(-$70414.4CW#@*H)T*.AX>CU^I\(3H@_%()%TA4A0Q1&V(6*$ T*NU&H%Q)T0@*S$,8(U\Y!,+@=A('C M14@9_! 782^H>EMO],9A/+&&PDYD:!1Y^=L;G4)CT-2&8Y,LMD362U;4)2LZ M6DN/;&;8)EELB:R78>A(@^-\8U-O"7K5'HAJ]Y7JT^$B+QRT=1TNQ $:Z8/P MP*M!HY3SCU?:\1NCIDZ]5;;8%EL_8TAF#!VMP-I;V4JS3;;8%EL_S=*90J,M M>TR-X4%-((1"QU5K3(/#R%._QF,-#H9>%(W5F+2 \"L>\/4[[?B-49,GWR9; M;(NMGS%I-Z%WO!HS6MO):;;)%MMBZZ=9NF!HML&/J+&A:T4^CEQU=:+!02_$ M QNIPV'_\'NQ+T7Z8&@VPN]VI$RJ)P6P=L]!*\>2C6U%VV2+;;'U$R@]-@R/ M5W)6K;E5MM@66S_-TIU#HS6=NI)NV?IUY3L>5.M/AW,#)U+K3X-S'6>L_I"T MQ,ALB8?U!_X%(PLW,]74Q\,J6VR+K9]&:<<1/%H5(JL>WBI;;(NMGV;IX9'1 MO#[BBZ\E^.H"3H?3+>!T.,,"#DF?C,P^>6)#04.3ZXN&$JJR-+ 0>6H[T< " M&.*132TD'3,R.^;Q;:TV4#']+O94 3J G#0W,Q0-8K&/S$((CHJ2Y1&9S:6B; M0]\GFJ:PB*H #0Y#1UWOQ>:!//%!Q-)MXB>XS9%M%C/5Y!\FK;I-6VS]-$JW MB8_G-K%5MVF5+;;%UD^S=)OX6]TF'KI#[3:+!J?=9M'A#-LL^."\@%6WB8?^ MT(,^QJJL(VF5+;;%UD^S MM)?8;"^G-I>A-WP)G2!43UYWA [$P:!#:G 01J&ZS6 >R-09G!\< LQ)N:D/4S*PHON"-T?FNG>[ YNO MZF.*ROOG\#1NCEU*FN84Z-NDW*0% QFY$93.22 JO6P.5C8O.-W51PVO*>&ULQ5I=;]LV%/TKA%<, M+;#&(JDO9XZ!)FR[#NU6).WV,.Q!L1E;J"QY(IVTP'[\*%D138EB;>0.!H+$ MDN\]XCWDL0^9.WTHRB]BQ;E$7]=9+BY&*RDWY^.QF*_X.A%GQ8;GZIV[HEPG M4EV6R['8E#Q9U$GK;$P\+QRODS0?S:;UO8_E;%IL99;F_&.)Q':]3LIOESPK M'BY&>/1XXSI=KF1U8SR;;I(EO^'R\^9CJ:[&+YUN.;K^AM[Q8ELEFE<[1^V*>U)/UG'&9I)EXH4(_WS#T M_-D+] RE.?JT*K8BR1=B.I9J<-4CQO-F()>[@9"!@6""/A2Y7 GT.E_PA0DP M5E6UI9''TBZ)$Y'Q^1FBWD^(>(1:!G1U2#JNTXDEG;G3?TWR,^19TXUJ:#M1 MM,:C@Q-53XE =V6Q1J^_2E[F28:NZB7"2X$4[6J&\N7+]TI("_1*"*[F\J_W M"@>]DWPM_K9-RNZAOOVAU8?.N=@DC_;"(4$8T!@ M!ME^2[;O0I^]+0LAU,?:CG(;;[O\J,ZO/EOO9W&((SJ9CN_W&>F'17$81;$9 MQBQA7JA^VC"CBJ"M(G!6\>ZW-[:A.Y..G7)(, 8$9I 5MF2%I]!7"$DV)!@# M C/(CEJRHR?J:YZ+"&H!]41!"8L_O M2,P61TD011V-6>)P'$PF R+#>PX5NTMY_;MU_,ZL8Z<>%(U!H9F,$*"6'12-0:&9C&O7 MCIT^]1#AA3VAQ%X4]*RD)2X*?.4YN\+KQX6Q'\5#WW/:$V.W*3:$A_Y% ]LW M-\K1BP$2C4&AF0QJ/X[CD\@/U-&#HC$H-)-Q;>JQT\8>(K_)83LY6YQM*V>+ M<^SEB';,Q.V8N_(;V-VY48Y=#*!H# K-9% ;=8)/(3\":O1!T1@4FLFX-OK$ M:6L/D%\#8.[*?$H[LKJRQ!'/]VA'ILR&%T9>$ W(3SMHXG;07?D-[/K<*$_*4J>+G-K#:!GV*!H# K-9$U;=A*=1'*@%A\4 MC4&AF8QKBT_<9^X'2"[N223P<4"[BNN'T>KXLRNX?AC!$X(']*:-,W$;YT9O MP]L\=_[1:P#T:!L*S?Q'N';JU#O)O\)!G3TH&H-",QG7SIY^YPC^NZIK /9U MTI'2U?=#F#/$'+OVR-3MD;72!G9T[ORCYQWT6!L*S>1NK^?D-$TGL%TGL&TG M_X>)I]K$TZ=VGC0 Y@&('W;/4RQA)%9?A%W%]<-P/-G;'IIU:&M,W=98JVY@ M(^?./WH-@)YI0Z&9W&DO3D_2BD)!?3PH&H-",QG7/IX^M1^E =AOT<)!&$== MU?7#:*\KC%FBR"3N[N'&>UV=:MJ7=7>L0/-BF\M=%V1[M^W ?57WG7;N7^)S MMNNCU3"[MMX/2;E,5=8C0BHS?<% "A+ &0 M 'AL+W=O\DB' M-&HN])G!9GDW59;DZGTV*QYDE8G&0;GHIO[K(\"4MQFJ^FQ2;G MX;).2N(IL2QWFH11.IG/ZFM7^7R6;S"9X\7;B. M5NNRNC"=SS;ABM_P\LOF*A=GTPYE&24\+:(L13F_.YN\QZ>,>E5"'?%GQ!^* MWC&J2KG-LJ_5R>7R;&)5+>(Q7Y051"@^[OD%C^,*2;3C6PLZZ>Y9)?:/G] _ MUL6+8F[#@E]D\5_1LER?3?P)6O*[@G8'4D@;0(9)M@C";1-H/LFV&V"73/3E%+SP,(R MG,_R[ 'E5;1 JPYJ,NML47Z45OU^4^;BVTCDE?-KOLGR,KR-.;KA*]&A98'> MH6M^S],M1[>/Z*)N \_1Y\<-1Z\9+\,H+MZ(H"\W#+U^]0:]0E&*/J^S;1&F MRV(V+46S*O#IHFW">=,$,M($3-"G+"W7!?J0+OE2!9B*>KJBR%-1Y\2(R/CB M!%'K+2(6H9H&7>R3CNMTHDEGYO1?P_0$6=ITI1K:=1&M\>@(7MLOJ.FJ*%V] M[?KGFB^R=!&)C!6Z+'F"_OY-)->'Q3^ZGFCN9.OO5#UC3HM-N.!G$_$0*7A^ MSR?S'W_ KO63CD5(, 8$IC!L=PS;)O3YSWE6%.(I5I.J'<%-OE?G5X_2^[GO M8H\&L^E]GY'=,,]W/<]7PY@FS'+%7Q>F5.%T53C&*BY__ZAKNC'IT"Z'!&- M8 I9;D>6>S11N9 ,0X(Q(#"%8:]CV'NAJ)I\MR<#ZMF![PY$I0D+'']'5)HP MGWK$T8O*[ZKPC56GB*'$\;R L31SVG2 841;N64]L+N7#']KV&[,. M[7I0- :%IC)&)&/D: )K;P5%,R0:@T)3:9:&&QO=YCX:H[O:<6E@#PVA)@X[ M/JUF):K&-''4[;\+U5*DL\5F:WNUO8VC!1(S,_1M&Q;1NTUSH1#S[BS7EF8$ M/'A<0*(Q*#253&FPL7,\^8'Z0_4B)-(R$[-E M?E:$(Y,\,^RAHP,4C4&AJ91*ZT[PT41(0/T^*!J#0E-IEGZ?&(WN'B)L ?JB M<3'% W]YH0WSR&"IA>G"W,"U1Q0H#34Q&^IG%3@R%33#'CPT0!>LH=!42J6Q M)_;Q% AJ^4'1&!2:2K.T_,2\J+Z' AW-<@O%UM"+:N+$6] ;+G!B KF1#H:GD21]/O..I#=3;@Z(Q*#259NGM MB7FU?0^U^;MJ\QP_L(9JT\2)"=UPALAT<;9/73PB-^F?B=D_JW(;G^F980X> M#: KW5!HZL_>TK=3ZW@_?(-Z>5 T!H6FTBR]/'UF&?Y9T;4 ?9%XU'&&;SA- MF$^MGI3:*H-,O4;)9W%#^H=!4"GL[38ZXU01V MKPGL9I/_P[M3Z=WI2_>;M "*672Q'>"AY#1QGN4[.YK3Q.' HB.O.2K],37[ MXQW1C&*\Y\U^V.:DS#;U#M';K"RS MI#Y<\W#)\RI ?'^79>73276#;E?R_#]02P,$% @ T'E76&_WC";S!0 MOBP !D !X;"]W;W)K&ULO5IK;]LV%/TKA%<, M+=#&(JEGYAAHHG;KL&Y%TFX?AGU0;,86JH/DA71E"C61NX,%(TD MWWO$>\AC'\+-RPPKYR5U9Y8F0 MI]5JRC<52Y9-4IY-B>/XTSQ)B\E\UES[4,UGY59D:<$^5(AO\SRIOEVRK'RX MF.#)XX7K=+46]87I?+9)5NR&B4^;#Y4\FW8HRS1G!4_+ E7L[F+R&I_'-*@3 MFH@_4_; ]XY170XOK2@D^Z> M=>+^\2/ZVZ9X61IL?N;?&V)V$O _D@":1-(/\$=2:!M CTTP6T3W(:9 M72D-#W$BDOFL*A]054=+M/J@(;/)EN6G13WO-Z*2GZ8R3\ROV::L1'*;,73# M5G)"!4>OT#6[9\66H=MOZ*HL1"5G!WW\MF'H>H&[(9"1(6""WLN;K#EZ4RS94@>8RGJZHLAC M49?$BABSQ1FBSDM$'$(- [HZ)!TWZ<20'MO3?TV*,^08T[5J:#=%M,&C(WCM MO*#=5*7%ZF4W/]=L41:+5&:LT#O!3_F&9B=R?7?*?Z.^:<;Y(% MNYC(+Q'.JGLVF?_X _:=GTPL0H+%0& :PV['L&M#G_]G8*8<$BX' -++\CBS_9*+R(1F&!(N!P#2&@X[AX(FBVN7[>S*@@1N%?D]4 MAK#("P>B,H2%-"">651A5T5HK>+RXXUIZ-:D8Z<<$BP& M/(BCJRHI.)*H)D M&!(L!@+3&,:.\FO.$V75 NPK@1 2.FY/5Z8X2KP@Z G+$(=#+XI&E(7WK">V ME_+F#^/XK5G'3CTH6@R%IC-&%&/D9 )K;P5%,R1:#(6FTZP,-[:ZS4,T1H?: M\6GD]@VA(0Y[(:UW);K&#''4WW\6ZJ4H9XOMUO:JY.)5Q=+\=EOQ9INW:#=T MYKJL:$DAVO,'6I%;+()I M7WO#.#^BKDOZVC/$2>/HCSW?E '&=@=LT1[Z%XULU^R81R\-2+08"DWG4UEQ M')Y.@: .'A0MAD+3:58F'EL=["$*C(9[+2]R^T^U*U-<$(6XOW4SQ?D!Q8Y9 M@42996(WRW8%CNSM[)C'+@U0M!@*3>=3.7:"3Z9 FKS0=%B*#2=9F7SB=7? M'J# %D#SBSX)".XIT!3G>3[M/P--<91*P!$%*BM-[%;:KL"1': =\^BE ?J> M&@I-YU/Y>>*>3H&@9A\4+89"TVE69I_8WZ4?H$!ON /T?,?O[P -<=@+HFB@ M0$,<]?V0CBA0&6IB-]1OTZ]L^6I;I )MJG3QG0V@'>SH-0'Z-AL*32=2V7D2 MG$YZH"X?%"V&0M-I5BZ?V-^X'R"]<""5D'JD_[N!(2RBE/I]X0W#_,AU\8CN ME(TF=AL]KKOQS9\=\NAE ?K:&PI-_PU<67GJG.Y7<%"'#XH60Z'I-"N'3[_S M3OZ[ZFL!!I:RISY3F'P\.CWU&<-T6VJJ^D8V?'?+H90'Z1AP* M3:=SKP7EA#THL$THL%TH_X>[I\K=TZ7WU#<,\ MN>D;\9Q4V6=JM\]6]8UL^NR01R\+T'?B4&@ZGFU#?H6I;G_P%02P,$% @ T'E76'#5#8%^ M P &1 !D !X;"]W;W)K&ULK9A1;Z,X$,>_ MBL6M3KO2;@"3D*:7(+6A>[>GKE1M;^\>3O?@P"18!9O:)NE^^S.&TM!0M)'\ M K;Q_,?S) 9@$)/1<[DRLF4*B]=5R89%$1.> E,/]ER41"ENV+G MRE( 28U1D;O8\T*W()0YT=*,W8EHR2N54P9W LFJ*(CX<0TY/ZP^$9W MF:H'W&A9DAW<@_I>W@G=?X/356V"[-%1V:N?/004DE%2]:8[V"@K+F M3IY:$$<&_O0- ]P:X)\U"%J#X+7!6TN:M@930Z8)Q7"(B2+14O #$O5LK58W M#$QCK<.GK-[W>R7T4ZKM5'1?;20\5L 4NMGKJT3O8U"$YO(#^H2NGFB!?@NT@NJ9=VD=1XWSO$;SGV, MOG*F,HEN6 II7\#5D73AX.=PKO&HXI^$39"_^(BPAZ<#"UJ/FW^&S01A;,R# MH7C&S6-()BCPALQ[T03=Y@1&+_C)S4'_WNH9Z(N"0OXWL+SK1FXZ+%>GD$N] MDPFL')TC)(@].-&OO_BA]]L0*IMBL26Q'L9IAW$ZIAY=[78"=D0!*BN19#I+ MH%+0!(8(CBJ=2]"F6-R(S8U8GX'V,PZ-K-1-G?D1V&.O>(Z M!S]65 #:5%+/DA*&CO3UJ-ZYA&:G0?F+>1!V036Q6_+9(Q1VA,)10FNN7W(I M"&+>4WR+$EX4NJ53<_(P!&A4[EQ X<"NSSSO%1]++GM\YAV?^2B?UTEJ",FH MPKE(;(K%EL1ZY"XZH)^ON5&PO-A*VL%L>_Q.??8OL$6 MH\JL!;M9,&:"52%DE9*%,>6G,*QF"U;0ZDR53%HD5[J@QG;U/*Q*S6A6 :D0 MX:#7B\."_UHJ M<_DN<,^C#T='O;/>W>GE/G+20*Y?FLW2,:%3D\-F0\:C7,EN7R+B E:=%BRXIR(E$RKX5'-@Y;3@8NW" M PC,E% Z,+8@;+H^1*H'!_==#VJET2FX5+K.[3*XW]-F^!ZPZ8%!+D1K<$!< M8#PJJ3%,RRO;J0?7P2=0T+1OUZ5U.-=TW1^ MNLGX+9A\$]L]/'R347*0'L/F_-ZZ).Q<$=IH %>QE/R BYWHD@;3)1>&RZ:W MX%G&Y).;@I4W=&HO\COZ=GS&3 '&,>QL#S_ MTWR&Z'PI$ARAFB',?R(9/ZB^7Q'KWQ_L+8FB)/$C M@/D=1!&&P-N((Y@#\( A452?@WOG4;@YI\+NOUOC1U!+ P04 " #0>5=8 MEXJ[', 3 @ "P %]R96QS+RYR96QSG9*Y;L,P#$!_Q=">, ?0(8@S M9?$6!/D!5J(/V!(%BD6=OZ_:I7&0"QEY/3P2W!YI0.TXI+:+J1C]$%)I6M6X M 4BV)8]ISI%"KM0L'C6'TD!$VV-#L%HL/D N&6:WO606IW.D5XA-/E_G;@2=&A(E@6FD7) MTZ(=I7\=Q_:0T^FO8R*T>EOH^7%H5 J.W&,EC'%BM/XU@LD/['X 4$L#!!0 M ( -!Y5UBWLPN,0 8 &,W / >&PO=V]R:V)O;VLN>&ULQ9M;<]HX M%(#_BH:7[AMJVKWH=^W^5:4W/ZM=T*Y*VMM2EZY M0[/IVYT1?&6W0E1ET0_.SY-^R:7J??KXE-:=Z<,#78F\DEJYD_[$5RD>[._K M_I#MI95+6<@%7]KF3,67]]R!7/22EK M653"7/%*_&-TO9-JXY-Q;]$'K]'DP]/G(1,_F/^3C7J]EKFXTGE="E4=\M&( MP@,JNY4[VV.*E^*B-]9[8?S[N!^8K@[O5CDHD%/F@W07S'35X-&AC.J5K-A4 M'1YV5P%6@& %M%CC^2R;WTZO1HO)%;LW?' M 62$0$9O")DMW,?GRD@1]D-@$P1 MR)06%4;P?2:7=96 L@A CFDAXRK MBHWR7->J@I#O$( R(:I94#L%M\6E+#6E:KC MLK*Y <)A6AD0>^52%H6K<+[U?E'+PX&OC7+/'4@+$Q/+@-@LKA6X.E<]-J"^ M>'?^@;^8$A5$Q+0R(/;*/UJO'EP&-HA3%V&JC2=@(VM=> A;C M>YA;R9MH6;;+&+/)@%@G,Q?E6W;''WW-:W)Q7FU=1S-?%G+#6^6,^61 +)2Q M;CIF=Q-S7ZUT7 L.,TA M;)"IRG4IV(+_:!^^YCL MC\$P,P3$9D #Y7\#B(E9(B"V!(X90DS,$@&Q)5Z&RNS=H@FI_H2(F"@"8E%T MQJ5=E"$FD)!8(&B VJJ6(::0D%@A2(#JLQ1B8B8)B4V"!ZEPAB9$)[N(G=(1 MI7963,PQ(;%CT'"U73$QWX34TUVOA*N_\A-B8O8)B>USB%H["QFS34AMFU8AY)B2?W'H1C'4Q1IAE(F++X%%%!#$QRT34 Q44,X:8 MF&4B8LO@F G$Q"P3$5OF.4:[>X[1SMB,&]]![@64880NJA"+IB.4/&.92WA5 MNR:E(28FFHAZ8-,Q!78F*RZ+=T#'/1,2>Z0YZGXL=8F+>B8B]\QKF8BO8 M-6]A8MZ)B+WS&N:]L'71&MI&F(&BDXQTSOS:"KO6<&4\QB04GW2H X>V,2:A MF%A"."9T98Q)*":6$#8B<_TGQ,0D%!-+",>$R]$Q)J&86$+HP+$UVHG1M?U3 M+L*TFQ!FH9C80CAFJPEA%HJ)+81CPG SQBP4$UL(QX3A9HQ9*":V4.>D1D=\ ME& .2H@=A,]JP :48 Y*B!V$8\(&E& .2H@=A&/"!I1@#DJH-Y>].D?45$^( MB3DH(7;0KSDB.$;K;#^8@!)B 3TS_AZ@N4%PO=L5PC\),='M96\SW=;&;$ZR MA3 EQ,0$E! +",W-5M218 )*B 6$Y.98VU:A8P)*WF1GP!'F9[]G[W@?2(HI M**6>BWMMSO70\"$FIJ#T1)L&#L-?6.@IIJ#T%'L'.OO-%%-0^H:["%P._CYD MDQ\N68B)*2@E5M 1YLS]S)58"V.$CSQSB(E9*"6VT#'FD2\A)F:AE-A":*&W MNO<4W>9,;*$CS"_*B%QOE/]?B3\),3$+I<06ZEIG 64/,3$+I2=8#G)*:I8, M7)8"S"%FH2&QA;HQ[\5>J%JP)<3$+#0DMA"*V6I"0\Q"0V(+X9AP6#G$+#0D MMM"+S5F=HAQB!AHV!NHW-]M/'U?.N4JL9BYYZ\[GO,CO#/,?/J5!$,5^L^BZ M+HJQ.S=7MYJOGOXC]O3_MD__ 5!+ P04 " #0>5=8DS&\_8 " "3,0 M&@ 'AL+U]R96QS+W=O!7J$@*=?]=". M^^XT[/;G8?%Q/)R&5;,;Q_./$(;UKA[;X:$[U]/ER*;KC^UX6?;;<&[7[^VV M!EDN/?3W,YKGI_N9B]?/<_V?B=UFLU_7G]WZ][&>QG\,#G^Z_GW8U3HVB]>V MW]9QU82/PVWW$*Z;^'"9W"Q>WE9-__(6FS!WD$"0S!^D$*3S!R4(2O,'&039 M_$$.03Y_4(:@/']0@: R?] C!#W.'Q27*..2(&F"-8'6$;F.!%Y'!#L2B!V1 M[$A@=D2T(X':$=F.!&Y'A#L2R!V1[DA@=T2\(X'>@GH+@=Z">@N!WC)YV";0 M6U!O(=!;4&\AT%M0;R'06U!O(=!;4&\AT%M0;R'06U!O(=!;46\ET%M1;R70 M6U%O)=!;)R]+"/16U%L)]%;46PGT5M1;"?16U%L)]%;46PGT5M1;"?1.J'AMJ+<1Z&VHMQ'H;:BW$>AMDX^5!'H;ZFT$>AOJ;01Z M&^IM!'H;ZFT$>COJ[01Z.^KM!'H[ZNT$>COJ[01Z.^KM!'H[ZNT$>OOD9Q," MO1WU=@*]'?5V KT=]78"O3/JG0GTSJAW)M [H]Z90.^,>F<"O3/JG0GTSJAW M)M [H]Z90.\\^5F00.^,>F<"O3/JG0GT+JAW(="[H-Z%0.^">A<"O0OJ70CT M+JAW^4Z]A_'S4(=;S]<:K_^=5(^7<^OM\M?EU\[)W7O%.=Q7#,]_ 5!+ P04 M " #0>5=8]S F!B<" R, $P %M#;VYT96YT7U1Y<&5S72YX;6S- MVTUNVS 0!>"K&-H&%LU_M8BS:;MML^@%6&D<"Y9$@F12Y_:EY"1 B]1(X )] M&PLVR7DC#O#M?/W],5!:'<=A2MMJGW/XR%AJ]S2Z5/M 4UG9^3BZ7+[&.Q9< M>W!WQ,1F8UCKITQ37N>Y1G5S_9EV[G[(JR_'\G/J_;2M(@VI6GTZ;9RSMI4+ M8>A;E\LZ>YBZ/U+63PEU.;GL2?L^I*NRH6*O)LPK?P]X.O?M@6+L.UK=NIB_ MNK'L8L>!I?PX4*K/EWBE1[_;]2UUOKT?RY$ZA4BN2WNB/ [UJ>C5^>1<;IA. MG_SB_*7,N<"R\S;ZD,K$(KT_[GDD\^EU*(4HYO[\*[XDEM(7OQ_-T^ZH>V-V MN=Z?/AZ6>22V/"Z_X]]G_%+_G7T(D#XD2!\*I \-THL/[P__./XY5F/ MKI^>\]GR5X&;7U!+ 0(4 Q0 ( -!Y5U@'04UB@0 +$ 0 M " 0 !D;V-0&UL4$L! A0#% @ T'E76*JN M5(3N *P( !$ ( !KP &1O8U!R;W!S+V-O&UL M4$L! A0#% @ T'E76)E5=8I@&<:*@' R M,0 & @($-" >&PO=V]R:W-H965T&UL M4$L! A0#% @ T'E76'0=A#4Y @ N@4 !@ ("!ZP\ M 'AL+W=O5=89 GC;_T" !0"@ & M@(%V&0 >&PO=V]R:W-H965T&UL4$L! A0#% @ T'E7 M6%KR/[_3!@ !\ !@ ("!J1P 'AL+W=O5=8K@0>"L,* "*- & @($M+0 >&PO=V]R:W-H M965T&UL4$L! A0#% @ T'E76&ZRJD X! ^ D !@ M ("!)C@ 'AL+W=O5=8!/@S># $ #U M"0 &0 @($;7 >&PO=V]R:W-H965T&UL4$L! A0#% @ T'E76,HI MR (( @ L 0 !D ("!9F4 'AL+W=O5=8!'?N=10- !-*@ &0 M @(&E9P >&PO=V]R:W-H965T&UL4$L! A0#% @ T'E76(]]NE7 @ /P8 !D M ("!)'@ 'AL+W=O5=8&*.)[(@& #+#P &0 @($;>P >&PO M=V]R:W-H965T&UL4$L! A0#% @ T'E76)KQSB+A"0 [Q@ !D ("! MN80 'AL+W=O5=8 MTY6DGF # F" &0 @('1C@ >&PO=V]R:W-H965T&UL4$L! A0#% M @ T'E76#ML1!J, P UP< !D ("!-YL 'AL+W=O&PO=V]R:W-H965TE !X M;"]W;W)K&UL4$L! A0#% @ T'E76+SUY"^E M"@ ;1L !D ("!!:D 'AL+W=O5=8$M 9--4( #>%@ &0 M@('ALP >&PO=V]R:W-H965TA08-UP( T& 9 " @>V\ !X;"]W;W)K&UL4$L! A0#% @ T'E76 W=@4GQ'@ OV( !D M ("!^[\ 'AL+W=O5=8BC6J@Z@" "V!0 &0 @($CWP >&PO=V]R M:W-H965T&UL M4$L! A0#% @ T'E76%?TY)LB!@ ; T !D ("!J.4 M 'AL+W=O5=8&PO=V]R:W-H965T&UL4$L! A0#% @ MT'E76&/SMG4K!@ \P\ !D ("!B_( 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ T'E76&AX\T\T P M-P< !D ("!F/\ 'AL+W=O5=81,HTBRD& "S$P &0 @($# M P$ >&PO=V]R:W-H965T&UL4$L! A0#% @ T'E76!_( NY$!@ FP\ !D M ("!]0P! 'AL+W=O5=8V97J8M\& R$P &0 @(%P$P$ >&PO=V]R:W-H M965T&UL4$L! M A0#% @ T'E76"TY_WK/ @ :@L !D ("!KQ\! 'AL M+W=O5=8!VP'PP<# M "!# &0 @(&U(@$ >&PO=V]R:W-H965T&UL4$L! A0#% @ T'E7 M6'4K>+7! P H@P !D ("!&"D! 'AL+W=O5=8+N*3;X<$ B'P &0 M @($0+0$ >&PO=V]R:W-H965T&UL4$L! A0#% @ T'E76"IKG!EJ#P 29D M !D ("!]3@! 'AL+W=O5=8;C7(IL$" "%!P &0 @(&62 $ M>&PO=V]R:W-H965T&UL4$L! A0#% @ T'E76(%DWU/, @ CP@ !D M ("!^4X! 'AL+W=O5=85PAX!30# #!"0 &0 @('\40$ >&PO=V]R:W-H965T M&UL4$L! A0# M% @ T'E76)XF"-< P .PH !D ("!2%D! 'AL+W=O M5=8;Q?!<\H$ "" M& &0 @(%_7 $ >&PO=V]R:W-H965T&UL4$L! A0#% @ T'E76!KL M'9__!@ '38 !D ("!N60! 'AL+W=O5=8OW=BP_$# "I%P &0 M @('O:P$ >&PO=V]R:W-H965T&UL4$L! A0#% @ T'E76 #EK/_T @ MP@ !D M ("!0W,! 'AL+W=O5=8XJ6V>= # #\#P &0 @(%N=@$ >&PO M=V]R:W-H965T&UL4$L! A0#% @ T'E76)&P$PZE!@ ]C4 !D ("! M.GT! 'AL+W=O5=8 M'LX B-L# #A#0 &0 @($6A $ >&PO=V]R:W-H965T&UL4$L! A0#% M @ T'E76'S]U^Q5=8GGJL%)$" !Q" M&0 @(%:CP$ >&PO=V]R:W-H965T&UL4$L! A0#% @ T'E76#@NC"HH M P VPD !D ("!:Y4! 'AL+W=O5=88>=4^L # #E$@ &0 M@('*F $ >&PO=V]R:W-H965TP1L@0 & 9 9 " @<&< 0!X;"]W;W)K&UL4$L! A0#% @ T'E76'T4&.L ! <@\ !D M ("!JJ$! 'AL+W=O5=8-O[P?H " "+!@ &0 @('AI0$ >&PO=V]R M:W-H965T&UL M4$L! A0#% @ T'E76 V1DS#W P Y@T !D ("!>ZP! M 'AL+W=O5=8&G.' M,RT% 7'P &0 @(&IL $ >&PO=V]R:W-H965T&UL4$L! A0#% @ MT'E76,:4WKR4 P ( L !D ("![+D! 'AL+W=O5=8C0BHS?<% "A+ &0 @(') MS $ >&PO=V]R:W-H965T&UL4$L! A0#% @ T'E76'#5#8%^ P &1 !D M ("!(=D! 'AL+W=O5=8OEW1]BT# #J$@ #0 @ '6W $ >&PO5=8DS&\_8 " "3,0 &@ @ &$YP$ >&PO7W)E;',O=V]R M:V)O;VLN>&UL+G)E;'-02P$"% ,4 " #0>5=8]S F!B<" R, $P M @ $\Z@$ 6T-O;G1E;G1?5'EP97-=+GAM;%!+!08 7 !< + #L9 "4[ $ ! end XML 103 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 104 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 106 FilingSummary.xml IDEA: XBRL DOCUMENT 3.24.0.1 html 300 420 1 false 61 0 false 8 false false R1.htm 0000001 - Document - Cover Sheet http://www.nv5.com/role/Cover Cover Cover 1 false false R2.htm 0000002 - Document - Audit Information Sheet http://www.nv5.com/role/AuditInformation Audit Information Cover 2 false false R3.htm 0000003 - Statement - CONSOLIDATED BALANCE SHEETS Sheet http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS CONSOLIDATED BALANCE SHEETS Statements 3 false false R4.htm 0000004 - Statement - CONSOLIDATED BALANCE SHEETS (Parentheticals) Sheet http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals CONSOLIDATED BALANCE SHEETS (Parentheticals) Statements 4 false false R5.htm 0000005 - Statement - CONSOLIDATED STATEMENTS OF NET INCOME AND COMPREHENSIVE INCOME Sheet http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME CONSOLIDATED STATEMENTS OF NET INCOME AND COMPREHENSIVE INCOME Statements 5 false false R6.htm 0000006 - Statement - CONSOLIDATED STATEMENTS OF CHANGES IN STOCKHOLDERS??? EQUITY Sheet http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY CONSOLIDATED STATEMENTS OF CHANGES IN STOCKHOLDERS??? EQUITY Statements 6 false false R7.htm 0000007 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS Sheet http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS CONSOLIDATED STATEMENTS OF CASH FLOWS Statements 7 false false R8.htm 0000008 - Disclosure - Organization and Nature of Business Operations Sheet http://www.nv5.com/role/OrganizationandNatureofBusinessOperations Organization and Nature of Business Operations Notes 8 false false R9.htm 0000009 - Disclosure - Summary of Significant Accounting Policies Sheet http://www.nv5.com/role/SummaryofSignificantAccountingPolicies Summary of Significant Accounting Policies Notes 9 false false R10.htm 0000010 - Disclosure - Recently Issued Accounting Pronouncements Sheet http://www.nv5.com/role/RecentlyIssuedAccountingPronouncements Recently Issued Accounting Pronouncements Notes 10 false false R11.htm 0000011 - Disclosure - Earnings per Share Sheet http://www.nv5.com/role/EarningsperShare Earnings per Share Notes 11 false false R12.htm 0000012 - Disclosure - Stockholders' Equity Sheet http://www.nv5.com/role/StockholdersEquity Stockholders' Equity Notes 12 false false R13.htm 0000013 - Disclosure - Business Acquisitions Sheet http://www.nv5.com/role/BusinessAcquisitions Business Acquisitions Notes 13 false false R14.htm 0000014 - Disclosure - Billed and Unbilled Receivables Sheet http://www.nv5.com/role/BilledandUnbilledReceivables Billed and Unbilled Receivables Notes 14 false false R15.htm 0000015 - Disclosure - Property and Equipment, net Sheet http://www.nv5.com/role/PropertyandEquipmentnet Property and Equipment, net Notes 15 false false R16.htm 0000016 - Disclosure - Goodwill and Intangible Assets Sheet http://www.nv5.com/role/GoodwillandIntangibleAssets Goodwill and Intangible Assets Notes 16 false false R17.htm 0000017 - Disclosure - Accrued Liabilities Sheet http://www.nv5.com/role/AccruedLiabilities Accrued Liabilities Notes 17 false false R18.htm 0000018 - Disclosure - Notes Payable and Other Obligations Notes http://www.nv5.com/role/NotesPayableandOtherObligations Notes Payable and Other Obligations Notes 18 false false R19.htm 0000019 - Disclosure - Contingent Consideration Sheet http://www.nv5.com/role/ContingentConsideration Contingent Consideration Notes 19 false false R20.htm 0000020 - Disclosure - Leases Sheet http://www.nv5.com/role/Leases Leases Notes 20 false false R21.htm 0000021 - Disclosure - Commitments and Contingencies Sheet http://www.nv5.com/role/CommitmentsandContingencies Commitments and Contingencies Notes 21 false false R22.htm 0000022 - Disclosure - Stock-Based Compensation Sheet http://www.nv5.com/role/StockBasedCompensation Stock-Based Compensation Notes 22 false false R23.htm 0000023 - Disclosure - Employee Benefit Plan Sheet http://www.nv5.com/role/EmployeeBenefitPlan Employee Benefit Plan Notes 23 false false R24.htm 0000024 - Disclosure - Income Taxes Sheet http://www.nv5.com/role/IncomeTaxes Income Taxes Notes 24 false false R25.htm 0000025 - Disclosure - Reportable Segments Sheet http://www.nv5.com/role/ReportableSegments Reportable Segments Notes 25 false false R26.htm 0000026 - Disclosure - Subsequent Events Sheet http://www.nv5.com/role/SubsequentEvents Subsequent Events Notes 26 false false R27.htm 9954471 - Disclosure - Summary of Significant Accounting Policies (Policies) Sheet http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies Summary of Significant Accounting Policies (Policies) Policies http://www.nv5.com/role/SummaryofSignificantAccountingPolicies 27 false false R28.htm 9954472 - Disclosure - Summary of Significant Accounting Policies (Tables) Sheet http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesTables Summary of Significant Accounting Policies (Tables) Tables http://www.nv5.com/role/SummaryofSignificantAccountingPolicies 28 false false R29.htm 9954473 - Disclosure - Earnings per Share (Tables) Sheet http://www.nv5.com/role/EarningsperShareTables Earnings per Share (Tables) Tables http://www.nv5.com/role/EarningsperShare 29 false false R30.htm 9954474 - Disclosure - Business Acquisitions (Tables) Sheet http://www.nv5.com/role/BusinessAcquisitionsTables Business Acquisitions (Tables) Tables http://www.nv5.com/role/BusinessAcquisitions 30 false false R31.htm 9954475 - Disclosure - Billed and Unbilled Receivables (Tables) Sheet http://www.nv5.com/role/BilledandUnbilledReceivablesTables Billed and Unbilled Receivables (Tables) Tables http://www.nv5.com/role/BilledandUnbilledReceivables 31 false false R32.htm 9954476 - Disclosure - Property and Equipment, net (Tables) Sheet http://www.nv5.com/role/PropertyandEquipmentnetTables Property and Equipment, net (Tables) Tables http://www.nv5.com/role/PropertyandEquipmentnet 32 false false R33.htm 9954477 - Disclosure - Goodwill and Intangible Assets (Tables) Sheet http://www.nv5.com/role/GoodwillandIntangibleAssetsTables Goodwill and Intangible Assets (Tables) Tables http://www.nv5.com/role/GoodwillandIntangibleAssets 33 false false R34.htm 9954478 - Disclosure - Accrued Liabilities (Tables) Sheet http://www.nv5.com/role/AccruedLiabilitiesTables Accrued Liabilities (Tables) Tables http://www.nv5.com/role/AccruedLiabilities 34 false false R35.htm 9954479 - Disclosure - Notes Payable and Other Obligations (Tables) Notes http://www.nv5.com/role/NotesPayableandOtherObligationsTables Notes Payable and Other Obligations (Tables) Tables http://www.nv5.com/role/NotesPayableandOtherObligations 35 false false R36.htm 9954480 - Disclosure - Contingent Consideration (Tables) Sheet http://www.nv5.com/role/ContingentConsiderationTables Contingent Consideration (Tables) Tables http://www.nv5.com/role/ContingentConsideration 36 false false R37.htm 9954481 - Disclosure - Leases (Tables) Sheet http://www.nv5.com/role/LeasesTables Leases (Tables) Tables http://www.nv5.com/role/Leases 37 false false R38.htm 9954482 - Disclosure - Stock-Based Compensation (Tables) Sheet http://www.nv5.com/role/StockBasedCompensationTables Stock-Based Compensation (Tables) Tables http://www.nv5.com/role/StockBasedCompensation 38 false false R39.htm 9954483 - Disclosure - Income Taxes (Tables) Sheet http://www.nv5.com/role/IncomeTaxesTables Income Taxes (Tables) Tables http://www.nv5.com/role/IncomeTaxes 39 false false R40.htm 9954484 - Disclosure - Reportable Segments (Tables) Sheet http://www.nv5.com/role/ReportableSegmentsTables Reportable Segments (Tables) Tables http://www.nv5.com/role/ReportableSegments 40 false false R41.htm 9954485 - Disclosure - Summary of Significant Accounting Policies - Narrative (Details) Sheet http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails Summary of Significant Accounting Policies - Narrative (Details) Details 41 false false R42.htm 9954486 - Disclosure - Summary of Significant Accounting Policies - Estimated Useful Lives of Property and Equipment (Details) Sheet http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesEstimatedUsefulLivesofPropertyandEquipmentDetails Summary of Significant Accounting Policies - Estimated Useful Lives of Property and Equipment (Details) Details 42 false false R43.htm 9954487 - Disclosure - Summary of Significant Accounting Policies - Revenue Recognition (Details) Sheet http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails Summary of Significant Accounting Policies - Revenue Recognition (Details) Details 43 false false R44.htm 9954488 - Disclosure - Earnings Per Share - Narrative (Details) Sheet http://www.nv5.com/role/EarningsPerShareNarrativeDetails Earnings Per Share - Narrative (Details) Details 44 false false R45.htm 9954489 - Disclosure - Earnings per Share - Schedule of Earnings Per Share, Basic and Diluted (Details) Sheet http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails Earnings per Share - Schedule of Earnings Per Share, Basic and Diluted (Details) Details 45 false false R46.htm 9954490 - Disclosure - Stockholders' Equity (Details) Sheet http://www.nv5.com/role/StockholdersEquityDetails Stockholders' Equity (Details) Details http://www.nv5.com/role/StockholdersEquity 46 false false R47.htm 9954491 - Disclosure - Business Acquisitions - Narrative (Details) Sheet http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails Business Acquisitions - Narrative (Details) Details 47 false false R48.htm 9954492 - Disclosure - Business Acquisitions - The Fair Values of Assets Acquired and Liabilities Assumed (Details) Sheet http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails Business Acquisitions - The Fair Values of Assets Acquired and Liabilities Assumed (Details) Details 48 false false R49.htm 9954493 - Disclosure - Business Acquisitions - Results of Operations from any Business Acquired (Details) Sheet http://www.nv5.com/role/BusinessAcquisitionsResultsofOperationsfromanyBusinessAcquiredDetails Business Acquisitions - Results of Operations from any Business Acquired (Details) Details 49 false false R50.htm 9954494 - Disclosure - Business Acquisitions - Pro Forma Consolidated Results of Operations (Details) Sheet http://www.nv5.com/role/BusinessAcquisitionsProFormaConsolidatedResultsofOperationsDetails Business Acquisitions - Pro Forma Consolidated Results of Operations (Details) Details 50 false false R51.htm 9954495 - Disclosure - Billed and Unbilled Receivables - Summary of Billed and Unbilled Receivables (Details) Sheet http://www.nv5.com/role/BilledandUnbilledReceivablesSummaryofBilledandUnbilledReceivablesDetails Billed and Unbilled Receivables - Summary of Billed and Unbilled Receivables (Details) Details 51 false false R52.htm 9954496 - Disclosure - Billed and Unbilled Receivables - Activity in the Allowance for Doubtful Accounts (Details) Sheet http://www.nv5.com/role/BilledandUnbilledReceivablesActivityintheAllowanceforDoubtfulAccountsDetails Billed and Unbilled Receivables - Activity in the Allowance for Doubtful Accounts (Details) Details 52 false false R53.htm 9954497 - Disclosure - Property and Equipment, net - Schedule of property and equipment (Details) Sheet http://www.nv5.com/role/PropertyandEquipmentnetScheduleofpropertyandequipmentDetails Property and Equipment, net - Schedule of property and equipment (Details) Details 53 false false R54.htm 9954498 - Disclosure - Property and Equipment, net - Narrative (Details) Sheet http://www.nv5.com/role/PropertyandEquipmentnetNarrativeDetails Property and Equipment, net - Narrative (Details) Details 54 false false R55.htm 9954499 - Disclosure - Goodwill and Intangible Assets - Schedule of Goodwill (Details) Sheet http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails Goodwill and Intangible Assets - Schedule of Goodwill (Details) Details 55 false false R56.htm 9954500 - Disclosure - Goodwill and Intangible Assets - Narrative (Details) Sheet http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails Goodwill and Intangible Assets - Narrative (Details) Details 56 false false R57.htm 9954501 - Disclosure - Goodwill and Intangible Assets - Schedule of Finite-lived Intangible Assets (Details) Sheet http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails Goodwill and Intangible Assets - Schedule of Finite-lived Intangible Assets (Details) Details 57 false false R58.htm 9954502 - Disclosure - Goodwill and Intangible Assets - Weighted Average Useful Lives of Intangible Assets (Details) Sheet http://www.nv5.com/role/GoodwillandIntangibleAssetsWeightedAverageUsefulLivesofIntangibleAssetsDetails Goodwill and Intangible Assets - Weighted Average Useful Lives of Intangible Assets (Details) Details 58 false false R59.htm 9954503 - Disclosure - Goodwill and Intangible Assets - Schedule of Future Estimated Aggregate Amortization Related to Finite-lived Intangible Assets (Details) Sheet http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFutureEstimatedAggregateAmortizationRelatedtoFinitelivedIntangibleAssetsDetails Goodwill and Intangible Assets - Schedule of Future Estimated Aggregate Amortization Related to Finite-lived Intangible Assets (Details) Details 59 false false R60.htm 9954504 - Disclosure - Accrued Liabilities (Details) Sheet http://www.nv5.com/role/AccruedLiabilitiesDetails Accrued Liabilities (Details) Details http://www.nv5.com/role/AccruedLiabilitiesTables 60 false false R61.htm 9954505 - Disclosure - Notes Payable and Other Obligations - Notes Payable and Other Obligations (Details) Notes http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails Notes Payable and Other Obligations - Notes Payable and Other Obligations (Details) Details 61 false false R62.htm 9954506 - Disclosure - Notes Payable and Other Obligations - Future Contractual Maturities of Long-term Debt (Details) Notes http://www.nv5.com/role/NotesPayableandOtherObligationsFutureContractualMaturitiesofLongtermDebtDetails Notes Payable and Other Obligations - Future Contractual Maturities of Long-term Debt (Details) Details 62 false false R63.htm 9954507 - Disclosure - Notes Payable and Other Obligations - Narrative (Details) Notes http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails Notes Payable and Other Obligations - Narrative (Details) Details 63 false false R64.htm 9954508 - Disclosure - Contingent Consideration (Details) Sheet http://www.nv5.com/role/ContingentConsiderationDetails Contingent Consideration (Details) Details http://www.nv5.com/role/ContingentConsiderationTables 64 false false R65.htm 9954509 - Disclosure - Leases - Narrative (Details) Sheet http://www.nv5.com/role/LeasesNarrativeDetails Leases - Narrative (Details) Details 65 false false R66.htm 9954510 - Disclosure - Leases - Schedule of Supplemental Balance Sheet Information (Details) Sheet http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails Leases - Schedule of Supplemental Balance Sheet Information (Details) Details 66 false false R67.htm 9954511 - Disclosure - Leases - Schedule of Lease Term and Discount Rate (Details) Sheet http://www.nv5.com/role/LeasesScheduleofLeaseTermandDiscountRateDetails Leases - Schedule of Lease Term and Discount Rate (Details) Details 67 false false R68.htm 9954512 - Disclosure - Leases - Schedule of Supplemental Cash Flow Information (Details) Sheet http://www.nv5.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails Leases - Schedule of Supplemental Cash Flow Information (Details) Details 68 false false R69.htm 9954513 - Disclosure - Leases - Schedule of Lease Cost (Details) Sheet http://www.nv5.com/role/LeasesScheduleofLeaseCostDetails Leases - Schedule of Lease Cost (Details) Details 69 false false R70.htm 9954514 - Disclosure - Leases - Schedule of Maturities of Lease Liabilities (Details) Sheet http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails Leases - Schedule of Maturities of Lease Liabilities (Details) Details 70 false false R71.htm 9954515 - Disclosure - Stock-Based Compensation - Narrative (Details) Sheet http://www.nv5.com/role/StockBasedCompensationNarrativeDetails Stock-Based Compensation - Narrative (Details) Details 71 false false R72.htm 9954516 - Disclosure - Stock-Based Compensation - Restricted Stock Awards (Details) Sheet http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails Stock-Based Compensation - Restricted Stock Awards (Details) Details 72 false false R73.htm 9954517 - Disclosure - Employee Benefit Plan (Details) Sheet http://www.nv5.com/role/EmployeeBenefitPlanDetails Employee Benefit Plan (Details) Details http://www.nv5.com/role/EmployeeBenefitPlan 73 false false R74.htm 9954518 - Disclosure - Income Taxes - Income Tax Expense (Benefit) (Details) Sheet http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails Income Taxes - Income Tax Expense (Benefit) (Details) Details 74 false false R75.htm 9954519 - Disclosure - Income Taxes - Net Deferred Income Tax Asset (Liability) (Details) Sheet http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails Income Taxes - Net Deferred Income Tax Asset (Liability) (Details) Details 75 false false R76.htm 9954520 - Disclosure - Income Taxes - Narrative (Details) Sheet http://www.nv5.com/role/IncomeTaxesNarrativeDetails Income Taxes - Narrative (Details) Details 76 false false R77.htm 9954521 - Disclosure - Income Taxes - Income Tax Expense (Benefit) Reconciliation (Details) Sheet http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitReconciliationDetails Income Taxes - Income Tax Expense (Benefit) Reconciliation (Details) Details 77 false false R78.htm 9954522 - Disclosure - Income Taxes - Unrecognized Tax Liability (Details) Sheet http://www.nv5.com/role/IncomeTaxesUnrecognizedTaxLiabilityDetails Income Taxes - Unrecognized Tax Liability (Details) Details 78 false false R79.htm 9954523 - Disclosure - Reportable Segments - Narrative (Details) Sheet http://www.nv5.com/role/ReportableSegmentsNarrativeDetails Reportable Segments - Narrative (Details) Details 79 false false R80.htm 9954524 - Disclosure - Reportable Segments - Summarized Financial Information (Details) Sheet http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails Reportable Segments - Summarized Financial Information (Details) Details 80 false false R81.htm 9954525 - Disclosure - Reportable Segments - Revenue by Geographic Location (Details) Sheet http://www.nv5.com/role/ReportableSegmentsRevenuebyGeographicLocationDetails Reportable Segments - Revenue by Geographic Location (Details) Details 81 false false R82.htm 9954526 - Disclosure - Reportable Segments - Revenue by Customer Type (Details) Sheet http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails Reportable Segments - Revenue by Customer Type (Details) Details 82 false false R83.htm 9954527 - Disclosure - Reportable Segments - Revenue by Contract Type (Details) Sheet http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails Reportable Segments - Revenue by Contract Type (Details) Details 83 false false R84.htm 9954528 - Disclosure - Subsequent Events (Details) Sheet http://www.nv5.com/role/SubsequentEventsDetails Subsequent Events (Details) Details http://www.nv5.com/role/SubsequentEvents 84 false false All Reports Book All Reports nvee-20231230.htm nvee-20231230.xsd nvee-20231230_cal.xml nvee-20231230_def.xml nvee-20231230_lab.xml nvee-20231230_pre.xml http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 true true JSON 109 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "nvee-20231230.htm": { "nsprefix": "nvee", "nsuri": "http://www.nv5.com/20231230", "dts": { "inline": { "local": [ "nvee-20231230.htm" ] }, "schema": { "local": [ "nvee-20231230.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/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://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd", "https://xbrl.sec.gov/country/2023/country-2023.xsd", "https://xbrl.sec.gov/dei/2023/dei-2023.xsd" ] }, "calculationLink": { "local": [ "nvee-20231230_cal.xml" ] }, "definitionLink": { "local": [ "nvee-20231230_def.xml" ] }, "labelLink": { "local": [ "nvee-20231230_lab.xml" ] }, "presentationLink": { "local": [ "nvee-20231230_pre.xml" ] } }, "keyStandard": 375, "keyCustom": 45, "axisStandard": 24, "axisCustom": 1, "memberStandard": 35, "memberCustom": 24, "hidden": { "total": 15, "http://fasb.org/us-gaap/2023": 11, "http://xbrl.sec.gov/dei/2023": 4 }, "contextCount": 300, "entityCount": 1, "segmentCount": 61, "elementCount": 618, "unitCount": 8, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 1150, "http://xbrl.sec.gov/dei/2023": 39 }, "report": { "R1": { "role": "http://www.nv5.com/role/Cover", "longName": "0000001 - Document - Cover", "shortName": "Cover", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "c-1", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.nv5.com/role/AuditInformation", "longName": "0000002 - Document - Audit Information", "shortName": "Audit Information", "isDefault": "false", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "2", "firstAnchor": { "contextRef": "c-1", "name": "dei:AuditorFirmId", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "dei:AuditorFirmId", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R3": { "role": "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "longName": "0000003 - Statement - CONSOLIDATED BALANCE SHEETS", "shortName": "CONSOLIDATED BALANCE SHEETS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R4": { "role": "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals", "longName": "0000004 - Statement - CONSOLIDATED BALANCE SHEETS (Parentheticals)", "shortName": "CONSOLIDATED BALANCE SHEETS (Parentheticals)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "unitRef": "usdPerShare", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "us-gaap:PreferredStockParOrStatedValuePerShare", "span", "div", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "unitRef": "usdPerShare", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "us-gaap:PreferredStockParOrStatedValuePerShare", "span", "div", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R5": { "role": "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME", "longName": "0000005 - Statement - CONSOLIDATED STATEMENTS OF NET INCOME AND COMPREHENSIVE INCOME", "shortName": "CONSOLIDATED STATEMENTS OF NET INCOME AND COMPREHENSIVE INCOME", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:CostDirectLabor", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } }, "R6": { "role": "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY", "longName": "0000006 - Statement - CONSOLIDATED STATEMENTS OF CHANGES IN STOCKHOLDERS\u2019 EQUITY", "shortName": "CONSOLIDATED STATEMENTS OF CHANGES IN STOCKHOLDERS\u2019 EQUITY", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "c-8", "name": "us-gaap:CommonStockSharesOutstanding", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-8", "name": "us-gaap:CommonStockSharesOutstanding", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R7": { "role": "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS", "longName": "0000007 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS", "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "7", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NetIncomeLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:DepreciationDepletionAndAmortization", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } }, "R8": { "role": "http://www.nv5.com/role/OrganizationandNatureofBusinessOperations", "longName": "0000008 - Disclosure - Organization and Nature of Business Operations", "shortName": "Organization and Nature of Business Operations", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "8", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R9": { "role": "http://www.nv5.com/role/SummaryofSignificantAccountingPolicies", "longName": "0000009 - Disclosure - Summary of Significant Accounting Policies", "shortName": "Summary of Significant Accounting Policies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.nv5.com/role/RecentlyIssuedAccountingPronouncements", "longName": "0000010 - Disclosure - Recently Issued Accounting Pronouncements", "shortName": "Recently Issued Accounting Pronouncements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.nv5.com/role/EarningsperShare", "longName": "0000011 - Disclosure - Earnings per Share", "shortName": "Earnings per Share", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.nv5.com/role/StockholdersEquity", "longName": "0000012 - Disclosure - Stockholders' Equity", "shortName": "Stockholders' Equity", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.nv5.com/role/BusinessAcquisitions", "longName": "0000013 - Disclosure - Business Acquisitions", "shortName": "Business Acquisitions", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.nv5.com/role/BilledandUnbilledReceivables", "longName": "0000014 - Disclosure - Billed and Unbilled Receivables", "shortName": "Billed and Unbilled Receivables", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.nv5.com/role/PropertyandEquipmentnet", "longName": "0000015 - Disclosure - Property and Equipment, net", "shortName": "Property and Equipment, net", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.nv5.com/role/GoodwillandIntangibleAssets", "longName": "0000016 - Disclosure - Goodwill and Intangible Assets", "shortName": "Goodwill and Intangible Assets", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.nv5.com/role/AccruedLiabilities", "longName": "0000017 - Disclosure - Accrued Liabilities", "shortName": "Accrued Liabilities", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.nv5.com/role/NotesPayableandOtherObligations", "longName": "0000018 - Disclosure - Notes Payable and Other Obligations", "shortName": "Notes Payable and Other Obligations", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.nv5.com/role/ContingentConsideration", "longName": "0000019 - Disclosure - Contingent Consideration", "shortName": "Contingent Consideration", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:LossContingencyDisclosures", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:LossContingencyDisclosures", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R20": { "role": "http://www.nv5.com/role/Leases", "longName": "0000020 - Disclosure - Leases", "shortName": "Leases", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "20", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R21": { "role": "http://www.nv5.com/role/CommitmentsandContingencies", "longName": "0000021 - Disclosure - Commitments and Contingencies", "shortName": "Commitments and Contingencies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "21", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R22": { "role": "http://www.nv5.com/role/StockBasedCompensation", "longName": "0000022 - Disclosure - Stock-Based Compensation", "shortName": "Stock-Based Compensation", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "22", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R23": { "role": "http://www.nv5.com/role/EmployeeBenefitPlan", "longName": "0000023 - Disclosure - Employee Benefit Plan", "shortName": "Employee Benefit Plan", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "23", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R24": { "role": "http://www.nv5.com/role/IncomeTaxes", "longName": "0000024 - Disclosure - Income Taxes", "shortName": "Income Taxes", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "24", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.nv5.com/role/ReportableSegments", "longName": "0000025 - Disclosure - Reportable Segments", "shortName": "Reportable Segments", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "25", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.nv5.com/role/SubsequentEvents", "longName": "0000026 - Disclosure - Subsequent Events", "shortName": "Subsequent Events", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "26", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies", "longName": "9954471 - Disclosure - Summary of Significant Accounting Policies (Policies)", "shortName": "Summary of Significant Accounting Policies (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "27", "firstAnchor": { "contextRef": "c-1", "name": "nvee:BasisOfPresentationAndPrinciplesOfConsolidationPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "nvee:BasisOfPresentationAndPrinciplesOfConsolidationPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesTables", "longName": "9954472 - Disclosure - Summary of Significant Accounting Policies (Tables)", "shortName": "Summary of Significant Accounting Policies (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "firstAnchor": { "contextRef": "c-1", "name": "nvee:ScheduleOfPropertyPlantAndEquipmentEstimatedUsefulLifeTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "nvee:ScheduleOfPropertyPlantAndEquipmentEstimatedUsefulLifeTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.nv5.com/role/EarningsperShareTables", "longName": "9954473 - Disclosure - Earnings per Share (Tables)", "shortName": "Earnings per Share (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "29", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.nv5.com/role/BusinessAcquisitionsTables", "longName": "9954474 - Disclosure - Business Acquisitions (Tables)", "shortName": "Business Acquisitions (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "30", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.nv5.com/role/BilledandUnbilledReceivablesTables", "longName": "9954475 - Disclosure - Billed and Unbilled Receivables (Tables)", "shortName": "Billed and Unbilled Receivables (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "31", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.nv5.com/role/PropertyandEquipmentnetTables", "longName": "9954476 - Disclosure - Property and Equipment, net (Tables)", "shortName": "Property and Equipment, net (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "32", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R33": { "role": "http://www.nv5.com/role/GoodwillandIntangibleAssetsTables", "longName": "9954477 - Disclosure - Goodwill and Intangible Assets (Tables)", "shortName": "Goodwill and Intangible Assets (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "33", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R34": { "role": "http://www.nv5.com/role/AccruedLiabilitiesTables", "longName": "9954478 - Disclosure - Accrued Liabilities (Tables)", "shortName": "Accrued Liabilities (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "34", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R35": { "role": "http://www.nv5.com/role/NotesPayableandOtherObligationsTables", "longName": "9954479 - Disclosure - Notes Payable and Other Obligations (Tables)", "shortName": "Notes Payable and Other Obligations (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "35", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R36": { "role": "http://www.nv5.com/role/ContingentConsiderationTables", "longName": "9954480 - Disclosure - Contingent Consideration (Tables)", "shortName": "Contingent Consideration (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "36", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionContingentConsiderationTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionContingentConsiderationTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R37": { "role": "http://www.nv5.com/role/LeasesTables", "longName": "9954481 - Disclosure - Leases (Tables)", "shortName": "Leases (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "37", "firstAnchor": { "contextRef": "c-1", "name": "nvee:BalanceSheetClassificationOfOperatingAndFinanceLeasesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "nvee:BalanceSheetClassificationOfOperatingAndFinanceLeasesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R38": { "role": "http://www.nv5.com/role/StockBasedCompensationTables", "longName": "9954482 - Disclosure - Stock-Based Compensation (Tables)", "shortName": "Stock-Based Compensation (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "38", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R39": { "role": "http://www.nv5.com/role/IncomeTaxesTables", "longName": "9954483 - Disclosure - Income Taxes (Tables)", "shortName": "Income Taxes (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "39", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R40": { "role": "http://www.nv5.com/role/ReportableSegmentsTables", "longName": "9954484 - Disclosure - Reportable Segments (Tables)", "shortName": "Reportable Segments (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "40", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R41": { "role": "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails", "longName": "9954485 - Disclosure - Summary of Significant Accounting Policies - Narrative (Details)", "shortName": "Summary of Significant Accounting Policies - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ImpairmentOfLongLivedAssetsHeldForUse", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ImpairmentOfLongLivedAssetsHeldForUse", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R42": { "role": "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesEstimatedUsefulLivesofPropertyandEquipmentDetails", "longName": "9954486 - Disclosure - Summary of Significant Accounting Policies - Estimated Useful Lives of Property and Equipment (Details)", "shortName": "Summary of Significant Accounting Policies - Estimated Useful Lives of Property and Equipment (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "c-42", "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "td", "tr", "table", "div", "nvee:ScheduleOfPropertyPlantAndEquipmentEstimatedUsefulLifeTableTextBlock", "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-42", "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "td", "tr", "table", "div", "nvee:ScheduleOfPropertyPlantAndEquipmentEstimatedUsefulLifeTableTextBlock", "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R43": { "role": "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails", "longName": "9954487 - Disclosure - Summary of Significant Accounting Policies - Revenue Recognition (Details)", "shortName": "Summary of Significant Accounting Policies - Revenue Recognition (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R44": { "role": "http://www.nv5.com/role/EarningsPerShareNarrativeDetails", "longName": "9954488 - Disclosure - Earnings Per Share - Narrative (Details)", "shortName": "Earnings Per Share - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "0", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "0", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R45": { "role": "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails", "longName": "9954489 - Disclosure - Earnings per Share - Schedule of Earnings Per Share, Basic and Diluted (Details)", "shortName": "Earnings per Share - Schedule of Earnings Per Share, Basic and Diluted (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R46": { "role": "http://www.nv5.com/role/StockholdersEquityDetails", "longName": "9954490 - Disclosure - Stockholders' Equity (Details)", "shortName": "Stockholders' Equity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ProceedsFromIssuanceOfCommonStock", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-58", "name": "us-gaap:StockIssuedDuringPeriodSharesNewIssues", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } }, "R47": { "role": "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "longName": "9954491 - Disclosure - Business Acquisitions - Narrative (Details)", "shortName": "Business Acquisitions - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:BusinessCombinationContingentConsiderationLiability", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionContingentConsiderationTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:BusinessCombinationAcquisitionRelatedCosts", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } }, "R48": { "role": "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "longName": "9954492 - Disclosure - Business Acquisitions - The Fair Values of Assets Acquired and Liabilities Assumed (Details)", "shortName": "Business Acquisitions - The Fair Values of Assets Acquired and Liabilities Assumed (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "c-102", "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-102", "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R49": { "role": "http://www.nv5.com/role/BusinessAcquisitionsResultsofOperationsfromanyBusinessAcquiredDetails", "longName": "9954493 - Disclosure - Business Acquisitions - Results of Operations from any Business Acquired (Details)", "shortName": "Business Acquisitions - Results of Operations from any Business Acquired (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R50": { "role": "http://www.nv5.com/role/BusinessAcquisitionsProFormaConsolidatedResultsofOperationsDetails", "longName": "9954494 - Disclosure - Business Acquisitions - Pro Forma Consolidated Results of Operations (Details)", "shortName": "Business Acquisitions - Pro Forma Consolidated Results of Operations (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:BusinessAcquisitionsProFormaRevenue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:BusinessAcquisitionsProFormaRevenue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R51": { "role": "http://www.nv5.com/role/BilledandUnbilledReceivablesSummaryofBilledandUnbilledReceivablesDetails", "longName": "9954495 - Disclosure - Billed and Unbilled Receivables - Summary of Billed and Unbilled Receivables (Details)", "shortName": "Billed and Unbilled Receivables - Summary of Billed and Unbilled Receivables (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:AccountsReceivableGross", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:AccountsReceivableGross", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R52": { "role": "http://www.nv5.com/role/BilledandUnbilledReceivablesActivityintheAllowanceforDoubtfulAccountsDetails", "longName": "9954496 - Disclosure - Billed and Unbilled Receivables - Activity in the Allowance for Doubtful Accounts (Details)", "shortName": "Billed and Unbilled Receivables - Activity in the Allowance for Doubtful Accounts (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } }, "R53": { "role": "http://www.nv5.com/role/PropertyandEquipmentnetScheduleofpropertyandequipmentDetails", "longName": "9954497 - Disclosure - Property and Equipment, net - Schedule of property and equipment (Details)", "shortName": "Property and Equipment, net - Schedule of property and equipment (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "53", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R54": { "role": "http://www.nv5.com/role/PropertyandEquipmentnetNarrativeDetails", "longName": "9954498 - Disclosure - Property and Equipment, net - Narrative (Details)", "shortName": "Property and Equipment, net - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "54", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:Depreciation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:Depreciation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R55": { "role": "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails", "longName": "9954499 - Disclosure - Goodwill and Intangible Assets - Schedule of Goodwill (Details)", "shortName": "Goodwill and Intangible Assets - Schedule of Goodwill (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "55", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:Goodwill", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfGoodwillTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-20", "name": "us-gaap:Goodwill", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfGoodwillTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } }, "R56": { "role": "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails", "longName": "9954500 - Disclosure - Goodwill and Intangible Assets - Narrative (Details)", "shortName": "Goodwill and Intangible Assets - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "56", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R57": { "role": "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails", "longName": "9954501 - Disclosure - Goodwill and Intangible Assets - Schedule of Finite-lived Intangible Assets (Details)", "shortName": "Goodwill and Intangible Assets - Schedule of Finite-lived Intangible Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "57", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R58": { "role": "http://www.nv5.com/role/GoodwillandIntangibleAssetsWeightedAverageUsefulLivesofIntangibleAssetsDetails", "longName": "9954502 - Disclosure - Goodwill and Intangible Assets - Weighted Average Useful Lives of Intangible Assets (Details)", "shortName": "Goodwill and Intangible Assets - Weighted Average Useful Lives of Intangible Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "58", "firstAnchor": { "contextRef": "c-157", "name": "us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-157", "name": "us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R59": { "role": "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFutureEstimatedAggregateAmortizationRelatedtoFinitelivedIntangibleAssetsDetails", "longName": "9954503 - Disclosure - Goodwill and Intangible Assets - Schedule of Future Estimated Aggregate Amortization Related to Finite-lived Intangible Assets (Details)", "shortName": "Goodwill and Intangible Assets - Schedule of Future Estimated Aggregate Amortization Related to Finite-lived Intangible Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "59", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R60": { "role": "http://www.nv5.com/role/AccruedLiabilitiesDetails", "longName": "9954504 - Disclosure - Accrued Liabilities (Details)", "shortName": "Accrued Liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "60", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:OperatingLeaseLiabilityCurrent", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:AccruedVacationCurrent", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } }, "R61": { "role": "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails", "longName": "9954505 - Disclosure - Notes Payable and Other Obligations - Notes Payable and Other Obligations (Details)", "shortName": "Notes Payable and Other Obligations - Notes Payable and Other Obligations (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "61", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:FinanceLeaseLiability", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:DeferredFinanceCostsNet", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } }, "R62": { "role": "http://www.nv5.com/role/NotesPayableandOtherObligationsFutureContractualMaturitiesofLongtermDebtDetails", "longName": "9954506 - Disclosure - Notes Payable and Other Obligations - Future Contractual Maturities of Long-term Debt (Details)", "shortName": "Notes Payable and Other Obligations - Future Contractual Maturities of Long-term Debt (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "62", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R63": { "role": "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails", "longName": "9954507 - Disclosure - Notes Payable and Other Obligations - Narrative (Details)", "shortName": "Notes Payable and Other Obligations - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "63", "firstAnchor": { "contextRef": "c-4", "name": "nvee:DebtCovenantLiquidityAvailability", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "nvee:DebtCovenantLiquidityAvailability", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R64": { "role": "http://www.nv5.com/role/ContingentConsiderationDetails", "longName": "9954508 - Disclosure - Contingent Consideration (Details)", "shortName": "Contingent Consideration (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "64", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:BusinessCombinationContingentConsiderationLiability", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionContingentConsiderationTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "nvee:BusinessCombinationContingentConsiderationAdditionsForAcquisitions", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionContingentConsiderationTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } }, "R65": { "role": "http://www.nv5.com/role/LeasesNarrativeDetails", "longName": "9954509 - Disclosure - Leases - Narrative (Details)", "shortName": "Leases - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "65", "firstAnchor": { "contextRef": "c-1", "name": "nvee:NumberOfEquipmentOperatingLeases", "unitRef": "lease", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "nvee:NumberOfEquipmentOperatingLeases", "unitRef": "lease", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R66": { "role": "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails", "longName": "9954510 - Disclosure - Leases - Schedule of Supplemental Balance Sheet Information (Details)", "shortName": "Leases - Schedule of Supplemental Balance Sheet Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "66", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:OperatingLeaseRightOfUseAsset", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:FinanceLeaseRightOfUseAsset", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "nvee:BalanceSheetClassificationOfOperatingAndFinanceLeasesTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } }, "R67": { "role": "http://www.nv5.com/role/LeasesScheduleofLeaseTermandDiscountRateDetails", "longName": "9954511 - Disclosure - Leases - Schedule of Lease Term and Discount Rate (Details)", "shortName": "Leases - Schedule of Lease Term and Discount Rate (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "67", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "td", "tr", "table", "div", "nvee:LeaseTermAndDiscountRateTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "td", "tr", "table", "div", "nvee:LeaseTermAndDiscountRateTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R68": { "role": "http://www.nv5.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails", "longName": "9954512 - Disclosure - Leases - Schedule of Supplemental Cash Flow Information (Details)", "shortName": "Leases - Schedule of Supplemental Cash Flow Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "68", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:OperatingLeasePayments", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "nvee:LeasesSupplementalCashFlowInformationTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:OperatingLeasePayments", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "nvee:LeasesSupplementalCashFlowInformationTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R69": { "role": "http://www.nv5.com/role/LeasesScheduleofLeaseCostDetails", "longName": "9954513 - Disclosure - Leases - Schedule of Lease Cost (Details)", "shortName": "Leases - Schedule of Lease Cost (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "69", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:OperatingLeaseCost", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:OperatingLeaseCost", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R70": { "role": "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails", "longName": "9954514 - Disclosure - Leases - Schedule of Maturities of Lease Liabilities (Details)", "shortName": "Leases - Schedule of Maturities of Lease Liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "70", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R71": { "role": "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails", "longName": "9954515 - Disclosure - Stock-Based Compensation - Narrative (Details)", "shortName": "Stock-Based Compensation - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "71", "firstAnchor": { "contextRef": "c-196", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-196", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R72": { "role": "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails", "longName": "9954516 - Disclosure - Stock-Based Compensation - Restricted Stock Awards (Details)", "shortName": "Stock-Based Compensation - Restricted Stock Awards (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "72", "firstAnchor": { "contextRef": "c-195", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-191", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } }, "R73": { "role": "http://www.nv5.com/role/EmployeeBenefitPlanDetails", "longName": "9954517 - Disclosure - Employee Benefit Plan (Details)", "shortName": "Employee Benefit Plan (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "73", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R74": { "role": "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails", "longName": "9954518 - Disclosure - Income Taxes - Income Tax Expense (Benefit) (Details)", "shortName": "Income Taxes - Income Tax Expense (Benefit) (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "74", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:CurrentFederalTaxExpenseBenefit", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:CurrentFederalTaxExpenseBenefit", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R75": { "role": "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails", "longName": "9954519 - Disclosure - Income Taxes - Net Deferred Income Tax Asset (Liability) (Details)", "shortName": "Income Taxes - Net Deferred Income Tax Asset (Liability) (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "75", "firstAnchor": { "contextRef": "c-4", "name": "nvee:DeferredTaxAssetsLeaseLiabilities", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "nvee:DeferredTaxAssetsLeaseLiabilities", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R76": { "role": "http://www.nv5.com/role/IncomeTaxesNarrativeDetails", "longName": "9954520 - Disclosure - Income Taxes - Narrative (Details)", "shortName": "Income Taxes - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "76", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:DeferredTaxLiabilities", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "unitRef": "number", "xsiNil": "false", "lang": "en-US", "decimals": "3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } }, "R77": { "role": "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitReconciliationDetails", "longName": "9954521 - Disclosure - Income Taxes - Income Tax Expense (Benefit) Reconciliation (Details)", "shortName": "Income Taxes - Income Tax Expense (Benefit) Reconciliation (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "77", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R78": { "role": "http://www.nv5.com/role/IncomeTaxesUnrecognizedTaxLiabilityDetails", "longName": "9954522 - Disclosure - Income Taxes - Unrecognized Tax Liability (Details)", "shortName": "Income Taxes - Unrecognized Tax Liability (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "78", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:UnrecognizedTaxBenefits", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } }, "R79": { "role": "http://www.nv5.com/role/ReportableSegmentsNarrativeDetails", "longName": "9954523 - Disclosure - Reportable Segments - Narrative (Details)", "shortName": "Reportable Segments - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "79", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NumberOfOperatingSegments", "unitRef": "segment", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "us-gaap:NumberOfReportingUnits", "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:NumberOfOperatingSegments", "unitRef": "segment", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "us-gaap:NumberOfReportingUnits", "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true, "unique": true } }, "R80": { "role": "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails", "longName": "9954524 - Disclosure - Reportable Segments - Summarized Financial Information (Details)", "shortName": "Reportable Segments - Summarized Financial Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "80", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-210", "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } }, "R81": { "role": "http://www.nv5.com/role/ReportableSegmentsRevenuebyGeographicLocationDetails", "longName": "9954525 - Disclosure - Reportable Segments - Revenue by Geographic Location (Details)", "shortName": "Reportable Segments - Revenue by Geographic Location (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "81", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-227", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } }, "R82": { "role": "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "longName": "9954526 - Disclosure - Reportable Segments - Revenue by Customer Type (Details)", "shortName": "Reportable Segments - Revenue by Customer Type (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "82", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-254", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } }, "R83": { "role": "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails", "longName": "9954527 - Disclosure - Reportable Segments - Revenue by Contract Type (Details)", "shortName": "Reportable Segments - Revenue by Contract Type (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "83", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-278", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "us-gaap:ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } }, "R84": { "role": "http://www.nv5.com/role/SubsequentEventsDetails", "longName": "9954528 - Disclosure - Subsequent Events (Details)", "shortName": "Subsequent Events (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "84", "firstAnchor": { "contextRef": "c-64", "name": "us-gaap:BusinessCombinationConsiderationTransferred1", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-299", "name": "us-gaap:BusinessCombinationConsiderationTransferred1", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "nvee-20231230.htm", "unique": true } } }, "tag": { "nvee_APICShareBasedPaymentArrangementReclassificationsIncreaseForCostRecognition": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "APICShareBasedPaymentArrangementReclassificationsIncreaseForCostRecognition", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Reclassification of liability-classified awards to equity-classified awards", "label": "APIC, Share-Based Payment Arrangement, Reclassifications, Increase for Cost Recognition", "documentation": "APIC, Share-Based Payment Arrangement, Reclassifications, Increase for Cost Recognition" } } }, "auth_ref": [] }, "nvee_ARCreditAgreementMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "ARCreditAgreementMember", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "AR Credit Agreement", "label": "AR Credit Agreement [Member]", "documentation": "AR Credit Agreement [Member]" } } }, "auth_ref": [] }, "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountingPoliciesAbstract", "lang": { "en-us": { "role": { "terseLabel": "Accounting Policies [Abstract]", "label": "Accounting Policies [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "presentation": [ "http://www.nv5.com/role/AccruedLiabilities" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued Liabilities", "label": "Accounts Payable and Accrued Liabilities Disclosure [Text Block]", "documentation": "The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period." } } }, "auth_ref": [ "r26" ] }, "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableCurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts payable", "label": "Accounts Payable, Current", "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r25", "r765" ] }, "us-gaap_AccountsReceivableGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableGross", "crdr": "debit", "calculation": { "http://www.nv5.com/role/BilledandUnbilledReceivablesSummaryofBilledandUnbilledReceivablesDetails": { "parentTag": "us-gaap_AccountsReceivableNetCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesSummaryofBilledandUnbilledReceivablesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Billed receivables", "label": "Accounts Receivable, before Allowance for Credit Loss", "documentation": "Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business." } } }, "auth_ref": [ "r207", "r321", "r892" ] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 4.0 }, "http://www.nv5.com/role/BilledandUnbilledReceivablesSummaryofBilledandUnbilledReceivablesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesSummaryofBilledandUnbilledReceivablesDetails", "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Billed receivables, net", "totalLabel": "Billed receivables, net", "label": "Accounts Receivable, after Allowance for Credit Loss, Current", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current." } } }, "auth_ref": [ "r321", "r322" ] }, "us-gaap_AccruedEmployeeBenefitsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedEmployeeBenefitsCurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/AccruedLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/AccruedLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Benefits", "label": "Accrued Employee Benefits, Current", "documentation": "Carrying value as of the balance sheet date of obligations, excluding pension and other postretirement benefits, incurred through that date and payable for perquisites provided to employees pertaining to services received from them. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r29" ] }, "us-gaap_AccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 5.0 }, "http://www.nv5.com/role/AccruedLiabilitiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/AccruedLiabilitiesDetails", "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued liabilities", "totalLabel": "Total", "label": "Accrued Liabilities, Current", "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)." } } }, "auth_ref": [ "r29" ] }, "nvee_AccruedOperatingExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "AccruedOperatingExpenses", "crdr": "credit", "calculation": { "http://www.nv5.com/role/AccruedLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.nv5.com/role/AccruedLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued operating expenses", "label": "Accrued Operating Expenses", "documentation": "Accrued Operating Expenses" } } }, "auth_ref": [] }, "nvee_AccruedPayrollAndPayrollTaxesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "AccruedPayrollAndPayrollTaxesCurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/AccruedLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/AccruedLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Payroll and related taxes", "label": "Payroll and related taxes", "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for payroll and statutory payroll taxes incurred through that date and withheld from employees pertaining to services received from them, including entity's matching share of the employees FICA taxes and contributions to the state and federal unemployment insurance programs. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [] }, "us-gaap_AccruedVacationCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedVacationCurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/AccruedLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/AccruedLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued vacation", "label": "Accrued Vacation, Current", "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for unused vacation time owed to employees based on the entity's vacation benefit given to its employees. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r29", "r84" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated other comprehensive income (loss)", "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax", "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source." } } }, "auth_ref": [ "r36", "r37", "r127", "r208", "r615", "r640", "r643" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedOtherComprehensiveIncomeMember", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "AOCI Attributable to Parent", "label": "AOCI Attributable to Parent [Member]", "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r7", "r19", "r37", "r545", "r548", "r591", "r636", "r637", "r801", "r802", "r803", "r812", "r813", "r814" ] }, "us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AcquiredFiniteLivedIntangibleAssetsLineItems", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Acquired Finite-Lived Intangible Assets [Line Items]", "label": "Acquired Finite-Lived Intangible Assets [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsWeightedAverageUsefulLivesofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average useful life", "label": "Acquired Finite-Lived Intangible Assets, Weighted Average Useful Life", "documentation": "Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r145" ] }, "us-gaap_AdditionalPaidInCapital": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapital", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Additional paid-in capital", "label": "Additional Paid in Capital", "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock." } } }, "auth_ref": [ "r122", "r765", "r896" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Additional Paid-In Capital", "label": "Additional Paid-in Capital [Member]", "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders." } } }, "auth_ref": [ "r492", "r493", "r494", "r653", "r812", "r813", "r814", "r877", "r898" ] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToAdditionalPaidInCapitalOther", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Reclassification of liability-classified awards to equity-classified awards", "label": "Adjustments to Additional Paid in Capital, Other", "documentation": "Amount of other increase (decrease) in additional paid in capital (APIC)." } } }, "auth_ref": [] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-based compensation", "label": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition", "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement." } } }, "auth_ref": [ "r86", "r87", "r457" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustments to reconcile net income to net cash provided by operating activities:", "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AdvertisingCostsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdvertisingCostsPolicyTextBlock", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Advertising", "label": "Advertising Cost [Policy Text Block]", "documentation": "Disclosure of accounting policy for advertising cost." } } }, "auth_ref": [ "r176" ] }, "us-gaap_AdvertisingExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdvertisingExpense", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Advertising expense", "label": "Advertising Expense", "documentation": "Amount charged to advertising expense for the period, which are expenses incurred with the objective of increasing revenue for a specified brand, product or product line." } } }, "auth_ref": [ "r496" ] }, "us-gaap_AllocatedShareBasedCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllocatedShareBasedCompensationExpense", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred compensation", "label": "Share-Based Payment Arrangement, Expense", "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized." } } }, "auth_ref": [ "r487", "r495" ] }, "us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock", "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule Of Allowance for Credit Losses on Financing Receivables", "label": "Financing Receivable, Allowance for Credit Loss [Table Text Block]", "documentation": "Tabular disclosure of allowance for credit loss on financing receivable." } } }, "auth_ref": [ "r66", "r820" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivable", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesActivityintheAllowanceforDoubtfulAccountsDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Balance as of the beginning of the year", "periodEndLabel": "Balance as of the end of the year", "label": "Accounts Receivable, Allowance for Credit Loss", "documentation": "Amount of allowance for credit loss on accounts receivable." } } }, "auth_ref": [ "r209", "r323", "r329", "r330", "r333", "r892" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/BilledandUnbilledReceivablesSummaryofBilledandUnbilledReceivablesDetails": { "parentTag": "us-gaap_AccountsReceivableNetCurrent", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesSummaryofBilledandUnbilledReceivablesDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Less: allowance for doubtful accounts", "label": "Accounts Receivable, Allowance for Credit Loss, Current", "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current." } } }, "auth_ref": [ "r209", "r323", "r329" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableRollforward", "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesActivityintheAllowanceforDoubtfulAccountsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts Receivable, Allowance for Credit Loss [Roll Forward]", "label": "Accounts Receivable, Allowance for Credit Loss [Roll Forward]", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableWriteOffs", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesActivityintheAllowanceforDoubtfulAccountsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Write-offs of uncollectible accounts", "label": "Accounts Receivable, Allowance for Credit Loss, Writeoff", "documentation": "Amount of direct write-downs of accounts receivable charged against the allowance." } } }, "auth_ref": [ "r332" ] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AmendmentFlag", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Amendment Flag", "label": "Amendment Flag", "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission." } } }, "auth_ref": [] }, "us-gaap_AmortizationOfFinancingCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AmortizationOfFinancingCosts", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 12.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS", "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Amortization of debt issuance costs", "label": "Amortization of Debt Issuance Costs", "documentation": "Amount of amortization expense attributable to debt issuance costs." } } }, "auth_ref": [ "r131", "r402", "r571", "r806" ] }, "us-gaap_AmortizationOfIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AmortizationOfIntangibleAssets", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Amortization expense", "terseLabel": "Amortization expense", "label": "Amortization of Intangible Assets", "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method." } } }, "auth_ref": [ "r12", "r69", "r73" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "presentation": [ "http://www.nv5.com/role/EarningsPerShareNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Antidilutive securities (in shares)", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented." } } }, "auth_ref": [ "r281" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis", "presentation": [ "http://www.nv5.com/role/EarningsPerShareNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Antidilutive Securities [Axis]", "label": "Antidilutive Securities [Axis]", "documentation": "Information by type of antidilutive security." } } }, "auth_ref": [ "r51" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems", "presentation": [ "http://www.nv5.com/role/EarningsPerShareNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_AntidilutiveSecuritiesNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesNameDomain", "presentation": [ "http://www.nv5.com/role/EarningsPerShareNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Antidilutive Securities, Name [Domain]", "label": "Antidilutive Securities, Name [Domain]", "documentation": "Incremental common shares attributable to securities that were not included in diluted earnings per share (EPS) because to do so would increase EPS amounts or decrease loss per share amounts for the period presented." } } }, "auth_ref": [ "r51" ] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Assets", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total Assets", "terseLabel": "Assets", "label": "Assets", "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." } } }, "auth_ref": [ "r167", "r203", "r234", "r291", "r306", "r312", "r324", "r367", "r368", "r370", "r371", "r372", "r374", "r376", "r378", "r379", "r540", "r542", "r559", "r609", "r681", "r765", "r777", "r838", "r839", "r883" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsAbstract", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Assets", "verboseLabel": "Assets", "label": "Assets [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrent", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "totalLabel": "Total current assets", "label": "Assets, Current", "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." } } }, "auth_ref": [ "r197", "r210", "r234", "r324", "r367", "r368", "r370", "r371", "r372", "r374", "r376", "r378", "r379", "r540", "r542", "r559", "r765", "r838", "r839", "r883" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Current assets:", "label": "Assets, Current [Abstract]" } } }, "auth_ref": [] }, "nvee_AuditInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "AuditInformationAbstract", "lang": { "en-us": { "role": { "label": "Audit Information [Abstract]", "documentation": "Audit Information" } } }, "auth_ref": [] }, "dei_AuditorFirmId": { "xbrltype": "nonemptySequenceNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorFirmId", "presentation": [ "http://www.nv5.com/role/AuditInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Auditor Firm ID", "label": "Auditor Firm ID", "documentation": "PCAOB issued Audit Firm Identifier" } } }, "auth_ref": [ "r782", "r783", "r784" ] }, "dei_AuditorLocation": { "xbrltype": "internationalNameItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorLocation", "presentation": [ "http://www.nv5.com/role/AuditInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Auditor Location", "label": "Auditor Location" } } }, "auth_ref": [ "r782", "r783", "r784" ] }, "dei_AuditorName": { "xbrltype": "internationalNameItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorName", "presentation": [ "http://www.nv5.com/role/AuditInformation" ], "lang": { "en-us": { "role": { "terseLabel": "Auditor Name", "label": "Auditor Name" } } }, "auth_ref": [ "r782", "r783", "r784" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AwardTypeAxis", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails", "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Award Type [Axis]", "label": "Award Type [Axis]", "documentation": "Information by type of award under share-based payment arrangement." } } }, "auth_ref": [ "r461", "r462", "r463", "r464", "r465", "r466", "r467", "r468", "r469", "r470", "r471", "r472", "r473", "r474", "r475", "r476", "r477", "r478", "r479", "r480", "r481", "r482", "r483", "r484", "r485", "r486" ] }, "nvee_AximGeospatialLLCMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "AximGeospatialLLCMember", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "http://www.nv5.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Axim Geospatial, LLC", "label": "Axim Geospatial, LLC [Member]", "documentation": "Axim Geospatial, LLC" } } }, "auth_ref": [] }, "nvee_BTSMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "BTSMember", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyGeographicLocationDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "BTS", "label": "BTS [Member]", "documentation": "Represents the operating and reportable segment Buildings, Energy & Science (BES), which includes energy and environmental practices as well as buildings program management." } } }, "auth_ref": [] }, "nvee_BalanceSheetClassificationOfOperatingAndFinanceLeasesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "BalanceSheetClassificationOfOperatingAndFinanceLeasesTableTextBlock", "presentation": [ "http://www.nv5.com/role/LeasesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Supplemental Balance Sheet Information", "label": "Balance Sheet Classification of Operating and Finance Leases [Table Text Block]", "documentation": "Tabular disclosure of the balance sheet classification of leased assets and liabilities under operating and finance leases." } } }, "auth_ref": [] }, "nvee_BasisOfPresentationAndPrinciplesOfConsolidationPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "BasisOfPresentationAndPrinciplesOfConsolidationPolicyTextBlock", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Basis of Presentation and Principles of Consolidation", "label": "Basis of Presentation and Principles of Consolidation [Policy Text Block]", "documentation": "Disclosure of accounting policy for the basis of presentation and principles of consolidation for the company." } } }, "auth_ref": [] }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionAcquireeDomain", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "http://www.nv5.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Business Acquisition, Acquiree [Domain]", "label": "Business Acquisition, Acquiree [Domain]", "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree." } } }, "auth_ref": [ "r534", "r758", "r759" ] }, "us-gaap_BusinessAcquisitionAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionAxis", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "http://www.nv5.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Business Acquisition [Axis]", "label": "Business Acquisition [Axis]", "documentation": "Information by business combination or series of individually immaterial business combinations." } } }, "auth_ref": [ "r93", "r95", "r534", "r758", "r759" ] }, "us-gaap_BusinessAcquisitionEquityInterestIssuedOrIssuableValueAssigned": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionEquityInterestIssuedOrIssuableValueAssigned", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Consideration of common stock", "label": "Business Acquisition, Equity Interest Issued or Issuable, Value Assigned", "documentation": "Value of equity interests (such as common shares, preferred shares, or partnership interest) issued or issuable to acquire the entity." } } }, "auth_ref": [ "r164" ] }, "us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionProFormaEarningsPerShareBasic", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsProFormaConsolidatedResultsofOperationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Basic earnings per share (in dollars per Share)", "label": "Business Acquisition, Pro Forma Earnings Per Share, Basic", "documentation": "The pro forma basic net income per share for a period as if the business combination or combinations had been completed at the beginning of a period." } } }, "auth_ref": [ "r794", "r795" ] }, "us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionProFormaEarningsPerShareDiluted", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsProFormaConsolidatedResultsofOperationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Diluted earnings per share (in dollars per Share)", "label": "Business Acquisition, Pro Forma Earnings Per Share, Diluted", "documentation": "The pro forma diluted net income per share for a period as if the business combination or combinations had been completed at the beginning of a period." } } }, "auth_ref": [ "r794", "r795" ] }, "us-gaap_BusinessAcquisitionProFormaInformationTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionProFormaInformationTextBlock", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Proforma Consolidated Results of Operations", "label": "Business Acquisition, Pro Forma Information [Table Text Block]", "documentation": "Tabular disclosure of pro forma results of operations for a material business acquisition or series of individually immaterial business acquisitions that are material in the aggregate." } } }, "auth_ref": [ "r794", "r795" ] }, "us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill", "label": "Business Acquisition, Goodwill, Expected Tax Deductible Amount", "documentation": "The amount of goodwill arising from a business combination that is expected to be deductible for tax purposes." } } }, "auth_ref": [ "r105" ] }, "us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionsProFormaNetIncomeLoss", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsProFormaConsolidatedResultsofOperationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Net income", "label": "Business Acquisition, Pro Forma Net Income (Loss)", "documentation": "The pro forma net Income or Loss for the period as if the business combination or combinations had been completed at the beginning of a period." } } }, "auth_ref": [ "r532", "r533" ] }, "us-gaap_BusinessAcquisitionsProFormaRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionsProFormaRevenue", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsProFormaConsolidatedResultsofOperationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Gross revenues", "label": "Business Acquisition, Pro Forma Revenue", "documentation": "The pro forma revenue for a period as if the business combination or combinations had been completed at the beginning of the period." } } }, "auth_ref": [ "r532", "r533" ] }, "us-gaap_BusinessCombinationAcquisitionRelatedCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationAcquisitionRelatedCosts", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Business combination, acquisition related costs", "label": "Business Combination, Acquisition Related Costs", "documentation": "This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities." } } }, "auth_ref": [ "r92" ] }, "us-gaap_BusinessCombinationAndAssetAcquisitionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationAndAssetAcquisitionAbstract", "lang": { "en-us": { "role": { "label": "Business Combination and Asset Acquisition [Abstract]" } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationConsiderationTransferred1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationConsiderationTransferred1", "crdr": "credit", "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "http://www.nv5.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate purchase price", "totalLabel": "Total Consideration", "label": "Business Combination, Consideration Transferred", "documentation": "Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer." } } }, "auth_ref": [ "r2", "r3", "r16" ] }, "us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Consideration transferred of common stock", "label": "Business Combination, Consideration Transferred, Equity Interests Issued and Issuable", "documentation": "Amount of equity interests of the acquirer, including instruments or interests issued or issuable in consideration for the business combination." } } }, "auth_ref": [ "r2", "r3" ] }, "us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationConsiderationTransferredLiabilitiesIncurred", "crdr": "credit", "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "parentTag": "us-gaap_BusinessCombinationConsiderationTransferred1", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Contingent earn-out liability (Cash and stock)", "label": "Business Combination, Consideration Transferred, Liabilities Incurred", "documentation": "Amount of liabilities incurred by the acquirer as part of consideration transferred in a business combination." } } }, "auth_ref": [ "r2", "r3", "r102", "r537" ] }, "nvee_BusinessCombinationContingentConsiderationAdditionsForAcquisitions": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "BusinessCombinationContingentConsiderationAdditionsForAcquisitions", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/ContingentConsiderationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Additions for acquisitions", "label": "Business Combination, Contingent Consideration, Additions for Acquisitions", "documentation": "Represents the additions for acquisitions during the period effecting a change in the contingent consideration liability." } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS", "http://www.nv5.com/role/ContingentConsiderationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Change in fair value of contingent consideration", "label": "Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability", "documentation": "Amount of increase (decrease) in the value of a contingent consideration liability, including, but not limited to, differences arising upon settlement." } } }, "auth_ref": [ "r539", "r805" ] }, "us-gaap_BusinessCombinationContingentConsiderationArrangementsRangeOfOutcomesValueHigh": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationContingentConsiderationArrangementsRangeOfOutcomesValueHigh", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Earn-out of cash", "label": "Business Combination, Contingent Consideration Arrangements, Range of Outcomes, Value, High", "documentation": "For contingent consideration arrangements recognized in connection with a business combination, this element represents an estimate of the high-end of the potential range (undiscounted) of the consideration which may be paid." } } }, "auth_ref": [ "r104" ] }, "nvee_BusinessCombinationContingentConsiderationIncreaseOfLiabilityRelatedToReMeasurementOfFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "BusinessCombinationContingentConsiderationIncreaseOfLiabilityRelatedToReMeasurementOfFairValue", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/ContingentConsiderationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Increase (decrease) of liability related to re-measurement of fair value", "label": "Business Combination, Contingent Consideration, Increase of Liability Related To Re-measurement of Fair Value", "documentation": "Represents the amount of increase (reduction) of the contingent consideration liability during the period related to re-measurement of fair value." } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationContingentConsiderationLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationContingentConsiderationLiability", "crdr": "credit", "calculation": { "http://www.nv5.com/role/ContingentConsiderationDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/ContingentConsiderationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Earn-out of cash fair value", "periodStartLabel": "Contingent consideration, beginning of the year", "periodEndLabel": "Total contingent consideration, end of the period", "label": "Business Combination, Contingent Consideration, Liability", "documentation": "Amount of liability recognized arising from contingent consideration in a business combination." } } }, "auth_ref": [ "r4", "r103", "r538" ] }, "us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationContingentConsiderationLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/ContingentConsiderationDetails": { "parentTag": "us-gaap_BusinessCombinationContingentConsiderationLiability", "weight": 1.0, "order": 1.0 }, "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/ContingentConsiderationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Current portion of contingent consideration", "verboseLabel": "Current portion of contingent consideration", "label": "Business Combination, Contingent Consideration, Liability, Current", "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." } } }, "auth_ref": [ "r5", "r103" ] }, "us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationContingentConsiderationLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 2.0 }, "http://www.nv5.com/role/ContingentConsiderationDetails": { "parentTag": "us-gaap_BusinessCombinationContingentConsiderationLiability", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/ContingentConsiderationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Contingent consideration, less current portion", "verboseLabel": "Contingent consideration, less current portion", "label": "Business Combination, Contingent Consideration, Liability, Noncurrent", "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." } } }, "auth_ref": [ "r5", "r103" ] }, "nvee_BusinessCombinationContingentConsiderationLiabilityReductionOfLiabilityForPaymentsMade": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "BusinessCombinationContingentConsiderationLiabilityReductionOfLiabilityForPaymentsMade", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/ContingentConsiderationDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Reduction of liability for payments made", "label": "Business Combination, Contingent Consideration Liability Reduction Of Liability For Payments Made", "documentation": "Represents the amount of reduction of liability for payments made, effecting a change in the contingent consideration liability during the period." } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationDisclosureTextBlock", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitions" ], "lang": { "en-us": { "role": { "terseLabel": "Business Acquisitions", "label": "Business Combination Disclosure [Text Block]", "documentation": "The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable)." } } }, "auth_ref": [ "r162", "r535" ] }, "nvee_BusinessCombinationProFormaInformationIncomeBeforeIncomeTaxesOfAcquireeSinceAcquisitionDateActual": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "BusinessCombinationProFormaInformationIncomeBeforeIncomeTaxesOfAcquireeSinceAcquisitionDateActual", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsResultsofOperationsfromanyBusinessAcquiredDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income before income taxes", "label": "nvee_BusinessCombinationProFormaInformationIncomeBeforeIncomeTaxesOfAcquireeSinceAcquisitionDateActual", "documentation": "This element represents the amount of income before income taxes of the acquiree since the acquisition date included in the consolidated income statement for the reporting period." } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsResultsofOperationsfromanyBusinessAcquiredDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Gross revenues", "label": "Business Combination, Pro Forma Information, Revenue of Acquiree since Acquisition Date, Actual", "documentation": "This element represents the amount of revenue of the acquiree since the acquisition date included in the consolidated income statement for the reporting period." } } }, "auth_ref": [ "r94" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "crdr": "debit", "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total Assets", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets", "documentation": "Amount of assets acquired at the acquisition date." } } }, "auth_ref": [ "r97" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents", "crdr": "debit", "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cash", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions, acquired at the acquisition date. 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." } } }, "auth_ref": [ "r97" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables", "crdr": "debit", "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Billed and unbilled receivables, net", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables", "documentation": "Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date." } } }, "auth_ref": [ "r97" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities", "crdr": "credit", "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Deferred tax liabilities", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Liabilities", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences assumed at the acquisition date." } } }, "auth_ref": [ "r97" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles", "crdr": "debit", "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible assets", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Finite-Lived Intangibles", "documentation": "The amount of identifiable intangible assets recognized as of the acquisition date." } } }, "auth_ref": [ "r96", "r97" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "crdr": "credit", "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Liabilities", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities", "documentation": "Amount of liabilities assumed at the acquisition date." } } }, "auth_ref": [ "r97" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet", "crdr": "debit", "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Net assets acquired", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net", "documentation": "Amount recognized as of the acquisition date for the identifiable assets acquired in excess of (less than) the aggregate liabilities assumed." } } }, "auth_ref": [ "r96", "r97" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets", "crdr": "debit", "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other assets", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Other Noncurrent Assets", "documentation": "Amount of other assets expected to be realized or consumed after one year or the normal operating cycle, if longer, acquired at the acquisition date." } } }, "auth_ref": [ "r97" ] }, "nvee_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPrepaidExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPrepaidExpenses", "crdr": "debit", "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Prepaid expenses", "label": "Prepaid expenses", "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, acquired at the acquisition date." } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment", "crdr": "debit", "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Property and equipment", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment", "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date." } } }, "auth_ref": [ "r96", "r97" ] }, "nvee_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRightOfUseAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRightOfUseAssets", "crdr": "debit", "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Right-of-use assets", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Right-Of-Use Assets", "documentation": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Right-Of-Use Assets" } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Excess consideration over the amounts assigned to the net assets acquired (Goodwill)", "label": "Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net", "documentation": "Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed." } } }, "auth_ref": [ "r97" ] }, "us-gaap_BusinessCombinationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessCombinationsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Business Combinations [Abstract]", "label": "Business Combinations [Abstract]" } } }, "auth_ref": [] }, "nvee_CAMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "CAMember", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "CALIFORNIA", "label": "CALIFORNIA [Member]", "documentation": "Represents the state of California." } } }, "auth_ref": [] }, "us-gaap_CapitalLeaseObligationsIncurred": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CapitalLeaseObligationsIncurred", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Finance leases", "label": "Lease Obligation Incurred", "documentation": "Amount of increase in lease obligation from new lease." } } }, "auth_ref": [ "r48", "r49" ] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Cash and cash equivalents", "label": "Cash and Cash Equivalents, at Carrying Value", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation." } } }, "auth_ref": [ "r45", "r199", "r740" ] }, "us-gaap_CashAndCashEquivalentsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsPolicyTextBlock", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Cash and Cash Equivalents", "label": "Cash and Cash Equivalents, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value." } } }, "auth_ref": [ "r46" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "periodStartLabel": "Cash and cash equivalents \u2013 beginning of period", "periodEndLabel": "Cash and cash equivalents \u2013 end of period", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents", "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r45", "r137", "r230" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "totalLabel": "Net increase (decrease) in cash and cash equivalents", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r6", "r137" ] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CityAreaCode", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "City Area Code", "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "us-gaap_ClassOfStockLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ClassOfStockLineItems", "presentation": [ "http://www.nv5.com/role/StockholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class of Stock [Line Items]", "label": "Class of Stock [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r204", "r205", "r206", "r286", "r410", "r411", "r412", "r414", "r417", "r422", "r424", "r647", "r648", "r649", "r650", "r752", "r789", "r807" ] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingencies", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Commitments and contingencies", "label": "Commitments and Contingencies", "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur." } } }, "auth_ref": [ "r33", "r113", "r612", "r668" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Commitments and Contingencies Disclosure [Abstract]", "label": "Commitments and Contingencies Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "presentation": [ "http://www.nv5.com/role/CommitmentsandContingencies" ], "lang": { "en-us": { "role": { "terseLabel": "Commitments and Contingencies", "label": "Commitments and Contingencies Disclosure [Text Block]", "documentation": "The entire disclosure for commitments and contingencies." } } }, "auth_ref": [ "r152", "r355", "r356", "r726", "r837" ] }, "nvee_CommitmentsandContingenciesDisclosureRollForward": { "xbrltype": "stringItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "CommitmentsandContingenciesDisclosureRollForward", "presentation": [ "http://www.nv5.com/role/ContingentConsiderationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Commitments and Contingencies Disclosure [Roll Forward]", "label": "Commitments and Contingencies Disclosure [Roll Forward]", "documentation": "Commitments and Contingencies Disclosure [Roll Forward]" } } }, "auth_ref": [] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockMember", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Common Stock", "label": "Common Stock [Member]", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r767", "r768", "r769", "r771", "r772", "r773", "r774", "r812", "r813", "r877", "r895", "r898" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, par value (in dollars per share)", "label": "Common Stock, Par or Stated Value Per Share", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r121" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, shares authorized (in shares)", "label": "Common Stock, Shares Authorized", "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r121", "r669" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, shares issued (in shares)", "label": "Common Stock, Shares, Issued", "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury." } } }, "auth_ref": [ "r121" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals", "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, shares outstanding (in shares)", "periodStartLabel": "Balance (in shares)", "periodEndLabel": "Balance (in shares)", "label": "Common Stock, Shares, Outstanding", "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation." } } }, "auth_ref": [ "r20", "r121", "r669", "r687", "r898", "r899" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockValue", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, $0.01 par value; 45,000,000 shares authorized, 15,895,255 and 15,523,300 shares issued and outstanding as of December 30, 2023 and December 31, 2022, respectively", "label": "Common Stock, Value, Issued", "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r121", "r614", "r765" ] }, "us-gaap_CompensationAndRetirementDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CompensationAndRetirementDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Retirement Benefits [Abstract]", "label": "Retirement Benefits [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ComprehensiveIncomeNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComprehensiveIncomeNetOfTax", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "totalLabel": "Comprehensive income", "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r38", "r213", "r215", "r221", "r606", "r621" ] }, "us-gaap_ComputerEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComputerEquipmentMember", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetScheduleofpropertyandequipmentDetails", "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesEstimatedUsefulLivesofPropertyandEquipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Computer equipment", "verboseLabel": "Computer equipment", "label": "Computer Equipment [Member]", "documentation": "Long lived, depreciable assets that are used in the creation, maintenance and utilization of information systems." } } }, "auth_ref": [] }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskBenchmarkDomain", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Concentration Risk Benchmark [Domain]", "label": "Concentration Risk Benchmark [Domain]", "documentation": "The denominator in a calculation of a disclosed concentration risk percentage." } } }, "auth_ref": [ "r52", "r55", "r107", "r108", "r320", "r725" ] }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskByBenchmarkAxis", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Concentration Risk Benchmark [Axis]", "label": "Concentration Risk Benchmark [Axis]", "documentation": "Information by benchmark of concentration risk." } } }, "auth_ref": [ "r52", "r55", "r107", "r108", "r320", "r644", "r725" ] }, "us-gaap_ConcentrationRiskByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskByTypeAxis", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Concentration Risk Type [Axis]", "label": "Concentration Risk Type [Axis]", "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender." } } }, "auth_ref": [ "r52", "r55", "r107", "r108", "r320", "r725", "r793" ] }, "us-gaap_ConcentrationRiskCreditRisk": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskCreditRisk", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Concentration of Credit Risk", "label": "Concentration Risk, Credit Risk, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for credit risk." } } }, "auth_ref": [ "r115", "r179" ] }, "us-gaap_ConcentrationRiskPercentage1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskPercentage1", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Concentration risk, percentage", "label": "Concentration Risk, Percentage", "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." } } }, "auth_ref": [ "r52", "r55", "r107", "r108", "r320" ] }, "us-gaap_ConcentrationRiskTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskTypeDomain", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Concentration Risk Type [Domain]", "label": "Concentration Risk Type [Domain]", "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." } } }, "auth_ref": [ "r52", "r55", "r107", "r108", "r320", "r725" ] }, "nvee_ConsiderationTransferredCashNotesAndCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "ConsiderationTransferredCashNotesAndCommonStock", "crdr": "credit", "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "parentTag": "us-gaap_BusinessCombinationConsiderationTransferred1", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Consideration paid (Cash, notes and/or stock)", "label": "Consideration paid (Cash, Notes and/or stock)", "documentation": "This item represents cash and common stock transferred plus the liabilities assumed on the sale date." } } }, "auth_ref": [] }, "srt_ConsolidationItemsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidationItemsAxis", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Consolidation Items [Axis]", "label": "Consolidation Items [Axis]" } } }, "auth_ref": [ "r236", "r293", "r304", "r305", "r306", "r307", "r308", "r310", "r314", "r367", "r368", "r369", "r370", "r372", "r373", "r375", "r377", "r378", "r838", "r839" ] }, "srt_ConsolidationItemsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidationItemsDomain", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Consolidation Items [Domain]", "label": "Consolidation Items [Domain]" } } }, "auth_ref": [ "r236", "r293", "r304", "r305", "r306", "r307", "r308", "r310", "r314", "r367", "r368", "r369", "r370", "r372", "r373", "r375", "r377", "r378", "r838", "r839" ] }, "nvee_ContingentConsiderationEarnOutNonCash": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "ContingentConsiderationEarnOutNonCash", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Contingent consideration (earn-out)", "label": "Contingent Consideration Earn-Out, Non-Cash", "documentation": "Contingent Consideration Earn-Out, Non-Cash" } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLossCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerAssetAccumulatedAllowanceForCreditLossCurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/BilledandUnbilledReceivablesSummaryofBilledandUnbilledReceivablesDetails": { "parentTag": "us-gaap_ContractWithCustomerAssetNetCurrent", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesSummaryofBilledandUnbilledReceivablesDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Less: allowance for doubtful accounts", "label": "Contract with Customer, Asset, Allowance for Credit Loss, Current", "documentation": "Amount of allowance for credit loss for right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current." } } }, "auth_ref": [ "r329", "r428" ] }, "us-gaap_ContractWithCustomerAssetGrossCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerAssetGrossCurrent", "crdr": "debit", "calculation": { "http://www.nv5.com/role/BilledandUnbilledReceivablesSummaryofBilledandUnbilledReceivablesDetails": { "parentTag": "us-gaap_ContractWithCustomerAssetNetCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesSummaryofBilledandUnbilledReceivablesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unbilled receivables", "label": "Contract with Customer, Asset, before Allowance for Credit Loss, Current", "documentation": "Amount, before allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current." } } }, "auth_ref": [ "r842", "r843" ] }, "us-gaap_ContractWithCustomerAssetNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerAssetNetCurrent", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 1.0 }, "http://www.nv5.com/role/BilledandUnbilledReceivablesSummaryofBilledandUnbilledReceivablesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesSummaryofBilledandUnbilledReceivablesDetails", "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Unbilled receivables, net", "totalLabel": "Unbilled receivables, net", "label": "Contract with Customer, Asset, after Allowance for Credit Loss, Current", "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current." } } }, "auth_ref": [ "r426", "r428", "r439" ] }, "us-gaap_ContractWithCustomerBasisOfPricingAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerBasisOfPricingAxis", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Contract with Customer, Basis of Pricing [Axis]", "label": "Contract with Customer, Basis of Pricing [Axis]", "documentation": "Information by basis of pricing for contract representing right to consideration in exchange for good or service transferred to customer." } } }, "auth_ref": [ "r755", "r844" ] }, "us-gaap_ContractWithCustomerBasisOfPricingDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerBasisOfPricingDomain", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Contract with Customer, Basis of Pricing [Domain]", "label": "Contract with Customer, Basis of Pricing [Domain]", "documentation": "Basis of pricing for contract with customer. Includes, but is not limited to, fixed-price and time-and-materials contracts." } } }, "auth_ref": [ "r755", "r844" ] }, "us-gaap_ContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiability", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Billings in excess of costs and estimated earnings on uncompleted contracts", "label": "Contract with Customer, Liability", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r426", "r427", "r439" ] }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityRevenueRecognized", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Contract with customer liability, revenue recognized", "label": "Contract with Customer, Liability, Revenue Recognized", "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due." } } }, "auth_ref": [ "r440" ] }, "us-gaap_CorporateNonSegmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CorporateNonSegmentMember", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Corporate", "label": "Corporate, Non-Segment [Member]", "documentation": "Corporate headquarters or functional department that may not earn revenues or may earn revenues that are only incidental to the activities of the entity and is not considered an operating segment." } } }, "auth_ref": [ "r21", "r305", "r306", "r307", "r308", "r314", "r817" ] }, "us-gaap_CostDirectLabor": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostDirectLabor", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": "us-gaap_DirectOperatingCosts", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "terseLabel": "Salaries and wages", "label": "Cost, Direct Labor", "documentation": "Cost of labor directly related to good produced and service rendered. Includes, but is not limited to, payroll cost and equity-based compensation." } } }, "auth_ref": [ "r804" ] }, "nvee_CostOfSubConsultantServices": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "CostOfSubConsultantServices", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": "us-gaap_DirectOperatingCosts", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "terseLabel": "Sub-consultant services", "label": "Sub-consultant services", "documentation": "The cost of sub-consultant services." } } }, "auth_ref": [] }, "nvee_CostreimbursableContractsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "CostreimbursableContractsMember", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cost-reimbursable contracts", "label": "Cost-Reimbursable Contracts [Member]", "documentation": "Contract with customer in which amount of contract may be cost-reimbursable." } } }, "auth_ref": [] }, "dei_CoverAbstract": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CoverAbstract", "lang": { "en-us": { "role": { "terseLabel": "Cover [Abstract]", "label": "Cover [Abstract]", "documentation": "Cover page." } } }, "auth_ref": [] }, "us-gaap_CreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CreditFacilityAxis", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Credit Facility [Axis]", "label": "Credit Facility [Axis]", "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [] }, "us-gaap_CreditFacilityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CreditFacilityDomain", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Concept not found: {http://fasb.org/us-gaap/2021-01-31}CreditFacilityDomain", "label": "Credit Facility [Domain]", "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [] }, "nvee_CurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "CurrentAbstract", "presentation": [ "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Current:", "label": "Current:" } } }, "auth_ref": [] }, "us-gaap_CurrentFederalTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentFederalTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails": { "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Federal", "label": "Current Federal Tax Expense (Benefit)", "documentation": "Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r798", "r810", "r876" ] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Current Fiscal Year End Date", "label": "Current Fiscal Year End Date", "documentation": "End date of current fiscal year in the format --MM-DD." } } }, "auth_ref": [] }, "us-gaap_CurrentForeignTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentForeignTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails": { "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Foreign", "label": "Current Foreign Tax Expense (Benefit)", "documentation": "Amount of current foreign income tax expense (benefit) pertaining to income (loss) from continuing operations." } } }, "auth_ref": [ "r798", "r810" ] }, "us-gaap_CurrentIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total current income tax expense", "label": "Current Income Tax Expense (Benefit)", "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations." } } }, "auth_ref": [ "r161", "r519", "r528", "r810" ] }, "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentStateAndLocalTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails": { "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "State", "label": "Current State and Local Tax Expense (Benefit)", "documentation": "Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r798", "r810", "r876" ] }, "us-gaap_CustomerConcentrationRiskMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CustomerConcentrationRiskMember", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Customer Concentration Risk", "label": "Customer Concentration Risk [Member]", "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." } } }, "auth_ref": [ "r53", "r320" ] }, "us-gaap_CustomerListsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CustomerListsMember", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsWeightedAverageUsefulLivesofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Customer backlog", "verboseLabel": "Customer backlog", "label": "Customer Lists [Member]", "documentation": "Information about customers such as their name and contact information; it may also be an extensive database that includes other information about the customers such as their order history and demographic information." } } }, "auth_ref": [ "r100" ] }, "us-gaap_CustomerRelationshipsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CustomerRelationshipsMember", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsWeightedAverageUsefulLivesofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Customer relationships", "verboseLabel": "Customer relationships", "label": "Customer Relationships [Member]", "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships." } } }, "auth_ref": [ "r101" ] }, "nvee_DebtCovenantLiquidityAvailability": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "DebtCovenantLiquidityAvailability", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt covenant, liquidity availability", "label": "Debt Covenant, Liquidity Availability", "documentation": "Debt Covenant, Liquidity Availability" } } }, "auth_ref": [] }, "us-gaap_DebtDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtDisclosureTextBlock", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligations" ], "lang": { "en-us": { "role": { "terseLabel": "Notes Payable and Other Obligations", "label": "Debt Disclosure [Text Block]", "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." } } }, "auth_ref": [ "r153", "r232", "r380", "r386", "r387", "r388", "r389", "r390", "r391", "r396", "r403", "r404", "r406" ] }, "us-gaap_DebtInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentAxis", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument [Axis]", "label": "Debt Instrument [Axis]", "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities." } } }, "auth_ref": [ "r24", "r116", "r117", "r168", "r170", "r236", "r381", "r382", "r383", "r384", "r385", "r387", "r392", "r393", "r394", "r395", "r397", "r398", "r399", "r400", "r401", "r402", "r572", "r747", "r748", "r749", "r750", "r751", "r808" ] }, "us-gaap_DebtInstrumentCarryingAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentCarryingAmount", "crdr": "credit", "calculation": { "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails": { "parentTag": "us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Long-term Debt, Gross", "label": "Long-Term Debt, Gross", "documentation": "Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt." } } }, "auth_ref": [ "r24", "r170", "r407" ] }, "us-gaap_DebtInstrumentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentLineItems", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument [Line Items]", "label": "Debt Instrument [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r236", "r381", "r382", "r383", "r384", "r385", "r387", "r392", "r393", "r394", "r395", "r397", "r398", "r399", "r400", "r401", "r402", "r405", "r572", "r747", "r748", "r749", "r750", "r751", "r808" ] }, "us-gaap_DebtInstrumentNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentNameDomain", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument, Name [Domain]", "label": "Debt Instrument, Name [Domain]", "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities." } } }, "auth_ref": [ "r31", "r236", "r381", "r382", "r383", "r384", "r385", "r387", "r392", "r393", "r394", "r395", "r397", "r398", "r399", "r400", "r401", "r402", "r572", "r747", "r748", "r749", "r750", "r751", "r808" ] }, "us-gaap_DebtInstrumentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentTable", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Long-term Debt Instruments [Table]", "label": "Schedule of Long-Term Debt Instruments [Table]", "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." } } }, "auth_ref": [ "r31", "r80", "r83", "r109", "r110", "r112", "r114", "r155", "r156", "r236", "r381", "r382", "r383", "r384", "r385", "r387", "r392", "r393", "r394", "r395", "r397", "r398", "r399", "r400", "r401", "r402", "r405", "r572", "r747", "r748", "r749", "r750", "r751", "r808" ] }, "us-gaap_DebtWeightedAverageInterestRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtWeightedAverageInterestRate", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average interest rate (as a percent)", "label": "Debt, Weighted Average Interest Rate", "documentation": "Weighted average interest rate of debt outstanding." } } }, "auth_ref": [] }, "nvee_DeferredAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "DeferredAbstract", "presentation": [ "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred:", "label": "Deferred:" } } }, "auth_ref": [] }, "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredFederalIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails": { "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Federal", "label": "Deferred Federal Income Tax Expense (Benefit)", "documentation": "Amount of deferred federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r810", "r875", "r876" ] }, "us-gaap_DeferredFinanceCostsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredFinanceCostsGross", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total debt issuance costs incurred and capitalized", "label": "Debt Issuance Costs, Gross", "documentation": "Amount, before accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs." } } }, "auth_ref": [ "r111" ] }, "us-gaap_DeferredFinanceCostsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredFinanceCostsNet", "crdr": "debit", "calculation": { "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails": { "parentTag": "us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Debt issuance costs, net of amortization", "label": "Debt Issuance Costs, Net", "documentation": "Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs." } } }, "auth_ref": [ "r111", "r841" ] }, "us-gaap_DeferredForeignIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredForeignIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails": { "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign", "label": "Deferred Foreign Income Tax Expense (Benefit)", "documentation": "Amount of deferred foreign income tax expense (benefit) pertaining to income (loss) from continuing operations." } } }, "auth_ref": [ "r161", "r810", "r875" ] }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total deferred income tax benefit", "label": "Deferred Income Tax Expense (Benefit)", "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations." } } }, "auth_ref": [ "r12", "r161", "r187", "r527", "r528", "r810" ] }, "us-gaap_DeferredIncomeTaxLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxLiabilities", "crdr": "credit", "calculation": { "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails": { "parentTag": "us-gaap_DeferredTaxLiabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails" ], "lang": { "en-us": { "role": { "negatedTotalLabel": "Total deferred tax liability", "label": "Deferred Tax Liabilities, Gross", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences." } } }, "auth_ref": [ "r118", "r119", "r169", "r514" ] }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxLiabilitiesNet", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred income tax liabilities, net", "label": "Deferred Income Tax Liabilities, Net", "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting." } } }, "auth_ref": [ "r501", "r502", "r610" ] }, "us-gaap_DeferredIncomeTaxesAndTaxCredits": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxesAndTaxCredits", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred income taxes", "label": "Deferred Income Taxes and Tax Credits", "documentation": "Amount of deferred income tax expense (benefit) and income tax credits." } } }, "auth_ref": [ "r139" ] }, "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails": { "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails" ], "lang": { "en-us": { "role": { "terseLabel": "State", "label": "Deferred State and Local Income Tax Expense (Benefit)", "documentation": "Amount of deferred state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r810", "r875", "r876" ] }, "nvee_DeferredTaxAssetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "DeferredTaxAssetAbstract", "presentation": [ "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred tax asset:", "label": "Deferred tax asset:" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsGross", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails": { "parentTag": "us-gaap_DeferredTaxLiabilities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total deferred tax asset", "label": "Deferred Tax Assets, Gross", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards." } } }, "auth_ref": [ "r515" ] }, "us-gaap_DeferredTaxAssetsInProcessResearchAndDevelopment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsInProcessResearchAndDevelopment", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Capitalized Research and Development Costs", "label": "Deferred Tax Assets, in Process Research and Development", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from in-process research and development costs expensed in connection with a business combination." } } }, "auth_ref": [ "r91", "r874" ] }, "nvee_DeferredTaxAssetsLeaseLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "DeferredTaxAssetsLeaseLiabilities", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Lease liabilities", "label": "Deferred Tax Assets, Lease Liabilities", "documentation": "Deferred Tax Assets, Lease Liabilities" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsOther", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other", "label": "Deferred Tax Assets, Other", "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, classified as other." } } }, "auth_ref": [ "r91", "r874" ] }, "us-gaap_DeferredTaxAssetsTaxCreditCarryforwards": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxCreditCarryforwards", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Tax carryforwards", "label": "Deferred Tax Assets, Tax Credit Carryforwards", "documentation": "Amount, before allocation of a valuation allowances, of deferred tax assets attributable to deductible tax credit carryforwards including, but not limited to, research, foreign, general business, alternative minimum tax, and other deductible tax credit carryforwards." } } }, "auth_ref": [ "r90", "r91", "r874" ] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued compensation", "label": "Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Employee Compensation", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from employee compensation." } } }, "auth_ref": [ "r91", "r874" ] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Allowance for doubtful accounts", "label": "Deferred Tax Asset, Tax Deferred Expense, Reserve and Accrual, Accounts Receivable, Allowance for Credit Loss", "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary difference from allowance for credit loss on accounts receivable." } } }, "auth_ref": [ "r91", "r874" ] }, "us-gaap_DeferredTaxLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxLiabilities", "crdr": "credit", "calculation": { "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesNarrativeDetails", "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails" ], "lang": { "en-us": { "role": { "negatedTotalLabel": "Net deferred tax liability", "terseLabel": "Deferred tax liabilities, net", "label": "Deferred Tax Liabilities, Net", "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting." } } }, "auth_ref": [ "r88", "r873" ] }, "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxLiabilitiesGoodwillAndIntangibleAssets", "crdr": "credit", "calculation": { "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails": { "parentTag": "us-gaap_DeferredIncomeTaxLiabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Acquired intangibles", "label": "Deferred Tax Liabilities, Goodwill and Intangible Assets", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from intangible assets including goodwill." } } }, "auth_ref": [ "r91", "r874" ] }, "us-gaap_DeferredTaxLiabilitiesOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxLiabilitiesOther", "crdr": "credit", "calculation": { "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails": { "parentTag": "us-gaap_DeferredIncomeTaxLiabilities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Other", "label": "Deferred Tax Liabilities, Other", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences classified as other." } } }, "auth_ref": [ "r91", "r874" ] }, "us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxLiabilitiesPropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails": { "parentTag": "us-gaap_DeferredIncomeTaxLiabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Depreciation and amortization", "label": "Deferred Tax Liabilities, Property, Plant and Equipment", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment." } } }, "auth_ref": [ "r91", "r874" ] }, "nvee_DeferredTaxLiabilitiesRightOfUseAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "DeferredTaxLiabilitiesRightOfUseAssets", "crdr": "credit", "calculation": { "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails": { "parentTag": "us-gaap_DeferredIncomeTaxLiabilities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Right-of-use assets", "label": "Deferred Tax Liabilities, Right-Of-Use Assets", "documentation": "Deferred Tax Liabilities, Right-Of-Use Assets" } } }, "auth_ref": [] }, "nvee_DeferredTaxLiabilityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "DeferredTaxLiabilityAbstract", "presentation": [ "http://www.nv5.com/role/IncomeTaxesNetDeferredIncomeTaxAssetLiabilityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred tax liability:", "label": "Deferred tax liability:" } } }, "auth_ref": [] }, "us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedContributionPlanEmployerDiscretionaryContributionAmount", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/EmployeeBenefitPlanDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Defined contribution plan", "label": "Defined Contribution Plan, Employer Discretionary Contribution Amount", "documentation": "Amount of discretionary contributions made by an employer to a defined contribution plan." } } }, "auth_ref": [] }, "nvee_DenominatorAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "DenominatorAbstract", "presentation": [ "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Denominator [Abstract]", "label": "Denominator [Abstract]", "documentation": "Denominator" } } }, "auth_ref": [] }, "us-gaap_Depreciation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Depreciation", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Depreciation expense", "label": "Depreciation", "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation." } } }, "auth_ref": [ "r12", "r75" ] }, "us-gaap_DepreciationAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DepreciationAndAmortization", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "terseLabel": "Depreciation and amortization", "label": "Depreciation, Depletion and Amortization, Nonproduction", "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." } } }, "auth_ref": [ "r12", "r75" ] }, "us-gaap_DepreciationDepletionAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DepreciationDepletionAndAmortization", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 18.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Depreciation and amortization", "label": "Depreciation, Depletion and Amortization", "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets." } } }, "auth_ref": [ "r12", "r296" ] }, "nvee_DevelopedTechnologyMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "DevelopedTechnologyMember", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsWeightedAverageUsefulLivesofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Developed technology", "label": "Developed Technology [Member]", "documentation": "Developed Technology [Member]" } } }, "auth_ref": [] }, "us-gaap_DirectOperatingCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DirectOperatingCosts", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": "us-gaap_GrossProfit", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "totalLabel": "Total direct costs", "label": "Direct Operating Costs", "documentation": "The aggregate direct operating costs incurred during the reporting period." } } }, "auth_ref": [ "r133" ] }, "us-gaap_DirectOperatingCostsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DirectOperatingCostsAbstract", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "terseLabel": "Direct costs:", "label": "Direct Operating Costs [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "presentation": [ "http://www.nv5.com/role/StockBasedCompensation" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-Based Compensation", "label": "Share-Based Payment Arrangement [Text Block]", "documentation": "The entire disclosure for share-based payment arrangement." } } }, "auth_ref": [ "r455", "r460", "r488", "r489", "r491", "r761" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Share-based Payment Arrangement [Abstract]", "label": "Share-Based Payment Arrangement [Abstract]" } } }, "auth_ref": [] }, "dei_DocumentAnnualReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentAnnualReport", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Document Annual Report", "label": "Document Annual Report", "documentation": "Boolean flag that is true only for a form used as an annual report." } } }, "auth_ref": [ "r782", "r783", "r784" ] }, "dei_DocumentFinStmtErrorCorrectionFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFinStmtErrorCorrectionFlag", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Document Financial Statement Error Correction", "label": "Document Financial Statement Error Correction [Flag]", "documentation": "Indicates whether any of the financial statement period in the filing include a restatement due to error correction." } } }, "auth_ref": [ "r782", "r783", "r784", "r786" ] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Document Fiscal Period Focus", "label": "Document Fiscal Period Focus", "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY." } } }, "auth_ref": [] }, "dei_DocumentFiscalYearFocus": { "xbrltype": "gYearItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalYearFocus", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Document Fiscal Year Focus", "label": "Document Fiscal Year Focus", "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006." } } }, "auth_ref": [] }, "dei_DocumentPeriodEndDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentPeriodEndDate", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Document Period End Date", "label": "Document Period End Date", "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD." } } }, "auth_ref": [] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentTransitionReport", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Document Transition Report", "label": "Document Transition Report", "documentation": "Boolean flag that is true only for a form used as a transition report." } } }, "auth_ref": [ "r785" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentType", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Document Type", "label": "Document Type", "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'." } } }, "auth_ref": [] }, "dei_DocumentsIncorporatedByReferenceTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentsIncorporatedByReferenceTextBlock", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Documents Incorporated by Reference", "label": "Documents Incorporated by Reference [Text Block]", "documentation": "Documents incorporated by reference." } } }, "auth_ref": [ "r780" ] }, "us-gaap_DomesticCountryMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DomesticCountryMember", "presentation": [ "http://www.nv5.com/role/IncomeTaxesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Domestic Tax Authority", "label": "Domestic Tax Authority [Member]", "documentation": "Designated tax department of the government that is entitled to levy and collect income taxes from the entity in its country of domicile." } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareAbstract", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "terseLabel": "Earnings per share:", "label": "Earnings Per Share [Abstract]" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasic", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "verboseLabel": "Basic (in dollars per Share)", "label": "Earnings Per Share, Basic", "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r222", "r246", "r247", "r248", "r249", "r250", "r257", "r260", "r278", "r279", "r280", "r284", "r554", "r555", "r607", "r622", "r741" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDiluted", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "verboseLabel": "Diluted (in dollars per Share)", "label": "Earnings Per Share, Diluted", "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period." } } }, "auth_ref": [ "r222", "r246", "r247", "r248", "r249", "r250", "r260", "r278", "r279", "r280", "r284", "r554", "r555", "r607", "r622", "r741" ] }, "us-gaap_EarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareTextBlock", "presentation": [ "http://www.nv5.com/role/EarningsperShare" ], "lang": { "en-us": { "role": { "terseLabel": "Earnings per Share", "label": "Earnings Per Share [Text Block]", "documentation": "The entire disclosure for earnings per share." } } }, "auth_ref": [ "r256", "r281", "r282", "r283" ] }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Effect of exchange rate changes on cash and cash equivalents", "label": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations", "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r879" ] }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateContinuingOperations", "presentation": [ "http://www.nv5.com/role/IncomeTaxesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Effective income tax rate percent", "label": "Effective Income Tax Rate Reconciliation, Percent", "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r504" ] }, "nvee_EffectiveIncomeTaxRateReconciliationChangesInUnrecognizedTaxPosition": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "EffectiveIncomeTaxRateReconciliationChangesInUnrecognizedTaxPosition", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitReconciliationDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitReconciliationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Changes in unrecognized tax position", "label": "Changes in unrecognized tax position", "documentation": "Amount of differences between reported income tax expense (benefit) and expected income tax expense (benefit) for changes in unrecognized tax positions." } } }, "auth_ref": [] }, "nvee_EffectiveIncomeTaxRateReconciliationShareBasedCompensationAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "EffectiveIncomeTaxRateReconciliationShareBasedCompensationAmount", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitReconciliationDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitReconciliationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-based compensation", "label": "Stock based compensation", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to share-based compensation." } } }, "auth_ref": [] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average vesting period", "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount", "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement." } } }, "auth_ref": [ "r490" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cost not yet recognized, term", "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition", "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r490" ] }, "us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-based compensation expense", "label": "Share-Based Payment Arrangement, Expense, Tax Benefit", "documentation": "Amount of tax benefit for recognition of expense of award under share-based payment arrangement." } } }, "auth_ref": [ "r487" ] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine1", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, Address Line One", "label": "Entity Address, Address Line One", "documentation": "Address Line 1 such as Attn, Building Name, Street Name" } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine2": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine2", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, Address Line Two", "label": "Entity Address, Address Line Two", "documentation": "Address Line 2 such as Street or Suite number" } } }, "auth_ref": [] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressCityOrTown", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, City or Town", "label": "Entity Address, City or Town", "documentation": "Name of the City or Town" } } }, "auth_ref": [] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressPostalZipCode", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, Postal Zip Code", "label": "Entity Address, Postal Zip Code", "documentation": "Code for the postal or zip code" } } }, "auth_ref": [] }, "dei_EntityAddressStateOrProvince": { "xbrltype": "stateOrProvinceItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressStateOrProvince", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, State or Province", "label": "Entity Address, State or Province", "documentation": "Name of the state or province." } } }, "auth_ref": [] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCentralIndexKey", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Central Index Key", "label": "Entity Central Index Key", "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK." } } }, "auth_ref": [ "r779" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Common Stock, Shares Outstanding", "label": "Entity Common Stock, Shares Outstanding", "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument." } } }, "auth_ref": [] }, "dei_EntityCurrentReportingStatus": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCurrentReportingStatus", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Current Reporting Status", "label": "Entity Current Reporting Status", "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Emerging Growth Company", "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r779" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFileNumber", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity File Number", "label": "Entity File Number", "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen." } } }, "auth_ref": [] }, "dei_EntityFilerCategory": { "xbrltype": "filerCategoryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFilerCategory", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Filer Category", "label": "Entity Filer Category", "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [ "r779" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Incorporation, State or Country Code", "label": "Entity Incorporation, State or Country Code", "documentation": "Two-character EDGAR code representing the state or country of incorporation." } } }, "auth_ref": [] }, "dei_EntityInteractiveDataCurrent": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityInteractiveDataCurrent", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Interactive Data Current", "label": "Entity Interactive Data Current", "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)." } } }, "auth_ref": [ "r787" ] }, "dei_EntityPublicFloat": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityPublicFloat", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Public Float", "label": "Entity Public Float", "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter." } } }, "auth_ref": [] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityRegistrantName", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Registrant Name", "label": "Entity Registrant Name", "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC." } } }, "auth_ref": [ "r779" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityShellCompany", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Shell Company", "label": "Entity Shell Company", "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act." } } }, "auth_ref": [ "r779" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntitySmallBusiness", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Small Business", "label": "Entity Small Business", "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)." } } }, "auth_ref": [ "r779" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Tax Identification Number", "label": "Entity Tax Identification Number", "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS." } } }, "auth_ref": [ "r779" ] }, "dei_EntityVoluntaryFilers": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityVoluntaryFilers", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Voluntary Filers", "label": "Entity Voluntary Filers", "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act." } } }, "auth_ref": [] }, "dei_EntityWellKnownSeasonedIssuer": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityWellKnownSeasonedIssuer", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Well-known Seasoned Issuer", "label": "Entity Well-known Seasoned Issuer", "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A." } } }, "auth_ref": [ "r788" ] }, "us-gaap_EquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityAbstract", "lang": { "en-us": { "role": { "terseLabel": "Equity [Abstract]", "label": "Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityComponentDomain", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Component [Domain]", "label": "Equity Component [Domain]", "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc." } } }, "auth_ref": [ "r20", "r193", "r217", "r218", "r219", "r237", "r238", "r239", "r243", "r251", "r253", "r285", "r325", "r328", "r425", "r492", "r493", "r494", "r520", "r521", "r544", "r545", "r546", "r547", "r548", "r550", "r553", "r563", "r564", "r565", "r566", "r567", "r568", "r591", "r636", "r637", "r638", "r653", "r708" ] }, "nvee_EquityPlan2011Member": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "EquityPlan2011Member", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Equity plan 2011", "label": "Equity Plan 2011 [Member]", "documentation": "Represents the 2011 equity incentive plan." } } }, "auth_ref": [] }, "us-gaap_EquitySecuritiesByIndustryAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquitySecuritiesByIndustryAxis", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Industry Sector [Axis]", "label": "Industry Sector [Axis]", "documentation": "Information by industry sector, examples include but are not limited to, commercial, industrial, agricultural, financial services, technology, healthcare and real estate." } } }, "auth_ref": [ "r655", "r656", "r658", "r714", "r716", "r719", "r721", "r745", "r769" ] }, "us-gaap_EquitySecuritiesIndustryMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquitySecuritiesIndustryMember", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Industry Sector [Domain]", "label": "Industry Sector [Domain]", "documentation": "Industry sector consisting of government, private and corporate entities engaged in business activities, including but not limited to, commercial, industrial, agricultural, financial services, technology, healthcare and real estate." } } }, "auth_ref": [ "r655", "r656", "r658", "r714", "r716", "r719", "r721", "r769" ] }, "us-gaap_FairValueMeasurementPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementPolicyPolicyTextBlock", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value of Financial Instruments and Fair Value of Acquisitions", "label": "Fair Value Measurement, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities." } } }, "auth_ref": [] }, "us-gaap_FinanceLeaseInterestExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseInterestExpense", "crdr": "debit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofLeaseCostDetails": { "parentTag": "us-gaap_LeaseCost", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofLeaseCostDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Interest on lease liabilities", "label": "Finance Lease, Interest Expense", "documentation": "Amount of interest expense on finance lease liability." } } }, "auth_ref": [ "r579", "r583", "r764" ] }, "us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilitiesPaymentsDueAbstract", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finance Leases", "label": "Finance Lease, Liability, to be Paid, Fiscal Year Maturity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_FinanceLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiability", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails": { "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 }, "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails": { "parentTag": "us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finance leases", "verboseLabel": "Present value of lease liabilities", "label": "Finance Lease, Liability", "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease." } } }, "auth_ref": [ "r577", "r590" ] }, "us-gaap_FinanceLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails": { "parentTag": "nvee_OperatingAndFinanceLeasesLiability", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Finance", "label": "Finance Lease, Liability, Current", "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as current." } } }, "auth_ref": [ "r577" ] }, "us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finance Lease, Liability, Current, Statement of Financial Position [Extensible List]", "label": "Finance Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]", "documentation": "Indicates line item in statement of financial position that includes current finance lease liability." } } }, "auth_ref": [ "r578" ] }, "us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityMaturityTableTextBlock", "presentation": [ "http://www.nv5.com/role/LeasesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Maturities of Finance Lease Liabilities", "label": "Finance Lease, Liability, to be Paid, Maturity [Table Text Block]", "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." } } }, "auth_ref": [ "r882" ] }, "us-gaap_FinanceLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails": { "parentTag": "nvee_OperatingAndFinanceLeasesLiability", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Finance", "label": "Finance Lease, Liability, Noncurrent", "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as noncurrent." } } }, "auth_ref": [ "r577" ] }, "us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finance Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List]", "label": "Finance Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration]", "documentation": "Indicates line item in statement of financial position that includes noncurrent finance lease liability." } } }, "auth_ref": [ "r578" ] }, "us-gaap_FinanceLeaseLiabilityPaymentsDue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityPaymentsDue", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails_1": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total lease payments", "label": "Finance Lease, Liability, to be Paid", "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease." } } }, "auth_ref": [ "r590" ] }, "us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityPaymentsDueAfterYearFive", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails_1": { "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Thereafter", "label": "Finance Lease, Liability, to be Paid, after Year Five", "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r590" ] }, "us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityPaymentsDueNextTwelveMonths", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails_1": { "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2024", "label": "Finance Lease, Liability, to be Paid, Year One", "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)." } } }, "auth_ref": [ "r590" ] }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityPaymentsDueYearFive", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails_1": { "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2028", "label": "Finance Lease, Liability, to be Paid, Year Five", "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r590" ] }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityPaymentsDueYearFour", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails_1": { "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2027", "label": "Finance Lease, Liability, to be Paid, Year Four", "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)." } } }, "auth_ref": [ "r590" ] }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityPaymentsDueYearThree", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails_1": { "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2026", "label": "Finance Lease, Liability, to be Paid, Year Three", "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)." } } }, "auth_ref": [ "r590" ] }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityPaymentsDueYearTwo", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails_1": { "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2025", "label": "Finance Lease, Liability, to be Paid, Year Two", "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)." } } }, "auth_ref": [ "r590" ] }, "us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityUndiscountedExcessAmount", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails": { "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Less: Interest", "label": "Finance Lease, Liability, Undiscounted Excess Amount", "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for finance lease." } } }, "auth_ref": [ "r590" ] }, "us-gaap_FinanceLeasePrincipalPayments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeasePrincipalPayments", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Financing cash flows from finance leases", "label": "Finance Lease, Principal Payments", "documentation": "Amount of cash outflow for principal payment on finance lease." } } }, "auth_ref": [ "r580", "r586" ] }, "us-gaap_FinanceLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseRightOfUseAsset", "crdr": "debit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails": { "parentTag": "nvee_OperatingAndFinanceLeasesRightOfUseAssets", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finance lease assets", "label": "Finance Lease, Right-of-Use Asset, after Accumulated Amortization", "documentation": "Amount, after accumulated amortization, of right-of-use asset from finance lease." } } }, "auth_ref": [ "r576" ] }, "us-gaap_FinanceLeaseRightOfUseAssetAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseRightOfUseAssetAccumulatedAmortization", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Financing right of-use lease assets", "label": "Finance Lease, Right-of-Use Asset, Accumulated Amortization", "documentation": "Amount of accumulated amortization of right-of-use asset from finance lease." } } }, "auth_ref": [ "r791", "r796" ] }, "us-gaap_FinanceLeaseRightOfUseAssetAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseRightOfUseAssetAmortization", "crdr": "debit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofLeaseCostDetails": { "parentTag": "us-gaap_LeaseCost", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofLeaseCostDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Amortization of financing lease assets", "label": "Finance Lease, Right-of-Use Asset, Amortization", "documentation": "Amount of amortization expense attributable to right-of-use asset from finance lease." } } }, "auth_ref": [ "r579", "r583", "r764" ] }, "us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible List]", "label": "Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration]", "documentation": "Indicates line item in statement of financial position that includes finance lease right-of-use asset." } } }, "auth_ref": [ "r578" ] }, "us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseWeightedAverageDiscountRatePercent", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofLeaseTermandDiscountRateDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finance leases", "label": "Finance Lease, Weighted Average Discount Rate, Percent", "documentation": "Weighted average discount rate for finance lease calculated at point in time." } } }, "auth_ref": [ "r589", "r764" ] }, "us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseWeightedAverageRemainingLeaseTerm1", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofLeaseTermandDiscountRateDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finance leases", "label": "Finance Lease, Weighted Average Remaining Lease Term", "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." } } }, "auth_ref": [ "r588", "r764" ] }, "us-gaap_FiniteLivedIntangibleAssetUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetUsefulLife", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Useful life", "label": "Finite-Lived Intangible Asset, Useful Life", "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." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "crdr": "credit", "calculation": { "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Accumulated Amortization", "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r201", "r348" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive", "crdr": "debit", "calculation": { "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFutureEstimatedAggregateAmortizationRelatedtoFinitelivedIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFutureEstimatedAggregateAmortizationRelatedtoFinitelivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Thereafter", "label": "Finite-Lived Intangible Asset, Expected Amortization, after Year Five", "documentation": "Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "crdr": "debit", "calculation": { "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFutureEstimatedAggregateAmortizationRelatedtoFinitelivedIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFutureEstimatedAggregateAmortizationRelatedtoFinitelivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2024", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year One", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r147" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive", "crdr": "debit", "calculation": { "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFutureEstimatedAggregateAmortizationRelatedtoFinitelivedIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFutureEstimatedAggregateAmortizationRelatedtoFinitelivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2028", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Five", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r147" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "crdr": "debit", "calculation": { "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFutureEstimatedAggregateAmortizationRelatedtoFinitelivedIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFutureEstimatedAggregateAmortizationRelatedtoFinitelivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2027", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Four", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized 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)." } } }, "auth_ref": [ "r147" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "crdr": "debit", "calculation": { "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFutureEstimatedAggregateAmortizationRelatedtoFinitelivedIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFutureEstimatedAggregateAmortizationRelatedtoFinitelivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2026", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Three", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized 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)." } } }, "auth_ref": [ "r147" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "crdr": "debit", "calculation": { "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFutureEstimatedAggregateAmortizationRelatedtoFinitelivedIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFutureEstimatedAggregateAmortizationRelatedtoFinitelivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2025", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Two", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r147" ] }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsWeightedAverageUsefulLivesofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finite-Lived Intangible Assets by Major Class [Axis]", "label": "Finite-Lived Intangible Assets by Major Class [Axis]", "documentation": "Information by major type or class of finite-lived intangible assets." } } }, "auth_ref": [ "r346", "r347", "r348", "r349", "r600", "r604" ] }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsGross", "crdr": "debit", "calculation": { "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Gross Carrying Amount", "label": "Finite-Lived Intangible Assets, Gross", "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r146", "r604" ] }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsLineItems", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsWeightedAverageUsefulLivesofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finite-Lived Intangible Assets [Line Items]", "label": "Finite-Lived Intangible Assets [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r600" ] }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsWeightedAverageUsefulLivesofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company." } } }, "auth_ref": [ "r70", "r72" ] }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsNet", "crdr": "debit", "calculation": { "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFutureEstimatedAggregateAmortizationRelatedtoFinitelivedIntangibleAssetsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFutureEstimatedAggregateAmortizationRelatedtoFinitelivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Net Amount", "label": "Finite-Lived Intangible Assets, Net", "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r146", "r600" ] }, "us-gaap_FiniteLivedIntangibleAssetsNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsNetAbstract", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finite-lived intangible assets:", "label": "Finite-Lived Intangible Assets, Net [Abstract]" } } }, "auth_ref": [] }, "us-gaap_FiscalPeriod": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiscalPeriod", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Fiscal Year", "label": "Fiscal Period, Policy [Policy Text Block]", "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." } } }, "auth_ref": [ "r106" ] }, "us-gaap_FixedPriceContractMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FixedPriceContractMember", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fixed-unit price contracts", "label": "Fixed-Price Contract [Member]", "documentation": "Contract with customer in which amount of consideration is fixed." } } }, "auth_ref": [ "r755" ] }, "nvee_ForeignCountriesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "ForeignCountriesMember", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyGeographicLocationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign", "label": "Foreign Countries [Member]", "documentation": "All countries other than the domestic country considered for financial reporting purposes." } } }, "auth_ref": [] }, "us-gaap_ForeignCountryMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ForeignCountryMember", "presentation": [ "http://www.nv5.com/role/IncomeTaxesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign Tax Authority", "label": "Foreign Tax Authority [Member]", "documentation": "Designated tax departments of governments entitled to levy and collect income taxes from the entity outside the entity's country of domicile." } } }, "auth_ref": [] }, "us-gaap_FurnitureAndFixturesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FurnitureAndFixturesMember", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetScheduleofpropertyandequipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Office furniture and equipment", "label": "Furniture and Fixtures [Member]", "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." } } }, "auth_ref": [] }, "nvee_GEOMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "GEOMember", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyGeographicLocationDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "GEO", "label": "G E O [Member]", "documentation": "G E O [Member]" } } }, "auth_ref": [] }, "us-gaap_GainLossOnDispositionOfAssets1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GainLossOnDispositionOfAssets1", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 11.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "negatedLabel": "Gain on disposals of property and equipment", "label": "Gain (Loss) on Disposition of Assets", "documentation": "Amount of gain (loss) on sale or disposal of assets, including but not limited to property plant and equipment, intangible assets and equity in securities of subsidiaries or equity method investee." } } }, "auth_ref": [ "r806" ] }, "us-gaap_GeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GeneralAndAdministrativeExpense", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "terseLabel": "General and administrative", "label": "General and Administrative Expense", "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line." } } }, "auth_ref": [ "r134", "r691" ] }, "us-gaap_GeographicConcentrationRiskMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GeographicConcentrationRiskMember", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Geographic concentration risk", "label": "Geographic Concentration Risk [Member]", "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)." } } }, "auth_ref": [ "r54", "r725" ] }, "us-gaap_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Goodwill", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill", "periodStartLabel": "Beginning balance", "periodEndLabel": "Ending balance", "label": "Goodwill", "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." } } }, "auth_ref": [ "r200", "r334", "r605", "r746", "r765", "r822", "r829" ] }, "us-gaap_GoodwillAcquiredDuringPeriod": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAcquiredDuringPeriod", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Acquisitions", "label": "Goodwill, Acquired During Period", "documentation": "Amount of increase in asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from a business combination." } } }, "auth_ref": [ "r337", "r746" ] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Goodwill and Intangible Assets Disclosure [Abstract]", "label": "Goodwill and Intangible Assets Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssets" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill and Intangible Assets", "label": "Goodwill and Intangible Assets Disclosure [Text Block]", "documentation": "The entire disclosure for goodwill and intangible assets." } } }, "auth_ref": [ "r144" ] }, "us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsPolicyTextBlock", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill and Intangible Assets", "label": "Goodwill and Intangible Assets, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for goodwill and intangible assets. This accounting policy also may address how an entity assesses and measures impairment of goodwill and intangible assets." } } }, "auth_ref": [ "r15", "r67" ] }, "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillForeignCurrencyTranslationGainLoss", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Foreign Currency Translation of non-USD functional currency goodwill", "label": "Goodwill, Foreign Currency Translation Gain (Loss)", "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) an asset representing future economic benefits from other assets acquired in a business combination that are not individually identified and separately recognized." } } }, "auth_ref": [ "r341" ] }, "us-gaap_GoodwillLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillLineItems", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill [Line Items]", "label": "Goodwill [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r746" ] }, "us-gaap_GoodwillPurchaseAccountingAdjustments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillPurchaseAccountingAdjustments", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustments", "negatedLabel": "Purchase price adjustments", "label": "Goodwill, Purchase Accounting Adjustments", "documentation": "Amount of increase (decrease) from adjustments after acquisition date under purchase accounting 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." } } }, "auth_ref": [ "r1", "r828" ] }, "us-gaap_GoodwillRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillRollForward", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill [Roll Forward]", "label": "Goodwill [Roll Forward]", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_GovernmentContractsConcentrationRiskMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GovernmentContractsConcentrationRiskMember", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Government contracts concentration risk", "label": "Government Contracts Concentration Risk [Member]", "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. Risk is the materially adverse effects of termination of a significant contract or group of contracts or from future loss of a significant portion of business with a specified political body or unit thereof, such as Department of Defense, US Navy, New York City." } } }, "auth_ref": [ "r53" ] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GrossProfit", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeInterestExpenseInterestIncomeIncomeTaxesExtraordinaryItemsNoncontrollingInterestsNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "totalLabel": "Gross profit", "label": "Gross Profit", "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity." } } }, "auth_ref": [ "r132", "r234", "r291", "r305", "r311", "r314", "r324", "r367", "r368", "r370", "r371", "r372", "r374", "r376", "r378", "r379", "r559", "r743", "r838" ] }, "nvee_INFMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "INFMember", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyGeographicLocationDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "INF", "label": "INF [Member]", "documentation": "Represents the operating and reportable segment Infrastructure (INF), which includes engineering, civil program management, and construction quality assurance practices." } } }, "auth_ref": [] }, "dei_IcfrAuditorAttestationFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "IcfrAuditorAttestationFlag", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "ICFR Auditor Attestation Flag", "label": "ICFR Auditor Attestation Flag" } } }, "auth_ref": [ "r782", "r783", "r784" ] }, "us-gaap_ImpairedAssetsToBeDisposedOfByMethodOtherThanSaleLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ImpairedAssetsToBeDisposedOfByMethodOtherThanSaleLineItems", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Impaired Assets to be Disposed of by Method Other than Sale [Line Items]", "label": "Impaired Assets to be Disposed of by Method Other than Sale [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_ImpairedAssetsToBeDisposedOfByMethodOtherThanSaleTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ImpairedAssetsToBeDisposedOfByMethodOtherThanSaleTable", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Impaired Assets to be Disposed of by Method Other than Sale [Table]", "label": "Impaired Assets to be Disposed of by Method Other than Sale [Table]", "documentation": "When an entity determines it will dispose of a long-lived asset by a method other than sale (for example, by abandonment, distribution in a spin-off), impairment of such assets is separately disclosed from those assets held and used." } } }, "auth_ref": [ "r76", "r149" ] }, "us-gaap_ImpairmentOfLongLivedAssetsHeldForUse": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ImpairmentOfLongLivedAssetsHeldForUse", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Impairment, long-lived asset", "label": "Impairment, Long-Lived Asset, Held-for-Use", "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)." } } }, "auth_ref": [ "r12", "r74", "r151" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Income before income tax expense", "verboseLabel": "Segment income before taxes", "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest." } } }, "auth_ref": [ "r0", "r129", "r172", "r291", "r305", "r311", "r314", "r608", "r619", "r743" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeInterestExpenseInterestIncomeIncomeTaxesExtraordinaryItemsNoncontrollingInterestsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeInterestExpenseInterestIncomeIncomeTaxesExtraordinaryItemsNoncontrollingInterestsNet", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "totalLabel": "Income from operations", "label": "Income (Loss) from Continuing Operations before Interest Expense, Interest Income, Income Taxes, Noncontrolling Interests, Net", "documentation": "Amount of income (loss) from continuing operations, nonoperating income (expense) and income (loss) from equity method investments, before deduction of income tax expense (benefit) and income (loss) attributable to noncontrolling interest, and addition of interest income (expense)." } } }, "auth_ref": [] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "terseLabel": "Income Statement [Abstract]", "label": "Income Statement [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeStatementLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationAxis", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Statement Location [Axis]", "label": "Income Statement Location [Axis]", "documentation": "Information by location in the income statement." } } }, "auth_ref": [ "r350", "r352", "r692" ] }, "us-gaap_IncomeStatementLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationDomain", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Statement Location [Domain]", "label": "Income Statement Location [Domain]", "documentation": "Location in the income statement." } } }, "auth_ref": [ "r352", "r692" ] }, "us-gaap_IncomeTaxAuthorityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityAxis", "presentation": [ "http://www.nv5.com/role/IncomeTaxesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Tax Authority [Axis]", "label": "Income Tax Authority [Axis]", "documentation": "Information by tax jurisdiction." } } }, "auth_ref": [ "r17" ] }, "us-gaap_IncomeTaxAuthorityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityDomain", "presentation": [ "http://www.nv5.com/role/IncomeTaxesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Tax Authority [Domain]", "label": "Income Tax Authority [Domain]", "documentation": "Agency, division or body classification that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes." } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Income Tax Disclosure [Abstract]", "label": "Income Tax Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureTextBlock", "presentation": [ "http://www.nv5.com/role/IncomeTaxes" ], "lang": { "en-us": { "role": { "terseLabel": "Income Taxes", "label": "Income Tax Disclosure [Text Block]", "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." } } }, "auth_ref": [ "r235", "r497", "r505", "r512", "r517", "r525", "r529", "r530", "r531", "r652" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0, "order": 2.0 }, "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitReconciliationDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME", "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitDetails", "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitReconciliationDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Income tax expense", "totalLabel": "Total income tax expense", "label": "Income Tax Expense (Benefit)", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r175", "r190", "r252", "r253", "r299", "r503", "r526", "r623" ] }, "us-gaap_IncomeTaxPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxPolicyTextBlock", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Income Taxes", "label": "Income Tax, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements." } } }, "auth_ref": [ "r216", "r499", "r500", "r512", "r513", "r516", "r518", "r646" ] }, "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitReconciliationDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitReconciliationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Tax at federal statutory rate", "label": "Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount", "documentation": "The amount of income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income from continuing operations." } } }, "auth_ref": [ "r504" ] }, "us-gaap_IncomeTaxReconciliationOtherAdjustments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationOtherAdjustments", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitReconciliationDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitReconciliationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other", "label": "Effective Income Tax Rate Reconciliation, Other Adjustments, Amount", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments." } } }, "auth_ref": [ "r871" ] }, "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes", "crdr": "debit", "calculation": { "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitReconciliationDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitReconciliationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "State taxes, net of Federal benefit", "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state and local income tax expense (benefit)." } } }, "auth_ref": [ "r871" ] }, "us-gaap_IncomeTaxReconciliationTaxCredits": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationTaxCredits", "crdr": "credit", "calculation": { "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitReconciliationDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/IncomeTaxesIncomeTaxExpenseBenefitReconciliationDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Federal and state tax credits", "label": "Effective Income Tax Rate Reconciliation, Tax Credit, Amount", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to tax credits. Including, but not limited to, research credit, foreign tax credit, investment tax credit, and other tax credits." } } }, "auth_ref": [ "r871" ] }, "us-gaap_IncomeTaxesPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxesPaid", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Cash paid for income taxes", "label": "Income Taxes Paid", "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income." } } }, "auth_ref": [ "r44", "r47" ] }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsPayable", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "verboseLabel": "Accounts payable", "label": "Increase (Decrease) in Accounts Payable", "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business." } } }, "auth_ref": [ "r11" ] }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsReceivable", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 17.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "negatedLabel": "Billed receivables", "label": "Increase (Decrease) in Accounts Receivable", "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services." } } }, "auth_ref": [ "r11" ] }, "nvee_IncreaseDecreaseInAccruedLiabilitiesAndOtherLongTermLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "IncreaseDecreaseInAccruedLiabilitiesAndOtherLongTermLiabilities", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "verboseLabel": "Accrued liabilities and other long-term liabilities", "label": "Increase (Decrease) in Accrued Liabilities And Other Long-Term Liabilities", "documentation": "Increase (Decrease) in Accrued Liabilities And Other Long-Term Liabilities" } } }, "auth_ref": [] }, "nvee_IncreaseDecreaseInContingentConsiderationLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "IncreaseDecreaseInContingentConsiderationLiability", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Contingent consideration", "label": "Increase (Decrease) In Contingent Consideration Liability", "documentation": "Increase (Decrease) In Contingent Consideration Liability" } } }, "auth_ref": [] }, "nvee_IncreaseDecreaseInContractWithCustomerFromUnbilledReceivables": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "IncreaseDecreaseInContractWithCustomerFromUnbilledReceivables", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 15.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Unbilled receivables", "label": "Increase Decrease In Contract With Customer From Unbilled Receivables", "documentation": "The increase (decrease) during the reporting period of the amount of unbilled receivables from contracts with customers for work performed for which billing has not occurred, net of uncollectible accounts." } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInContractWithCustomerLiability", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "verboseLabel": "Billings in excess of costs and estimated earnings on uncompleted contracts", "label": "Increase (Decrease) in Contract with Customer, Liability", "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r598", "r805" ] }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Changes in operating assets and liabilities, net of impact of acquisitions:", "label": "Increase (Decrease) in Operating Capital [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInOtherCurrentLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOtherCurrentLiabilities", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 14.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Other current liabilities", "label": "Increase (Decrease) in Other Current Liabilities", "documentation": "Amount of increase (decrease) in current liabilities classified as other." } } }, "auth_ref": [ "r805" ] }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 10.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "negatedLabel": "Prepaid expenses and other assets", "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other." } } }, "auth_ref": [ "r11" ] }, "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_IncrementalCommonSharesAttributableToContingentlyIssuableShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncrementalCommonSharesAttributableToContingentlyIssuableShares", "calculation": { "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Effect of issuable shares related to acquisitions (in shares)", "label": "Incremental Common Shares Attributable to Dilutive Effect of Contingently Issuable Shares", "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of contingently issuable shares. Contingently issuable shares are those shares that are issuable for little or no cash contingent on certain conditions being met." } } }, "auth_ref": [ "r262", "r263", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r280" ] }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "calculation": { "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Effect of dilutive non-vested restricted shares and units (in shares)", "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements", "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method." } } }, "auth_ref": [ "r261", "r262", "r264", "r280", "r459" ] }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntangibleAssetsNetExcludingGoodwill", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible assets, net", "label": "Intangible Assets, Net (Excluding Goodwill)", "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges." } } }, "auth_ref": [ "r68", "r71" ] }, "us-gaap_InterestExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestExpense", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "negatedLabel": "Interest expense", "label": "Interest Expense", "documentation": "Amount of the cost of borrowed funds accounted for as interest expense." } } }, "auth_ref": [ "r111", "r174", "r220", "r295", "r570", "r693", "r775", "r897" ] }, "us-gaap_InterestPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestPaidNet", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Cash paid for interest", "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities", "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." } } }, "auth_ref": [ "r226", "r228", "r229" ] }, "nvee_LaborAndRelatedExpenseExcludingStockBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "LaborAndRelatedExpenseExcludingStockBasedCompensation", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "terseLabel": "Salaries and wages, payroll taxes, and benefits", "label": "Salaries and wages, payroll taxes and benefits", "documentation": "Labor And Related Expense Excluding Stock Based Compensation" } } }, "auth_ref": [] }, "us-gaap_LeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseCost", "crdr": "debit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofLeaseCostDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofLeaseCostDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total lease cost", "label": "Lease, Cost", "documentation": "Amount of lease cost recognized by lessee for lease contract." } } }, "auth_ref": [ "r582", "r764" ] }, "us-gaap_LeaseCostTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseCostTableTextBlock", "presentation": [ "http://www.nv5.com/role/LeasesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Lease Cost", "label": "Lease, Cost [Table Text Block]", "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." } } }, "auth_ref": [ "r881" ] }, "nvee_LeaseTermAndDiscountRateTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "LeaseTermAndDiscountRateTableTextBlock", "presentation": [ "http://www.nv5.com/role/LeasesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Lease Term and Discount Rate", "label": "Lease Term and Discount Rate [Table Text Block]", "documentation": "Tabular disclosure of the lease term and discount rate under operating and finance leases." } } }, "auth_ref": [] }, "us-gaap_LeaseholdImprovementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseholdImprovementsMember", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetScheduleofpropertyandequipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Leasehold improvements", "label": "Leasehold Improvements [Member]", "documentation": "Additions or improvements to assets held under a lease arrangement." } } }, "auth_ref": [ "r150" ] }, "us-gaap_LeasesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeasesAbstract", "lang": { "en-us": { "role": { "terseLabel": "Leases [Abstract]", "label": "Leases [Abstract]" } } }, "auth_ref": [] }, "nvee_LeasesSupplementalCashFlowInformationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "LeasesSupplementalCashFlowInformationTableTextBlock", "presentation": [ "http://www.nv5.com/role/LeasesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Supplemental Cash Flow Information", "label": "Leases, Supplemental Cash Flow Information [Table Text Block]", "documentation": "Tabular disclosure of supplemental cash flow information related to operating and finance leases." } } }, "auth_ref": [] }, "us-gaap_LesseeFinanceLeasesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeFinanceLeasesTextBlock", "presentation": [ "http://www.nv5.com/role/Leases" ], "lang": { "en-us": { "role": { "terseLabel": "Leases", "label": "Lessee, Finance Leases [Text Block]", "documentation": "The entire disclosure for finance leases of lessee. Includes, but is not limited to, description of lessee's finance lease and maturity analysis of finance lease liability." } } }, "auth_ref": [ "r575" ] }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "presentation": [ "http://www.nv5.com/role/LeasesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Maturities of Operating Leases Lease Liabilities", "label": "Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]", "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." } } }, "auth_ref": [ "r882" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails_1": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total lease payments", "label": "Lessee, Operating Lease, Liability, to be Paid", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease." } } }, "auth_ref": [ "r590" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails_1": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Thereafter", "label": "Lessee, Operating Lease, Liability, to be Paid, after Year Five", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r590" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails_1": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2024", "label": "Lessee, Operating Lease, Liability, to be Paid, Year One", "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)." } } }, "auth_ref": [ "r590" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails_1": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2028", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Five", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r590" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails_1": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2027", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four", "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)." } } }, "auth_ref": [ "r590" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails_1": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2026", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three", "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)." } } }, "auth_ref": [ "r590" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails_1": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2025", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two", "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)." } } }, "auth_ref": [ "r590" ] }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Less: Interest", "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount", "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease." } } }, "auth_ref": [ "r590" ] }, "us-gaap_LesseeOperatingLeasesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeasesTextBlock", "presentation": [ "http://www.nv5.com/role/Leases" ], "lang": { "en-us": { "role": { "terseLabel": "Leases", "label": "Lessee, Operating Leases [Text Block]", "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability." } } }, "auth_ref": [ "r575" ] }, "us-gaap_Liabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Liabilities", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "totalLabel": "Total liabilities", "label": "Liabilities", "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." } } }, "auth_ref": [ "r28", "r234", "r324", "r367", "r368", "r370", "r371", "r372", "r374", "r376", "r378", "r379", "r541", "r542", "r543", "r559", "r667", "r742", "r777", "r838", "r883", "r884" ] }, "us-gaap_LiabilitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAbstract", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Liabilities", "label": "Liabilities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "totalLabel": "Total liabilities and stockholders\u2019 equity", "label": "Liabilities and Equity", "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any." } } }, "auth_ref": [ "r126", "r171", "r617", "r765", "r809", "r819", "r878" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Liabilities and Stockholders\u2019 Equity", "label": "Liabilities and Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "totalLabel": "Total current liabilities", "label": "Liabilities, Current", "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer." } } }, "auth_ref": [ "r30", "r198", "r234", "r324", "r367", "r368", "r370", "r371", "r372", "r374", "r376", "r378", "r379", "r541", "r542", "r543", "r559", "r765", "r838", "r883", "r884" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Current liabilities:", "verboseLabel": "Current", "label": "Liabilities, Current [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesNoncurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesNoncurrentAbstract", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Noncurrent", "label": "Liabilities, Noncurrent [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LineOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCredit", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Outstanding balance", "label": "Long-Term Line of Credit", "documentation": "The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement." } } }, "auth_ref": [ "r24", "r170", "r891" ] }, "nvee_LineOfCreditFacilityAvailableIncreaseInBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "LineOfCreditFacilityAvailableIncreaseInBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Available increase in borrowing capacity", "label": "Line of Credit Facility, Available Increase in Borrowing Capacity", "documentation": "Line of Credit Facility, Available Increase in Borrowing Capacity" } } }, "auth_ref": [] }, "nvee_LineOfCreditFacilityCovenantMinimumFixedChargeCoverageRatio": { "xbrltype": "pureItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "LineOfCreditFacilityCovenantMinimumFixedChargeCoverageRatio", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Minimum fixed charge coverage ratio", "label": "Line Of Credit Facility, Covenant, Minimum Fixed Charge Coverage Ratio", "documentation": "The Minimum level of fixed charge coverage ratio under the line of credit facility." } } }, "auth_ref": [] }, "nvee_LineOfCreditFacilityCovenantNetLeverageRatio": { "xbrltype": "pureItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "LineOfCreditFacilityCovenantNetLeverageRatio", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Covenant, net leverage ratio", "label": "Line of Credit Facility, Covenant, Net Leverage Ratio", "documentation": "Line of Credit Facility, Covenant, Net Leverage Ratio" } } }, "auth_ref": [] }, "us-gaap_LineOfCreditFacilityInterestRateDuringPeriod": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityInterestRateDuringPeriod", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Interest rate during period", "label": "Line of Credit Facility, Interest Rate During Period", "documentation": "The effective interest rate during the reporting period." } } }, "auth_ref": [ "r27" ] }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Maximum borrowing capacity", "label": "Line of Credit Facility, Maximum Borrowing Capacity", "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility." } } }, "auth_ref": [ "r27" ] }, "us-gaap_LineOfCreditMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditMember", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Line of Credit", "label": "Line of Credit [Member]", "documentation": "A contractual arrangement with a lender under which borrowings can be made up to a specific amount at any point in time, and under which borrowings outstanding may be either short-term or long-term, depending upon the particulars." } } }, "auth_ref": [] }, "us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivables" ], "lang": { "en-us": { "role": { "terseLabel": "Billed and Unbilled Receivables", "label": "Loans, Notes, Trade and Other Receivables Disclosure [Text Block]", "documentation": "The entire disclosure for claims held for amounts due a entity, excluding financing receivables. Examples include, but are not limited to, trade accounts receivables, notes receivables, loans receivables. Includes disclosure for allowance for credit losses." } } }, "auth_ref": [ "r818" ] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "LocalPhoneNumber", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Local Phone Number", "label": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "us-gaap_LongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebt", "crdr": "credit", "calculation": { "http://www.nv5.com/role/NotesPayableandOtherObligationsFutureContractualMaturitiesofLongtermDebtDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsFutureContractualMaturitiesofLongtermDebtDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total", "label": "Long-Term Debt", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation." } } }, "auth_ref": [ "r24", "r170", "r393", "r408", "r748", "r749", "r891" ] }, "us-gaap_LongTermDebtAndCapitalLeaseObligations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtAndCapitalLeaseObligations", "crdr": "credit", "calculation": { "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails_1": { "parentTag": "us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities", "weight": 1.0, "order": 2.0 }, "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Notes payable and other obligations, less current portion", "verboseLabel": "Notes payable and other obligations, less current portion", "label": "Long-Term Debt and Lease Obligation", "documentation": "Amount of long-term debt and lease obligation, classified as noncurrent." } } }, "auth_ref": [ "r24", "r611" ] }, "us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtAndCapitalLeaseObligationsCurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails_1": { "parentTag": "us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities", "weight": 1.0, "order": 1.0 }, "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Current portion of notes payable and other obligations", "verboseLabel": "Current portion of notes payable and other obligations", "label": "Long-Term Debt and Lease Obligation, Current", "documentation": "Amount of long-term debt and lease obligation, classified as current." } } }, "auth_ref": [ "r29" ] }, "us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities", "crdr": "credit", "calculation": { "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails_1": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total notes payable and other obligations", "label": "Long-Term Debt and Lease Obligation, Including Current Maturities", "documentation": "Amount of long-term debt and lease obligation, including portion classified as current." } } }, "auth_ref": [] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "crdr": "credit", "calculation": { "http://www.nv5.com/role/NotesPayableandOtherObligationsFutureContractualMaturitiesofLongtermDebtDetails": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsFutureContractualMaturitiesofLongtermDebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2024", "label": "Long-Term Debt, Maturity, Year One", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r14", "r236", "r398" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour", "crdr": "credit", "calculation": { "http://www.nv5.com/role/NotesPayableandOtherObligationsFutureContractualMaturitiesofLongtermDebtDetails": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsFutureContractualMaturitiesofLongtermDebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2027", "label": "Long-Term Debt, Maturity, Year Four", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in 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)." } } }, "auth_ref": [ "r14", "r236", "r398" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree", "crdr": "credit", "calculation": { "http://www.nv5.com/role/NotesPayableandOtherObligationsFutureContractualMaturitiesofLongtermDebtDetails": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsFutureContractualMaturitiesofLongtermDebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2026", "label": "Long-Term Debt, Maturity, Year Three", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in 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)." } } }, "auth_ref": [ "r14", "r236", "r398" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo", "crdr": "credit", "calculation": { "http://www.nv5.com/role/NotesPayableandOtherObligationsFutureContractualMaturitiesofLongtermDebtDetails": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsFutureContractualMaturitiesofLongtermDebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2025", "label": "Long-Term Debt, Maturity, Year Two", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r14", "r236", "r398" ] }, "nvee_LongTermDebtMaturityYearFiveAndThereafter": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "LongTermDebtMaturityYearFiveAndThereafter", "crdr": "credit", "calculation": { "http://www.nv5.com/role/NotesPayableandOtherObligationsFutureContractualMaturitiesofLongtermDebtDetails": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsFutureContractualMaturitiesofLongtermDebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2028 and thereafter", "label": "Long-Term Debt, Maturity, Year Five And Thereafter", "documentation": "Long-Term Debt, Maturity, Year Five And Thereafter" } } }, "auth_ref": [] }, "us-gaap_LossContingencyDisclosures": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LossContingencyDisclosures", "presentation": [ "http://www.nv5.com/role/ContingentConsideration" ], "lang": { "en-us": { "role": { "terseLabel": "Contingent Consideration", "label": "Contingencies Disclosure [Text Block]", "documentation": "The entire disclosure for loss and gain contingencies. Describes any existing condition, situation, or set of circumstances involving uncertainty as of the balance sheet date (or prior to issuance of the financial statements) as to a probable or reasonably possible loss incurred by an entity that will ultimately be resolved when one or more future events occur or fail to occur, and typically discloses the amount of loss recorded or a range of possible loss, or an assertion that no reasonable estimate can be made." } } }, "auth_ref": [ "r357", "r358", "r359", "r361", "r363", "r364", "r365", "r366" ] }, "srt_MajorCustomersAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MajorCustomersAxis", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Customer [Axis]", "label": "Customer [Axis]" } } }, "auth_ref": [ "r320", "r754", "r844", "r893", "r894" ] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MaximumMember", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails", "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails", "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesEstimatedUsefulLivesofPropertyandEquipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Maximum", "label": "Maximum [Member]" } } }, "auth_ref": [ "r360", "r362", "r363", "r364", "r454", "r597", "r635", "r659", "r660", "r713", "r715", "r717", "r718", "r720", "r736", "r737", "r744", "r752", "r760", "r766", "r840", "r885", "r886", "r887", "r888", "r889", "r890" ] }, "nvee_MeasurementPeriodAxis": { "xbrltype": "stringItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "MeasurementPeriodAxis", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Measurement Period [Axis]", "label": "Measurement Period [Axis]", "documentation": "Measurement Period [Axis]" } } }, "auth_ref": [] }, "nvee_MeasurementPeriodDomain": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "MeasurementPeriodDomain", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Measurement Period [Domain]", "label": "Measurement Period [Domain]", "documentation": "[Domain] for Measurement Period [Axis]" } } }, "auth_ref": [] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MinimumMember", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails", "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails", "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesEstimatedUsefulLivesofPropertyandEquipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Minimum", "label": "Minimum [Member]" } } }, "auth_ref": [ "r360", "r362", "r363", "r364", "r454", "r597", "r635", "r659", "r660", "r713", "r715", "r717", "r718", "r720", "r736", "r737", "r744", "r752", "r760", "r766", "r840", "r885", "r886", "r887", "r888", "r889", "r890" ] }, "srt_NameOfMajorCustomerDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "NameOfMajorCustomerDomain", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Customer [Domain]", "label": "Customer [Domain]" } } }, "auth_ref": [ "r320", "r754", "r844", "r893", "r894" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash provided by (used in) financing activities", "label": "Net Cash Provided by (Used in) Financing Activities", "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit." } } }, "auth_ref": [ "r227" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flows from financing activities:", "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash used in investing activities", "label": "Net Cash Provided by (Used in) Investing Activities", "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets." } } }, "auth_ref": [ "r227" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flows from investing activities:", "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivities", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash provided by operating activities", "label": "Net Cash Provided by (Used in) Operating Activities", "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities." } } }, "auth_ref": [ "r137", "r138", "r139" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flows from operating activities:", "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLoss", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 2.0 }, "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS", "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY", "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "totalLabel": "Net income", "verboseLabel": "Net income", "label": "Net Income (Loss)", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r130", "r139", "r173", "r196", "r211", "r214", "r219", "r234", "r242", "r246", "r247", "r248", "r249", "r252", "r253", "r276", "r291", "r305", "r311", "r314", "r324", "r367", "r368", "r370", "r371", "r372", "r374", "r376", "r378", "r379", "r555", "r559", "r620", "r689", "r706", "r707", "r743", "r775", "r838" ] }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLossAvailableToCommonStockholdersBasic", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Net income \u2013 basic", "label": "Net Income (Loss) Available to Common Stockholders, Basic", "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities; of income (loss) available to common shareholders." } } }, "auth_ref": [ "r224", "r246", "r247", "r248", "r249", "r257", "r258", "r277", "r280", "r291", "r305", "r311", "r314", "r743" ] }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersDiluted": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLossAvailableToCommonStockholdersDiluted", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Net income \u2013 diluted", "label": "Net Income (Loss) Available to Common Stockholders, Diluted", "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." } } }, "auth_ref": [ "r224", "r259", "r265", "r266", "r267", "r268", "r277", "r280" ] }, "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "presentation": [ "http://www.nv5.com/role/RecentlyIssuedAccountingPronouncements" ], "lang": { "en-us": { "role": { "terseLabel": "Recently Issued Accounting Pronouncements", "label": "Accounting Standards Update and Change in Accounting Principle [Text Block]", "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." } } }, "auth_ref": [ "r188", "r189", "r191", "r194", "r240", "r241", "r244", "r245", "r254", "r255", "r326", "r327", "r522", "r523", "r524", "r549", "r552", "r556", "r557", "r558", "r560", "r561", "r562", "r573", "r574", "r592", "r601", "r602", "r603", "r639", "r640", "r641", "r642", "r643" ] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Recently Adopted Accounting Pronouncements and Accounting Pronouncements Not Yet Adopted", "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact." } } }, "auth_ref": [] }, "nvee_NonCashLeaseExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "NonCashLeaseExpense", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Non-cash lease expense", "label": "Non-Cash Lease Expense", "documentation": "Amount of net increase (decrease) in right-of-use assets and operating lease liabilities during the period." } } }, "auth_ref": [] }, "us-gaap_NoncashInvestingAndFinancingItemsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncashInvestingAndFinancingItemsAbstract", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Non-cash investing and financing activities:", "label": "Noncash Investing and Financing Items [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NoncashOrPartNoncashAcquisitionPayablesAssumed1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncashOrPartNoncashAcquisitionPayablesAssumed1", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Notes payable and other obligations issued for acquisitions", "label": "Noncash or Part Noncash Acquisition, Payables Assumed", "documentation": "The amount of payables that an Entity assumes in acquiring a business or in consideration for an asset received in a noncash (or part noncash) acquisition. Noncash is defined as transactions during a period that affect recognized assets or liabilities but that do not result in cash receipts or cash payments in the period. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period." } } }, "auth_ref": [ "r48", "r49", "r50" ] }, "us-gaap_NoncompeteAgreementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncompeteAgreementsMember", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsWeightedAverageUsefulLivesofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Non-compete", "verboseLabel": "Non-compete", "label": "Noncompete Agreements [Member]", "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party." } } }, "auth_ref": [ "r99" ] }, "us-gaap_NotesPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NotesPayable", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Notes payable", "label": "Notes Payable", "documentation": "Including the current and noncurrent portions, aggregate carrying amount of all types of notes payable, as of the balance sheet date, with initial maturities beyond one year or beyond the normal operating cycle, if longer." } } }, "auth_ref": [ "r24", "r170", "r891" ] }, "us-gaap_NumberOfBusinessesAcquired": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NumberOfBusinessesAcquired", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of businesses acquired", "label": "Number of Businesses Acquired", "documentation": "The number of businesses acquired by the entity during the period." } } }, "auth_ref": [] }, "nvee_NumberOfEquipmentOperatingLeases": { "xbrltype": "integerItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "NumberOfEquipmentOperatingLeases", "presentation": [ "http://www.nv5.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of equipment operating leases", "label": "Number Of Equipment Operating Leases", "documentation": "Number Of Equipment Operating Leases" } } }, "auth_ref": [] }, "us-gaap_NumberOfOperatingSegments": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NumberOfOperatingSegments", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of operating segments", "label": "Number of Operating Segments", "documentation": "Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues." } } }, "auth_ref": [ "r816" ] }, "us-gaap_NumberOfReportingUnits": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NumberOfReportingUnits", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of reportable segments", "label": "Number of Reporting Units", "documentation": "Number of reporting units tested for impairment of goodwill. A reporting unit is an operating segment or one level below an operating segment." } } }, "auth_ref": [] }, "nvee_NumeratorAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "NumeratorAbstract", "presentation": [ "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Numerator [Abstract]", "label": "Numerator [Abstract]", "documentation": "Numerator" } } }, "auth_ref": [] }, "nvee_OfficeFurnitureAndEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "OfficeFurnitureAndEquipmentMember", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesEstimatedUsefulLivesofPropertyandEquipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Office furniture and equipment", "label": "Office Furniture and Equipment [Member]", "documentation": "Furniture and equipment commonly used in offices." } } }, "auth_ref": [] }, "nvee_OfficeLeasesInitialTerm": { "xbrltype": "durationItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "OfficeLeasesInitialTerm", "presentation": [ "http://www.nv5.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Office leases initial term", "label": "Office Leases Initial Term", "documentation": "Office Leases Initial Term" } } }, "auth_ref": [] }, "nvee_OperatingAndFinanceLeasesLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "OperatingAndFinanceLeasesLiability", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "negatedTotalLabel": "Total lease liabilities", "label": "Total lease liabilities", "documentation": "Present value of lessee's discounted obligation for lease payments from operating and finance leases." } } }, "auth_ref": [] }, "nvee_OperatingAndFinanceLeasesRightOfUseAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "OperatingAndFinanceLeasesRightOfUseAssets", "crdr": "debit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total leased assets", "label": "Total leased assets", "documentation": "Amount of lessee's right to use underlying assets under operating and finance leases." } } }, "auth_ref": [] }, "us-gaap_OperatingExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingExpenses", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeInterestExpenseInterestIncomeIncomeTaxesExtraordinaryItemsNoncontrollingInterestsNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "totalLabel": "Total operating expenses", "label": "Operating Expenses", "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense." } } }, "auth_ref": [] }, "us-gaap_OperatingExpensesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingExpensesAbstract", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "terseLabel": "Operating expenses:", "label": "Operating Expenses [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseCost", "crdr": "debit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofLeaseCostDetails": { "parentTag": "us-gaap_LeaseCost", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofLeaseCostDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating lease cost", "label": "Operating Lease, Cost", "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." } } }, "auth_ref": [ "r584", "r764" ] }, "us-gaap_OperatingLeaseExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseExpense", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "terseLabel": "Facilities and facilities related", "label": "Operating Lease, Expense", "documentation": "Amount of operating lease expense. Excludes sublease income." } } }, "auth_ref": [ "r880" ] }, "us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilitiesPaymentsDueAbstract", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating Leases", "label": "Lessee, Operating Lease, Liability, to be Paid, Fiscal Year Maturity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiability", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofMaturitiesofLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Present value of lease liabilities", "label": "Operating Lease, Liability", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease." } } }, "auth_ref": [ "r577" ] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/AccruedLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 1.0 }, "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails": { "parentTag": "nvee_OperatingAndFinanceLeasesLiability", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/AccruedLiabilitiesDetails", "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Current portion of lease liability", "negatedLabel": "Operating", "label": "Operating Lease, Liability, Current", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current." } } }, "auth_ref": [ "r577" ] }, "us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]", "label": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]", "documentation": "Indicates line item in statement of financial position that includes current operating lease liability." } } }, "auth_ref": [ "r578" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails": { "parentTag": "nvee_OperatingAndFinanceLeasesLiability", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Operating", "label": "Operating Lease, Liability, Noncurrent", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent." } } }, "auth_ref": [ "r577" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible List]", "label": "Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration]", "documentation": "Indicates line item in statement of financial position that includes noncurrent operating lease liability." } } }, "auth_ref": [ "r578" ] }, "nvee_OperatingLeaseNumberOfOptionsToRenew": { "xbrltype": "integerItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "OperatingLeaseNumberOfOptionsToRenew", "presentation": [ "http://www.nv5.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of options to renew", "label": "Operating Lease Number Of Options To Renew", "documentation": "Operating Lease Number Of Options To Renew" } } }, "auth_ref": [] }, "us-gaap_OperatingLeasePayments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeasePayments", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating cash flows from operating leases", "label": "Operating Lease, Payments", "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use." } } }, "auth_ref": [ "r581", "r586" ] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails": { "parentTag": "nvee_OperatingAndFinanceLeasesRightOfUseAssets", "weight": 1.0, "order": 1.0 }, "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Right-of-use lease assets, net", "verboseLabel": "Operating lease assets", "label": "Operating Lease, Right-of-Use Asset", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r576" ] }, "nvee_OperatingLeaseRightOfUseAssetAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "OperatingLeaseRightOfUseAssetAccumulatedAmortization", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalBalanceSheetInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating right of-use lease assets", "label": "Operating Lease Right Of Use Asset Accumulated Amortization", "documentation": "Represents the amount of accumulated amortization which reduces the balance of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofLeaseTermandDiscountRateDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating leases", "label": "Operating Lease, Weighted Average Discount Rate, Percent", "documentation": "Weighted average discount rate for operating lease calculated at point in time." } } }, "auth_ref": [ "r589", "r764" ] }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofLeaseTermandDiscountRateDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating leases", "label": "Operating Lease, Weighted Average Remaining Lease Term", "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." } } }, "auth_ref": [ "r588", "r764" ] }, "nvee_OperatingLossCarryforwardNotSubjectToExpiration": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "OperatingLossCarryforwardNotSubjectToExpiration", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/IncomeTaxesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Net operating loss carryforwards not subject to expiration", "label": "Operating Loss Carryforward, Not Subject To Expiration", "documentation": "Operating Loss Carryforward, Not Subject To Expiration" } } }, "auth_ref": [] }, "nvee_OperatingLossCarryforwardSubjectToExpiration": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "OperatingLossCarryforwardSubjectToExpiration", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/IncomeTaxesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Net operating loss carryforwards subject to expiration", "label": "Operating Loss Carryforward, Subject To Expiration", "documentation": "Operating Loss Carryforward, Subject To Expiration" } } }, "auth_ref": [] }, "us-gaap_OperatingLossCarryforwards": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLossCarryforwards", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/IncomeTaxesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Net operating loss carryforwards", "label": "Operating Loss Carryforwards", "documentation": "Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws." } } }, "auth_ref": [ "r90" ] }, "us-gaap_OperatingLossCarryforwardsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLossCarryforwardsLineItems", "presentation": [ "http://www.nv5.com/role/IncomeTaxesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating Loss Carryforwards [Line Items]", "label": "Operating Loss Carryforwards [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_OperatingLossCarryforwardsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLossCarryforwardsTable", "presentation": [ "http://www.nv5.com/role/IncomeTaxesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating Loss Carryforwards [Table]", "label": "Operating Loss Carryforwards [Table]", "documentation": "Schedule reflecting pertinent information, such as tax authority, amounts, and expiration dates, of net operating loss carryforwards, including an assessment of the likelihood of utilization." } } }, "auth_ref": [ "r89" ] }, "us-gaap_OperatingSegmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingSegmentsMember", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating segments", "label": "Operating Segments [Member]", "documentation": "Identifies components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity." } } }, "auth_ref": [ "r304", "r305", "r306", "r307", "r308", "r314" ] }, "us-gaap_OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "presentation": [ "http://www.nv5.com/role/OrganizationandNatureofBusinessOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Organization and Nature of Business Operations", "label": "Organization, Consolidation, Basis of Presentation, Business Description and Accounting Policies [Text Block]", "documentation": "The entire disclosure for the general note to the financial statements for the reporting entity which may include, descriptions of the basis of presentation, business description, significant accounting policies, consolidations, reclassifications, new pronouncements not yet adopted and changes in accounting principles." } } }, "auth_ref": [ "r140", "r141", "r142", "r165" ] }, "us-gaap_OtherAccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/AccruedLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.nv5.com/role/AccruedLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other", "label": "Other Accrued Liabilities, Current", "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r29" ] }, "nvee_OtherAcquisitionMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "OtherAcquisitionMember", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other Acquisition", "label": "Other Acquisition [Member]", "documentation": "Other Acquisition" } } }, "auth_ref": [] }, "us-gaap_OtherAssetImpairmentCharges": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetImpairmentCharges", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill and intangible asset impairment", "label": "Other Asset Impairment Charges", "documentation": "The charge against earnings resulting from the write down of long lived assets other than goodwill due to the difference between the carrying value and lower fair value." } } }, "auth_ref": [ "r806", "r835" ] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsNoncurrent", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Other assets", "label": "Other Assets, Noncurrent", "documentation": "Amount of noncurrent assets classified as other." } } }, "auth_ref": [ "r202" ] }, "us-gaap_OtherCommitment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherCommitment", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other obligations", "label": "Other Commitment", "documentation": "Minimum amount of other commitment not otherwise specified in the taxonomy. Excludes commitments explicitly modeled in the taxonomy, including but not limited to, long-term and short-term purchase commitments, recorded and unrecorded purchase obligations, supply commitments, registration payment arrangements, leases, debt, product warranties, guarantees, environmental remediation obligations, and pensions." } } }, "auth_ref": [] }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign currency translation loss, net of tax", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent", "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity." } } }, "auth_ref": [ "r10", "r18", "r166" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "terseLabel": "Comprehensive income:", "label": "Other Comprehensive Income (Loss), Net of Tax [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Other comprehensive income (loss)", "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent", "documentation": "Amount after tax of other comprehensive income (loss) attributable to parent entity." } } }, "auth_ref": [ "r10", "r18", "r166", "r212", "r215" ] }, "nvee_OtherDirectCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "OtherDirectCosts", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": "us-gaap_DirectOperatingCosts", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "terseLabel": "Other direct costs", "label": "Other direct costs", "documentation": "Other cost of labor directly related to good produced and service rendered." } } }, "auth_ref": [] }, "nvee_OtherDirectCostsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "OtherDirectCostsMember", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other Direct Costs", "label": "Other Direct Costs [Member]", "documentation": "Other Direct Costs [Member]" } } }, "auth_ref": [] }, "us-gaap_OtherIntangibleAssetsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherIntangibleAssetsMember", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other", "label": "Other Intangible Assets [Member]", "documentation": "Intangible assets classified as other." } } }, "auth_ref": [] }, "us-gaap_OtherLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Other current liabilities", "label": "Other Liabilities, Current", "documentation": "Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r29", "r765" ] }, "us-gaap_OtherLiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLiabilitiesNoncurrent", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Other long-term liabilities", "label": "Other Liabilities, Noncurrent", "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r32" ] }, "us-gaap_OtherOperatingActivitiesCashFlowStatement": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherOperatingActivitiesCashFlowStatement", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 13.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Other", "label": "Other Operating Activities, Cash Flow Statement", "documentation": "Other cash or noncash adjustments to reconcile net income to cash provided by (used in) operating activities that are not separately disclosed in the statement of cash flows (for example, cash received or cash paid during the current period for miscellaneous operating activities, net change during the reporting period in other assets or other liabilities)." } } }, "auth_ref": [] }, "us-gaap_OverAllotmentOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OverAllotmentOptionMember", "presentation": [ "http://www.nv5.com/role/StockholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Over-allotment Option", "label": "Over-Allotment Option [Member]", "documentation": "Right given to the underwriter to sell additional shares over the initial allotment." } } }, "auth_ref": [] }, "us-gaap_PayablesAndAccrualsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PayablesAndAccrualsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Payables and Accruals [Abstract]", "label": "Payables and Accruals [Abstract]" } } }, "auth_ref": [] }, "us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentForContingentConsiderationLiabilityFinancingActivities", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 6.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Payments of contingent consideration", "label": "Payment for Contingent Consideration Liability, Financing Activities", "documentation": "Amount of cash outflow, not made soon after acquisition date of business combination, to settle contingent consideration liability up to amount recognized at acquisition date, including, but not limited to, measurement period adjustment and less amount paid soon after acquisition date." } } }, "auth_ref": [ "r9" ] }, "nvee_PaymentOfContingentConsiderationAndOtherObligationsWithCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "PaymentOfContingentConsiderationAndOtherObligationsWithCommonStock", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Payment of contingent consideration and other obligations with common stock", "label": "Payment Of Contingent Consideration And Other Obligations With Common Stock", "documentation": "Common stock issued as payment for contingent consideration." } } }, "auth_ref": [] }, "us-gaap_PaymentsOfDebtIssuanceCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsOfDebtIssuanceCosts", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 7.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "negatedLabel": "Payments of debt issuance costs", "label": "Payments of Debt Issuance Costs", "documentation": "The cash outflow paid to third parties in connection with debt origination, which will be amortized over the remaining maturity period of the associated long-term debt." } } }, "auth_ref": [ "r43" ] }, "us-gaap_PaymentsOfStockIssuanceCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsOfStockIssuanceCosts", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 8.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "negatedLabel": "Payments of common stock offering costs", "label": "Payments of Stock Issuance Costs", "documentation": "The cash outflow for cost incurred directly with the issuance of an equity security." } } }, "auth_ref": [ "r41" ] }, "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Purchases of common stock tendered by employees to satisfy the required withholding taxes related to stock-based compensation", "label": "Payment, Tax Withholding, Share-Based Payment Arrangement", "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement." } } }, "auth_ref": [ "r225" ] }, "us-gaap_PaymentsToAcquireBusinessesGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquireBusinessesGross", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Payments to acquire businesses", "label": "Payments to Acquire Businesses, Gross", "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price." } } }, "auth_ref": [ "r39", "r536" ] }, "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "negatedLabel": "Cash paid for acquisitions (net of cash received from acquisitions)", "label": "Payments to Acquire Businesses, Net of Cash Acquired", "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase." } } }, "auth_ref": [ "r39" ] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "negatedLabel": "Purchase of property and equipment", "label": "Payments to Acquire Property, Plant, and Equipment", "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets." } } }, "auth_ref": [ "r136" ] }, "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "presentation": [ "http://www.nv5.com/role/EmployeeBenefitPlan" ], "lang": { "en-us": { "role": { "terseLabel": "Employee Benefit Plan", "label": "Retirement Benefits [Text Block]", "documentation": "The entire disclosure for retirement benefits." } } }, "auth_ref": [ "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r757" ] }, "nvee_PeriodOneMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "PeriodOneMember", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Period One", "label": "Period One [Member]", "documentation": "Period One" } } }, "auth_ref": [] }, "nvee_PeriodTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "PeriodTwoMember", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Period Two", "label": "Period Two [Member]", "documentation": "Period Two" } } }, "auth_ref": [] }, "us-gaap_PlanNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PlanNameAxis", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Plan Name [Axis]", "label": "Plan Name [Axis]", "documentation": "Information by plan name for share-based payment arrangement." } } }, "auth_ref": [ "r845", "r846", "r847", "r848", "r849", "r850", "r851", "r852", "r853", "r854", "r855", "r856", "r857", "r858", "r859", "r860", "r861", "r862", "r863", "r864", "r865", "r866", "r867", "r868", "r869", "r870" ] }, "us-gaap_PlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PlanNameDomain", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Plan Name [Domain]", "label": "Plan Name [Domain]", "documentation": "Plan name for share-based payment arrangement." } } }, "auth_ref": [ "r845", "r846", "r847", "r848", "r849", "r850", "r851", "r852", "r853", "r854", "r855", "r856", "r857", "r858", "r859", "r860", "r861", "r862", "r863", "r864", "r865", "r866", "r867", "r868", "r869", "r870" ] }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockParOrStatedValuePerShare", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, par value (in dollars per share)", "label": "Preferred Stock, Par or Stated Value Per Share", "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer." } } }, "auth_ref": [ "r120", "r410" ] }, "us-gaap_PreferredStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesAuthorized", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, shares authorized (in shares)", "label": "Preferred Stock, Shares Authorized", "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r120", "r669" ] }, "us-gaap_PreferredStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesIssued", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, shares issued (in shares)", "label": "Preferred Stock, Shares Issued", "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." } } }, "auth_ref": [ "r120", "r410" ] }, "us-gaap_PreferredStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesOutstanding", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, shares outstanding (in shares)", "label": "Preferred Stock, Shares Outstanding", "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased." } } }, "auth_ref": [ "r120", "r669", "r687", "r898", "r899" ] }, "us-gaap_PreferredStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockValue", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, $0.01 par value; 5,000,000 shares authorized, no shares issued and outstanding", "label": "Preferred Stock, Value, Issued", "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r120", "r613", "r765" ] }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PrepaidExpenseAndOtherAssetsCurrent", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Prepaid expenses and other current assets", "label": "Prepaid Expense and Other Assets, Current", "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r800" ] }, "nvee_PrivateSectorMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "PrivateSectorMember", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Private sector", "label": "Private Sector [Member]", "documentation": "Information related to the private sector." } } }, "auth_ref": [] }, "us-gaap_ProceedsFromIssuanceOfCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromIssuanceOfCommonStock", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS", "http://www.nv5.com/role/StockholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from common stock offering", "label": "Proceeds from Issuance of Common Stock", "documentation": "The cash inflow from the additional capital contribution to the entity." } } }, "auth_ref": [ "r8" ] }, "us-gaap_ProceedsFromLinesOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromLinesOfCredit", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate credit agreement", "label": "Proceeds from Lines of Credit", "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." } } }, "auth_ref": [ "r40", "r808" ] }, "us-gaap_ProceedsFromLongTermLinesOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromLongTermLinesOfCredit", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Borrowings from Senior Credit Facility", "label": "Proceeds from Long-Term Lines of Credit", "documentation": "The cash inflow from a contractual arrangement with the lender, including letter of credit, standby letter of credit and revolving credit arrangements, under which borrowings can be made up to a specific amount at any point in time with maturities due beyond one year or the operating cycle, if longer." } } }, "auth_ref": [ "r40" ] }, "us-gaap_ProceedsFromSaleOfProductiveAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromSaleOfProductiveAssets", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from sale of assets", "label": "Proceeds from Sale of Productive Assets", "documentation": "The cash inflow from the sale of property, plant and equipment (capital expenditures), software, and other intangible assets." } } }, "auth_ref": [ "r135" ] }, "us-gaap_ProductInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProductInformationLineItems", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Product Information [Line Items]", "label": "Product Information [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentAbstract", "lang": { "en-us": { "role": { "terseLabel": "Property, Plant and Equipment [Abstract]", "label": "Property, Plant and Equipment [Abstract]" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization", "crdr": "credit", "calculation": { "http://www.nv5.com/role/PropertyandEquipmentnetScheduleofpropertyandequipmentDetails": { "parentTag": "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetScheduleofpropertyandequipmentDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Less: accumulated depreciation", "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, Accumulated Depreciation and Amortization", "documentation": "Amount of accumulated depreciation and amortization from plant, property, and equipment and right-of-use asset from finance lease." } } }, "auth_ref": [ "r791", "r796", "r834" ] }, "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 1.0 }, "http://www.nv5.com/role/PropertyandEquipmentnetScheduleofpropertyandequipmentDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/PropertyandEquipmentnetScheduleofpropertyandequipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Property and equipment, net", "totalLabel": "Property and equipment, net", "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, after Accumulated Depreciation and Amortization", "documentation": "Amount, after accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset." } } }, "auth_ref": [ "r796", "r832" ] }, "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization", "crdr": "debit", "calculation": { "http://www.nv5.com/role/PropertyandEquipmentnetScheduleofpropertyandequipmentDetails": { "parentTag": "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetScheduleofpropertyandequipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total", "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, before Accumulated Depreciation and Amortization", "documentation": "Amount, before accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset." } } }, "auth_ref": [ "r790", "r799", "r833" ] }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentByTypeAxis", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetScheduleofpropertyandequipmentDetails", "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesEstimatedUsefulLivesofPropertyandEquipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Property, Plant and Equipment, Type [Axis]", "label": "Long-Lived Tangible Asset [Axis]", "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale." } } }, "auth_ref": [ "r13" ] }, "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentDisclosureTextBlock", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnet" ], "lang": { "en-us": { "role": { "terseLabel": "Property and Equipment, net", "label": "Property, Plant and Equipment Disclosure [Text Block]", "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections." } } }, "auth_ref": [ "r148", "r180", "r185", "r186" ] }, "us-gaap_PropertyPlantAndEquipmentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentLineItems", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetScheduleofpropertyandequipmentDetails", "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesEstimatedUsefulLivesofPropertyandEquipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Property, Plant and Equipment [Line Items]", "label": "Property, Plant and Equipment [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentPolicyTextBlock", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Property and Equipment", "label": "Property, Plant and Equipment, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections." } } }, "auth_ref": [ "r13", "r180", "r185", "r618" ] }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentTextBlock", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Property and Equipment", "label": "Property, Plant and Equipment [Table Text Block]", "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." } } }, "auth_ref": [ "r13" ] }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentTypeDomain", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetScheduleofpropertyandequipmentDetails", "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesEstimatedUsefulLivesofPropertyandEquipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Property, Plant and Equipment, Type [Domain]", "label": "Long-Lived Tangible Asset [Domain]", "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." } } }, "auth_ref": [ "r150" ] }, "us-gaap_PropertyPlantAndEquipmentUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentUsefulLife", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesEstimatedUsefulLivesofPropertyandEquipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Property, plant and equipment, useful life", "label": "Property, Plant and Equipment, Useful Life", "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment." } } }, "auth_ref": [] }, "us-gaap_ProvisionForDoubtfulAccounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProvisionForDoubtfulAccounts", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 16.0 } }, "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesActivityintheAllowanceforDoubtfulAccountsDetails", "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Provision for doubtful accounts", "verboseLabel": "Provision for doubtful accounts", "label": "Accounts Receivable, Credit Loss Expense (Reversal)", "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable." } } }, "auth_ref": [ "r223", "r331" ] }, "nvee_PublicAndQuasipublicSectorMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "PublicAndQuasipublicSectorMember", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Public and quasi-public sector", "label": "Public and Quasi-Public Sector [Member]", "documentation": "Information related to the public and quasi public sector." } } }, "auth_ref": [] }, "nvee_PublicStockOfferingMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "PublicStockOfferingMember", "presentation": [ "http://www.nv5.com/role/StockholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Public Stock Offering", "label": "Public Stock Offering [Member]", "documentation": "Public Stock Offering" } } }, "auth_ref": [] }, "nvee_PurchasesOfCommonStockTenderedByEmployeesToSatisfyTheRequiredWithholdingTaxesRelatedToStockBasedCompensation": { "xbrltype": "sharesItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "PurchasesOfCommonStockTenderedByEmployeesToSatisfyTheRequiredWithholdingTaxesRelatedToStockBasedCompensation", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Purchases of common stock tendered by employees to satisfy the required withholding taxes related to stock-based compensation (in shares)", "label": "Purchases of Common Stock Tendered by Employees to Satisfy the Required Withholding Taxes Related to Stock-based Compensation", "documentation": "Purchases of Common Stock Tendered by Employees to Satisfy the Required Withholding Taxes Related to Stock-based Compensation" } } }, "auth_ref": [] }, "nvee_PurchasesOfCommonStockTenderedByEmployeesToSatisfyTheRequiredWithholdingTaxesRelatedToStockBasedCompensation1": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "PurchasesOfCommonStockTenderedByEmployeesToSatisfyTheRequiredWithholdingTaxesRelatedToStockBasedCompensation1", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Purchases of common stock tendered by employees to satisfy the required withholding taxes related to stock-based compensation", "label": "Purchases of Common Stock Tendered by Employees to Satisfy the Required Withholding Taxes Related to Stock-based Compensation 1", "documentation": "Purchases of Common Stock Tendered by Employees to Satisfy the Required Withholding Taxes Related to Stock-based Compensation 1" } } }, "auth_ref": [] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeAxis", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails", "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails", "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesEstimatedUsefulLivesofPropertyandEquipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Statistical Measurement [Axis]", "label": "Statistical Measurement [Axis]" } } }, "auth_ref": [ "r360", "r362", "r363", "r364", "r442", "r454", "r483", "r484", "r485", "r596", "r597", "r635", "r659", "r660", "r713", "r715", "r717", "r718", "r720", "r736", "r737", "r744", "r752", "r760", "r766", "r769", "r836", "r840", "r886", "r887", "r888", "r889", "r890" ] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeMember", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails", "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails", "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesEstimatedUsefulLivesofPropertyandEquipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Statistical Measurement [Domain]", "label": "Statistical Measurement [Domain]" } } }, "auth_ref": [ "r360", "r362", "r363", "r364", "r442", "r454", "r483", "r484", "r485", "r596", "r597", "r635", "r659", "r660", "r713", "r715", "r717", "r718", "r720", "r736", "r737", "r744", "r752", "r760", "r766", "r769", "r836", "r840", "r886", "r887", "r888", "r889", "r890" ] }, "us-gaap_ReceivablesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReceivablesAbstract", "lang": { "en-us": { "role": { "terseLabel": "Receivables [Abstract]", "label": "Receivables [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReconciliationOfRevenueFromSegmentsToConsolidatedTable", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Reconciliation of Revenue from Segments to Consolidated [Table]", "label": "Reconciliation of Revenue from Segments to Consolidated [Table]", "documentation": "Identification, description, and amounts of all significant reconciling items in the reconciliation of total revenues from reportable segments to the entity's consolidated revenues." } } }, "auth_ref": [ "r62", "r63" ] }, "us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward", "presentation": [ "http://www.nv5.com/role/IncomeTaxesUnrecognizedTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Reconciliation of Unrecognized Tax Benefits, Excluding Amounts Pertaining to Examined Tax Returns [Roll Forward]", "label": "Reconciliation of Unrecognized Tax Benefits, Excluding Amounts Pertaining to Examined Tax Returns [Roll Forward]", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_RepaymentsOfLinesOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RepaymentsOfLinesOfCredit", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Payments on notes payable", "label": "Repayments of Lines of Credit", "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." } } }, "auth_ref": [ "r42", "r808" ] }, "us-gaap_RepaymentsOfLongTermLinesOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RepaymentsOfLongTermLinesOfCredit", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Payments of borrowings from Senior Credit Facility", "label": "Repayments of Long-Term Lines of Credit", "documentation": "The cash outflow for the settlement of obligation drawn from a contractual arrangement with the lender, including letter of credit, standby letter of credit and revolving credit arrangements, under which borrowings can be made up to a specific amount at any point in time with maturities due beyond one year or the operating cycle, if longer." } } }, "auth_ref": [ "r42" ] }, "us-gaap_RestrictedStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestrictedStockMember", "presentation": [ "http://www.nv5.com/role/EarningsPerShareNarrativeDetails", "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails", "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted stock", "label": "Restricted Stock [Member]", "documentation": "Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met." } } }, "auth_ref": [ "r51" ] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Retained earnings", "label": "Retained Earnings (Accumulated Deficit)", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r123", "r157", "r616", "r639", "r643", "r651", "r670", "r765" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsMember", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Retained Earnings", "label": "Retained Earnings [Member]", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r193", "r237", "r238", "r239", "r243", "r251", "r253", "r325", "r328", "r492", "r493", "r494", "r520", "r521", "r544", "r546", "r547", "r550", "r553", "r636", "r638", "r653", "r898" ] }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue from contract with customer", "label": "Revenue from Contract with Customer, Excluding Assessed Tax", "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise." } } }, "auth_ref": [ "r292", "r293", "r304", "r309", "r310", "r316", "r318", "r320", "r437", "r438", "r599" ] }, "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerIncludingAssessedTax", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "parentTag": "us-gaap_GrossProfit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME", "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyGeographicLocationDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Gross revenues", "label": "Revenue from Contract with Customer, Including Assessed Tax", "documentation": "Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise." } } }, "auth_ref": [ "r292", "r293", "r304", "r309", "r310", "r316", "r318", "r320", "r437", "r438", "r599" ] }, "nvee_RevenueFromContractWithCustomerPercentOfGrossRevenues": { "xbrltype": "percentItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "RevenueFromContractWithCustomerPercentOfGrossRevenues", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue from contract with customer, percent of gross revenues", "label": "Revenue From Contract With Customer, Percent Of Gross Revenues", "documentation": "Revenue From Contract With Customer, Percent Of Gross Revenues" } } }, "auth_ref": [] }, "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerPolicyTextBlock", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue Recognition", "label": "Revenue from Contract with Customer [Policy Text Block]", "documentation": "Disclosure of accounting policy for revenue from contract with customer." } } }, "auth_ref": [ "r192", "r429", "r430", "r431", "r432", "r433", "r434", "r435", "r436", "r738" ] }, "us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromExternalCustomersByGeographicAreasTableTextBlock", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Revenue from External Customers by Geographic Areas", "label": "Revenue from External Customers by Geographic Areas [Table Text Block]", "documentation": "Tabular disclosure of revenue from external customers by geographic areas attributed to the entity's country of domicile and to foreign countries from which the entity derives revenue." } } }, "auth_ref": [ "r22" ] }, "us-gaap_RevenueRemainingPerformanceObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligation", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue remaining performance obligation amount", "label": "Revenue, Remaining Performance Obligation, Amount", "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue." } } }, "auth_ref": [ "r183" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue performance obligation expected timing of satisfaction period", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period", "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r184" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]", "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in YYYY-MM-DD format." } } }, "auth_ref": [ "r184" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]", "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation." } } }, "auth_ref": [] }, "us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenuesFromExternalCustomersAndLongLivedAssetsLineItems", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyGeographicLocationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenues from External Customers and Long-Lived Assets [Line Items]", "label": "Revenues from External Customers and Long-Lived Assets [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_RevolvingCreditFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevolvingCreditFacilityMember", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revolving Credit Facility", "label": "Revolving Credit Facility [Member]", "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount." } } }, "auth_ref": [] }, "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating leases", "label": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability", "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability." } } }, "auth_ref": [ "r587", "r764" ] }, "nvee_RightOfUseAssetsObtainedInExchangeForLeaseObligationsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "RightOfUseAssetsObtainedInExchangeForLeaseObligationsAbstract", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Right-of-use assets obtained in exchange for lease obligations", "label": "Right-Of-Use Assets Obtained in Exchange for Lease Obligations [Abstract]", "documentation": "Right-Of-Use Assets Obtained in Exchange for Lease Obligations" } } }, "auth_ref": [] }, "us-gaap_SaleOfStockNameOfTransactionDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SaleOfStockNameOfTransactionDomain", "presentation": [ "http://www.nv5.com/role/StockholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Sale of Stock [Domain]", "label": "Sale of Stock [Domain]", "documentation": "Sale of the entity's stock, including, but not limited to, initial public offering (IPO) and private placement." } } }, "auth_ref": [] }, "us-gaap_SalesRevenueNetMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SalesRevenueNetMember", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue benchmark", "label": "Revenue Benchmark [Member]", "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." } } }, "auth_ref": [ "r320", "r792" ] }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Accounts, Notes, Loans and Financing Receivable", "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]", "documentation": "Tabular disclosure of the various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables." } } }, "auth_ref": [ "r35" ] }, "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock", "presentation": [ "http://www.nv5.com/role/AccruedLiabilitiesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Accrued Liabilities", "label": "Schedule of Accrued Liabilities [Table Text Block]", "documentation": "Tabular disclosure of the components of accrued liabilities." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAcquiredFiniteLivedIntangibleAssetByMajorClassTable", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Acquired Finite-Lived Intangible Asset by Major Class [Table]", "label": "Schedule of Acquired Finite-Lived Intangible Asset by Major Class [Table]", "documentation": "Tabular disclosure of the major classes of acquired finite-lived intangible assets showing the amount, any significant residual value, weighted average amortization period, and other characteristics. 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." } } }, "auth_ref": [ "r70" ] }, "us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Acquired Finite-lived Intangible Assets by Major Class", "label": "Schedule of Acquired Finite-Lived Intangible Assets by Major Class [Table Text Block]", "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." } } }, "auth_ref": [ "r70" ] }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable", "presentation": [ "http://www.nv5.com/role/EarningsPerShareNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]", "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]", "documentation": "Schedule for securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by Antidilutive Securities." } } }, "auth_ref": [ "r51" ] }, "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionContingentConsiderationTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionContingentConsiderationTextBlock", "presentation": [ "http://www.nv5.com/role/ContingentConsiderationTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Changes Carrying Value of Estimated Contingent Consideration", "label": "Schedule of Business Acquisitions by Acquisition, Contingent Consideration [Table Text Block]", "documentation": "Tabular disclosure of contingent payment arrangements including the terms that will result in payment and the accounting treatment that will be followed if such contingencies occur, including the potential impact on earnings per share if contingencies are to be settled in common stock of the entity. The description also may include the period over which amounts are expected to be paid, and changes in the amount since the previous reporting period. This also includes contingent options and commitments." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "presentation": [ "http://www.nv5.com/role/IncomeTaxesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Components of Income Tax Expense (benefit)", "label": "Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]", "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years." } } }, "auth_ref": [ "r160" ] }, "us-gaap_ScheduleOfDebtInstrumentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDebtInstrumentsTextBlock", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Notes Payable and Other Obligations", "label": "Schedule of Long-Term Debt Instruments [Table Text Block]", "documentation": "Tabular disclosure of long-debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the entity, if longer." } } }, "auth_ref": [ "r31", "r80", "r83", "r109", "r110", "r112", "r114", "r155", "r156", "r748", "r750", "r811" ] }, "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "presentation": [ "http://www.nv5.com/role/IncomeTaxesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Deferred Tax Assets and Liabilities", "label": "Schedule of Deferred Tax Assets and Liabilities [Table Text Block]", "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets." } } }, "auth_ref": [ "r159" ] }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "presentation": [ "http://www.nv5.com/role/EarningsperShareTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Reconciliation of The Net Income and Weighted Average Shares Outstanding for the Calculation of Basic and Diluted Earnings Per Share", "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations." } } }, "auth_ref": [ "r815" ] }, "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "presentation": [ "http://www.nv5.com/role/IncomeTaxesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Effective Income Tax Rate Reconciliation", "label": "Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]", "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations." } } }, "auth_ref": [ "r158" ] }, "us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Revenue from External Customers by Products and Services", "label": "Revenue from External Customers by Products and Services [Table Text Block]", "documentation": "Tabular disclosure of entity-wide revenues from external customers for each product or service or each group of similar products or services if the information is not provided as part of the reportable operating segment information." } } }, "auth_ref": [ "r64" ] }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsWeightedAverageUsefulLivesofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Finite-Lived Intangible Assets [Table]", "label": "Schedule of Finite-Lived Intangible Assets [Table]", "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r70", "r72", "r600" ] }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Finite-lived Intangible Assets", "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]", "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment." } } }, "auth_ref": [ "r70", "r72" ] }, "us-gaap_ScheduleOfGoodwillTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfGoodwillTable", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Goodwill [Table]", "label": "Schedule of Goodwill [Table]", "documentation": "Schedule of goodwill and the changes during the year due to acquisition, sale, impairment or for other reasons." } } }, "auth_ref": [ "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r746" ] }, "us-gaap_ScheduleOfGoodwillTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfGoodwillTextBlock", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Goodwill", "label": "Schedule of Goodwill [Table Text Block]", "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule." } } }, "auth_ref": [ "r746", "r821", "r822", "r823", "r824", "r825", "r826", "r827", "r828", "r829", "r830", "r831" ] }, "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Maturities of Long-term Debt", "label": "Schedule of Maturities of Long-Term Debt [Table Text Block]", "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt." } } }, "auth_ref": [ "r14" ] }, "us-gaap_ScheduleOfProductInformationTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfProductInformationTable", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Product Information [Table]", "label": "Schedule of Product Information [Table]", "documentation": "Schedule detailing quantitative information concerning products or product lines by product or product line." } } }, "auth_ref": [] }, "nvee_ScheduleOfPropertyPlantAndEquipmentEstimatedUsefulLifeTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "ScheduleOfPropertyPlantAndEquipmentEstimatedUsefulLifeTableTextBlock", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Property Plant and Equipment, Estimated Useful Life", "label": "Schedule of Property Plant and Equipment, Estimated Useful Life [Table Text Block]", "documentation": "Tabular disclosure of the estimated useful lives of property, plant and equipment." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfPropertyPlantAndEquipmentTable", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetScheduleofpropertyandequipmentDetails", "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesEstimatedUsefulLivesofPropertyandEquipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Property, Plant and Equipment [Table]", "label": "Property, Plant and Equipment [Table]", "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." } } }, "auth_ref": [ "r13" ] }, "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of the Fair Values of the Assets Acquires and Liabilities Assumed", "label": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]", "documentation": "Tabular disclosure of the amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree." } } }, "auth_ref": [ "r163" ] }, "us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Revenue by Major Customers by Reporting Segments", "label": "Schedule of Revenue by Major Customers by Reporting Segments [Table Text Block]", "documentation": "Tabular disclosure of the extent of the entity's reliance on its major customers, if revenues from transactions with a single external customer amount to 10 percent or more of entity revenues, including the disclosure of that fact, the total amount of revenues from each such customer, and the identity of the reportable segment or segments reporting the revenues. The entity need not disclose the identity of a major customer or the amount of revenues that each segment reports from that customer. For these purposes, a group of companies known to the entity to be under common control is considered a single customer, and the federal government, a state government, a local government such as a county or municipality, or a foreign government is each considered a single customer." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyGeographicLocationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]", "label": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]", "documentation": "Schedule of material long-lived assets (excluding financial instruments, customer relationships with financial institutions, mortgage and other servicing rights, deferred policy acquisition costs, and deferred taxes assets) located in identified geographic areas and/or the amount of revenue from external customers attributed to that country from which revenue is material. An entity may also provide subtotals of geographic information about groups of countries." } } }, "auth_ref": [ "r65", "r128" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Segment Reporting Information, by Segment", "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]", "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss." } } }, "auth_ref": [ "r59", "r60", "r61", "r67" ] }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails", "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]", "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]", "documentation": "Disclosure of information about share-based payment arrangement." } } }, "auth_ref": [ "r456", "r458", "r461", "r462", "r463", "r464", "r465", "r466", "r467", "r468", "r469", "r470", "r471", "r472", "r473", "r474", "r475", "r476", "r477", "r478", "r479", "r480", "r481", "r482", "r483", "r484", "r485", "r486" ] }, "us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Share-based Payment Arrangement, Restricted Stock Unit, Activity", "label": "Share-Based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block]", "documentation": "Tabular disclosure of the number and weighted-average grant date fair value for restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock units that were granted, vested, or forfeited during the year." } } }, "auth_ref": [ "r85" ] }, "us-gaap_ScheduleOfStockByClassTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfStockByClassTable", "presentation": [ "http://www.nv5.com/role/StockholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Stock by Class [Table]", "label": "Schedule of Stock by Class [Table]", "documentation": "Schedule detailing information related to equity by class of stock. Class of stock includes common, convertible, and preferred stocks which are not redeemable or redeemable solely at the option of the issuer. It also includes preferred stock with redemption features that are solely within the control of the issuer and mandatorily redeemable stock if redemption is required to occur only upon liquidation or termination of the reporting entity." } } }, "auth_ref": [ "r77", "r78", "r79", "r80", "r81", "r82", "r83", "r155", "r156", "r157", "r204", "r205", "r206", "r286", "r410", "r411", "r412", "r414", "r417", "r422", "r424", "r647", "r648", "r649", "r650", "r752", "r789", "r807" ] }, "us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock", "presentation": [ "http://www.nv5.com/role/IncomeTaxesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Unrecognized Tax Benefits Roll Forward", "label": "Schedule of Unrecognized Tax Benefits Roll Forward [Table Text Block]", "documentation": "Tabular disclosure of the change in unrecognized tax benefits." } } }, "auth_ref": [ "r763", "r872" ] }, "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Finite-fived Intangible Assets, Future Amortization Expense", "label": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]", "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets." } } }, "auth_ref": [ "r72" ] }, "nvee_SecondARCreditAgreementMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "SecondARCreditAgreementMember", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Second A&R Credit Agreement", "label": "Second A&R Credit Agreement [Member]", "documentation": "Second A&R Credit Agreement" } } }, "auth_ref": [] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "Security12bTitle", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Title of 12(b) Security", "label": "Title of 12(b) Security", "documentation": "Title of a 12(b) registered security." } } }, "auth_ref": [ "r778" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "SecurityExchangeName", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Security Exchange Name", "label": "Security Exchange Name", "documentation": "Name of the Exchange on which a security is registered." } } }, "auth_ref": [ "r781" ] }, "us-gaap_SegmentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentDomain", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyGeographicLocationDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Segments [Domain]", "label": "Segments [Domain]", "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity." } } }, "auth_ref": [ "r288", "r291", "r292", "r293", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r304", "r305", "r306", "r307", "r308", "r309", "r310", "r311", "r312", "r314", "r320", "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r353", "r354", "r624", "r625", "r626", "r627", "r628", "r629", "r630", "r631", "r632", "r633", "r634", "r746", "r797", "r893" ] }, "srt_SegmentGeographicalDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "SegmentGeographicalDomain", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyGeographicLocationDetails", "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Geographical [Domain]", "label": "Geographical [Domain]" } } }, "auth_ref": [ "r318", "r319", "r655", "r656", "r657", "r714", "r716", "r719", "r721", "r727", "r728", "r729", "r730", "r731", "r732", "r733", "r734", "r735", "r739", "r753", "r769", "r844", "r893" ] }, "us-gaap_SegmentReportingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingAbstract", "lang": { "en-us": { "role": { "terseLabel": "Segment Reporting [Abstract]", "label": "Segment Reporting [Abstract]" } } }, "auth_ref": [] }, "us-gaap_SegmentReportingDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingDisclosureTextBlock", "presentation": [ "http://www.nv5.com/role/ReportableSegments" ], "lang": { "en-us": { "role": { "terseLabel": "Reportable Segments", "label": "Segment Reporting Disclosure [Text Block]", "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments." } } }, "auth_ref": [ "r287", "r288", "r289", "r290", "r291", "r303", "r308", "r312", "r313", "r314", "r315", "r316", "r317", "r320" ] }, "us-gaap_SegmentReportingRevenueReconcilingItemLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingRevenueReconcilingItemLineItems", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Segment Reporting, Revenue Reconciling Item [Line Items]", "label": "Segment Reporting, Revenue Reconciling Item [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "nvee_SeniorCreditFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "SeniorCreditFacilityMember", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Senior credit facility", "label": "Senior Credit Facility [Member]", "documentation": "Represents the senior credit facility debt instrument." } } }, "auth_ref": [] }, "us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Series of Individually Immaterial Business Acquisitions", "label": "Series of Individually Immaterial Business Acquisitions [Member]", "documentation": "Represents the aggregation and reporting of combined amounts of individually immaterial business combinations that were completed during the period." } } }, "auth_ref": [ "r95" ] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensation", "crdr": "debit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-based compensation", "label": "Share-Based Payment Arrangement, Noncash Expense", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r11" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails", "http://www.nv5.com/role/StockholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Award vesting period", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period", "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition." } } }, "auth_ref": [ "r761" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Forfeited (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period", "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period." } } }, "auth_ref": [ "r477" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Forfeited (in dollars per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value", "documentation": "Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event." } } }, "auth_ref": [ "r477" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Granted (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period", "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)." } } }, "auth_ref": [ "r475" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Granted (in dollars per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value", "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)." } } }, "auth_ref": [ "r475" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Beginning (in shares)", "periodEndLabel": "Ending (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number", "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date." } } }, "auth_ref": [ "r472", "r473" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share Units", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Beginning (in dollars per share)", "periodEndLabel": "Ending (in dollars per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value", "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options." } } }, "auth_ref": [ "r472", "r473" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsShareBasedLiabilitiesPaid", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share-based liabilities paid", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Share-Based Liabilities Paid", "documentation": "Amount of cash paid to settle liability for award under share-based payment arrangement." } } }, "auth_ref": [ "r479" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Vested (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period", "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period." } } }, "auth_ref": [ "r476" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair value of restricted shares vested", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value", "documentation": "Fair value of share-based awards for which the grantee gained the right by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash." } } }, "auth_ref": [ "r479" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Vested (in dollars per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value", "documentation": "The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement." } } }, "auth_ref": [ "r476" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails", "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r456", "r458", "r461", "r462", "r463", "r464", "r465", "r466", "r467", "r468", "r469", "r470", "r471", "r472", "r473", "r474", "r475", "r476", "r477", "r478", "r479", "r480", "r481", "r482", "r483", "r484", "r485", "r486" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of shares authorized (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized", "documentation": "Number of shares authorized for issuance under share-based payment arrangement." } } }, "auth_ref": [ "r762" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails", "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Award Type [Domain]", "label": "Award Type [Domain]", "documentation": "Award under share-based payment arrangement." } } }, "auth_ref": [ "r461", "r462", "r463", "r464", "r465", "r466", "r467", "r468", "r469", "r470", "r471", "r472", "r473", "r474", "r475", "r476", "r477", "r478", "r479", "r480", "r481", "r482", "r483", "r484", "r485", "r486" ] }, "nvee_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsNonvestedWeightedAverageGrantDateFairValueRollForwardRollForward": { "xbrltype": "stringItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsNonvestedWeightedAverageGrantDateFairValueRollForwardRollForward", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted Average Grant Date Fair Value", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Roll Forward] [Roll Forward]", "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Roll Forward] [Roll Forward]" } } }, "auth_ref": [] }, "us-gaap_SharesIssuedPricePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharesIssuedPricePerShare", "presentation": [ "http://www.nv5.com/role/StockholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Shares issued, price per share (in dollars per share)", "label": "Shares Issued, Price Per Share", "documentation": "Per share or per unit amount of equity securities issued." } } }, "auth_ref": [] }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SignificantAccountingPoliciesTextBlock", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of Significant Accounting Policies", "label": "Significant Accounting Policies [Text Block]", "documentation": "The entire disclosure for all significant accounting policies of the reporting entity." } } }, "auth_ref": [ "r140", "r231" ] }, "us-gaap_StateAndLocalJurisdictionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StateAndLocalJurisdictionMember", "presentation": [ "http://www.nv5.com/role/IncomeTaxesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "State and local jurisdiction", "label": "State and Local Jurisdiction [Member]", "documentation": "Designated tax department of a state or local government entitled to levy and collect income taxes from the entity." } } }, "auth_ref": [] }, "us-gaap_StatementBusinessSegmentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementBusinessSegmentsAxis", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyGeographicLocationDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Segments [Axis]", "label": "Segments [Axis]", "documentation": "Information by business segments." } } }, "auth_ref": [ "r195", "r288", "r291", "r292", "r293", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r304", "r305", "r306", "r307", "r308", "r309", "r310", "r311", "r312", "r314", "r320", "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r351", "r353", "r354", "r624", "r625", "r626", "r627", "r628", "r629", "r630", "r631", "r632", "r633", "r634", "r746", "r797", "r893" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Components [Axis]", "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r20", "r34", "r193", "r217", "r218", "r219", "r237", "r238", "r239", "r243", "r251", "r253", "r285", "r325", "r328", "r425", "r492", "r493", "r494", "r520", "r521", "r544", "r545", "r546", "r547", "r548", "r550", "r553", "r563", "r564", "r565", "r566", "r567", "r568", "r591", "r636", "r637", "r638", "r653", "r708" ] }, "srt_StatementGeographicalAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "StatementGeographicalAxis", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyGeographicLocationDetails", "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Geographical [Axis]", "label": "Geographical [Axis]" } } }, "auth_ref": [ "r318", "r319", "r655", "r656", "r657", "r714", "r716", "r719", "r721", "r724", "r727", "r728", "r729", "r730", "r731", "r732", "r733", "r734", "r735", "r739", "r753", "r769", "r844", "r893" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementLineItems", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Statement [Line Items]", "label": "Statement [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r237", "r238", "r239", "r285", "r599", "r645", "r654", "r661", "r662", "r663", "r664", "r665", "r666", "r669", "r672", "r673", "r674", "r675", "r676", "r677", "r678", "r679", "r680", "r682", "r683", "r684", "r685", "r686", "r688", "r690", "r691", "r694", "r695", "r696", "r697", "r698", "r699", "r700", "r701", "r702", "r703", "r704", "r705", "r708", "r770" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Cash Flows [Abstract]", "label": "Statement of Cash Flows [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Financial Position [Abstract]", "label": "Statement of Financial Position [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Stockholders' Equity [Abstract]", "label": "Statement of Stockholders' Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementTable", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Statement [Table]", "label": "Statement [Table]", "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." } } }, "auth_ref": [ "r237", "r238", "r239", "r285", "r599", "r645", "r654", "r661", "r662", "r663", "r664", "r665", "r666", "r669", "r672", "r673", "r674", "r675", "r676", "r677", "r678", "r679", "r680", "r682", "r683", "r684", "r685", "r686", "r688", "r690", "r691", "r694", "r695", "r696", "r697", "r698", "r699", "r700", "r701", "r702", "r703", "r704", "r705", "r708", "r770" ] }, "us-gaap_StockIssued1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssued1", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "lang": { "en-us": { "role": { "terseLabel": "Stock issuance for acquisitions", "label": "Stock Issued", "documentation": "The fair value of stock issued in noncash financing activities." } } }, "auth_ref": [ "r48", "r49", "r50" ] }, "us-gaap_StockIssuedDuringPeriodSharesAcquisitions": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesAcquisitions", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Stock issuance for acquisitions (in shares)", "label": "Stock Issued During Period, Shares, Acquisitions", "documentation": "Number of shares of stock issued during the period pursuant to acquisitions." } } }, "auth_ref": [ "r120", "r121", "r157" ] }, "us-gaap_StockIssuedDuringPeriodSharesNewIssues": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesNewIssues", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY", "http://www.nv5.com/role/StockholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from secondary offering, net of costs (in shares)", "verboseLabel": "Proceeds from secondary offering, net of costs (in shares)", "label": "Stock Issued During Period, Shares, New Issues", "documentation": "Number of new stock issued during the period." } } }, "auth_ref": [ "r20", "r120", "r121", "r157", "r647", "r708", "r722" ] }, "us-gaap_StockIssuedDuringPeriodSharesOther": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesOther", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Payment of contingent consideration with common stock (in shares)", "label": "Stock Issued During Period, Shares, Other", "documentation": "Number of shares of stock issued attributable to transactions classified as other." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted stock issuance, net (in shares)", "label": "Stock Issued During Period, Shares, Restricted Stock Award, Net of Forfeitures", "documentation": "Number of shares issued during the period related to Restricted Stock Awards, net of any shares forfeited." } } }, "auth_ref": [ "r20", "r120", "r121", "r157" ] }, "nvee_StockIssuedDuringPeriodValueAcquisitionsNetOfIssuanceCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "StockIssuedDuringPeriodValueAcquisitionsNetOfIssuanceCosts", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Stock issuance for acquisitions", "label": "Stock Issued During Period, Value, Acquisitions, Net Of Issuance Costs", "documentation": "Stock Issued During Period, Value, Acquisitions, Net Of Issuance Costs" } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodValueNewIssues": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueNewIssues", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from secondary offering, net of costs", "label": "Stock Issued During Period, Value, New Issues", "documentation": "Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering." } } }, "auth_ref": [ "r20", "r120", "r121", "r157", "r653", "r708", "r722", "r776" ] }, "us-gaap_StockIssuedDuringPeriodValueOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueOther", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Payment of contingent consideration with common stock", "label": "Stock Issued During Period, Value, Other", "documentation": "Value of shares of stock issued attributable to transactions classified as other." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted stock issuance, net", "label": "Stock Issued During Period, Value, Restricted Stock Award, Net of Forfeitures", "documentation": "Value of stock related to Restricted Stock Awards issued during the period, net of the stock value of such awards forfeited." } } }, "auth_ref": [ "r20", "r157" ] }, "nvee_StockPayableMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "StockPayableMember", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other obligations", "label": "Stock Payable [Member]", "documentation": "Represents the stock payable." } } }, "auth_ref": [] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquity", "crdr": "credit", "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "lang": { "en-us": { "role": { "totalLabel": "Total stockholders\u2019 equity", "periodStartLabel": "Balance", "periodEndLabel": "Balance", "label": "Equity, Attributable to Parent", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r121", "r124", "r125", "r143", "r671", "r687", "r709", "r710", "r765", "r777", "r809", "r819", "r878", "r898" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "lang": { "en-us": { "role": { "terseLabel": "Stockholders\u2019 equity:", "label": "Equity, Attributable to Parent [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquityNoteDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityNoteDisclosureTextBlock", "presentation": [ "http://www.nv5.com/role/StockholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Stockholders' Equity", "label": "Equity [Text Block]", "documentation": "The entire disclosure for equity." } } }, "auth_ref": [ "r154", "r233", "r409", "r411", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r423", "r425", "r551", "r711", "r712", "r723" ] }, "us-gaap_SubsequentEventLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventLineItems", "presentation": [ "http://www.nv5.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event [Line Items]", "label": "Subsequent Event [Line Items]", "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." } } }, "auth_ref": [ "r569", "r594" ] }, "us-gaap_SubsequentEventMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventMember", "presentation": [ "http://www.nv5.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event", "label": "Subsequent Event [Member]", "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r569", "r594" ] }, "us-gaap_SubsequentEventTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTable", "presentation": [ "http://www.nv5.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event [Table]", "label": "Subsequent Event [Table]", "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." } } }, "auth_ref": [ "r569", "r594" ] }, "us-gaap_SubsequentEventTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTypeAxis", "presentation": [ "http://www.nv5.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event Type [Axis]", "label": "Subsequent Event Type [Axis]", "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r569", "r594" ] }, "us-gaap_SubsequentEventTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTypeDomain", "presentation": [ "http://www.nv5.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event Type [Domain]", "label": "Subsequent Event Type [Domain]", "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r569", "r594" ] }, "us-gaap_SubsequentEventsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Subsequent Events [Abstract]", "label": "Subsequent Events [Abstract]" } } }, "auth_ref": [] }, "us-gaap_SubsequentEventsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventsTextBlock", "presentation": [ "http://www.nv5.com/role/SubsequentEvents" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Events", "label": "Subsequent Events [Text Block]", "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." } } }, "auth_ref": [ "r593", "r595" ] }, "us-gaap_SubsidiarySaleOfStockAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsidiarySaleOfStockAxis", "presentation": [ "http://www.nv5.com/role/StockholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Sale of Stock [Axis]", "label": "Sale of Stock [Axis]", "documentation": "Information by type of sale of the entity's stock." } } }, "auth_ref": [] }, "us-gaap_SupplementalCashFlowInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SupplementalCashFlowInformationAbstract", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS", "http://www.nv5.com/role/LeasesScheduleofSupplementalCashFlowInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Supplemental disclosures of cash flow information:", "verboseLabel": "Supplemental Cash Flow Information", "label": "Supplemental Cash Flow Information [Abstract]" } } }, "auth_ref": [] }, "nvee_SurveyAndFieldEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "SurveyAndFieldEquipmentMember", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetScheduleofpropertyandequipmentDetails", "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesEstimatedUsefulLivesofPropertyandEquipmentDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Survey and field equipment", "verboseLabel": "Survey and field equipment", "label": "Survey and Field Equipment [Member]", "documentation": "Represents the property and equipment that are classified as survey and field equipment." } } }, "auth_ref": [] }, "us-gaap_TaxCreditCarryforwardAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TaxCreditCarryforwardAmount", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/IncomeTaxesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Tax credit carryforward", "label": "Tax Credit Carryforward, Amount", "documentation": "The amount of the tax credit carryforward, before tax effects, available to reduce future taxable income under enacted tax laws." } } }, "auth_ref": [ "r90" ] }, "us-gaap_TechnologyBasedIntangibleAssetsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TechnologyBasedIntangibleAssetsMember", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Developed technology", "label": "Technology-Based Intangible Assets [Member]", "documentation": "Technology-based intangible assets, including, but not limited to, patented technology, unpatented technology, and developed technology rights." } } }, "auth_ref": [ "r23" ] }, "us-gaap_TimingOfTransferOfGoodOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TimingOfTransferOfGoodOrServiceAxis", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Timing of Transfer of Good or Service [Axis]", "label": "Timing of Transfer of Good or Service [Axis]", "documentation": "Information by timing of transfer of good or service to customer." } } }, "auth_ref": [ "r756", "r844" ] }, "us-gaap_TimingOfTransferOfGoodOrServiceDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TimingOfTransferOfGoodOrServiceDomain", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Timing of Transfer of Good or Service [Domain]", "label": "Timing of Transfer of Good or Service [Domain]", "documentation": "Timing of transfer of good or service to customer. Includes, but is not limited to, at point in time or over time." } } }, "auth_ref": [ "r756", "r844" ] }, "us-gaap_TradeNamesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TradeNamesMember", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFinitelivedIntangibleAssetsDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsWeightedAverageUsefulLivesofIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Trade name", "verboseLabel": "Trade name", "label": "Trade Names [Member]", "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof." } } }, "auth_ref": [ "r98" ] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "TradingSymbol", "presentation": [ "http://www.nv5.com/role/Cover" ], "lang": { "en-us": { "role": { "terseLabel": "Trading Symbol", "label": "Trading Symbol", "documentation": "Trading symbol of an instrument as listed on an exchange." } } }, "auth_ref": [] }, "us-gaap_TransferredAtPointInTimeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TransferredAtPointInTimeMember", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Transferred at point in time", "label": "Transferred at Point in Time [Member]", "documentation": "Contract with customer in which good or service is transferred at point in time." } } }, "auth_ref": [ "r756" ] }, "us-gaap_TransferredOverTimeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TransferredOverTimeMember", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Transferred over time", "label": "Transferred over Time [Member]", "documentation": "Contract with customer in which good or service is transferred over time." } } }, "auth_ref": [ "r756" ] }, "country_US": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2023", "localname": "US", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyGeographicLocationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "United States", "label": "UNITED STATES" } } }, "auth_ref": [] }, "nvee_UncollateralizedPromissoryNoteMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "UncollateralizedPromissoryNoteMember", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsNotesPayableandOtherObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Uncollateralized promissory notes", "label": "Uncollateralized Promissory Note [Member]", "documentation": "A written promise to pay a note to a third party with no attached collateral." } } }, "auth_ref": [] }, "us-gaap_UnrecognizedTaxBenefits": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefits", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/IncomeTaxesNarrativeDetails", "http://www.nv5.com/role/IncomeTaxesUnrecognizedTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unrecognized tax benefits", "periodStartLabel": "Balance, beginning of period", "periodEndLabel": "Balance, end of period", "label": "Unrecognized Tax Benefits", "documentation": "Amount of unrecognized tax benefits." } } }, "auth_ref": [ "r498", "r507" ] }, "us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefitsDecreasesResultingFromPriorPeriodTaxPositions", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/IncomeTaxesUnrecognizedTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Reductions for positions of prior years", "label": "Unrecognized Tax Benefits, Decrease Resulting from Prior Period Tax Positions", "documentation": "Amount of decrease in unrecognized tax benefits resulting from tax positions taken in prior period tax returns." } } }, "auth_ref": [ "r508" ] }, "us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestAccrued", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/IncomeTaxesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income tax penalties and interest accrued", "label": "Unrecognized Tax Benefits, Income Tax Penalties and Interest Accrued", "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." } } }, "auth_ref": [ "r506" ] }, "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/IncomeTaxesUnrecognizedTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Additions based on tax positions related to the current year", "label": "Unrecognized Tax Benefits, Increase Resulting from Current Period Tax Positions", "documentation": "Amount of increase in unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return." } } }, "auth_ref": [ "r509" ] }, "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/IncomeTaxesUnrecognizedTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Additions for tax positions of prior years", "label": "Unrecognized Tax Benefits, Increase Resulting from Prior Period Tax Positions", "documentation": "Amount of increase in unrecognized tax benefits resulting from tax positions taken in prior period tax returns." } } }, "auth_ref": [ "r508" ] }, "us-gaap_UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations", "crdr": "debit", "presentation": [ "http://www.nv5.com/role/IncomeTaxesUnrecognizedTaxLiabilityDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Lapse of statute of limitations", "label": "Unrecognized Tax Benefits, Reduction Resulting from Lapse of Applicable Statute of Limitations", "documentation": "Amount of decrease in unrecognized tax benefits resulting from lapses of applicable statutes of limitations." } } }, "auth_ref": [ "r510" ] }, "us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate", "crdr": "credit", "presentation": [ "http://www.nv5.com/role/IncomeTaxesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unrecognized tax benefits that would impact effective tax rate", "label": "Unrecognized Tax Benefits that Would Impact Effective Tax Rate", "documentation": "The total amount of unrecognized tax benefits that, if recognized, would affect the effective tax rate." } } }, "auth_ref": [ "r511" ] }, "us-gaap_UseOfEstimates": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UseOfEstimates", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Use of Estimates", "label": "Use of Estimates, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles." } } }, "auth_ref": [ "r56", "r57", "r58", "r177", "r178", "r181", "r182" ] }, "us-gaap_VariableLeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VariableLeaseCost", "crdr": "debit", "calculation": { "http://www.nv5.com/role/LeasesScheduleofLeaseCostDetails": { "parentTag": "us-gaap_LeaseCost", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.nv5.com/role/LeasesScheduleofLeaseCostDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Variable operating lease cost", "label": "Variable Lease, Cost", "documentation": "Amount of variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases." } } }, "auth_ref": [ "r585", "r764" ] }, "nvee_VisualInformationSolutionsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "VisualInformationSolutionsMember", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/BusinessAcquisitionsTheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Visual Information Solutions", "label": "Visual Information Solutions [Member]", "documentation": "Visual Information Solutions" } } }, "auth_ref": [] }, "nvee_WeightedAverageCommonSharesOutstanding": { "xbrltype": "stringItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "WeightedAverageCommonSharesOutstanding", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average common shares outstanding:", "label": "Weighted Average Common Shares Outstanding" } } }, "auth_ref": [] }, "nvee_WeightedAverageDiscountRateAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "WeightedAverageDiscountRateAbstract", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofLeaseTermandDiscountRateDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted - Average Discount Rate", "label": "Weighted Average Discount Rate [Abstract]", "documentation": "Weighted Average Discount Rate [Abstract]" } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "calculation": { "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME", "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Diluted (in shares)", "totalLabel": "Diluted weighted average shares outstanding (in shares)", "label": "Weighted Average Number of Shares Outstanding, Diluted", "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period." } } }, "auth_ref": [ "r259", "r280" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "calculation": { "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME", "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Basic (in shares)", "terseLabel": "Basic weighted average shares outstanding (in shares)", "label": "Weighted Average Number of Shares Outstanding, Basic", "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period." } } }, "auth_ref": [ "r257", "r280" ] }, "nvee_WeightedAverageRemainingLeaseTermAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.nv5.com/20231230", "localname": "WeightedAverageRemainingLeaseTermAbstract", "presentation": [ "http://www.nv5.com/role/LeasesScheduleofLeaseTermandDiscountRateDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted - Average Remaining Lease Term (Years)", "label": "Weighted Average Remaining Lease Term [Abstract]", "documentation": "Weighted Average Remaining Lease Term [Abstract]" } } }, "auth_ref": [] } } } }, "std_ref": { "r0": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "1", "SubTopic": "20", "Topic": "940", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1" }, "r1": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "16", "SubTopic": "10", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479405/805-10-25-16" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "30", "Paragraph": "7", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479637/805-30-30-7" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "30", "Paragraph": "8", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479637/805-30-30-8" }, "r4": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479613/805-30-35-1" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1", "Subparagraph": "b", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479613/805-30-35-1" }, "r6": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r7": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A" }, "r8": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14" }, "r9": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(f)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r10": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-20" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r12": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r13": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "470", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481544/470-10-50-1" }, "r15": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "30", "Topic": "350", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r16": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1" }, "r17": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r18": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)(3)", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r19": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c),(3)", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A" }, "r20": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "505", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2" }, "r21": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "SubTopic": "10", "Topic": "280", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-4" }, "r22": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "a", "SubTopic": "10", "Topic": "280", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r23": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13", "SubTopic": "20", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-13" }, "r24": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22))", "SubTopic": "10", "Topic": "210", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r26": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(a),20,24)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r28": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19-26)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r29": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.20)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r30": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.21)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r31": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.22)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.24)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r33": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.25)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r34": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29-31)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r35": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.3,4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14A" }, "r38": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-5" }, "r39": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r40": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r42": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r43": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r44": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "25", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4" }, "r46": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-1" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-3" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-4" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-5" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r52": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r53": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r54": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r55": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-20" }, "r56": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-4" }, "r57": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-8" }, "r58": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-9" }, "r59": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r60": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "30", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r62": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r63": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40" }, "r65": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "41", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r66": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "310", "SubTopic": "10", "Section": "50", "Paragraph": "11B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-11B" }, "r67": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r68": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-1" }, "r69": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-2" }, "r70": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r71": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "((a)(1),(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r72": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r74": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-4" }, "r75": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r76": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-2" }, "r77": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "480", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(CFRR 211.02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480244/480-10-S99-1" }, "r78": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481142/505-10-45-2" }, "r79": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-10" }, "r80": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-3" }, "r81": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-4" }, "r82": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-5" }, "r83": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-8" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "710", "SubTopic": "10", "Section": "25", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483070/710-10-25-3" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-12" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-13" }, "r88": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "45", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6" }, "r89": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-3" }, "r90": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-3" }, "r91": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-8" }, "r92": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "25", "Paragraph": "23", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479405/805-10-25-23" }, "r93": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r94": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r95": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-3" }, "r96": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "55", "Paragraph": "37", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479303/805-10-55-37" }, "r97": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-1" }, "r98": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "14", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-14" }, "r99": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "14", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-14" }, "r100": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-20" }, "r101": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-20" }, "r102": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "30", "Section": "25", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479668/805-30-25-5" }, "r103": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "30", "Section": "25", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479668/805-30-25-6" }, "r104": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1" }, "r105": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1" }, "r106": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "45", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-12" }, "r107": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-20" }, "r108": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21" }, "r109": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "45", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-1A" }, "r110": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-2" }, "r111": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3" }, "r112": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482949/835-30-55-8" }, "r113": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "210", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03.17)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r114": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "470", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480848/942-470-50-3" }, "r115": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "825", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480981/942-825-50-1" }, "r116": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r117": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r118": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(26)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r119": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(26)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r120": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r121": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r122": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r123": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r124": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r125": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(31))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r126": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(32))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r127": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-11" }, "r128": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r129": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r130": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r131": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r132": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.1,2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r133": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r134": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r135": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12" }, "r136": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r137": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24" }, "r138": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r139": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r140": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "235", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//235/tableOfContent" }, "r141": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "250", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//250/tableOfContent" }, "r142": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "275", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//275/tableOfContent" }, "r143": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 4.E)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2" }, "r144": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//350/tableOfContent" }, "r145": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r146": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r147": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r148": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//360/tableOfContent" }, "r149": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-15" }, "r150": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r151": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-2" }, "r152": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//440/tableOfContent" }, "r153": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//470/tableOfContent" }, "r154": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//505/tableOfContent" }, "r155": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-6" }, "r156": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-7" }, "r157": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1" }, "r158": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "12", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r159": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r160": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "9", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r161": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r162": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//805/tableOfContent" }, "r163": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Paragraph": "1", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-1" }, "r164": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1" }, "r165": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//810/tableOfContent" }, "r166": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-19" }, "r167": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r168": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r169": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(15)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r170": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r171": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r172": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r173": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r174": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04.9)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r175": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Subparagraph": "(a)", "SubTopic": "20", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2" }, "r176": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "SubTopic": "35", "Topic": "720", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483406/720-35-50-1" }, "r177": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r178": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r179": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r180": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-1" }, "r181": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-11" }, "r182": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-12" }, "r183": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r184": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(1)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13" }, "r185": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-6" }, "r186": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "SubTopic": "360", "Topic": "958", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-7" }, "r187": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r188": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(1)", "SubTopic": "20", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2" }, "r189": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(2)", "SubTopic": "20", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2" }, "r190": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h))", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r191": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org//250/tableOfContent" }, "r192": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//606/tableOfContent" }, "r193": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r194": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r195": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1" }, "r196": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7" }, "r197": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r198": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5" }, "r199": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r200": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r201": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r202": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r203": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r204": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(27)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r205": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r206": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r207": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(3)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r208": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r209": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r210": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r211": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A" }, "r212": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A" }, "r213": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A" }, "r214": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B" }, "r215": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B" }, "r216": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-1" }, "r217": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4" }, "r218": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5" }, "r219": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6" }, "r220": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(210.5-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r221": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r222": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r223": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r224": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SAB Topic 6.B)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-5" }, "r225": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r226": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-17" }, "r227": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24" }, "r228": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r229": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2" }, "r230": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8" }, "r231": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-1" }, "r232": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r233": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(e)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r234": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r235": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3" }, "r237": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23" }, "r238": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24" }, "r239": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5" }, "r240": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r241": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r242": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r243": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r244": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r245": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r246": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r247": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11" }, "r248": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3" }, "r249": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4" }, "r250": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r251": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r252": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8" }, "r253": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9" }, "r254": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SAB Topic 11.M.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-5" }, "r255": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-6" }, "r256": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//260/tableOfContent" }, "r257": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10" }, "r258": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-11" }, "r259": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16" }, "r260": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2" }, "r261": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-22" }, "r262": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-23" }, "r263": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "26", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-26" }, "r264": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-28A" }, "r265": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "40", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-40" }, "r266": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "40", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-40" }, "r267": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "40", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-40" }, "r268": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "40", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-40" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "44", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-44" }, "r270": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "48", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-48" }, "r271": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "48", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-48" }, "r272": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "51", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-51" }, "r273": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "52", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-52" }, "r274": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "53", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-53" }, "r275": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "54", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-54" }, "r276": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r277": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r278": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B" }, "r279": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7" }, "r280": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r281": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r282": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2" }, "r283": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-3" }, "r284": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-15" }, "r285": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1" }, "r286": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482987/272-10-50-1" }, "r287": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//280/tableOfContent" }, "r288": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-15" }, "r289": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r297": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r298": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r299": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r300": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(j)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22" }, "r301": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r302": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25" }, "r303": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-26" }, "r304": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r305": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r306": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r307": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r308": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31" }, "r309": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r310": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r311": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r312": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r313": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r314": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r315": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "34", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-34" }, "r316": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40" }, "r317": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r318": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r319": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r320": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "42", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42" }, "r321": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2" }, "r322": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9" }, "r323": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-4" }, "r324": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r325": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r326": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r327": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r328": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5" }, "r329": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479344/326-20-45-1" }, "r330": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r331": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r332": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r333": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r334": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-1" }, "r335": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r336": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r337": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r338": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r339": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r340": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r341": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r342": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r343": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r344": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1A" }, "r345": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-2" }, "r346": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r347": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r348": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r349": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r350": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r351": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r352": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r353": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r354": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r355": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4" }, "r356": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4" }, "r357": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//450-20/tableOfContent" }, "r358": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-1" }, "r359": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4" }, "r360": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4" }, "r361": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9" }, "r362": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9" }, "r363": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r364": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r365": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "30", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//450-30/tableOfContent" }, "r366": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483049/450-30-50-1" }, "r367": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r368": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r369": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r370": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r371": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r372": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r373": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r374": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r375": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r376": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r377": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r379": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r380": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r381": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r382": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r383": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r384": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r385": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r386": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r387": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r388": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r389": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r390": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r391": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C" }, "r392": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r393": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r394": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r395": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r396": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r397": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r398": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E" }, "r399": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r400": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r401": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r402": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F" }, "r403": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r404": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r405": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r406": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I" }, "r407": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-4" }, "r408": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-4" }, "r409": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r410": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r411": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r413": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r414": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r415": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14" }, "r417": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14" }, "r418": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14" }, "r419": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "16", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-16" }, "r420": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18" }, "r421": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18" }, "r422": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18" }, "r423": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18" }, "r424": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2" }, "r425": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1" }, "r426": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-1" }, "r427": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-2" }, "r428": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-3" }, "r429": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-17" }, "r430": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18" }, "r432": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-19" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r434": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r435": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r436": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20" }, "r437": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4" }, "r438": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5" }, "r439": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8" }, "r440": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8" }, "r441": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//715/tableOfContent" }, "r442": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r443": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r444": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r445": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r446": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(o)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r447": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(p)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r448": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(q)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r449": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(r)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r450": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(r)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r451": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480126/715-20-S99-2" }, "r452": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480266/715-60-50-3" }, "r453": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "70", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480794/715-70-50-1" }, "r454": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5" }, "r455": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//718/tableOfContent" }, "r456": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1D", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-1D" }, "r457": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-2" }, "r458": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-3" }, "r459": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480454/718-10-45-1" }, "r460": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r461": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r462": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r463": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r464": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r465": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r466": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r467": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r468": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r469": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r470": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r471": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r472": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r473": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r474": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r475": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r476": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r477": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r478": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r479": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r480": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r482": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r483": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r484": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r485": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r486": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r487": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r488": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r489": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r490": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r491": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r492": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r493": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r494": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r495": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.F)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1" }, "r496": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "720", "SubTopic": "35", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483406/720-35-50-1" }, "r497": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//740/tableOfContent" }, "r498": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-10B" }, "r499": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-25" }, "r500": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-28" }, "r501": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4" }, "r502": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6" }, "r503": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10" }, "r504": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r505": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14" }, "r506": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r507": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r508": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r509": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r510": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r511": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r512": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17" }, "r513": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-19" }, "r514": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r515": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r516": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-20" }, "r517": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21" }, "r518": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r519": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r520": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r521": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r522": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r523": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r524": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r525": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r526": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB TOPIC 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r527": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r528": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r529": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 11.C)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2" }, "r530": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "270", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1" }, "r531": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2" }, "r532": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r533": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r534": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5" }, "r535": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5" }, "r536": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1" }, "r537": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1" }, "r538": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1" }, "r539": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-4" }, "r540": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25" }, "r541": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25" }, "r542": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3" }, "r543": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3" }, "r544": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r545": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r546": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r547": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r548": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r549": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r550": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r551": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-6" }, "r552": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r553": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r554": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r555": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r556": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2" }, "r557": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2" }, "r558": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2" }, "r559": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28" }, "r560": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r561": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r562": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r563": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17" }, "r564": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r565": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r566": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r567": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20" }, "r568": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1" }, "r569": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-2" }, "r570": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483013/835-20-50-1" }, "r571": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3" }, "r572": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482900/835-30-50-1" }, "r573": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5" }, "r574": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5" }, "r575": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//842-20/tableOfContent" }, "r576": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1" }, "r577": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1" }, "r578": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-2" }, "r579": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-4" }, "r580": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-5" }, "r581": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-5" }, "r582": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r583": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r584": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r585": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r586": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r587": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r588": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r589": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r590": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6" }, "r591": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(3)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r592": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r593": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//855/tableOfContent" }, "r594": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2" }, "r595": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2" }, "r596": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r597": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "910", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-6" }, "r598": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482312/912-310-45-11" }, "r599": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "924", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 11.L)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1" }, "r600": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483154/926-20-50-5" }, "r601": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r602": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r603": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r604": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "928", "SubTopic": "340", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483147/928-340-50-1" }, "r605": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(10)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r606": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(26))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r607": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(27))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r608": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-05(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1" }, "r609": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r610": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(15)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r611": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r612": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r613": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r614": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r615": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r616": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r617": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r618": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r619": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r620": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r621": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r622": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r623": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r624": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r625": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r626": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r627": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r628": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r629": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r630": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r631": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r632": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r633": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column J))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r634": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column K))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1" }, "r635": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-7A" }, "r636": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r637": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r638": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r639": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r640": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r641": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r642": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r643": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r644": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "825", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B" }, "r645": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r646": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(h)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r647": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r648": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r649": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r650": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r651": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11" }, "r652": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13" }, "r653": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r654": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4" }, "r655": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r656": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-2" }, "r657": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r658": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r659": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r660": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r661": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r662": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r663": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r664": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r665": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r666": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r667": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r668": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r669": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(16)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r670": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r671": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r672": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r673": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r674": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r675": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r676": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r677": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r678": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r679": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r680": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r681": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r682": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r683": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r684": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r685": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r686": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r687": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r688": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3" }, "r689": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7" }, "r690": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r691": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r692": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r693": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r694": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r695": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r696": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r697": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r698": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r699": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r700": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r701": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r702": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r703": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r704": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r705": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r706": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r707": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(1)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r708": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r709": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r710": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r711": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2" }, "r712": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2" }, "r713": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r714": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r715": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r716": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r717": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r718": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r719": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r720": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r721": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r722": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r723": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-6" }, "r724": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "948", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1" }, "r725": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481027/954-310-50-2" }, "r726": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "440", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480327/954-440-50-1" }, "r727": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r728": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r729": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r730": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r731": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r732": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r733": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r734": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r735": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r736": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "976", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1" }, "r737": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "978", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1" }, "r738": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r739": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(b)", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r740": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r741": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "52", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52" }, "r742": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r743": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31" }, "r744": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481933/310-10-55-12A" }, "r745": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479294/326-20-55-12" }, "r746": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24" }, "r747": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r748": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69B" }, "r749": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69C", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69C" }, "r750": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69E", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69E" }, "r751": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69F", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69F" }, "r752": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r753": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r754": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r755": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r756": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91" }, "r757": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-17" }, "r758": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11" }, "r759": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6" }, "r760": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480547/715-80-55-8" }, "r761": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r762": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r763": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "217", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482663/740-10-55-217" }, "r764": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "53", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479589/842-20-55-53" }, "r765": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10" }, "r766": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "29F", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-29F" }, "r767": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r768": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r769": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1" }, "r770": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1" }, "r771": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r772": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r773": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r774": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r775": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10" }, "r776": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-11" }, "r777": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12" }, "r778": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r779": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r780": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-23" }, "r781": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r782": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-K", "Number": "249", "Section": "310" }, "r783": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Number": "249", "Section": "220", "Subsection": "f" }, "r784": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Number": "249", "Section": "240", "Subsection": "f" }, "r785": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Section": "13", "Subsection": "a-1" }, "r786": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w" }, "r787": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r788": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Securities Act", "Number": "230", "Section": "405" }, "r789": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-3" }, "r790": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "SubTopic": "20", "Topic": "842", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1" }, "r791": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "SubTopic": "20", "Topic": "842", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-4" }, "r792": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r793": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "SubTopic": "825", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B" }, "r794": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)", "SubTopic": "10", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r795": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(3)", "SubTopic": "10", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r796": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "SubTopic": "20", "Topic": "842", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r797": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4H", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H" }, "r798": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r799": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r800": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r801": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4" }, "r802": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5" }, "r803": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6" }, "r804": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r805": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r806": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r807": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r808": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(f))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r809": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r810": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r811": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3" }, "r812": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23" }, "r813": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24" }, "r814": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5" }, "r815": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r816": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-18" }, "r817": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r818": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//310-10/tableOfContent" }, "r819": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3" }, "r820": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r821": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r822": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r823": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r824": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r825": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r826": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r827": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r828": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r829": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r830": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1A" }, "r831": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-2" }, "r832": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r833": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r834": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r835": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-2" }, "r836": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "410", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10" }, "r837": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//450/tableOfContent" }, "r838": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r839": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A" }, "r840": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B" }, "r841": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r842": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-1" }, "r843": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-3" }, "r844": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5" }, "r845": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r846": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r847": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r848": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r849": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r850": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r851": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r852": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r853": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r854": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r855": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r856": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r857": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r858": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r859": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r860": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r861": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r862": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r863": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r864": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r865": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r866": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r867": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r868": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r869": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r870": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r871": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r872": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r873": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r874": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-6" }, "r875": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r876": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r877": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r878": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28" }, "r879": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "830", "SubTopic": "230", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r880": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-4" }, "r881": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r882": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6" }, "r883": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7" }, "r884": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7" }, "r885": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r886": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r887": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3" }, "r888": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r889": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r890": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4" }, "r891": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r892": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r893": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B" }, "r894": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r895": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r896": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r897": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3" }, "r898": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r899": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" } } } ZIP 110 0001628280-24-006623-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001628280-24-006623-xbrl.zip M4$L#!!0 ( -!Y5U@$6RRG>WN_/ W&;_'-MF"3C]^_>W=S< M;-[V9+@9R\$[$84BXO_SZ?+T72)9I/JQ'+$$QGW7W&IN;6PU-QK--3,(OA2( M;)QLC.;6UMX[?=,^JF3^O3Y3/7H.+N*HV]EX2I0F=;-MAVN\^Y^OIUU_R$=L M0T0J89'/S5OSWF@<'AZ^N\7EVJ%3M3%@;#P[!W.C-(^ 3RU*<7]S$%^_@QNE M!Z-KSDO?CZYW-_UX1 \UFMM;14B)^0"'U6V_FUH3HF<#/EIZPT[B/@PU=C>V M#C:V&_DX=WVTL5T8R#X.O[_?,TN\W6,JGZ6*=YJ-_?O6I9^P+_AQ&B5R,A^X MYF:9(F9F5,(PWJ5'WX<,2'V-1QO?NFL??QUR%GS\=<03YN&K&_RO5%S_XU?WY5&?<)'CF(?'HJ28Z%\%O[)F3R&*RK[S,[:1US^HCYP M 8_'0?D3NVL?C__\\0^T8/2 OA"R03;HWMK'/@L5?]*X.W9<(P_>'XL(&?*4 M [U?BL$P.>]_4[RE%$^Z"4LX?O:\KY\2L+I8">3!SBW0E!*]D)\*E=@Y'1PV MUC[>)WG^=B'C,9?)Y ((.6E%00* 1'98G"TZ*4]Q'PON+0[R.\LCOP?7]_N ^L[3X9<%N@O_]JS M"(6?6\S>DA8SE^A^;BF'"Z&[9^"EGUI68^OEE]4X.)Q>6'?()/\$8P;M>#2& MB6JE)\%#&-"*/DWR1R[8A)3I#9,!_?,[5TBXVD9K9&O;!ZUTT9RUT-Z5C5K) M^QR@YW,UQQ9'&_V](M<-9N^1S?X^ 0O\GVM*C,8A>A-T;2AQ<26S>_-6!6"4 MT_?RCYAOJCB5](N2/-IH;Z'.4[]C?]B/O M2NN>#X:F V#0OFUB@+!? (*]\[B5I9'0RTJ!*.S%$;!1*OE'XVB^_]8]LJ_; M6_8WOC\?2MMN06F'HBQ[/PDEA=RN9@!ER(]N/AU2.VY!:HI3G@:I\LIVW5I9 MDU:V $X!D4YR/UM>(*YA6L5'2:RS))8_R%0S[^/%(Q[%(U"A2L(R.P'!X")X"0R M=GM5P(]N2;7AGX?QR,?%YR0?XFC7_"3RXQ&O#"Z>W1MY9EQ<\H2)B <=)B-P M$U5E .^8_[/(I3V[T[(J\M4!\Z/Q['Y3E>T/%Q#T[.Y?Y26T"UAZ=J>NRFQ4 MBAZ48/Y3>N;9/TJON& MR['CEQ--;3Z[/UEE \0%!%7=*WYA.WY)6*K=X1?8!9R">=4]W.78\8N#?]5] MU^7;\8O#1=5]VA>VXQ<'^,H[LTLQ=I>4.U9U;_?EC-WE(&B[WN*M*.*J[O._ ML)>R)"S5SOZ+9V%N5]U_7X:7LDCX5]TS7[:7LDA<5-UC?U$O99& =]95;\>1 MS[$H'$7,I5#?/TVPEKT,]L\\'D@V'@I_YO$',/ S\_C$(W\X8O)[>3)=%G)U MR:]YE/(SGOSL!)1,$+) MB[,AD)K&7:#QY6P,;#L;'ZJIT@6J7$[:V;:S@;"E48,=5AN 7>ZGDJK//TU. MHB!5B9P4R.(B[<$PK2CX5\J4&-,O>"6)Y3-RQ1SNC*^YC!#"V =(,C]13V73 MJE@.4T6;SL8):_JM%OTNQRK8<39<6M-OM>AW.?;#CK.!Y#O;;!7Q1S1TWN\+ MGQ^G$CQ*\#"+SU8EK+/C;&SY46@H1/7':<)E]>#O7&P9?9I+[(^C(8P_OXI( MC-+1H@3CXQFLF\IK/J'V=CRL(',Y&ZQ^;A3\$)6QVT=0F3O(K79 O T&43S" MO:!5"\K88:_$2$2#\_X5]0/F\KS_.8Z#<]GE\AK4=GD.]B')@W.PR.#=U.NLV'A M*N!L.=IAU]E0:!5PMAS9N+ND\!_VV WN1IC1C)=\Q$2D>__222*@7O.VQ)W; M,?<3'ECL=N&JZC,?[W4M^#1N?WV>@3>#&,?)91] X'F_E)%? 8 ..>.[SH4Q M*7CR5:<>X2NZBW1Q X(NG$SF&GN=%\E",[]>A/8<'D"AJI, M\<4"8KY%?AQB4P;)0O$?'ER 3RN4BN7D+$X>N2M0 >(HGW18Q/=/F>_.!BY6 M%>#.AA'N!S@U/"G<6A'=E+5!8/G29GHA$ *#]BQ'M\18<_9T,2RL?X\NRK[ MSD8EE@UO!X+E^\Y&(^Y$3N8,PS*Y.N^?1'16*'A5X>1D-$+C ]30G-=7L\?V MOK/1BI?'X)(-V)\3N0MLO[M?O>"(2US]3$BI7BC$):0XL.VX7[UP22UJG_E8 MGWUG@S25X.IG0DI%(RDON3GP3,Y>14,J+QW#6AS JQ?-<%3^+! I!\Z&/(Y% M)!)^*JYY@=W@;(BH)A.'(HD'SL:A M:C)Q* IR4+W0U,_9_,]+IE>2!?R,C7AUU(FS8;#G1<"K]S><#<)5 N^5=3+J M4&"M"NZ@C4-G(Y(U;2S;G3AT-D)9T\:R?8A#9T.7E?0AK*M[*E12'=VQFL'+ MQ^#@M7L2AZL9D'Q!U%?5F3AT-L:X:D9!-75"]6*+-7F\H$OA;.2Q)@\7O IG M Y25]"JNN#^,XC >3#XQ-?MB972*L_'+)6#EM7L>C2UG(Y;5I8:J.B.-K3I$ M6>N2IU&,LX'+RJ%E@7Y!8VNU8HG+1U6B@NC9W'<.KU<5CZ*1ZP;R:3I9A^CL;WJOIQ"5?I.%LX*\2M20. MM!5N-)P-UUW(&%:23"Y"H,]6%'0 %6,<8]X9Q\>I!.Y+)8<'C\4M_E4=M=QP M-@#F-@X6J?(:SD:[GH0#?2H1E]E#U4& LW&M1R& ',AN*J_YA,B?A\'+X&"A M@LC9<)+;.%@H'S@;SGF2(#KE3/%A' 8GH[&,K^G8R0II9&<#*HXC8:&<\.S1 MBB?:Z(U#7%WS\#$V>J/<8?CG;'1GW?&3R(]'O)O TO#-T]AG\V*J1T)R/VG' MSY+WYH(7U736$78.0\MIO=UH.NOGNH:A94FYIK-><(8;&Q;JZB%4 45 M4:Q-9WW=I4':"27BK ?L @,LTKQO.NOG/@;2GZZZU1$USGJS2X.T$Z+&6?_6 M!098J*AQ=LO],9#^W#FOCJAQUDM>&J1=$#7;SKK&+C# (D7-MK,NK@OVXR+S M'K9K5]7%&,]VI?W:YS?K%\@ E795G]^L7Q8#5-JO?7YCRPXZPC[#(&%LD#.\XZR([W M$UHH&SCK.SN.A(5R@K.>\@\AX2S&'(HQ3WAK('G%<@UWG/6EJX&+A?*%LP[T MDW!!3MX1O^9A/.9!WOFB.CSAK'OM/AX6R@^U/_W@C)1,WE_"!$SN-?[\"I,; MI:/JL%OMJ?\0FMEMM=#L7 S@AWGG>0FH@M&%W5<:77@-?+OK7-S"4;ZM9D1D MU[F(R _S3(W>.>AU+M;B*/=6.HJS^^JC.*]"$[_J^-!K<(5W7W7DZ57P!+47SNJG77N[X$WK"%H76J(9T[\HO"\>!+[.<$-3NC!1F-[ M,=AV-B+PJK$]'2PJXON^N,/4HS\5=SBH8MQA]4GCF2SE@RI&/5X5MA=IKQ]4 M+^;R&K#M0KCYH'I!H1\C#8=D;_6B014&=O5"0B\ ;":/6G[F,<-/4Y&SD24\S13SA@OT@P>;ZF-.FUN-1G6TFW/QG.>O]F[=,!G, MGCY[R4$L"#_A 6VI+.IK2Z 5%Y3SH;/1H)=!__/WI'BMA.5LX&DAA/73H?ZB MO?=3JN'0V9C/L@#M0DKFH;/A%@?(?Y%'9APZ&V1Q@OR7Y%D>.AN-<8+\%Q?Q M/W0VN.($^2_+^'$VL.( ^2_2+SYT-O9P@L4G_(K=MM)D&,N9S:QY&(050S@S2UG/?2' -[%,\-:47 :^RS\[U0*%8"( M@2'?'BL%=]]59'87,6TL)S047/+V8C&8VCAX5-P M*TD+R](1SL917C$M+$M'.!OJ><6TL"P=X6R Z3&T\/!!T96DA67I"&=C8*^8 M%I:E(YR-SKUB6EB2CF@X%SAT$3E+$MH-YP*!+B)G25*TX5QDSD7D+$NL.1PQRVK$?A9'!C\K*MBB7N;SD5< M7CUZ%\J]E8S9O(AC\UP,50=B7IK&G8RM9.+K,X\'DHV'PF>A!KJON6#1SV.^JJBH=&!G M07&[>S!/GRG55XD5/0JWV:R#0#4I:%+8K@-&-2D84G NN%3C)L.-DY$AARSH MY_>:EY3LL.UDA,HAS#^_U[PLS->1LF5[S6@[U0MEK5Z7O.R M,%]'RI;M-2\+\RL8*:LJ*IP+7=5>\[)(P;E85NTU+XL4*AU+6TVO>5FDX%PL MK<9-AIM*![=6UZ5U+M!4^YN EEWG8DRU,XAH<3( ])7].Y;M5"7QB,LB'B[2 M'KS6BH)_I4R),?WJ/4L+(E M*KO.Q:J>AQJJBIY*QX\6%$J\FQJDN(99K#0!5#IJM* XJLF .=B14L(&[YJ M G N(/7J,>)<+*H"%O3*EJCL.1<"JP UK&S9REX=>7/1NUX6-;R2R%M5T>-< M*.RU>M?+(@#GHE^OU;M>%@%4.KZV2M[UL@C N?C:J\>(Q MZ)<3U+"RZ49[=>3-1>]Z2=2P_THB;U5%CW.AL-?J72^+ )R+?KU6[WI9!%#I M^-HJ>=?+(@#GXFNO'B/.!KS:,%')_.0/D0PM*A7KA=R^_%!1T@N;"#]+)$M*<-AW+BA672)9V3SR?>?B=-4EDI5-+]]W M+GSWHD125:PY%V9[*M;L\\?BE@=X)T-9;2 L@$ .G(N\59- 5M8X.' V]EO;^RB;#'S@7\*LND:QLCOQ!'8.LD(&P+")Y MW3'(JF*M\D%!-^S^U340*A\0=(- 5M=TQR*IBK?)!03?L_M4U$"H?$'2# M0%;7.*ACC[5A<"^!O-[88U4QYFPPL)OV%/\KA9F!1#&SY MMN7_E0HE$KA98%WX<_29QVK,$L'"T]/V,Y/%#N*ZPO;.]N]7;;AQN'^PVFWN-7O^0[?P_C#?F[ZAD$@(AC$2T,>1B,$S> M[S0W]W?'R8<;$23#]XVMK;^OT:,??P4011]_[8.%8A"] M]P$N7*[IE^U]/PYC^?YO6_1_'_JPR(T^&XEP\OZ7*T"?\L[XC7<9CUCTR[IB MD=I0 ):^?E")__#WC29,D'[>Z$GOPS@A(-DNHM'$:7\[.[GJ''G=J]95IUN> MLX.S[7;:WRY/KDXZ7:]U=N1U_J?]I77VN>.US[]^/>EV3\[/EKB$K4X;]+ MWD?1VECS(H9B,^#B_5'LIR,CQ=:(]?KPP,?&UL9OQ)[Y*!^].]<^8G( G)?$ MX_? ^F#&ZL4)6$@X MW(=K+A,\ILQ EP"M;QOFWFTT-YOFPR!)DL!^V?#^)F!][=V<&^:U>;?N?.>N M&SN'>YM;#[WTCN8G[5V+.#/W ! 5(HC_N;:]9I\9LR 6GS?'-]Z#8!&@-\BX<K;F:8^+6&?3'BM*$I9>,G' ML4S6O'XL1RP!^7^;O.^C ;R1R#0CS.;:QW_\[7!_9^_#-&UFI)D$2P+DXYAX M%HXS7$QP;)V=?6N=>I>=B_/+*^_BVV7W6^OLRKLZ]T"\7H$,U7*IL>V=7WJ- MW3?!6WWA_-B[^M+Q"C(XD[^M]I4'MT&-[I2@133YCIBOP-HOOVZ27A[]WW$L MO63(O;Y0@!!OPIFT4W[F65V*B5\\)C0]2<,]-B/YM_;7OMXQ'UM^V(R M>YF]USU,='^\0GIV9?Q8W)U?KIS2W'I8S3U!:1X\K(+O4)H[KUAI7DGX'GF M=RO./@M5ICEWC>;<67G->779.NN>H(I\K=IS1N(XHO5JU MKIDHX'XL&0+E?0I:7N)3R*E(C"__[ZM%QMK')*Z)83XQ3$F1>8$S%PVO=CP: M"84!5.]8@%D%Z@Y-R\>KV@X%0O%=_:K5I'L85FYL;.\>8##(&8/TD=&AIZ[_ MD@^$0M&=G,$="X/]M8]GO^]ZG\.XQ\)U[R3R-QT"Q6,ESIO.+?,36K(7]SV9 M+=5CRE-C[N,^0>")R!.)\OPADS#9MX^QYP^68,\?'FX>[&[__6YS_N]SC>Q# ML+\;9TN+N0D78V#[>:"QEI;_-P=S$C-78V=_?V M%C)4$TA]:_O>H8SS5#;M&\VU*;HTE ;6O:?B4 2>Y;][;'_-O6Y9_T^5;R"Z M8CDV:I<2)]IQ&B5RT@;/KN15P91\W/Q,^%C&USA.'KPXP.!%R&Z8Y#_A7FTA M@ TNL\?V:DQI3%VQVQ.S>>L3MLIJ^7#MX\[NQO;.[L%68_]>)#R2(U".5PC( M\R,+;XBD/7#!8O#!I/?O5 H5")_<,-!YHDC^])@;G9W?0ZHW$83P"B99KTSN+-M_.H;2IXM?V(V-5H+3S5(WMM8_'I[71^;S OXC!\ __5XRU5V! O[/V<7M[J]EP MR-I2>K:.+$::("@^\8^;ACNE[[\T3<@N0#>'-$NOM MKGT\W-V99CRSB_?XL4]CP/\%3K?L3#;VP)L\W-UH-AK-'\J"VYY'<(A?CKEW+3]X_YN'6P>.38H@=7\<]L<=-A>C)5WN9-2+PS<_K[IVU MND>M?VF>\+XR^9TG#WN:[KL+!6M4/LX:'^+2*=E7*8AUU2RL[5K::1 7T NF_K^D_-^_H!)_(9SZ)HI MG- ,LD*4K;6/?W)UIV_XXGG$!&=3&^.]%)7.G\79DU/IG@,,.[,);//G@ZAYYNHW;O.5+F !=$+&;G@>T_4,IH<^+R>6( M_"?+CM_C,(T2)BEY4*I,9C20-Z9%AC-@WELEAKD9P*!@&WHJ!9]2#6/,-;2)\LF0)=-+N6%JEOOI9;.:MZ MH\![TRPL MN0=F)CS4^SQABL5T MX0JZ(@E+TIQ+FG,UJX-LLA1ZORM;^RQV!D(KI7GO$"3(3,!'(Y$DP'X\!'Z2 M<80>:CCQ.'BK$^\$G2SFT][7$4N83D.?$C'Y&$6%/6/77O)!&K)?B9&N'H[1S[\F)0H@ ^A9X1&)B6V:RGQ M$U+BU? I.90AK(9[S/>!3R5#9D-:16\RFGL5+.MH8^X--0(&AZ](J[N CD< MA0F:!# ::$\$W, ;R/@F&=J[FV A<)H:.:]4!$?[Y/_XVT&S":N\8X)TN_'! M/C;S@+F_;A^X1M,:.T4+9]-[TR8<@(?\]G'[ MA'>3T\MN'C:VL(YYZZF[A\WF9O/PJ1MR\Z_#2 >+J7)H[&XV]W<6-*G=_?W% M3.I@Y-D?G9:TM,3_E1XKF9!ODU""6DSDA;WJ( M))AO'LJCW\V=M8^G\^7A\U>N:QC/EUS8.FII'0+F>N@_MNZYF=)+)*[6+)H7 MC=:1"(*0+PBSBUW]79;8/5WJ5@+K9V432]L9"T#__/W"C "6BN,2+E<"BUUM M<&KL95:G_FD,RN<2TI50A 0?V[;SP1XMS4IZK(*I1#'94VK.7KZ!SQW1C?X]803,I7[D]B#& M)RDJ"485[A,FL98TY(DE?2NS*1&DPF MQ- ,2Q*.%>8(*0 :=IV R;$!;X#L"3: ( M\(.21,:A%X,L+* M#P]1FYD,.3M;.X7,[RZ3/0;#;IS?AGQ"^UEO&KO>M\TN M]L+=;^YAFOA;7'*^/I/*TPM!C!6(HR_D2,>3Q_!MA@\!/5%.1T S9FD@$C.O MS25G#SQ>&I_X?=G"F<>RE6/N.&2#!_N8[C_:6D2I?+\3D/E M&I9J'L&,7X+A67Z&P@_9K9R^R'M,4)E_Q82IX5O*-T ME1)W-V,DQFL1IRJ<6%J<]]7-)Y)C&T123XJ[VO0T'@7DI67PT->?WH_P6$3= M9)1T$+3M#.!WL4+9+CEXI%WB(B_<3\BT,8 T&X/NU6274Z/EG0)]DXC,]M=0 M._@Q[26"$@@G2BC3L@$#:-=\H\=0':/"YI'26@,W^N 692UD7R]R#,;W&_L? MU$QAGE3%'4,)QL,U,E@V!6,B%!G<;$#N;&TVMHXV&L#EKTB+T\Z2&O(PS/: MWMR5G5C:/P$)>/.@1C'VM9] M#Z3-D.YG#H;(MYYH%VDK?X7U5!RFR=VOO/RY!?.1T)AWH(7^=RAS#V@ LD-R M]GV#]6&N[UEXPR8*?:%G.TG# 8%- ,*\>C88 !\CHX\HJ5X7F5CVO([)9$5S M'+>!S4]?UZ>@:$XF'I N25C:)^ZCS0&C*9(#::*%+U@@8!"!J$9!B>.&F$G5 M,Z$@+V#WR>91K$CR BF!;4(>&<=QP>Z*H\!V1?\KI89TE)3!QN!VW0K@(0YO M_!_#C,>40 'S3B.A63%5P=H4;S;70&CY\&JH_KFV<3#+J1=DSQ^',9MJ,QRE MHXT@IKZ5^#JXV# M>/4PZ^F]!22YN6M9UD[GH]<380A_;%)S6% IP&E,?Z)&&IL_=WK@>\#MU&8Q3<1ZK%9,Q$U;:M&TCWE/ D%.C,;;HX[M.^NX' #^#?YS)U6J M(0!$31/F=I$P3\Z.YV02$E=2@4R7ACA/$PI$ ,L^CE2W,E+%,T]VUP]AXH<[ MVS,4JU>EY^G%^5?N86(C,M3OG;.KKG=RUCZ_O#B_ M;.&91)_^]"X[QYW+SEF[4U[3DWT(E??BX\&GR:65H%?PWJ<0H)CA"D06!P2. M4?.B5^U8%?Y\-KG F(O)^T&20?;(\H' #+\ 3[QLK,;26:) D3*6D5$((XN M0 %X)R0$<3KR\.B>*?J:MIE>N9G4O-M,>OSY8_MK;IA6KIR910V!3\\_ MM4[7443<+>%E&6T%7",5SIQQ_G)7[4^G7;P0(+V^=D5BF57CQGYL28= M(%0/GM8.X\XT+7AA]W!A+8!_H-GNW@_62KO><^N1E'H!,O'A[>O#A:5L/8%# M^_UG6_=]'?U_9<[,Q1M*M,C^]HCC-K,79U $UMJ3L+.W]O'DJF/UV1TH6G@BQ7-SUJ- ]4*<]<2Y/ UWG[YU M3\XZW>Y+(RRTST__;USY'6O6L<8[_GZ5<=[ M:ME8%0[<;KZ@;%P&4E#$>(WV\V;MUS)E(<[F/BCK]I^?.I?FE-L_:TE2#4FB M4;>]7=M9[N$&2[=R.^LN<5^+1!=%(N+NXO+\HG.))W[7TK Z'%?+0BAJ):%3LI"P-UIYW/KU .)V.YTCD[./M+2 MY_(TW'T].>MXW=9QY^I/[^BDVSX][WZ[K&W%*K'?0X)Q*A^VT5S>";UU@E05 M$Z2V=VR"5)TAY:(,V"^JX-U:!2]]+D_#W=?6Y6^=*^_X_-*[['P^Z5Y=MLZN M3+%-EW;%SL^\SK^^G5S]N0Y/G%)U2O?JO/W;E_/3H\ZE][5U==6Y[*Y[K;,C M[Z3;_0;7+KY=MK^TNITN9E+KEST3%J]#095B[>V[C.I:Z"X1,SM;1:%[5\)< M+71=%+J(._!Q.I>_=XYJ25@=?MN^R[:I)>$R,;-=E(3[M21<^ER>AKNOK;/6 MYPYF7F4V)P:"OG6[)V!WHDD)#YS^V3TA4_+XY*QUUCYIG6)YWA$8D^89D*?? M3J_H$=QO;.&-VLRL$ MOW\6YM7!=(F;V2K[]?IWTO_RY/ UY__H&SOS)%V-!W$3&.O M5&A_6$O+I<_EBY@%S,2DF!?Z85W 81V!6/Y7ZJ36=*?CZJ4_PJQH&U<'02-?NE)@2'=1."Y<_EB=@[O_K2N023&5MFTJ95 M+18KQ'O[=[FI*]5^X+!N/U %:;*[]C'?T,%4SM8E%IEA8F?GY/.9]]_?+D^Z M1R=MVAKWKKZTKL :Z_P.[CG(G^Y%IUWOF5=*_@"^#[;JTHNZ].(Y>]/N'V2U M%W7QA8MBX*!4 -FX2R#42MM)I8W8.SJY[%!3QG6O\S^=]C=*S3@_/CYI=RYU MT"0[%<3[?/Y[YQ+#Y'5LN4H,>G!7W^A:=BX5-3LEV5DW]U[^7)Z(O5Q@ML^_ M7G3.NG4,I6H,6,M&-U%3ROQMU(W7EC^7)V+/=J'TSO\X TORR\D%G6K4N;QJ MG9QYGSIG'3 Q,=U"WR=+,R_&,%45=U;[UC*V0HQ_/58ME:FKJ) MFE(A<*/N!;?\N3P1>Q>7)V?MDPLP2?-,8>^XTS%5%YW+WT_:=>)8I1CR(5E9 M[U"^[*Z@ _N03R:C/;L%^7NM=UUD\_+!<'4#N.7/Y8G8Z_S/EY-/)^;DH\JN M HV$BJ]@3L6IUVU_Z1Q].ZWMGDH)Q(-[#Z9Z1X>^V^L%F)MI[#0W]_$,^'&L M!$U!\A#F^-+0),X45SI/E6_@KKJ3A,D[M?<06_VU-0*OR+LQ7!/]<> M 73PR\U+0YDSP8!O]"1GWS=8'Q;XGH4W;*+0V"O 822BC2FX3X-, ^;CKSWY M;AJGTQ@<,3F <&(>']8YKL7 O)\JZ_-4J0*)B=>-V$)'\%D/-:+T\0[CN4- MDX%W&L??063D]U5YJ0\L4H#4BY+WVWMDP2^#D,Y3Z05"^6&L4LD]%@7P/Q9. ME%">B+QD"/]M15'*0N^2CV.9>'&$JQ]YC:V-W^AY>"R&49I;S>VI1Y,8 !/[ MWX=Q"-)=K<.C?IBBC/58&'I![*<$,[P>RS'*#AYXO8D'8H-+'OE\'>1TE##X M!#:Z:B(D"/ ;H08\76U\ *A9^'LW B:-,^?>B+,(/Q;WO2[W$9=><[^%/_$N M7$HE\#T L^4G>!7X8WO=8\IC,%0 4WF#SYDOEQ\W'WZ[GH_+#^0<0QOC0A137L,KBZ*?PGP$)7 !Y'[&2?>9P=],[EO'(2X!< M$!/XWW7O!G !1*U;ZC#WAO&8SUSL\5#P_LQE 7(G*H\29Q]1"5+J #!@ M[^5S0:#TTP28:=,[B3PT*7 81..D./MDR!)-YPA*0,>_-1T!EP#LN,]4 G_" M-S4.@# D\Q$/_]&+0RSK[WC\FD:$9WTA@:7@*\ Z97:#CVL3:T(_E4I'8_,Y M!/-]Z/J#>T-V#1B7@@= 03 =^*+T0&LJ 2IY'1<@4)")/BPQ]8?%=0(WIPJ' MO(EEH/1M(!(#208O^6(,3\_%R_7,98W?N=@*9IY50/-SAAY+'HC900P.IB^/ MV&3F$@K0Z8MJ&*?AS!QNYEX483A]+13?>3CS)7S2T[> 6%0:SGP6Y:.(TIE% M^O,^K EF9N$ABV:N6>3.7">^8#/S3T"]\9G965*>OCZ(9T>(>Z##9C&N./\^ M/ %S:@L)VE/Z)N&93S#,IO>U? AH&E F;#[&.L%XHBOFR3VJPFH' M@&D22_3+O#Y(R%CJ]6MVI"=ZJ+580%K7&Z0@2$%<<)27* 6]"_Q%]+0CG M?TM_AH8=H@P,[E69"(<>:.0 :4E$-!Y9!.R: =D##\/'LYG 'S$0^M3[(Q;0 M!& F8/[C]8SN!G$,Q,20WJRJ]$I*5MN,N4(A$Z"OV8:^>"^M;GJ?0$"DZE[6 M(4\N,SF,$,._)S1[E?;^;<:60GW7^$\!IA(M1S*4:#8D$CW]-:"4M,P;103 M2('H]PNV#^"Y3]84@0\ (\BS-%( M\I'0Q VVCC-;E7#H!5,$+.!QK,Z'5F M=D0<>@8HH!ZTB]X_FJ]-C&,# QKO=W>F.'VC<; T5B=1OO?!KN3EIU"&36-G M".+8:EZ0-:"WA!8B^/AWH$LP)OI (>@^AD8=Y4;2 M.@@MI&"\; :T=B+0Y%] F*(/ME9YD/7'X'BO1O'34:R=+M+0 1^1\M2LSD&Y MHUXA?8(<#-(0+-](!P(B1)!VR7P0C)E1#TZ2-F1JA#T3PM";L8(9."ZA<)76 M7^8B5X WK0:!*=$]D!$S_ 42/$%^%F47*0"%%,;C@K%&+-X']Q9LON@Z#J_Q MLP\CQ2/CX!<7_2K64 MAZEJ51=82\ZZ2_B.&-DX)3Z8C0# ]8WB)7&"&@P_#D3VG8.]&",<4'RM>S5! M/K\$&?"(8P DB$?H?_HF1%8DP"+RM=3/$0T&G*%;M">)0.%5&,G^3MBM_7,( MLP(3!6P\-&7A,T/.PF3HHWW@QQ0_$)$U<,T[D@S7W'"CF2.Y%"3;. ::)^X( MV8VR:FJ0AM;BRYE&FT,ZTHX_8P^7/YAXO-_',2)_4HO!YZ(ZDC^;WXL:Q9?Y?J5!6;-A 2(DG.4F-@X[="D8;+;M9H>39C"@053P1NW7L49DDE-RXT("-0=L,1()B" M_-.ZZSY)J@*OJG++@&"P"34,1HS'SMPN89!MD> M>8V^9Q1T/ +($^N W1SR@5 F4ES8/B8#V^2V: [$9W$3RZ3.Z6ANGP<4I :C M(?)I?SS./%ON7F/"_,[="?/.Y+[7C/.#DA&-/=H3!=:()YQ[(Z%0T:6HJ;0PZS,1 M8M;1E$%2&R%+%7*@<>)0JZ1XS*7=(!5*I3"3L4[@TAN+Z]EN!>9NB6N1YW7= MT$8]89N0FCTX9C*)[+Z)WA5+AD(&=$/4ZNQY,1UQRDTK\1LKA/YP5UL*G^*\ M?@SF)[.YJS9AEXH4:+/:QGP5CP3FN6N?K\_\PK:*V7F'3VDK:(K:WK!1C+4" ME@RB@7J+NV;X5)Y\A2CM@?:D;3'\#J;WH,<(OT;L.R]MOZT#(4T\(!M,[ K, M3CFEV0]@V9IZO4)N0$;P-T/A#XW)QOI][L_,5AO7-H*0$ M=VV#/Q]-*S!B1%_XF+F):1J4M&,WZ\!8CK"0(8299A5/>;H/;A_95'-+&%C[ ML)$ 3>&./.::ZXT.0^EZGYX2DVR9%-%7C=[G$EDD&&Q*KDG5Q"S,9"CC=#", MJ6C@W@3^VZT.'K;$+VD1Z2,KR! MO%JV6@\HZSCSR-O6S:=G+DU:,SQRG@N28NV$^=PGHSDWS;VJE0M<86T2",0( M=]2CN)#?3QK""--2II\6OXBQ-$^\U\BSQ@55/^652@&5>MR?L:YS 'E9WV%( MDX5/._GT(FI)*+R!;&G@"0O$9KTWMF:4 M'%[[J"GF 9F*H,1R!RR3#!F0"HC2E)(.!3,[R_>77!3(1F/'&F" 2\P;CH E M6%:O$Z#%A\_%_5J7MP+;:4PP#$=TRJ1%:A^EZH+KW$# M"]^\$Y)4_$EJDDJIM+BQ^64%/EV?*VEM+>L-? =KB'P^3G @DP E.9BU,M.4 M; P2R*?R)947/*._ONFU@+%5VM.)TR"BX2985_2!^VN//9: R]%+J96$K2>R M --24U%H7&L$+*C"$E8^9&&?Y((1D@"OO$I#[_4)Z:'%(#G8[R0U!?F?;"#9 M>+CI_1FG- +$,S!NC>,;["*=KTD8 CZJ200YU7Y5'=-S@=N;)D$<5/TE-F+ M_TK!I\7Z7L-$JLA%_UKWVJ9^WZ-YO=4_J(A M&2-LUQT6MNM.2-M,N%)QM\$.:7FCSG + $P8KG0Y)85B1LAD68';TYL1( >8 MHDQ"%U:I _-D];2VXEB7PU.%-EDBMK"<$=.#U#:3K)QPON2% @N&G ML]]WO<]AW"M43!>XS4BOF<+QF3KJ=*[%#VR4]S PS0@*'P3;SM\$%>P=@=BY MT84%NE&'Z6D0D(1$ 1:'(K"2":298!*(XFXDO<9-B-V%=.W9=J]K3\YF#K3M MT7T/9PGOD>#=6WO$6A^(KN"5):V>3A]M;.K&@K/_?OK6/3GK=+N/%9Y+6L7Y M->XX\YNJR?A<=*):8];8(?\_X?XP@GE@M086%L:H4M'S4&#":/,:Y:@IWR.1 MEM=IJ;B?D/PU=K%)T(B- 5^J1@5[.8FS1">;BP;VN60JD9C?@<7'J:X*S/?V MZ>MTGV0["!.LH]1) SRZ%C(V94-Z1@,> X2Q%8@I-<1@AHXNP?1UL=L-&7I8 MM-*3,=.!$VMO_Z(*,Z3J=B\K:#K6^0DF9X%&T)6X>?52H9BRO.[-@OZR\$=4 MT%PD&:[8$R1;=1:RT\7U4X7UCPJGVPZ\VENQ:DK"&C8P)8V-%7]O__@ IBZX ML9/W(B+RH9<^F,&,;D/!/-U@%>E;WS8R^W!O<^>P@6+;='$U'S82?1/(\=WL M]9U-$'US[VQM-N9>OW.D[;!TN;E+;]P[UXXUO)3*Z$^=,;^DX M^N'>_F$>HUU88\OE+>G;E$SZN;75^'KN)>41 )AN:6$UE[F+M=.SSS6'5017 MGU(1TGXB6#(#R4:%%DTUOU4$AQWLL,#AW2D96:/*0505_!S33\/[!QN-/WB* M]7DRJ9FN(IALBVL1/B0U:[PYA[?+/.R@-^V9+NB::[#4#.@N(KNIO.:36NPXFZZOFPHK@]&OGPJ N MS_;#XC"8U1.6^4.GL-]Y/JK[J9(Q$*:(J#119Q!R.JQI[2P.$^ZU;!,WI=/1 MUS"CL8W5-[&,!.988DL /%X%"WSRXGA\K+G5V"IE'7IY_QQ!F8>"&-!D4<98 M%ZF+#KVO3/I#'&!;]]:'"2F!GCR_A8$",X#R8<:FE98]!$:/@05/ Q8A6883 MDZM(A<2E GZJP,"\3JP*_DO7\.B:HB\QO'<3Q\&Z=PP8$0$K-LK@Y0(8JN.D M.G*@0\J53&S;A"RILIB'B154IMXM3\>,,0(,"*;,T/]PO;XADX4&4%B!EV#F M:M[# -PLI6N+ARD016ZMKYN\4$JM-/T,UDOEG,6,V) /,.$S.P>T6#NV7FC@ MD0VOT6KG@^FV=.8'G7=%8$K$"%:AS\XHEL/BW4*PVQS:DW<7H7(K;*.YZ>'I MJ)C+#EZ([H-U!S2P."6^45A"3%6E2<)EL2EG-K@E >K0EL@ P8V6.9SWX7PXU7C M[J\L&K(D@0__@?VAP$$!1^BSY#RZ81,\JAA;)6D??'7E^W\?_W87PJ<67?VU M?F5*,7\(HCQ)L)F<;K")0KUM^DBV%-SS\LYS,P;-"F'^-,8F' ,>PI @ZMV$!2(=S:QQA3#[U6\S*>&[=S'V[RN&78R&GMEE M:EK^@TGOY,38;>O>Z>HB6\"HJZ2SG^AI?\EBB*N*X7.)+DB\2CB^=[VM1(* M]C1B05JU5Q6Q7?CDD>"#.U&[_*' [=+2^XI;6$X56Q^Z! M4-#]0F]RG$0J$I7VP8OZBMT*L>LVM3V;S\5WIF>\QD9X>Q4XC:?>G%N)S;G[XW\ZL69& M2JV@09DO#F,]OV%A]:S@^JU;8?/CWN5_8?*:R:"$XRKNTSW1QOIJDEA6%:U? MA3\4N/DZR\%?3ZJ'W7O7F@5W\L3A#?290I@:G2W3PO^L+*HO\(0=CIY3$T(MJL#&N?5>8BYT$:,KMU=.&#WB>):@/97W2*>)KBI.0!YA.P'Z-8J.=) M75MJ%/(H_Q.CQ: MR12J;IQB"Z)2\RE$L3V">85Q6UAQ>6?LX=?>:Q'#Q@**\Z?B^8 M8@''O=Z5$\4VD_-UXWM)'HOFJU1&8_&=EU(DGQ.Y2V[T,AK%T8T^8P ;"P!YI_[W5>OS@L-\ MY;?"OS^*X:TL#V=>_JIS,>4X/R"J5S;A^60TAA>Q(8C9PU\]%)<2?E\G,UL9 M[96$]SF=_J139^VQ3"N&_',)HM4;1RS@*YZ:]3BQOKIHMD64Y=7;.H%5S=3"DH '#+:I>H%5 M0CH\P68(?@;E).G:<83GRLTR0?7!\(=0=!#E*]7M69EMBTOX;PH3TRCOCAGV M!0M&(A(JD15%_1,3^^@@DY5'->U3FM,F6\DH5N,AQ]J2JB/[QY+]".=WJ+A5 MPKZU7"FFV@&9%X\ YT?Y4;G472R6\R,5U0= EDND$5Y4:=ZGF,F5;3)P1VBJ M$UT+$/GX$V3"A8P3[J\@WW_EB8S',?8R-0=5>4, MPI KA_.+6'$14/19,0Q2$68O0A;1&3>KG>IQ[Z[+"?84'6EXK.S6@PY0V@1; M;<+D1RQFULPJ=]XQ1 #+Q=@4]60N&'$A%6%"0)\]HA MD\P I2 \:_CHKMV?4O!44S0J3NG ^ES6UM"9[FFN.QO4<)F&RY=XI$_IZW(_ ME4\[LFYE0717G''>F3.O%$1@Y8#?0L=I=5-YS2?>FV_=S]VWKQPV?S UA+DF M,WE7/Y.7L)* PK-^%+H(,R&P'X;,G?'N0HAUGR*LS[OBF8W:ILD='_-$8'S= MZR:2 Y4,53DV?'=46.-21 &0T_OMO1=8Q/PH^A_&#/Z;#+G7 MC\,POD$L^H55*KO*]PXN\\YM]OD+/Y<#%HG_V% F+"WU@:-Q^2SQ>#1D$6:> M^ ;8'CQFH\@!7\9A+/"D.1([70S;C2GF:W9C7#V'F5B845A3K MI?+ ZTWL2D"$]3FU;/!@P"&P+:P[@D%&#)SZV[O>'O!X(-EX""[-S5#X0T\H MI) 1GH(,_PQH8I9D8JDVO?-4%@;CD8+_* UD#5NEJ8[Y/JXEB8G^X+J Q\>P M(HRNH< U$U=(IS1Y"COCPZ-8)=X0(!5.O+]2W$,3,-NQC/N<.AFR$%X2"#P&W]W"P,)*K7O@R#()TA.F -_"4&0)@J*:KS18PIF)#!.P&%=P!YP8A1B5? SR M@Z>8HB_4J$ Q)9AM5E^X=&['" Q '. _I,:1,/?O/%'+E2!7L:?2,6:436', M4.\YAV&'LIH%?"FX;7-3#Q%W"L M%MT&LC@MS1SPG)9S7#.K?J<\=#_V4V#UR!(W\+#UM3-1P84L(0^'#U%?1KPO MB#G[P"PTK1[SOV_HI680[J>1X4 #"C5D$M:8"3(KW5: X+L3W:,]9^D9&;OI M+9/T07?ZDJ/JO&9AB@:.G!%]&8Z&<8A$APK/2C Q3U*!TI(Q:(R9M:(:(Q&? MQ .NM6OLC5.IX,L1+ COK=-?YOOK6IG%'K\=6U*7+!KP:!J:@IB%P6D+S M'W&>%$'TC[\=-!O['V#6/-#P&O)PK( W;FD\8RCXWD#&-\EP%8@ZD4#-ZP]I MPJ5*]$\31'8/< JH+0DKCCI(T,FZB"SZF>2T!!)N!-@6X[!D!UDG(- Y>2BN M" KE-6L1KFT]R7/:Z\8C;J5=F5-H4"1[*__1$K',A\P8<)\%:."(R ]3= :] M0;Z[EI0SH9EIO;P.3$75/ZD]]$XSD@9$C)8GLOS(-G*F1S81: 0'M)J!E L( M1@\?)%EA?98_ 3 #U(<,9LH!E 7%1+*A;Q0&SIF%86Z=&WY![H7+3!%OPX3 MPO,2W"\F#8P6'YB#(X)'-IBQ.5?&)")R#-8]> E3QP*-+; WQ35#6R(S39?N M:.F9Y%9*QD)Z"7.\"Z ,,G\\)B6C0BTUYCZ8NDASVCRRO 2F1P*Y/A^G1ILBL]B96XFD62T=QSIN(.8L-N!CW30CERX@"'J"Q@%N-[+"R@94 MGO8K)-09U9)N6PB='N\8R%2ZF&X ]FQJ=WE$H=/0$1QC!6PTDO M:UF9FSFP' X<3L)RDJW28W@2@!;:D8T0@@7R7;0 [VQN[>\N9*@%3VK_F1*3)3+>#&;B\9+V8_[QM\.]_<,/ MBT]+6]Z26L&U4#&P)Y7*@'SQOC!YC7]^EBQ(T=+O^L,X#O59]@IF2[*M"TP- MTH<8\"3J2Y8'*#? ?FINK^._3?JW\7, JXG@N9?4*1BN,*3:N 2-!"1P!08G MABDO$*T:^1C"V?#^UFAZ;Q#+;]?A[QWZNUGXN[&HS/0:]\^]I$^I",G8-\S] M_U'.(3$SVC%?V8#]!UXRD2I%-+&[I2/4Q5S=;)PB,1T+.2)Z.33D4DL"MZGA M7DD :/\W+)D@BG'OIDM.XWMS7N6I #<0\;Y=, >:!7-@NQ8/U:*&'Q$/ M^[OSI<%^K?0K@?,?DP"Z=BF3 (<%";!?D 'M02H%C7\H 3X$JLQQ7F3B7>L M,ZDF\\7"02T6*D$(]XN%K:D"@&F7@"3![D$N"?9K5Z%B!/"#DN 2]R5"HR=* M(@!C_\7?+>D/!9:-8'PI=R)V:@%1"?JX5T T=[T3W(O-]GH*9H1Z*$9<2P5W ML?XC4N%@R_MM QQ#LY5PKUD JF*O#AU4@A3N$P"[6X4= Q%-"8.O)K_8N@\[ M.SGV=PI& XQ2&PV5HHD?% ^GE%WXZ/V$VD:H"#G<+R*VIJV"OS4+WD.SL+'8 MW*\%0;4P_X."X%LD8 D*HP?WBX"]6@)4@@[NDP"EYKUE05#'#2N&YQ_A]\,M M>\9,G3ZP"C10#@FVP-*?@'UOTXC*=__!1N,/>1Z9#ABW;;V4/RD8>[NU+*@6 M'3Q2%ORBI<#.5I'KW\U$!>]4!S7FG<-\F<<_V8*M_XY32:=1 &KYM2Z@:6%" M.(8&KK**K>+MC3HL6"7$M[-BIXTNUFCU)T5MGK$\'3 GJ$P![W\65!J;[2+O M%W:1#PN[R(""NYG?R/O]V9L@9QXC%DPUPKY11D1RO8I,R[&BD.V28-AKE+F6Z["^K ^2FX-Y3G'\OM-7 RD'3 M'H$:?>B.1Z9X%^\J'E[KEYDWEKS/I<0J=6RP%?(-W>G/]M^05/LXE3*05_07 M*JIMTX45:)O618#FY9;,_RL5&GQ4X6WZIF'KA0+(LZ836=.Q95;%4ET[$49Y M]MB2C"%!>:DJTHS,5X6%IVRL P!"-]'(&K#,-%9;ITY H:W O^LQW3P@XC?K MGA_&0( 3W6LC[Q14'-+T(; ]8FP_-D!%/XZ3,3R59)V7=#< 6!LUZZ+R?8IR M"&H6@-UGB@"@HEC#7.5B>H*,;3I#;##^KN!YXI6Q['U&0 ODT=?,HM9[Q"-T/=QH\@ M97OW9"TYDJ&,T\'P+CJ^$2#V!]CP$ B!ZU/*B'@]!8O.6BB _&!TM2\B1L7/ MPQ2($[!G.H*N&UDCL(D,*YV)@D7$^;$1279LA&E?P@YHVN0\H]>E5OEG8"?"%'A0=I12:UK=Z2U"W(^\QM;&;SDRZBX8 M,*?#N@O&3W(3\ ;(-[3'XKRGGFG*9'I=VBY/IGN>#;>"KL*F/^6G2NK5C=X9 MP% P/U1WH)E!K%&["&H[ROZ=GDU1TA04T # A08?Z5,B8VY,-%2F4Q9 M@;K%M/(IYAOB".A#PE]CT *W L0WV@A[!W]?]_9V_JZ?V-O].TIM[#B$O!J" M(C&S&E!##3,WM(FE[N(C>JE6S&12/VZRIJE&&JF$LV!B=:./37I$'!3Z:A I M8'/':6+(='!942]*@[.RPC(8T*MTG%D^%.6M$('$Z. 3B;4FMWL%"& M@"ZPS;&!$%RD9E-8$ +W]%%5NJ.?*'<#,+V'3,-7:HMN#2WLXD6@,F80"3BR M%M .2:9.[.;4#1' @74G&D,W\!U.OTN]OC:]+_$-]B8AV-&JK,\2]ZAGBFVR MBBZ%X21C@)0YR+:&329C0ZQY7Q8%9,#IV\91"DQ[%.(8=&,L)LEB4L9,TU92 MQ!-LW$96#/9'HU9JIE-4J9.+;15<-.%TCUM/@=VD"'ED7/D%J6%,SKGB (4& M!]9/L9]HB6 ,5A$.(^VTE:P_I/Q"*QIK#EE,TII!;PV+I'_'#- 05.02()N& M8*P6QT4O IT$C:N\BZB:TU'83\&;1'O7 MNWAL4J-'BS+="Y-I.*?6:U70RB M'0=;KNMW3CTS\SYNY6;(A99I(.%&)&EBV^X9&X>2Q+0&_J;7,NW0D#7@+^K" MN%YH>(1,@HT.X7LJCB(>THB9^X1,CL9Z2KVO-[$]+].[2K-@\P:Q;="8QT) MB"#9%:5MYBA0#\;LN^1D3O5@GG;S2F&23%"7VN%F/D_6LLFTV 5]P"5Y/ A! MVZFI %V9Q4VPF5[AT\1(N5PA]XHZFX*03"9YMS=LEQN5F'RJP5O>NIJ5NL8% MJ+*C8AM/;:@8AQ^,4)5/]!?=.YNK1.5MN?-+J%2IG^O9[[NE7K%WR+9"I]8I M7)0$IY'*)7SD CBGK&(S?M.&V$#ZOC9Y6GXR-0VP1PN=)<4MM?]"+-?E Y*J M#HK)^T\9*,5AM#S)^ND#6<53<4Q .>=3?1QE#@9EP/#^;C>N,OIBJA/3F[63 ML^.UM^M+[1*==9TD 92'=H'SQ+6@'N(#"7HAUQ/KIO5LUCG/\*-?S"&Q;>^8 M4JFD2.*8U(;/U3T.>64P:3-HU@OGG]J4*=_8GV_6/EUU'4-O<5=WR%F(&PAF MOAB+Y2PRAGPAEK^>.;#9<0DS%$%GMW4N# CRX!YXCY1AE"._^K@O'([9S5RB M-VN?.^=.(7N03]-Z;C_"@TM2A$=<@-R_-4_+ABK/S!2P9KYH+/;VY=:"1?V@T14V#BTV RGJ%V'-"T M'DC:[:+X%IX<8B:A9F>!OI]TTP+4CEO*-[]"MH:BFS MQ5FMH74]'VW=X2(XJWJ*3$ZWA/@** M+@0$!FG($FQ?2EN? NW %3 =-;T\HG$VE93Q%'(SYX219:^P8*7/9BU'D"3 M S#[F$^]3.+//@0BBX(L]C>%$2QMF6$F 7C:V6]EFFV/"Z/@QL+("Y",IJ[I M0''1J-17**-@4EX(T:-=378$&>ZUP,@W>=I R27Q,:*%1XR-R-%< 4+\P\36 MIX[C7%J&"0@D3 ^*)O^S&-&)TF6B+L;,+K M]TT3T&QTQ7IAB0:2XUBA$T [/ MKNN=FN(G@$WQ<$G<\P?O7XI@8'8+DA3#N5FN$B_R&+XEL;40Y?,@"/1/0WCU M821%LFALU7D8/[_[1@X7R+:"C%W^7IO*YT4[:IEO9^V=G#51F0RU*U-[N#E!E9^B:G#48CI#B3R1!4TG>0 M*J!L![S@X)2G*OF8"9E;HF5?PZ10Y*Y-!L!-KW/+4&UFYU-FQHB%JCG0DA2L M/AJ%$B^UAA8ZP?'?X',;\:B_#5*.3&5*5-36I\[UO)TO$&VDP,A1!KH@*!Q^ M2,IYPVJ$_-LKH)=/-85F.F/IFODNDY4.QS&QE+[$L7#_N9!C R_&OB ,FIBS?6ZUP_C.+!J>UW[3D#C)F_6 MN&ZKX=!T;3!A^72!1SG_E8KQN)P$-<>WZ:QZVA1!0<;B!65;3J68CSE2:58UDD2)*:Y*%K$,:&44CCD:I'O ]93*6F.]3 MC&O*9UDO3/ :+, 1'AL;^FE83,S"R::8F46@TVEL-DY*FUJ8D5)])J+>[TO- M(W4K^SW@(?8LFBS?,AQ35WX[GYF@ND[/HZ O)=]./Y_%053:L[&U4E@,V[,- M.0L,TP=*/M"0D.6TT*VLDI*;P7YYLEDE?(;:C&23<>/ M UZ#HP .NZ.S=%N-*KYFMVL+.?1S+:JL+ ,Q2X( :P8$527B%8Z58[YQ@@O> MI/8-IZ-KN!]C6+>V[3&77.6^)CZ??3S@F BJ$^,=E!M5(LES2E-54ZD( MR]J?TXFL)A/'5JP6JQ%-Z45.FC> M)BY/R@E;2G%M1$<8-"GN 6)^=<)-?><-[YGD6F.P%^:;[2+G 1_0T+2U5XI( M70N%&PW_,2$N=)5L^D*^23>]KTQ[/>0-Y==ZPF[]P + 7@#[W@; 8!C[PRZ* MHC7C>&R< !,<&V6X*.QA#V.98/N#,2-09]=U)!Z^A&]&BMSQB#!-A,,)#!,91SY[M2RE4\'.Y&91VE$-0@V MN%G01B:842KRFE,ZE.6&VLCH2-SR8*.X)[J.I$05'10DC@0\!2X-E;X5 JNE M\@#Z*J;OLT"DN&M9XG63^D_:&!_36SD4,Z!S\.B3"6U499^F%TW.JX_AG=F@ M[ISEI;;?K;#16NJ4KW2G?.T!^8DJV"%)V1DAP6,+RAG(3/QXPFT=>5S*!X/E MR@1(< /#/&J(1Y(+*^B5*8+1\9A!BA3!; VIK9O@E$Q&"2& /E8F&8,/[8L^ MEI@&F ],M756U8 ZRUM^Y,%_074L1;,([MA:C8);AQ/#W0>,1&FDH'D$?$(% M+:7."GE,AX12[*/4#?)SC<67\6( M7BE1H2 YYYF/I63J]1)4C/N<;U@45)[>#];T:V@%)/E&"1U%:&%I$)Z=J&]ZVC;(JR M^FEHMB_F)!127PU;GTE0-)/50V"R8D$H%,K]C#.O,:#MY1ZJ7/#JAW%@:]$L M66!H3B?Y%+48;9=EG^JA#F;-EA?=GD^F8:&F? &N*$==%VK1[:5,! MC#*'@TE6I%$&.!V-D)O0&0EU$+CT!N:#7QOIIOA?*2>K+RO7(X.(ZSP3HGXT M\+B)J@*_HLI(RPU,] FDI@E+>WIV42EB/<(=-"P MK+%0$$7R\<^#W"7K!2H M+1JQINR9MLV(1^@=E^%,"54S ME9(P*%!F@1A+NY9@H(_(PAIQG#3-#/11YE/BEF;&+P0FF[%3"-]EUXKA/5V/ MDVFHC"VT50G3C?N%\6#%0RJ)'Q/S@]S0?$SU@,7::\N:6+)%K%J2VME7C"@F M0)+O@/8M;E4ZDIGM22CE,_(A;98DEXC'@# MRZ!MONM$=R? W6A*J0;M#4_J_>D-#LBE%@%Y!;L5PB(.3.'X7!O+;@H4]9I& M5:X:=*F:!FI44#6@KXT0U>#5@@PU64&\F[?G)6W[6&MJ%E;\O$WXUO#<]%J8 M%U*:=D&WV27FR)I'X]3$2J';2&J"1'/VO,IPJKNM8/ZY#,A&T(YI1D7E@(H& ME*X<#>GT$'A-=PVB+YJ\>YUU5,HZ:M191T\N9EW!VH=V.=?'BG7+1F2Q%])6W0BI%3SAV2G/2Z3$ MQ"5)\A?T'C=6N99(!;6*S!UM-)$"#%DO MELS&I4B+)"6I'T\Y9=JC2A0/^]IEZPL>!L6B>O";3+<1T&"Z 9FVX\V-<[G;[\M0XVV^MBCFS^W@G &Z1I#ISHYO J$P:7^0K92MP->7P3&-R MNHT#U2'H?4!KXRB;>)#UX_%P4MFV@6G!&F&,BE**;,TC[6!^,8EFNK*VG->L M3^= VG71ZWEZ66UNL4_W&)W36=098632]PJ1@\$3ES*S@ZU[Y7%A##?4Y>?)X*:CPSO%*W:H40XKP"E']N$ MIIP4EDO,IE6JB0OU;?HM-AC+DU51=@$:2&?&5*BU,<+L9)\!4:AUFTY;".$F MK-]'!X*L=%!>)=W9GP5":8.BF">GM0N2)+7GR=GF7BZ<]X5Y@3P3PBQ:#N6M MX7RK>WW*_RC>R=Z!1S"&P6W)$:A9F>;I-G[(Q B5W'4<7AN73 ==723M^W=: M,#=HE7,B[EW]A0EAY-U5W<7?'6[ '1U>\I*%V4Y_A?*QJ3WG?+NG8,!-[S04 M/I*''J=33W7)NRD6-+V]YFC9[#12E$ASDCWN4K=&W^G,[\SJ--7VEJ&+XB!7 M9_DW;6*:#O/E3Q0J!R8H K5)>5^>2O[N0QDK6J*RE#HBY=BPE5U&D)E>=1NIMUUEFDD=$HFHR.5BF7[HQB M&)><;.(YIOVKG*64/^1!2L%K3;A:Z9ARYRQQ2:HBZ>\6,=K=,KH3(?6S 4&*VT M:9@)"YL&85?&%+6QQ/!O>4-1YW0J9,C "AD=N*X7 M:5L>-Z1-$@VNF7JU'@-$)&XX8DZL+0F)RY(*33%+6Z:'J)KN1TB=Y>=+#7MB M"7R,^;;:)9]7+PT&/&'2%JG:/)Z@T/,SJYI9UW4UI;EE C@"ER=K!&LDH1;X M<:KFRL-R0\%4Z+"TB9 +.3_)COH/S[N3E\J%V$SXAA?ZRN96)JBZ"/M;9CV5 MZ$ $0^O$NLB$&.5E@RRFG7> )OY$>:ELS;;9W_"0/T;I"$5",J03$2CH+G6O MAUF0V2<4;07C;?P@8@> EUVC='"3KCQ5L42E39QVT.0 !#.HC5S]9!8 ,RV' M:?N$,()EOK;O,\P\5;9MOX+YX^&0'/"E\P601G1 GA<2I#W3==ENX&>M:G6( M1V=AW+ULDKX#6KGN31OR3#@51@MQ*U%E )EJD5RR'P _,-/4!XDXP0 6OC$8 MTJX-9H5BNH4T_OA]:M47(N*.[$H#FV@2YA E["G7F0-I9GIGNTE2 7:#RKVE[8J\DVI>=()1N*Q;;>!!9N]W=Z:H9:-QL#3#B0+\>Q^6 MA_[O9:7 MNK5DYJ?)7E=MD2_WD]FW :8&7ET@"3VXKEK76B"R:Z M-.M$EY_.$2F>T:>^3);GHU6X?6+DYC-ULZ[-(!ZV2@] MC$'@[%S"@L%*(5PI8-;DV>;O8""!XKR^/@(0="%%0PH-Q$>Z@[-BN-/E9$#N MB5S1T8N[R"EBO; !I 7UN4:A&ZWGS#;'W>1?2.XIA%#M84$&F:7';0&\WOZ? MSE,'*LRRS. M P:,1*B\$'=:U)#ZXV@EG0VW[O53'GH*I(@_U)5O@P&>8&0#U+KR)=?O.G,, MCY*YH50+"YH0-$=$PL=LOK@A]9B+702;ST<+%O M)D@93*2>GB58,\!BII0QLRK*:R1887(76AA%S) )FN6BFXEGU8DZ65!/! 0B M$05NV/N)F8T-R!;S.? @'X&5HR@=LT/TS# %E.=;4+I'4U]'PXJQNV*UUM0Y M5D.F*'*'G$='J8K('OY)I\YM>BL0&&F'U,S-:^L0-(+C$ID$*;Y]WO0ZEC>6 M+HJ*)Y5E9RT!Z4]H.P)8'_>8,20:YR?.TDE&>1,.7%#&[%EN)JFDQ&S6RN+B MLVP5%5;8I;2N^S.%3>L. #IPR4?S,L0ZY<<(PTRZ<;!@6H;AS/[6I,?;8 MV3OJLTTZ/SU0&+C<'8R$GTXAF68$E,=YB-+TD]<;&#Z3O3C*RJOS'H#D1^*9 M'NO92+DB6*EC6+R[V:WI D'?L^]CS2_0Q[ .$4[* MN3Q39:YY\X>L0_O]N3J824_FZR\>'>JG;!K,XU->;(J+O?$!)?^DSG"I,USJ M#)<7V)%L ;G$NA],89_5P54\T1!I^>"+:LVN]R"I\EG+LJ5O1^8'.*>19M,H M1N=+X+Z")M9KT3-=J_+6,:9(*5]97(AKE*J>5#S&YIW420"=07!IT<+-W#/; M@X,:_.4)U$Z2[U,17R!HNY'0Y7XJ;7U MIXA,C#*U&C!DDC7* MH,H8'2C 3LW6@]>+5+JH)IOZ%+/-/V(M8[VLET7Q1,WU4K%N*8Z_G@7G\H(: MF"3Q.%A5H6F'-LV\00HX$;0/[1?WMMT,DMW+Q)U2D4ZWHF<3(I.4RXWR#E]Y MRQ)S;('OIV,;G-=-KD!VLS['CG4Z0ENN6RK57&6D5"BY*CV//;WQV AJ\X/E M(,PWW\IC#E^QU5(YA3:V)\]3SS';KYOG9/F?Z146^@71]@/F 5/>K>ZYJ5-P M>]GAN^6>0GXLI2E,'IGJ71OXL)UDM(&MB\-'G/40LI!Z'S)\+1QW\(U!F M%;V:8Q]X>(:A\\^8)VR'+! 5.E5:Y?VTP,60YB +W3DDL.'2K)>2C=273F'. M/U+PO"CN3>4J/#_7PA30D:N72T<;>"6Y:4O(L:>]Z3=].XZ5E73P3#+53&2] M2$11BN%'F2TW*AVJ,9P,!(]L]TA>J";-T_Z0+ MQDMA_:*P+L1Z?[E;CKW*%(GMBJ1(+ D^9<$T)]5.;\/3OE^I2*L0WI\^&+9X MPO;Z;)3_OO+2/ .('#AF3\(Q2?EY6,+)N/X#>^ISE5RI,=CTT7\E$Z<,M:SM M0C%T2+G[IKVC+3@I[AP6=J^+FN&!(AN)74&DZ1E/EFRAFVN&FY*?-74OW_DM MB.O9-97W?6?/#M3]V^)0F*,'J3=O']S.F7,RIAI9%TFL> [G. YU?*("YCW1@3? -S'MV4>Z1BAW M<8QMD:58%?JVW6%E%I\N.CWSEI(F:&Q139F]N4Y':F0'SO__[+UIZ6D[HJC19K?='<]$L"G)UK0EN46Y]?;[Y8D"*D&45:A"UT(*_O5/GKMD MWBP4*,IMVH2-B!FW2 *UY'+S+N>>TS7+_BJ'P1:<+F6U_.I>14;M<+?JPF_: M?J4HS475#(4 NVA<7'T1+/-;"\!*WIXB,#N,0LO&Y6&V9Y4JDZMN^**5O0GN,9F^*O&+VJPL\ N*L_K;C?GT$GW MW,[4QUE/7M(/2)MORH+: >'5X_-_G#=-3W@9^.E\XOS1$ONQ@!DV"B\3 3#D M/EP!IL><-'I_ MQ%7B!Z@$*)+!PFG_:=\TP)(1-P\1U/K 3]RQIN"RW"; M$X&!X\MB)\+3R";0%L;0A&GA3@E?0=P%(*7?0@;B57LSR*B%5=[R\6VH["-B/O44W(*L.5L>I?,7/M8)K]4 MA)BM6'!-7&0#^6^/O>B=AIR >'Z2"6>X'QWO'6LB$?=;>HZ7)=;)=R(*Q+:V M2'(J:IN]SP2'!+,)#AP=<7HLVIP_*D$178;,B/\ND(EDI9KI-7J'NB.O]6C. M!?JWF)W&3M"#\VDL&RV[+ZQ*1WD5*06;UPN$<2^HZ?,T<,;%,(^WG'OO%@/7 MK@,3GW5(_"8OI!(F#0)R6IL.6^VZQ>]YOJJ:=_$S2A>OWH[MH^D@4 MAX-'=D%#9/5^$+3SW%Z%/ PXMI?*KA4<$BHG[-+(./ &K9 4B+_YP,HTK3P M4RS\TVG_LK0]:\-U($+1([JL!Z5_U:FIDPL'23 1L+)O7_!F<.)*S=M>,18PR!>2"-[$XLQ0]L-[KJF\7$2F\ZYF+B+](.NL,_XWKB@BO.!^?7$4[UEKI[MR MMO;K5Y*2=<)R9]Q?VB$JTC"FT*/IHJB8O;#>G[W8(MI)H;#5AI6CQ? RJVKQ)M8$H%SR8EZ@B5FB:11C.%$DF8]:HU8#6ON%:'SOS,U-:9+R!/4 M? (X2(S3ASZE^*PKR!0RQC8>S<&"!WLE$4&T:G&F>3A#6B:82^K1]%-=<[9> MPI9-%I^? Y,0=1__V[%FR"T9) MUFZ%PK*A!Q//BZ.)XZ3_HX+ M?G 1$.C7*#EI'<>&WTZJ^-:#1:Y[Z0+_NP3IK_F#-C^ABFJ=9$$E":AH_N>] M6__7?SSXXOY?_G3OCNF6QJ8E4] -J29&I;EJOUFON'=.KHVW>$A)>C\/QZD MM)8R(@151L9:!&+E_BA*9==?%6L#EQV-R!=?_B&;??'X#_R!+S[_0V;48JA6 M/_D"5R1'UW-)6,LN1HSU7T/>E2?RB[3'_^#=<'KG"B(632-Y5HY9 48*B47JR750.2>=- M+9M[LV]*=&XH'/Z&;T.8EL*M6;0%J88+*CM0;TI9,?9!<@ LIQM85J1&T$[ M E@N6&K;%FM%Y9.L>)T9VY-7CF )I& M_\_,#48L,%>H"84*SYT(WA+%2,^UI3YC5@Y,:B MO R[2A8I4'VL21NT1K]%9-JX'A_1>30^ MBFH34K6.L12=RSLB8XZ?)D0BKU']E2+M(@X&B2_<6ZA5XUBC<\MKM.51W3]]LY!L8$2L:I/V5^WNS,ZTX!(6E9HF:@F:TF;)A1Q)3 MI3_R3G1@4UA9\ /QK1\4#ANPI>,68[.R52"$)SXR-9S6C$;O@ M&4M>$+#ON7-,I"Q:D,?[:4HCX'[7>3*%F1)_ (L'-]0BA8#$=:M3QN4 M_5AL"FCG-L+G.K;*P! -H[C70KH.;YTJ_T$SIP)- ;DY:B"3XO U4N+!D+*% MP,3Y0VB)_3TI-)9#4YZ.(K%=)]K#D)RC>>A>BSUNV0PR;]ZO%%; Y,+:P81[ M:P.=0+QW!;!4 &,69-$P[;!XP>RFB\YT#1K^53>HZP7V6\&KE=D"()31-DU-6" MJ()LR^R#RV!!=@T<+D%P\1,?4[O"=-+><>?S5[D/8ZJ ]SM.VMI[FAODZ-$/6YC!J"$@B(34NKHF,BO4]_I(@P8D[.O MYRV1T*1T%O,M^_JRU*A3+HH_(N7 'JL0 %";]*)47I<^)2N"&6"_6[JSR3TZ M$K D6)3/CUB4Z\9'FXIBATL6]#')NH\T;*DN.]H*G#8AEJ),.ZB4-@I)$VXX M\HY'53"_$)%71+IW+8,='JG*E'7Q9T#+_+BJR$J[$FY?TFS+<3U4;C=H%[(" MP2.CH93+<-4">[U)("DCE1B5O+@DN[U/OL,PW$H#%EDL;>#EUC>PW2,/UT@K M\M@F)AXP-^A&G@>>^I&$AYZ;Q$3 9KCK$PJIEZ[__UVKWK@YGTF[@F20)>;3 M9C)EUB(+X]A (OUU(K0$EB9(!4.$"R:200A=8"K3PVZ,:"PK01;/3>2PD,[R M_8H:-U_1OY('\ VUBIVQ0B;0K>RQ'=H^?*4<>-(WZ-:;JMDZH1\:=Q%2T#@ M(.T78&A"C^XJL^9,[.R>R*Z%2*@GJ?!(D*?>J1^;),?!3&GJ--KDVBE9!06L M,6Y:46MBA8O9X^S!_2_B"UE'_%'VY8-'INDZ?$CV,SO\'#[*GZ+#S#O0NRU- M<7AVEZ@\AP4)>H'#E!HY30^MQAG^5;LETRAF8C14NR,FC31;E8Q>S,AJ.$"! ML_&^?! (1%T867\^_FM@H6]_1_]>'5%?<&K'+PV,.98410K,$(VV6MN8VZ4/ M(JVGH\8%V'-&1UVLI412CK)JW;NRJA E-D%Z!1?FOE"1PV49EE&AA*.G8&^Y MU5/Z6AON")6\%G?IUSV5:FHW4!ULYUE-UW*PW=)G(?0PR/M0Y2%PQ-HN=O$L M@BC=Z/[\H_@2J4Z]'!!&F8VV85[E+97IKN3DB)KSC^\_^/3=9R=^(PL=#1T5 MF7!.4DU4BG620!(YNTX_H@)L"F=%,3 O_;AB;_I5E$F@Z$_[H8M)%H[^FVJ' M43&L@S]:WDODNNO0HLLA3)>)C=,"N;%_L91;C'TY#"ZH1D(63LIK6/L+:D7O MF\4[9L.4H$9SS#GTUN=<=4AH0)OY#PQ$I61:R-WN+C]E3@KF+&G.)6Y.V5B& MV%)?/O.>2S5J8E$SC&9>8E33[\=42Y9* ='(MVRV,\'GEH%"TS]6%PC:401V M=1?[WS>Y/_#]O9$J/S3K:9K=P2L?98Z25:=IDM':.Z'H60BM&G#5T<(5'JNX M\&CVWW'63!0_"KX4V 7#_IH8?AXSTA482+,<4UF++"X[)!9D:K\*QPUHG6*I 8 MC3>W5GU#3LV_'[; I13(XPXGHH.[N%@_LJ_HJ6[LIV9C/QEO[#>RL>^,,(1? M F;JF, J.=]Y4:,X)3LCN@V(@?Q29YZ#.J&[D%2TJS9=8"^AN#.8O^ 7$Z<> ML:(9=S#82Q:!4R(H FUK 8*>$_\&.Z&X7>(UV5K O?VOZ]TGXN/39&IR6"<5 MO/"T?C=1 H+Z%RLQROQ#-F,"%R#,+YP*:Y84MSI@9GX#J_Q)8&^6N/P,FS Q?7#=4-Y_7I;I ^7)]EB:O=N05^31@,= M]FM%KHOXP2V+#^_L:_BP&W698!5P,B[1ST0DAO[/TJ,J11\>7+JWE8Z2@].A M2D$2(9T0GI"O8HX _ZU,/L8/RZ^16^C/U''"'-N%QMA*>"SCT(! MU;,.7,B:OS/1^LY(KYCF9J,[5@C#JI(;8% 5/T$(J=)><15:CE'Z&'(.E3"4 MZ15H)+SC :4T ?I4;DX5BH:Z[_QSJF=7E.0[L*U-#"^_G7<1ETK\QSM;>(Z9 M[#[GOCEVKPMUH%UF=^VEBR]PB)5BME[ ?S"W5:SWZ/FK\?N:>HI)EH18LXB+ M%($M;'47@@AA/=65HE%QFMC1R=22;H_/]Z3X5_M]7+'UNABPWG6M95+1AQ(; MI4.P#RG@]+N*V*AJ9'VC=XO;GS4%'4X?B[@@B57U(L%4M/ MJFS 3;TEQM]5TQ.[G.(S_:V7O*FIBA:BC:7_#H25R?ZY0B]V63::H_(7&&HG MIUW((,BK*#DKS-L8J>1, -F%H>GBV+!!X;$) A9,CB:.(_O:VJRC->2QG6!' M3OHO]4,W&-:XBR&H,6PBL1I^-V_+.1B0XJZ^XWGD,\3'/45&A[;+W]P0\U%V MVLF[]$[QFCN'Z<,AX_>CP.!H67L_M3KI_,*U$'+:T"S%K;Y 9)8C_1 ^-[7\ M )W_&F8"31(- *4_':=&VD"*E&FZ(&>1M4FXS>#6DA_GJ MB$4%T^S=01;KC'?P"W\)M$49!"V6/JBHA2D8]S+28=VBV0BUF7D"@4\\^$:2F/JC2KG+M*[\Y*:GSA!EG9N\(CEK%[+ZK:RP/4IF!=/&T\N&KH07;K3I8YD MAQ]@'MAA(XX*K\&,,<$AM4SY=+F@+L)=GFX6^]0>S+8>+'Z"Y(_4P/8!V M08!TD4 !C/2]1FAQSG@T8BAY@[4$C["JN"Y>OI_@S9J=EYJ0,E*$-[FTE(E< M[KW5\74QPR Q0&,<],/-7C46^;'((4RK@.&+)NY^?@.E-QBJ.XN\^X5$5 O M7*D3<73 <'A@9S*3A023(LRRFBWX.S/=@5T;?0#8E]0#PN-:7T%X.4 MTS RE\C=\^[(1 *2$.\;Y;4E3Y_LD#:GH-BSTL+UI=1/1QLF,3=Q>T4F76'O M!ETN:6X =Y0L$#CT&EIO0PV,_#(2>I-M; \=.5FXG,_%!H/>5N,J^5)4Z;?< MW<:O'G7I(THE$\/;K$;DRSMI8C% M41RB \0/KC>M&A,$Q2ORD;;)W@C"&72"@(8\6H]/R:)N5OGS3U_^\_RI_^'LQ6?9[/3%T[/9,TY0O%TY?S2VLT^_Q=__]ZW_\U_] MOLN'V3_\V_;>2IZ?SC[][O3UGV=__<=S_JM?VL0^/WNQ>$+S5J&,G?O/?/?J[=/7J >1 M;>;/:*:FR,#EYA]B(=]\<_[__7EV_N:E_]X;YQ/SG]^Y]G;]X\ MQ=.]>7TV.XL,U/Q&;_VP%'X!?LWM0ND7WW[[!%?&(GC;-!50#?R)NQ["GU.' M$YN"0]N;:7.NP;,R4)(H&^6H7_N+K^%[MJ!R I&_HBB[;3C+>#5KA9J';3,Z.90D'DKG3UCG>=,9)O:N5JW?> M5=]0+]_!%2WDHT%FZZ-8*4%ZK?211DK MKZF^V:+*RS6)"#?5);?W%%BZ9?W#@"-!F0D$8Z2]XE7332 .M8._*M>EP)\; M+B?#\2, \KS26@,^VUXJ+-AO$I1->G12^*6(*C1:)*@EE%QR1'OY94-\M0XW MJ*F^T3*RF4]64D;P=\73(;;-U5><,0W0;D.@ L_:IIH05ACK"F>FI;7SCT!9 M#->OFN+P_/@Q>WC)43>S6E=)@ET'T8I.@ITP7[!V?#6L-R?=L([!5"_B$D%\U:'%6PI0OJ/47 M7?N*?ZMZR;#H7$9FKSP\F#X%LRV+;T]E!EXEIF-9<5#R/M3 9VI+ ME;L0Q,-X.&BL_>/?=8OZFK7^#K <(!@&J^2=H!U]J%,59EEWJB#*Y'_X^64A2U+$:NU5^I6 Z MG1D1WC )V4 5#IR;MZHEL9:$3-4F58:(Z3%^XC%5Q:F!&N<"2>L*I2X9;XVNK?JD+.RQW M(YEVY$2[M;E$'KIS26K-[C4Z4PJW1 6>1,Z"-NE0QY]YDH,+KK(,> MB=6 \#Y^)_EGN&LAK^/#N8%Z$#=#B^45PU'W/K+#PNI+)8(I^92](*1N82L. MSO^5,Y^77^S>DG MGP7P3]ZJJE[/_QUZ%YQ ]CC77^75?T_'4A5 M_ZZL_B3!:WAUS$Y0BV\L_*2?]VG$L&'5/FO\\7%1S\X8XA1ARKP]1&;FV=EW M40B6*Z(<3M=-?4)[;>I>GV5BF3[X)&D"^TV+TC7:)&:G<$9?VR]]\OS-Z>M/ M_*6?\J5/$R]X]-FG_%$IA11(#*C48'Z!TC7:8>9^SAOPPZ CK)6VN#["):[4 MP!H;JA5*;JS.@JF5O(LW2-*X./1=681:V/=UB7B%A$LP/#NQY=CT-;&&_9HZ). #?W<^%N6U_I.O>/!J7P>XV7P)_)$\>G/OF?JZNK M>_7EY_?\LOIUE:A0IT#_$/ISO4TJ8#@A-C+AAG(#X,M_?"Y%1&]*E#8V\58Y M;\#H)#L39>=/AUXSDY1D,WU]I"#;9!]2;;I;X#,$L_,E32!M0([V0K7P#"5R2XUX.;2V2Y1"U M%OMXSKZQW//1I_EG^.R#SS\M/M.S\.E[(5F!HP'+O,8!G0>[-%I.(')K6/^Z MY3(H$#MR$G+\#">13FLBXFMJT:&G7#-!Z@&KH"YXG!N9>?I9V<]X-;K9^=,S M1HI,$4?-"G\DBR1*=%\835EHRBW@R/E8R6+DLN_MJ O^ UM!> #B4Q&5FG2' M8%A$)!EQ(UIND V20-#N5^:ZR]N^,_6"]UN.>,C5T,:'A_>&<-@2< MH^-\U53[E6Y">N9TR;ILOV"ENV>U7K]?.Z>I&7Q M?SXIOW1???GY5XO/[W_QY:/'CSZ_/W_TX*M'7W[^\.$7#^;+K_+'__?!5Y_\ M^[E5_.;7*M.^>?I"1N]4G9V]>O3[_+?2!O@WU!:Y$T$IA M?&;L0J04 M=MT27OC0CUJ[VK_5J4U!__6P!P]!O9P'WH2_ Q2E4$.^:-FX 5 M\"_"J.U4U-Y(U8W(2!=H6J&^L>:*6R4HB=@UZPB8%9@LW8XK?G1A@'2X:XP_ M1B3N\CR3MV9<0X#W!13%/1^RA09]?K(KV%7R%K:NIR&AC=_R0UQ9#3N4(=YQ MH]LZF'- (W@_Q@<)I3P[&,^YGTE>%>@,3J,ORM:;]8Z0PW:@]&4#!$PF9]$/ M-/H-8'M9#WZ:VBTC-I[QVKJ# M._Z#&-JX!%!Y]^X$OQ8@WF;S_ Q[]]IU%* 8NROIWNR?S3#K5G23%OSBY$_H M@_;-A:/C,9S.U!E:@!.K(N*/0)E&70H "U!E6Q#YT_HOQ@FSTI%^]HZF9O MJ43)Q^/9*B^!2Z"Y/EN5;NE=:G7J7[%3?YR_6YN_)])<@^"/6H&HOD4,,N,4 M=(*-5])][ZAL_0_^H\=)NK5)$E56+K#0!,V'PA_;.+\%9.<"&WI'>>F^(^=7 MD'G!(58(<^2H'FZ6D3[.VT\UCD3-E.\H88V X)Q]V:-,-0D<.^ZWVU8=E;;2 M@-3#AEHW1;G<9@@\X2!3KA#(.($QLW2)@F=["BJ)0Y)XHF.!2 I,4B+*9N72 MQ+JM8["R_^B:$8'H*!B$R]2'4\304=:Z>HXKX39W, 9_Z:<:DW=52L0.:94X MT4QH*DZTX>=.H>YR[ M6YN[;QN*-K@N-M$RE)YO&FA,)]Y'I0#)7QXG[S:MY @>*"P$"W^.E;W@P(Z@ MU 24^N4!@%*/N^&GQWE6!@)&B<(MY]Z1D"/\"$IL:GH:#,@2IVM@*#+5L6U, M8P$FAE#6QN%HV6[7I2#,GY#+@/FG!L7T2;,\,>$V]_DR02]%S_Y_%\U%70IQ ME15D!&0H(5V1'F>*#8 @D4-0A1\MZQ2Q6+34,RN7T)HNGW*,"(AR3@V+H[== M7C')MKL$;)N$4<"]YHKPP,)X"?V*&U)3'%?43UQ17-"/KLNDOR+SRB1H(E\= MYIPP2(;[F,192!K%;53,*%XQ@*V.IN)V)S8)R[60R"DVSL5A;A!X:-01:72% MX("E=7_,;>@8^9*/LW=KQ9"\K*3C533=3@+Q'UMHEH[:*DNK/ZLO$E#-,3JY MHU/[+7$G4$7+"6&4L)9?:-^&-$ENAJGS%/I^6 4$_6IJ*9"Y.J]Z[9 I\C5D M)XZ3>&N3^'TMX%=QEZ'L42]<505+29Q#)X :;\@#6+&C76,?$>N65!SO;>LCJ,4Y?AB!HCC)-WJ)+78 M(U07M(>9T%!QVV?/TG>0RE[V5SG;TG80#;"6&W&3'AP5TSY.W&TY)VA)-SSX MH0$ZA67OM80[K)''J;I%/[)6?5/O=.0]>&H;8HF6_HR/J30=Y^F62TI2PN4: M/#$=^]A0.UZ8D+ M1>^)N&WD_PGXFBCS,K:W=-%<]U%O9!AZ>-1=ZNJ;=DF8)4XP=%]V\ M'$0C545,4C*?["8*E__B>$C?<>"#87N MS\46?0%@Q"2^2T4(!&D1(R9(:8U UUF[BUR:"7B5*'_7L[L [\ MK=6>2GL?33@!#PKG9N!8D3M^<)[;LWZ>F+U MXQ+YMT-J<:"(()%JW9N26RK9E5"F:+N"I'Z?T-K,>D;U8F)\V^994VOV8B6LL?T#!JN;0)_F(L(MW/AQS M(M1K%D1@*89&KR-;P/3,=UW1_#KBX!LRN-[20],5IQC IWW'.S#,'_G$ORY1 MZZ$Q0%,A";*^K)V]-'@X$A)&ED*4JOWKL1JU\C0.%9^@\!2C*%$H-9>=]V?G M#6/\ZTXX<4B*HG78TMD86B>3DPNK_Q@A(D*R?88 MJ:<2@3YN7RY58WI-XH(0AF J:#_YA6,R/$V>"QN\E&V9=-Y/Y3O':A)QK73( MV/?>J?##X$"2[TC+@47SDF4(IQKVA 2G M4(RQ "P7I3C+QOTA]@FN5@V?Z^A%P NDM.N\I=.@S *+:?>&<8 M GLOR>7Z<+YLQZM0=D/,S8DWHOQ;LORY:&<7O.%SXH6B9@@#:\F$0:J8FJ8Q M]'225>]M(%@,O=S^*B>(+?V$.M.*#B)XQ4';NBHW< ;;SCS3OOPQ?\YW MQMZ9 ?<''H&/.E*I\QYV8!<) CABL62[C1<\9H/GX. .2.D.B&T!PT86GM_N M(7_\\RV]S _G(A^4]D$25>NRHV0>1); M;V*R.$>]=H A_ K'J7^C,S7]\Q,_;%CF2ST[K$T0T\.*YMOAH='JG:M[NK09%8T M5[7WAT1PAC8!_6GK;4'^SCMYL[#H9ATV#"FX,]\ONX='PQH>9Y>&1TJ37&7X M"&V7!$!K%5KUIWB=2!;?@3+JG^OWP7*E"N M*/V0H$RUEF*EDB3[ M#FZIOKI^1>JZ8>[LA>H5^%<&-*OO IORJIPSO=Z:5_IRX,$&OS8HE7?7T7,< M/RIZQ%ZY?(:V00-E9AIK\PBN9 ' INO]$>EG&Q47DFRJ_69(N;R)A^U? YI# M_)XB7A(D7#LN53X)P:',JMPW;"A#N( [LRMBHSQ]+G]CP:+-70]]2MR-8&T. MG('^,6C3(=^W#KS%P2Q<.<5 2$)@OE5HC0IXYT*G$KN6X!3(>ETX;R[FE4 U MT*J.@KR^#1'HA9$D^5=&[13*$UHQ"2ST(VJ_YL! 4,*V0,<.#QC"W$Q4F$?C M$DT,[A532D8V:S18R'L.HU%0-YK]D@KB5EL=%X#SI\'_RMA-Z7.0^OGH>O'. MFPE7DX@M?:3S"Z50O6\%Q"CU/BU5>2]^PFRZ.UR/I GAMMGI K1^_L-H,N"+ MJ<2>"5]-8 VCM\B[WB96+%3'A_7(N\B9$2GK,',\5#M/HT MW*GLF5)#V\#Z*,ZNF"'13 GBZR %2+(O5 WC[6>0W]H*J\L/@WZ]2YS.TL%9 M^;=N,IL3QDQU:>+8D9+%U)@6C6/9YR"MCF-@-!]S.MCI+\NRPYFR]8OZ1+(5 MYV[34_@U>W0_L]SEH5\UK1_/+E+![EE2HQXQ504E=V\P^&9HAI#U);D0O/T,;S\?S B& MV]+)%?R3$A2F!%1 KDL]GO&#R)T54[OWM6%F63(PW\"U:TL9X4F^ MU=5L1*S&"8+ML@V47Y1WG;R5F$I^ R33D;U$IGDU]"=P3_'UYK(5$ MK(6W,(]GLHTC[-OV[)J#X:8;]_>(&7EX_P P(W?J7#I#Q:#QIW,^&\MWW9I@ MUUTZ1Y!SXA?W>\\,QBJ']$/G?1Y19)\[Q]D]TE)%CO_"P3 2ZTOK+0]TRJ4. M&1/[I[!0[XEOUU_CX1=_R&8/O_P#!V'^ISV*6\5 (8 Y:#JDW!YE^.]#^?;] MAP\R\@:U,N$C8%1WR,6*;W(R)^:PT%O(CTR@8&HT1%&P%.T?0^:$FHASN=\@BE)H,(%UR,[3^!A0<+-'EQNU2 M:R1#Q2AFX?'M0M2V&+, )\82#U&[GE3HUS?W<^[,!KU5H;8LZ-!+R;LD:AQ[ M:NE40N2Z 'EZV:([GY%#55MQ@67]16UU76PE_LEW31V$,RIZ?#ZNI&_M]> ]B/O +E$2@0;:+1$G= MD_$DF]>YT=>RD$\0:PAJ>\YHT&O9@>%AIP'D/&Z]K 88*'+DZV'MV@89 V2 MR1L.NM,W1MK.P5:^X66Q8)>K"0'<[:4Q,;N M@XD8^D;.$TL0Q=U"1D:16CRXX8?Z='GS\97U M(9!46<9!9#99GS-NF18IIWP(NP./,WQK)YTQ>U*X$/C2'K>$1,6.\W%;\R&N M1MYUS8(#$PJ_@0X58I%>:JIC<\C@:+BP%)2[HWW\9>RC*7QO6K?T80! O-X6 M3M4%EDV;["::W Y!L&K+Y,5E3NVCEA1N' , _"[$BU1/Z$W;:<<";I!])W#C M,(_!# O(Y5UQ(MV:&N:4 :ZBIA)J? M"EIET XR,0DC)/1SBXHU FDMM>["3ZYZJB:S%RI6.]#+HQ?[RQ@*:G>5"4#M ME"@+FH1Y0M("VK]B+<4$3)AF>.1P->V$OW64;& M_4WY'X3[TXP'Y;),VBJBTT2[L$5?O?*?*=#1U!J Y7WO'8^RTZ^P]@\=/Z%- MP'S!WQ7NA/U>*"(T(E&Z))/H#21:O0B%20V(!( \Y6W$R5=A1DRZ W9+URDD M2F-6($5"22 \0D0[1HB=#MWAE16_L]6F(W0_/$X"TEDW!1Q;3?_1$HU+UQ[" MA(Z"'4>798(V*EL+]J,V668FDX:_UFVJG'?5.M-N49%[S0.LLZP/%JGWH@%> M.2UN-K:'U <=-- EZH$RU/BG'>S"CB^A9_.X,\O.?)#&L-]N!+9!-J_\VDYQ[MR4AM_MGBNI MB#T-S53=_&C1PN/X+78E#.X9>30 &9KLE_ENQ1O=F M9\&+I%XT>*\,3+MH>@MCX0/E/8]YRQ@6(E.X;"IR82M77_0K?VB61>B)\WVYZ3V1:T MMD5J4FI[<(*X1S,5.@KM[B)YDJ(5 9"X)$*49Q3SY=@D&5Q ;H3<92+1WI!\ M-D>S%!)?W,J&B([[Q(Q<+4&$I*>2.PNNF*??$OH&:(^VP2T#M(C\,#BE 9*Z M,R1^''Q RTF@I;T\D9\@_^>?GZ"UP=+:D2-GF-!U.P,4AR?;0S9#Y&L)^8K" M:5,/=1*QR9ZG6,C#=#836B@8>$TB3//:"/I:,J^,G0X=&F)A'6-'0DFG"[S1 M:*=AN5:RT&/]&[%9Z%]KV2 M!*FIHRH9W0 MQ'79 SM9E6@2_V_SNW^!_A!K\%-*A][_R_,GS_]._WSPE\]L M&HQ72@14JF%CD+7)#AM:)6]5RV;H0IM"&#PWPVU8@>("+;ZHUXY3@-DN_8.#N*DC5!V MG!UI#AV7ZY8BT7G%@:,78U@%)HN*>+P(S+FDU%X=KU=__B5+@3A1T'"W@*T( M$%N!TLB*Z.('XH2*(9/V"C\V,DJ12\S<9P0'APFE/(A<7HD@08R.LK50M*(* MO?+3#13OT$IJI /W)^-\^#%:MP$7)$%-E,Z+GK.#A["BLS<7?&^F;PBIUP4 M$=Y*KMG53KKPL8;DP,7*B"^%DP!/CISTCF8DWL<"WL\#JNAD(G1XF'!7 M@32\+AI$'UP*)@?M2OZQ'Q8P?DP_.(V_V4ESA??9_2M=@WZ['[,0.3T:;U\O M<)"I ";'.F/T 4L@)?:/:]J=2AV&=OZ8DJV:*S1#T.'7\0(BQHTK03(-1- ] MIMU[NRK]_I(U,]08(:?L;L(Z=+7:!NZ3@1XNU]@/AA"?E)-^;"'&$:< &(76 MJ+"+;1+/N,MT^7.Z-'G^F6XJ1@);18,K$%)L2X[G@'Q\R7Z(.X_5::(771791?OH"%$%8@F MV+K9]IQ:S1J=>,@G$-]6'5A/^).6<&=Z5A2<^=/"@[OB?B(Z8,=(HBP?\M?! M M%1%S$S:2$D'2FS(L[/51$I//ELUZ90TJ4SVF8AZ9&BG2IKMQH25 MH^\:JDI['5USW+% -)VFPXF:WH=V,0:3E6UQ@J=,CIYP5[*NA\K\H:'EQ>8#=1N?ZZS=#C'J%2H=7=M(T9[W=CH-IZ 0Y M:JP'G4I'##%+";)'I2%Y2G'$N([4(W!3H9>"F1,JKF='8H^4NG2Q*KTWDD;Q MDR_$*RM92LNXBOP;T1%Q?:HF41_++YNRH&2 $BIBF0.BK+F MEAXUT@$5TCL8?';.;$B$6_HW-\PYW@TKB-^7"_!=MH-8DS72+?PA87D0E/)H MAZX63U8,$#LG(<0%:,>9HM=JL:WR'WF1$-B<2(MCJRN&6BDA>II<.L^H3N=7 MR8*" LKX-'U4;^O6SKAE/+.)F&-XGJ-6\^,MW(VLK2T]E J/46D M9J_*.XV4_2*? M2-_!'Y]0AY!&:[S3+Z/4<50.%B^3(NJ#\J1D' F"PEE9^B:ZQ')7+B[T/?="/04C%MM,) MYD!-X4^I(A[? 0_]UU:Z!,C MLFSS"XGVB!V%% %<.E1J]\/+H4IO76 MM,+"+IJ*ZA@VXB:5O5!HE904;J0,*'[[M7Y>M?MHWG-)>_XT*=O3 93N);#/8 MKX4*R87S<^QLTQNR(0A[*IS)* MG<"=!->8@>UU8E-99U\C2WOJ*!=KFO GSGC %K5&;[_B'9!%H.6A'VQ19H=* M-LTN29!!G^IVQ,EMV26JZ@81"_MRH 4AUX'9Z7^[ ,5O96>8_$B ML7/$%Y$ .^E!N,SX-6J:_.$(5PHX^:1([#TVW8NSI8/'&J6L^4C(BQ\&EEKL ME#HW9.>2#)AD\OS5AUH$_>H=Z-,]?JPI'K4QJ6$:+']^_P_9[/%C(4WT_QBQ MG\VN\BZ Z0/_6;4SFO=F$R,,@>A.CT.;1VU)RH_U#<'>5(MP>->?;*J!UURO M]=(0-9LJG4W %@1TPPM)QH,RB?Z%UO/R8N N7OC(Q!YH[]+OG?NMHWD[.D)&^]$AU0?4> F==4(>LM2!OE WJA3 M'JB[*5=JLQ>Q;0I" H4??*9EWS<[.Q TL^=_(RF%YREQ?. #WY!^A:9?E5!> M*.=FS15#!H;8J7L\'_[GHXZ"_>3R!W=(((\BF<7.:"4P9"XM>G5@?M"\75YQ MC6GE$"($?$-/J*S>;5B^[S*O!@6RF]JA &;9)'+ BUW>I-68*>&6:^"^P99( MM641F>HC -5F"ZZ8E<"%\J/<^8^)PE^^W4NFT(A9&X,(?$EH_NEGZM2J] U!04FG2)H[S(>$,/DAC>25EN>+ZRD&$ M

!H=J&QB8]![T))K+5V%Q+Q[$XAYY]]&C0/=@#0:93%"GY\*ZTWP);@ALY MFEJY0\E5:J+^!N_-'94-(L22 ]<@LT/3Z#6/?9!6*TX.-PT8_EO-]:+OD7PA MB;[GG"D&(CU,@^F):/V;WW9N>8)OES-]OE M:IWR6">.FAUQ(W2"PX_GJ=#BXO->-CZ+33JD#:,\"JU9U%@N M.%3BZ7?N'=/+$TB (-P16:)VQ)!8A-@CZTGR0>,G"E7S -? M&;D"H\$++8QAX!+\0[^*&VL90%7B[Q-UMR.@,D!G3+PU,D:IV@7&8(6$73HR M8="EOA*2>FN.\V6*XT-;HV7)V01>*?(E[77K!07[M"6&2BPZ"BA&EV/Y.P.; M-"8Y:1B\N2$[O',+_ICT=4C"53@43YKEB8%YKIUW&*C)Q7#>(ADI$E(TO5$0 M4.&!L>%I[B+65-)C37UQ@A,EZ6^J%TT+Z*E!&([1=[G!_C3L3K0=ZR2:'C$\ M'_473+18'9RY_/D3RBK8,6)9-6^0B6#,;@J[E3ULC[/K+4MM["7/3=$WM M3B)6E$F(>\_1NYQ;@H6R*$.Y#,LZF' &R30!C6NB[!$>&OXT*7PW"2Z6<:&N M&"]I154CNFM#U8!1:VQL.QD805(2PMIH1\IJ+S1KGK*="OXDR'8 ]H."!O7D MD"9#WBDM:LZ&G;/7BHRCXX90JQF%ZF%W!&E>S1+AK]!L9]Y_ 6)S/Q -<'A2 M"1KB*_$^Y20Y=6!N)2^N'7H^X->QX,^"%$F"#!XJ]'-1ZYE4"V)1@@97R@NF M>9-"H1+IDB["VP6W&FS/)72>3#1#\1[+]54B@U&P-KS:G'NS(T@F 3 _KC?%6I;6/_$^W80UABP8C=TGH M*"*6_K?=9D\-)30:H00Y-2!$4MR&<)[Q*/*>K;_(IHK. M/34^:X_[UZ>GWX4>]W!L<6E!Q4?)3NV?TSQT7!2BTI>FB^+3JV^__UJ)U\J- M.#CF_"NA\L&U4*J;(&(J$[BG 2@I(YP]8 KO?E1-IP553G]Q?P)=C]M/XB5' M3"97YL &_"N>O8&3#AO;WB0GY**,\\N]5>87'V< M"VG>,7,OF>"C4M'M$DMO-I5 "CXBE#%;G%.1NY%-8YK@L]2G"C$\KT_QKHY$ MQK*11/9^E'/6-D;IT^+))5K,4DU7ISR38S)J;N*S::/CI-[:I-*) MQ"H>34'-96:N3,JID:;7'O4N@@+( 7:D#K_=R8DR;WK$+Z2K=W36LPL"HA>R MF+44&[1/NXF= M0SPB+AV*3+S\;H+#CM(I+159^@]<9O9A4D3SA$=/]M8,[JC$X'V26B2.8I6$ ML0J&D5L8$_SG@8PU)%&<=9/BC 2)WL80@0,1O>HUC^[-+S2A #HO! MO\6!KYTD>]QET[O8J! ;9-F(EC55W@TO=A#9SM)NY.0O$390-_4)X 07CF'( M+&M4NF/\\E%V3/M5: !"$;:4" -T(E@K;7.E\OQU=Y,"+(^8*=,N\I*.+X_.;R5VRH1\X=3)42VTOLD>*-+W^X)H-"+Y_E,*$3. \(3)D5/,.$6HZ_)PX MS>?$<(5GCFSJXS&A!1%2J]+Q7$X\EZGCM*F6;,(W3[*/^7JD'33U MZNPQ87?NR-ENHR)D%V_7R?&X\VS*;1KE;HO&,?T# TH)G9_H@@G3XG+H!*"/ M-F Q)1_69OQ=(B4?'Y&2'\DAY2Z89!;DPGQ>EO4EBJ<7MN%;S^&T6(8ZJZD\ M4W5:^H$B;L#H*R0J18;4$E9P7:L\ZZCA %VN,"APD/SI[GK@B;VSD5>])MN% M]?80;6_4S$F9&>&G!.)&L:HILS IM.;UGI$JZQ^&EF2V$WYCZ42/A#35Q\W_ MV&VI55[%VT'ND&V[<"A&AP,B!5%J4#CAS.O^,!07L6P&!,K:_UBHDSR'!Y.2 M;A-*,K9V62X@2V6N19[0:OLV^":%<^N 0)QP3?Q[7/]83%C$^K\5\5)JCZ8! M-N8 Y/L_"A5DJM]! T.G[U+TF8T;3.1]+9-4DH(;(ST650XL! $\F.^HRJ^Z MH32*04N(&S/\BMN?,9_0IVN"@@:E'>=#KR@ -&FAQ2^P0X#7VH)V1VS7:$33 MCR[I3&7_FW'08..0 Q3O=/[T+"'\$YXFB*D/-76QTF/P4FP'XO*(C-XW,PBZ MRAMF^Y@M6O($JMEEV50?B7FY0^8A!-U^,/PZJHE$ .@L%+JZA#1 *=EY&&G! M8BT9-&Q'W?<7G,\O:S] DF&.@M )?CB0E4_<'/X'9@BT]-70A6"6;3ZU4=O^ M3C7VHHZ][YY2*2?>@L"7#;Y6YW?&SH*^&ZO0L8K/SY A^[#FD M@!CZ*$*0,8-NZ[01IV[HN.,+:JRJNTZWDN@7Q&GJR5WK^I/ U,V&EAJ,YLV"'O- '&(3 6Q.\)Z\C2!)6/BL6C+2[]P MS&1,/B=R#R #+/Q(@\6;%HT\ 5]M)#^44K]JS_<@1TP KNT^57;=FE*)&5TI MRF2-,W*T,@4:.UVK'VM4S/B%/-/4[A'#0Z)<-#B4^F$,VZ9L$T!^ M^)8T!:K9E#!\YZ(YU!-9T2771A;!GLI,'YRYHJQ#S.0%$3'I)/ _;DV:,5\Z MOV8E6C^FMVUZ^S@:X7%"8NHX)N%QN.1Q')!C^7YZ- [7,WNU.APJ>,L)KX0K65VDA7%)#R8$;!B[S%J0KD36)0G]^ MA;G_2CY$BJ^Y"PRL]-T@-1SI]T@=+NJFR..(\V=F@%3 K71YT&((=#(QUS9= MOS'2I:0$I\ "Z=$[_2CO],AJ^-MC-7R5<+!H?Z@1#/#'9K^B@_HE&/[FA!'R#M'% M:O8B;Z5%=.X2HE\EP]S5H UNVZJIRH)$EV"C$\VOA'*569P=L5(@ZZ80F&79 M=GR8+1OHIP*00N2)ZA)8F49Y1!:=)QB&)=JP4@9Z^0XTQ,H"57K/ZYK+*PB= MV,D([11(J^F.)] V.PDT7&,J8"2N6)":DDR"CM>K\.0E('>#JS\],@ M;QG%2"U$2.19N?C0.V))$!U7/RIPI7 ]93A(4U(W_?+1;!T/_.L/?,N;F4B[ M":3G((V[L(NJRGW&8@FMM[)3"O=V,W$#)U>*2R*?XI@K5BPGMQN%, 2,$Q(J MBN208V]S(IWU,6??V9NMA]@2.KV# Z6[Q#5S'SBS:+L/&S))9^#L)+(-\B'?-24(\1SRD4K>:&>B#6 MH<9"*%1@'9J6^#[QN.NRBX]E91/,K>RPCZHA$2X::SRX!T2NZWSP+]6RZE)$ MEDP/;5(S(MT1.UI1@Z3FQGLZ+,F>WIL]BT98ZK[$H3A-B*M,R+F\6D%\%!SB0G(Z:8^3" MVHN9L,ZD<(?=XK/B[7[[*(>I%7#;,ZUP]]BO0EE#O:OPCUF8063*#I^BV78U MZUT-&Y A!J3AY%W/Q]?'@5>X!:[/VB%!=V:)$)"PA*8;'K>[:/.P!/_]9\IB MBA<97SJ$R=W0OOY\[D>3./@B#%'/=9 U$@7&SF4YTUQ>$,")L24M*4@#V)-$HD M72C-E<+?C))N55"9693/9JN\XT*AQ@T9T&1:L40'(R[1S#K.9P9;)20OK/)% M?9C2!. /A2J&[H5;JN",>E7H"G#MQ38R^9-'*:<"!W*AJ91JU&M1KI24G"9\ M#6VB&LVU>M3C^Y:0CES"C=?MJ3KM'(/,W(IGV?8T."J2T*([) M>[\(VX9T[T0M]9A9G6@.3?/ M 7E@:D@X*Y%(!!G$Z/GQ3CIF.DP^ JPPH8DF4^CCRD<3N*C(TQ#])ZI1=-0. MG_:*( %O2@A:0!ZS#/O9\#?[UU NWE7*QAEOEJ7A>UQH"A9+,FB!3\W*6@<) MV 3?\9O(E#WCC)!(>'#*C!D8>P)1ALI^2*(NVYRE#;7/)<) K5A#=(\K;C;V M+^0]YY!CT0KUE9L#DAG^*Z32D$W+O(2'U7:83U3K=W]H&'S'2U70X5HI"HQAM2MGX\RJHWV;-EX)@; MI6N;M&%I].1!".M2A<"P?F%B_*=7_QJ\1YT!S.'_NZ%PAK/'WL^GQF'H-LKR ME@?PTR?+,Q-)I$"WR0D;^DS#-GD?2NV3"*? MB+O]:7$REX%^\)Y^N=S>&3?[+2].*$%76TDZT^JI=^K0HS42<\<\K;)F<";J M'K S(!N$UO!UU0$K^ / ':^O?< M+6#EJ^#U94&@S%-TR@](MY X":8CN%W;,WO:I+D6_]NYX "6F =H1X6ZO'%@4 ][K)7=);8 NO&V--A?-":A3]>MH9ET^PF.70/T4*O M_8PEFQ;YZ1BL)?##"&*T-8M)Y!T#R**2)*4= O=0O_(S$1OCFC6J)'$^_/0D M>+R<_( L?G#E[2I)\X7?7)8MR.L0)?J5046?15,0O<-%SM+1-@2RNF_1S0V> M 'D?[ W'^"ZA) M"Q!,/JN^E4:T49_Z8 .. O 3!$G-.)IA%@Q$*PBV=NW@ZX&T3$HZ)INBOPQ>?IR7:N M?SME_D$B&_6O-_OD?%6ZJNAFWV\^\2>J$^C'Z=JO/[!,R&B+ ULW 0,16RCQ M>7YD(2KLTIF!N\#O4/H+6BY$A"X:XXV.XO2^S+E ^S3YO3\-5G2F"IV]21%B M7#+.!BZ&*J?V/W8'KU"_@@N:\P'!P MT7K2S!9ENQC6[#7MCAG;Z 2>FKI&#"'> TJ->]J.4>M=])9^.W2BAN"W# 3O M:+C_.ZV[9DQ)A.@BS640MK=2WXUS&\9E/1U%8^)1!@(4:8RIB_W#KZ9;:1UEG:PIDU;/G7.Q58JV2QK$8!#IW73%=V[G4GH%#LK"C9.D-A.G26E34T7T M[9O%4I'D+T*W0L$YFRZ7BKA]MYHMJ^:J,]!UYC&^P#SWXUSN7MKL<#O"&S"H MWM7QP462.,:Z]&>:$LC*T)3(F#!GE=0;7-!BYEAP+?AYWH1Y-XII9(N86[3Y MIBPJU#Z:ZI+7\JQ#^J[K52^7#9[?F?@S@>R _/8VO Z%!C50]^X 0]@U;AU[ M3X5_%YZE/Q-5+3[UR?^\+CM_A+Q&7,#[!Y'/<__WN?_9U@T/IG[^BG"ISJ\[ MYMVFLY "P[_F]3NL(SE]L]G+>Z?W;)TEZOLA;^(_0W4+ !AJ9K9&/N-82 V/ M0W;J.![A<2A3MT/17C+T-\VF,W]K0LN+$W&#>ZE*4VLX:$=A1*S/1!;'N8NX M&F]?_0H^N/AJR \ MH5]81\'16U-88UY3;0.CZ"D>B$?QPML:=N!$>]0[7'T'+2^\RU]Z#@MMS4M'1"<.O[O MRIHE9/,.4K/'4?\%31%3&R(5UOJ;Y1*:,-?V$NH.>7]47[[=6:'5X3R-!&R\_D8.B+H+ M?)09BT1,K-Z8?.010B$O0X8KDA#TYQOGWP2@-?Y>1+O775_VS&*0E*FH)MZ$/2XW1P]N>OT8ZPQ9B.>4FV,QWCT,9'8REHI:A1L3O*Y $G MOPXL6M)ZL7>\15KLFCDFD&(4XK@DD!7!NHA.8PWR+S&:1!Z]IGH[:YRL7>PW M-1S9*5#,P@+IM]%M0+3)3ZW]*$DU50&4+0N]X@K4YL7/2I _/Y)/W()HP3F1 M\NA^!H3N(\&-%;/_?/#5Y_>^1 ]Y11C.Z(5>&W.(#$80A^6 ,&3=TDGJKO*- M(@QJP,:<"+I)'L@_I1\*1AS@G3FU(7,A%PJG=*(P22%E2X_9J#9Z>N]+4DI% M*&:T/XU2LU$EW'UD\KZUCL=P13V"]B\90\G"%W%V9/2^RP$]\>N2-(E=$A?' ME6V"_GE*>,L3(MHL;NW/W,N/T(H^#"S=:F!-#_)LIT5+VA]Y32HOX^AYI'MLO7$L M4TG^M+R- 93?5\ MD\H.7SA(!E%OO0^%.H@>W+/[J@L&.=2H:G3E<*:!_]W2WC3+,?HQPI4A[]A, M-:$2;P&>/.H7\P[(0XY4Q#W-[Y96'#RO\VK;$:$U$;#D&)UC?NK68F9S.!H% M:&YP6()GK&2%=;.M08964*F!)E17MX&!Q27>D'Z:B(:!&6)]+(3>]EQNAK8; MW(@W<,HLES68_(E4@5QN N^K EP]*[S["IA_^MWC[-W>[#&'O;1GTVF1G!]A M6^D$8K9C_4!C@6*6BIHO,V[^UK\R$8!WO;,/;>_C9/^R9E>$&W!$U@X^&IK* MI&[$O)C+_+)IC2TE XQJBH0Z(4E6AC!'(Q ]LC?.4VIU&&NS"^C&Y8I;'+.=HG M7Y;3 #+W.N$<+V%.(T^I55*#7NW'Z-#?E;CG51WR3+.'#Y%B>O"G+':!NYH9 M%?&+-_G[V=D@+?[_V\P['X_TLT]ITN__!5^DC[QV&%'Z[8._?*;'6\K[Y$>N M[%SLJI[U_HOHQ9_-M]-M(T3)'.H03;MI)'U#B3E\G7ZF4.71YW_ E#U\\(>, M$2'ZO0)YIKZ,W28A<2,$_5DD>Z/0F/C/(&Y+C9O^)MPE*QTPZ+GACZ$\TZO> M$#[7X CWURGBGT &G;&@3$QQ"]C7#_L% $/45 J- W@O; MSBR_PDZ/42XZ8DFO6'FMM7-8NF:IJB:,P^65.%'>Z=(FA2W(_3>NGX"2L9"+.KH54 VQ<2LUU@;2$ MN3QA8=0R&@IO>"%\3F7J#N^+FV0+ MEQ,&XP9)P]V,(99YB?GA0)G,X18?*6N118$:EQV4O3],%DFA9L-Q$ ME6*XJS*.I%N'S>3D)1)1>PQ(?)6@I^3MXV#?(9!$3J<\4QDU8OXE<8(J>9_ M+[R>ES5SM5BG)(: TY8B"PJF66HK5'Y<==/$8NB?<.V8_B.N. D>B;YC@=7# M@Q\X^,M8T+L(7:6)H67[Y)(3NSLF^&X1AVV7!!'N4%EMM+X2ZI*4+S*A-!+> ME6/<\#JBIG4XV3<'AB3 M:IF(?M;@40>T+[8=/V16Y>::R?A=8OJ^/ !,WW%K_!3^AMC<1KZ\ M)J;&ASBT(!(Z0@XL'/)3-7^Y&$0+X3)ES#FBS&]Q]E@1AL8_0BY(]:1SF[QE M87/##WEP28 D*-7B! 6G$8]$75%)9)>W,0IWQ2A)8@I>FA;?C:)W(40VGT4P MRRVT\2AXA3S>K,LOM:TB %-(M<.'+Z8G3=/T2G$?[FB+<(L5)&(*)?*D)S&^ M.+3^9GXWKIVINB%S*MHFT[E3CI^'(Q'1[7I^"&LMC,BT(A8ECOM$]I=2&:NF M*JCEF%*[H"?V/WDW!/4='/S^8#UZA[<6YB+K1W4,^(6HE&H$% D<'0M+C M1-PBA5?429JI099+_UP@M.F+/H.'QA] >W4.:FKC4Z,XZS>6O7: MV\.UVU<8BX \VW 'S52C@ERVA'/N'==*X3-BNL&+ M/IOG7\P]<5QIF^/1<>;_+8$9MQTT:!0$ (!3 MN9*['5Q.^E7H)027%J//9,-PLZ-_V]H'O2TDNGA3 8&;C2HJ62H5BR-W!5T: MAK&.F/)D;R+>U.3R&#=FC$?*8,!5L'JW@R)T&14 M?6?LG6'C'WUWI FY:^ZD)W3G&N$>'$50/D8[]2@+.5EN_NH MRLV'06?PFE(:?=-N9V?H[B9^Q3L@??219PB)B!F=/(U-&N'4@,"C93L$20:, M+]"W R>&O2=]U8EUH3&)5 9I=DBS0%:6;RA*EFN[+)LJ !43*L;)RXM!405G M2C]WHW>AB^\P, 8IOBR\[(PI3P08Z>W-TI6L3[.4_IV,,;ZBS6@4R(#/%\ _ MXV?S'M#@CO@;_8:G6'MR? U^6&A.J)./VX7D?:F-Z.!.\;<3ZT:7@^6=I0:? M9PX))7^$8^A0C&@6=*##YY-.F,D%P&8:">0FY(IE E.,I"@+FW/$S]7$C*1L M!-.KOW!RR)T (DW C@JUW\[??JB3JK*\5T)Y\CH\?^B.>G;Z.G9$43-5._3H MVO:3<>&/;GG;4YSI9RB&GRX6("C"O<]!ZY.W11>N=G9ZGE[M7.3'_7=EJ9]J M'UMHL7H"/$._%J[1)_X5Z\ZH,II!S[@=#BGBCD5^A']^J-S.#(W<%QU.+IB; M,>5+F G9F671,B17@3ZQP9NPJGI:YA ]0[KARN65++PN7[K>AUI]_AXE?!U MI?7IRY-EZXU%$(7<^Y[FR2Q-46 <(H]G'Y'K]D@J$\4*E9<0SD0F M8GL7N7'@,":_V[^*X2>^-_O:' 0H 52P,<+?L(I-*(S@76JP);,7$V3N#4J$A6.8Z-+[M[2;6@3=XF:AQDM8PO0+IIL)PH<4!^J=R;).U2V8I@/)2 M0)[."F5NT?1"_:;@.NM1S?2AI-^C\?GOS;[QWVU:QH=%_4ZD@V+%)95AU"C^E+\4,CB(1 W^ K"E<[?*JZ56JJV3/_13<[J_)R+6>YY0U2PX>OZP]+Y_RHU_4_TBFD?=R@XR7V$U"]3%]Z^)S&B>>^8 M2B,?Z2W3' I9/F:Q&XB!"AXJPI%I[YP%A:VH,L4-\;4"I=0X-G&EA-CU."CA<=3ED^*-^D#D$)%KY%"L M64@I9'&8+1TO=F/E-"B?#!W'B8CK VRXQ4WM=@HXXCGPMT,LGY1L;/Q3NPMI M?A*2VU&&@I\I.G*D06U29I,4=6HGDF[0AT,^30>'+A+TI'X8VK(K5)G++Q?R([=!&-Q07DB&LI0:*0%T2.O; MBGZ$Y1FHQ/N&5CQ%^A2YEPC9)"8$:2:KH2^%A4_&-39QA[(A58DWC1\,SH'4 MQ5021I351F6/.+ W3*GY]1R7M@GT_;,L#&@_F>4Q\E9H/IG72C=RA(.OAC5B MK+9%8<>/=-F!#K2C@(MR!B9FQN4CFU0M9$@T4XNR70SK2R93 6DQ(WG\8BM\ M+(\AFCMA$UD*B+0P^FG$8*]I#DUD$&H&"0P7,X3A.2AG(1O2T,TLWE64QVR- M*5]0/FWM7U_J"VFJD18ZF2B>W#WVXOH=P%RXW,6V8XW2,V9)2KE<>Y! .PNU MHI!=7U0N;R5[2[O(1-.DV^2E),!NE:7;QMF&CD8-:&;CUPEZ.KWY M+1Z2=R;6/8O89NT]LE@&RGS9AEQD?P;_TW9?HM6/X46;KW73%*5?GR"SHRN% MGV0"F&YN+?4M2P?>C9)",W_S.AR4*1_\H98&SV$MM%:JKPU3MF?0+"6=P:1? M5SELVNL+AQO&0DNF<6(%9*/YC^4RIDOD)KF!'V\S;[:>D[I MV/>AQNTMBKUW]IEOT<,T:/[OWL,T4<>.%)]F(\0SY%PD,YK)-$HVM+RON 0O?"GBO3GKGT"PB] M\E@V;#6@!H6O1)%3:X]91&X0:R96?@>R:"@4.%T$PN!49RZNW@[A7(P^.7*S MD;*I]?:KLBU.:"W;\C.G5?SON !-*3V_ZFADR_J'H=VRIP?U G5>U7[0PC1X MG%>#$@T/>-"KIGVGWF\. +LXBQ6S)JLP80$4(ILWPA&U^@'&I$)>D M[='&FS;+!;S<-$HA#QI[ 0+G.=.[LMU.I>5_&])<;]TX"Q:&1188Q8FT":0! M5B/#)!/)!X3RQM!WT&W"^DC489!P;J[\FL7Q)C@FG2!*^70+R9?@233@L4HN M >N1N 5/ B%&Z'5N83B__F?^F4(H# MZ?!U)6R0W%5"PR\Q$*"(-!QKHC@/S32"F^*$)[/$(QT8AU?;R;VS$.670_06 MGBL\E!E#3%L?(L_EJ"H0RQ 3"S^TH*1;X /LS =G)UZ-4GBA0:HA5ZP,10:Z:F MF\@4$UT*FZ:.T-N.Q5U%^590F5DR<\ +S@V%-\^7'YP3%JP1)XF7 4$Y;[QF M0OUD)&F4O,VT%-)5B&^D-\EX#E-K#38BI?'Q9T'!_X-H'S!$X5QCJ/#YF, M@X\32I'-U=W<*+8L:8&CU+^@3?DZAV>SGB^U(.%C:U4Q]8>JGB 8$.(:2>MK M23]BP#.;XFGB-E^Y&+L9I\ '4WY]MNK,CFHR]^X$2.)03*!WN9B&;W(F$=Y( MA\*<5.BDJI^VE0(1W9>0LWZU;TG0'I&#Q 9,T^L!@@<+>%*DAQ(AQ9DE"]RI MVO "BJ$&];"P5=;4]*AI*+V[GFMB*JQ'B=^QRT=TEK;.(9=TQ6Y[3%B[5:D& MDL(SMB14'D+4Y]CB^B&AO(3=5B37*D-HY<9D@ZGY&"@:/O8>\UZN5G:@K M!^%T I#'9]SNW>TVH@W!X$BFYX86X6"LZS7E;$3-[9X6S2DHZJCS_=XA6JA1 M4,AZ9?O'P:91GB>AUILVA[^$)7/:KCO3O]?-/OWD^9O3UY]\ELV>\J5/TR@Q M_>Q3_BBM\Q8K.^1@9OE%C@XN[T;,_8@VA)<8_$8M8SP4W15YC:@/'8N*^E9^+XNX5J<(WL6^R,F221D]T>!P[BX]F=KTBI; MS&1=FXR*TT#9J\R (;(4#>'?8K>91[L]CM4Z6ZU[\+NOUOU<'?^PLF?-VA\> M?M\TBW<'>4R^^D-@5N9URG)>%(XR$17S9!=*Q$F9B&=NW@[>&_JO_WCP MQ?V_//@"6I\/'X^ (W@G?A/*?Y)W#.5-KL4DN<,PRT0F/_0+P?Q$A9#8>(E( MO5/0B2X'?W8+B(_;!IL^8H8,J;<],.)U(KAD[?SRQ<X*^QE3*NU&4T_B-W.J\5\=>E/\Y)0Q EPJ/(D-*Y%T2*E"H%0O\8"+722K9:4$2-+A0U8 M ;2!Q,@^^.'YSM^AB[8++?T#)?1;M+D7S6*(14O,\1-_&%S!N_R:H3X_/_7)UIC8E$W^^II:G01)'TQI\HN!?\'Y@XT18TOF-3\E/ M.D68A>^] %CY8]R-C7. >AP<68J 92;STX4.@[1HD*5(=8X?+(A1V 2H_8*: M']!'/PHL=K8#'D[<$SZ>_&6V9%WI)05FL.60!:@";:)7XOKBDH:E;M"XP1JC M!<)J_+UN;-^P/P4*R/MPF#8]1;;"1@X117-2AUTBHY)O"8M$Q!HM_9.2P-0? MP!+2@AT5)N:VJ01$']:WV0N9IGM,^&MVDP1_'S1C\0P5L)%1OH4ZJ4R:@(^2 M&6&&$!SDZPV=X+*IF4I:3C6_8P8M'=%W9?T3QD=GMMFPDHNNW$@:-S7.C>0E M]RSA4+E:Y!L<#69-JP3,I/VYX8@EA#%R(U/-QVNIEFYR)R6 )LJGQ$Z0VX3K0\-/+4B$%F(_9/T+XYV,-=%,_5 MVG63[O%F:/'G7K2&YU?7,#RL8_Q,'OXU>?9%_ MK.>3'L)/V#@?N-T'-M:.9\1/=^K/[HQR"/)L9/V+Y)'R/8.:C*D4QI>MPV[L MFBKXCYMA[HV,[DJJM:@=R5)6P[3U D^,M'%5DF\@JV/PT_W@\6.<+>NANLC[ M@'>;G3\],\0QY[%D%2# CQY9"+!.T#*D:"(L@:-.&1-R!/:]$2,YV4))J =& M*_]8IA="GE#&8#( N8GEDB<^N./C;4"%(77"0CD;DIN'SUA+)5K^0(V2A0HA MQ8_(DMBSAY15J<'V=53J"IY"05P\G=]6] 09GS)-C3Y,\2YLO&(9= ')0%_+ MQ-%4=BKTE\R7KID->E5IZ1Z?_/MJBOC-KU)A^.1_GK]Y^F+VX*]B W?_^_W+UT_/7WW[CZ=/9N=O3I\] MFYV]>O'BZW_UYR_" 8Y6,=+JG#/=Q?A[OY7GCPQ9^^^N1.EN_N_ 8\ MV[L!S_[YUZ>OO1/V_>OG;_YY\TVWYX5YK?TP='VYW-Z9,3C;SN&V"8@1IM3WPC"@%?/Q Z8.2G6N7+71;%1FWLRA,8*Z]$W;(;U?4UT&;8H%4]?@$71* M_1!=#A62;K';M39X7/3=%10I4_\W(,TL0.&_HOR]H:]N/O0!#$?99\=#&]A5 M#%>.=V+ )$O_IO0;XP!\_%-V#6>B>9:HD:*A=GRA R'Y30UY_;8BL@%[1?]7 M"%Q/-]';'C1@>BP=$7N!N^N*%B+ELP-\.4^0<#L+$-TJ4C4 O5'7LWLG&+UT M0Q%]$3*PTK"7F=T%&FAE3M5IC'U@%)'&IZ E>7!NS6E'99_@X":;0\:3-H?H M&X#02)H?R(I<9XIH>P+,Y=_E(FPUWNN\7/;OU$13;K1)[LU>80G,2_]J[ATB M>13\N3Q CS.]Q_&_5*!.5T_Z6;^W"R%D985GF#LD!"2'32_]+V1AHDE>-_XC MJ;&3W+=2J,@"&UNQT0!%HR8"-P:9'YB1I,?V8F#RZW/]!%DE^38V5K0=, K* MM.VC[C:OWW%^AAJ5"4":/B6W?K7:QSU:]\#V3EZ:]K3C'@87>O/H/4W]P.@6 M46U3BR^2*Q;:64[6<+=F>9DO-)5F5?P5VUGL);APM1BZV2F\>RF'?_50'X0X_' MUM!(+X4/Q+(*)JWRAX%_I,.#LJ)6J;N=O Q+)LZU+YQ(?9\OWG62'> U5KE< M>OPC];%NF\I'!EI75YEO!M]'P;6X&$%8153_ Y3"N7-^V7,1/DP->1:%3"0? MN++Z P_ZRC^0(1M/6?_D,3)]6[I13&>@%DY8"KL:T(C97(E!&+L,T\:-'F:G M(9:K@]BFQJVJRGI1 M'3DT,YN^!^F3&ZRB=?W&06$(!!6(!T(#?'C9+(;8(/A7PBO$^(WYPQ"X\E\( M'^$$!ICS.HK1Y-B)! +&MA<&-BZM<=YSY1=4G@TXB_%-_!'G4 \<-@RTX59(5Y>-E1], M:)'\R8<+TBR%%HR,P;HUC12I+',K,]*1X P$_8MJ@O6T0I7T*6\ MD(8[7G-K&7@*&J/:SMVR]MYG6#6+VWZH:Q]A8?AV)$"V7)%U.N3$OF&>'L_;F\:,N-I9$)T:3OGC^\NGL_/39TS?_G#UY?G[V[:OS M[U\_/3^TG?JRJ:=@ C>)]]?^I&O?O':+PZ$!:A?=.ZB^]2[\[??U& MP)C/?_(R_M-OP%)]OM]2G;[^V],WLV>O7L]>/_WZ^?F;UZG?WMFU??/GGZ>O;B],V;IZ_/L]GIRR>SY^?G MW_O????]Z[-O3L^?GL]>/9,OSP3 \?QCK6"26_N5QO ;[J\X-//]:@SW\V=Y M!7AZH5QD+_.NR/\U^[IJYCCZ?3"WZ&WN2 M";-,J2__GX?9%X^_FFEO'A&0 HEY#?Z8T0 ,ENXB;)<)&6/3-;5<M$(=WM)[HLC40UM\;XW([B8O"\;#[@!M4SCJKP3_ M1=;G^B?3].DN\E=:RPSX5]CV@%)2GLW0YU>PGD*4/ K%)^:#>>]GJC,A42RR MO4E?<32:B?@O$4)1;EGQP*P?1%DN_W3V^KNM>M0$@^\5Q%S(G174(+44SD3A M%Q#6&R("UR9!*9ZA,;)MT<_&D<0&%?5^[S1E<: JP 8 U9$^P)0O+%$WG:K3 M:3>?"'[) Q=81D5,5DGOW.[+WX$.NFNMP6L'?VIVKGUKW]>F0RIVIAR:K3A% MGY"^TV#?R1#$&5ET)$QG7$R?[B#C$P@X-^3]B5>C6U1$:TO0J[\/1"'@_[ ; MU/Z==,L%B3_Z\YQB$*MWLTWP-1BC9A?Z&.:]I_B =4 1H M^>S/AP=QJ&P]\%:)#=,N;=-VCS(8['@1>X#_\]'] M^VG;VN1)\)\/^6.[K713WPB$AMUR65#UKE!)EAF1!C2=Z[ MFU>&?RWG'N/9SK[3ACW_#D^YR>]PC<&>I,/O.?!__'/T)CR^?^Q,^,CM=?[T MVZ=G"'B?/7]Y^O+L^>FWLR>G;TX/#ZGVAEQ7G%9<)JP85Q5=*,);7N6=L!X7 ML3Z_L&GB^(4NIHFEF A?#MQ0:S\&A,"T]4J1>NW4ZTY9+(6[1*^M.Y2=7GJT MSA$_C[_(W('$K%LIM6@+*!US)OPP,%6AP4F;1Y 8@ET @D_]Z:Y5$&++AV1@ MNMD3+DQK@'#J3\$MJ,$0@X_F5F%BP0/D)0(DC6QZ[9) ML%"5=V;ED:6VW60@WNW]0^;8K41,U*><7U5@.(&:6D[CKMH%#A3C)) MY^:!E?$%J+D!=T%;2(BS2)K%8KB4T+$AR(]3.(OG3"+V,?W+)QS1Y3DO'UV? M=D0_^B36$HH9E9J'+B$/Y_F+Y8:*,6G/"7 MV<]-HV7TC,JOM)9>^?F\I72]U3&[M9::_[EERDW)3=&FVHN7^H7(G9,\3A8% MYOS;B7F26W%D07W4%!V8\I?R8T9WYCEC\A.?G+VGF>9 SGP[LKZ^\FD]_T)G M_Q*=_4PJQ<.505)Q5+0S&W3013UNBXUFBMJ\I$8('-50$ *9S%$,1:#N5?! MG_:+%-(HCY(&>+9R]DIVF5E Z*>I-0X/LCI!UI"0W1)D_^'X>$.F2+B^#EP- M@JLNX;IM26#T$+*ZO8ZZ76:!' JPWE>&^B;73$XM&H;W*CSM;KZ&K7M*?:^*UQSI1^5S[O?)VY['5%]I34 MMD_4UNUUU&ZW)ZFM,1@Y:&K3@-JTCJ2VQF#DD*FM8]FJ84MJ:PY&#IG:+*VG MVN:.-&FU1]J3'FEC'JMWQ[$OCN<7RK:% T5Q]'&%\%TS<'$ CQUL@*-:N-XY MGA.F#2F?<8[P7&(SZ@&A4G$V3[L8.@[(V%\_[<#1HX,;W=MCQ^;0T=.U5*W= ME>AI*GJ >SJ61$]#T6.9JF:8._5L]M9NGF//)/U33*!-/&I\EW;*6<&HV4OZ MT=1.3U](/Z_#Q2LRZU["U%0[;0G3K<+4:*NVO=C&EC"M"5.M"WZ+(6&ZS5L4 M6[5>F4R/++QP0R7FPT(PZ\C""QWPCWHRNM!4[&BJ:4GOM:'8:7=54\86&HL= M337LQ7:RQ,[.L&-JJFWN*/!SF)&%^P!;[=0U9>:E#-L&&VU:RWQO"0VWNJ6O6.J MEK7D&O5PK[7H[N2KR56_ZJH,-U2TJ=9J$PPLT=S2 ME]V9*N]9JMU=8N9*].P,/9:MFKI$3U/18[95:U?I\Q(]2RWCMJ6:O1WI'FD5 MRU=MURK>4^-7=(WR'ZCIO1\Q670ABR[>L.A"Q9;_8>!Y2NS\9&+X))_F<70I M$X;14753WOLV%#VZ;:IMF=+26/1@RK\T]QN-'EW6,S45/49/M9;=&LF\B3H@ M_16LF% ,O':&8]=W:12X^\0.LRBCTU4['9GKOE60@D&X), H05JSJ8:IVKW% M:DB"M&Z?$M605+K=BSE#[2S)&I %&?7FRCL#U^.SXFB>3/Y/&@XUU3_^\ T^ MPU![,HNYL=C15<.2]_)-Q8ZFZO:.JM[B3O82I#7-)6OIO8P,-:Q1,!G,9-9L$F$XM+H8LV.K^KK9?SLH7WHU$_[@ M$*O;:G=9,:!$[/XAUK UU>ZNZ5=+Q#8;L69OS?% $K$-1JS>5O7NFK$6690J M7]6D5QVL#U&=EW_E#X(Q4T9A,$X]B< _MH3HC@X^@HSD-Q4[G?4].(F=5\=. M3S7;LC:UH=AI@V76WM^)G >.'5-7#6U'=3AR[E;3'SM82[2:&:YPO#J+XC2, M?60VZ'O=P+#7!RFE&X<94^UI/8F8YB&FHQJF+1'3/,3H%KALNL1,\S!CJ$;7 M>G/$O'T<]JUBB/(]VWK/T9F[%'CMLU$0,L7E_XJ=GT=J_K9[JJ'+$&Q#L=,Q M5%/V!VPP=G1-SJ!L*':,GFHO*5>7V-DI=LS=-@<\L#*1JW5,F3VDG/>F:MG= M>:Z4S ZO'_YL:W-#!A*<=<'95FUK;M!2@K,F.+L S;FQ>0G-FM"T5+W;>2UH M'FPN=O]GLU&ZK'7W-+@%-3ZN6-'PD-&RK M=E?2L*3A?:9A[#BQ9C:7I.%&H?)H:=C054U?,U@I:;A1J#Q>&C;5[K))B =; MC6;"OH9!TO?8ZU=3R7>]S;N.+*+QV8G<@<*W^;\DM2VR=2,UOF_I8\25+;,U+;W[0H26K[1&IZ:]VF.)+4)*G5)+5= MV6K[GA)5[=%\<;TD9L,:/LU*#N(!,,OJYVPVQQBM90/[5C[IZV:02 +;3P(S M6\:2JR5)8)+ -B.P)6G0DL D@6UD5':6U*A( I,$MIG7LL1!?E4"D[=[\EVO M<+NWIR[O'_0/\'D=V)7SP.!HXW'@#?E5O""*6*0J/OA" MP0@;-J^5*U,!H3T)!+[7:TSU6D (KR'MIEY7^^9X?['RW__5,W3C4TWY(-$C MT2/1(]$CT2,[8R^X4UBS'QP_Q_3]S/QN<PU$]BV 9Z& MNM.2*8Z:*39OU2V90C+%@3'%YKV_)5-(IC@LIMA",W')%)(I#HPI-N]._N9, M08V('7@7_';I/9W^E/_CN^R$^(DZ2?CF5V-HV>+Q@$D0N7CY\#!G>0CRQ M3\_N,'X$X"%LBC\4A]3RGSA].%(2S_])X4 #YLN?3L%P^OCS\5! %2%O*N44X.$YDXA] M3/_R:>A&$\]Y^>CZ="KZT:>Q$S[ +@1"< =3A$)PYU_GFVMI?(,BWB3>++YN MP5>_S'YN&BVS:U=^I;7TRL_G+:7KK8Y>;ZGYGUMF]4ODIHYN4X:U<*EZV=D- M4=XSX5/@7+ZU(1L$(=T6?P1MQ$)\"OLJ>(X_8,K=(V.Q\L6)G1J9VA5'Y\*Z M*8?GI99LP,9]%BJFIBJ&9IC;ST7?-T#H! CC6 'Q#\=/G/!%D6 @,!@$!OU8 MP9"QA=%#0.AV"1 '>]$V8^^2C7?A1(^*X\-9\2_L/XG[Y'B L^AX)])JQSJ! M2Q/W9CUCS;D(]6)M"OZY/OBC]X'L>,I3A2Q^2[H MX31W7\Q:!]#[T#]GJH+_>CY:"DL3VE,=M4=7.70^F.[)J-NS5^$,.2$^>%$KKPUBV( M'UFH!'W8(:5J;'+M=MBLMP4 -)LG#1PN86X>:7@SA?!:X3))QWM-QU9;[;4W M#_I*,FX",H^7C'535[OKCE*7="SIN"$G-[6N:BT;#RSI6-)QT^G8ZJEZ;[,R MW=WXLGOMLF)&:/RR.$107=.&NSL:]MLB()K-AMVN!6;12M');4#C+<.7DHR/ MAXP[=ELUELU9E60LR;CA9&RTU:XAR5B2\5Z3L0G26.LLB1E*,I9DW' RMBS5 M[JR4';(K,J[N!I)N[B@;?G3F-_S [;K#OYVX/6;W+'M@:9V>V38MK6_JMMFS M#*.C]T>VT_Z_MGFRVRXAV6J\X0>E'!N(0TXPIR@N/EKM5(:X_A" _O'4XD,+ M=U&&>W5_^9O2;7%NF?WSM_/K\U\O?[N\OJ>^N]U/=\J7J[N+W^_NKFZNE?/K M+_#_Y]_^=7=UI]Q\5;Y>79]?7UR=?U,N;JZ_7-VGS]Q>WOW^[9X>N?E^>7N. M7]RUE+DM;Z;!5P26V7E-6-&*']T86&*P MG>/S)E%'A>\ S8589N-$BB""<# M!",E2$)EY/J./W =#]26/R2>I(2#D$6)%T?TV(3Q_A"1$CT&B3=4^@R^=X9* M'#PP2DQX=N-'!?Z&BU#VNA.S86'M*(8/QE@N3(OCD\Y@$(P!1"^X+Y[PX/H# M+QG"#YD7L6=8%SOZPL-NI)S[?@+KW+))$,8*[/%K$(X573O]GY9RCP\43@9[ MB!T7=CL*PF8^<%WC4:P:''L%H(I_->E%$8C&'-(,)L#9"H[H0 0+O'#Q?L MQ('_$ZLCL,7[E1&\-P@C50 %?\27&K)H$+I]AIL%!: @U1O:IRM8CS.$?MY2 M;N%$RE>^1(N>T#-%LPOAJ;SRRVLRQ1?LA02H'0<)HF "X$?5,E2D?5Y?LZS&R%C_"=Q8<'6K.Q8445T3I8+ MG!W)XALP&)Y<]MQ N;@0X7\P0JT#J Z>7&0;'(;"!H\^;.#A144\ H^.W?B% M:DJB")F3/D;&))9%,P6%H$J2(@I&\3.M.9D T0GY& ?*!.PP=T#/3$+W"?A< MB1@RHC+P7.3XEO('"@205BC'D(AWM@ 0 Y1L$+^/C!8B'*8#]C[.LA-I+* M6^7W%JBZKPS @BN(=<>)3W),K.D%8"8J#P$0 +U+ 9L%9#L3X!CCCG%M_,>0 MC9@/K% \L.-% 1V(*?])G,@]70JG5*@RA0T3#F!5>82CQX\#IQI,M!A?EW]) M^\LE:#1X#, Y@Y_Z8*6&D7@ Y.H$94>4KJ_@"S):$0N#1DE"ZHF4?=%( V$A M(YQ[*-L>'I7GHJ8J$FT).U,8>78]U(1"7A)NQLZ_@Q"Q(.R)D#TQ/V&D?.D! M^"\\S2B3<91P G]&FH\96@(!B5 7?@*B%@!">,*%!%9A7="U\"%GKCD<]771,[Z%CP"L> 1GPAH_N:JX6J-\!;L-!,N_F!,V\##+E HWC1D*>Y9:NF\, V:[RY%K$GMI?*S7[+4!!X&YA.=G--IPN0DBB@E'-P M?!*?;(KOX"JA#B587$:QBRY%M&]\@*;%(#V=DY^.I0;?>NX/."C8 M&T.^S8*WR/U'U* YB)YSQQJU0.;>Y<]F_GF$3)A$W)]/OP6K-1E/^-96< M-Z./#22GFCKBEML4X/T/@@>?8-# 0RWDD2N?: WD+AH5)*_/[RZ4^V "^KRC M==2&><@IR,D&OX#'0V= !B!L_"(!8VL,_+?3B,)[$?C(0"C"'!_(O PYJ?S) M4H,4F73(X%$N2VA&YHC[@0\!&5B9R4F6IJ,,Q#$5E#&^"!9P7@[9R&,#"B/Q MD!=Z WS@)IAS8)[Q+P/ M,23Q*J0V1ACA-P[ZT6!T@SST\A_3@]GJCX45$-Y3S^;OF5F:=@1(]^DE<#0, M$Q 3Y\58&(*<]83R8Y #X*1OK5X#WR7@-\8P$AIE*8WR& $0@SM,R F?H5>* M9D9DF45LXJ!-"GK&1>H C@ 5;:RF_ MDN^6.[H(V!P5 FDAMPM2(0*+/2$F88$I&K.UOZA*K_<7'F2 ?\UXTL(3+'@4 M4<&.5C-#&@-#$8H>D#C>2PM#Y((0H_@T9.ZXGX01T4*&<#5C5#?*9>:PL-G4 MS@C1],*5*&R4T/F"<,X7*&N1NP&F%.07GY$1)RP>_ #S1DL+(#SF8:O/!@Y8 M6RA@N1R/9@0Y'2OPTE=E AR\<_!I@@'LCBPC"C\,!&0H"N?&40Z45J;P\G-1 MG,P#6S14P4/JGXK ()JJY? 3Y[#BJ:8(9E5ZF:6\*<+1D7!T0Q".OD7"*2E_ M.$]4%!%E0@$)ZY>!'?3YY4N*# RTXG4/=NI1!2I@C0?F8[@1#?8)(& (MC+0 MW$LJW]DD)@KHOTRMSE?C1C+)JU^02WW'>XE@54$\;#@_,G*4=]?=I@VK:+C: MR 3 .!B22YIK#!!H8Y08G.Q+TFI*[[<*AC-?!WG\9<+#E.F='S$9-PU)(4<# M,*! R _YF]6\=H/R$@MOA >1"7OF\+4P;^9\#2"),:AM @3'OY64+HB==R39"W^E.X8V831N;E@%%?E M">R"+$N'WLFXF5F(6>27',P'2#+&H\?"F %D#1XQZD)7-QA!<3WX,9BT\!6I M-7QTB!=,3V#"1XL65AS0NUTR3D%L1BY: M'YR\^+5Z3JU"U^+]^A->)!%?%-Y^-9JQ'3+U7=!.8"8/R/10/%2Z :K#(;\X M2^T"X!64QB#MB%#%4@+1F?(L*#EASJA"%^+"K+PT1UWA)[EX0+:$?W'%QW77 MDQMEO_GA!\_"@-DE&#H#Z(A@ M)@)* ^Z.4AH9_M-SW+$P8HHY#.*TZ?G"(:=\KI7'"5>:(&'BP>-I,D'6<*/5 MCY^Z*,*SH\ 9XFT O,ZS3*+ !YOU)3]\2[G#$'6^SH"<-S+O\%6._R+L@_S^ M)%N:W..OGY4\L@=?99%LL3S%H(KJ-P2<5?*@7$19@S_#=8,8UB3%"X>_$N0].-1DH75]RYZ M_D?*5TK?]3S!!XDO_L$#2.BT@2?.2#A@+*H$@F$* J&,N6HI/ 0,F8N.3'?! MSD$$(@F)Q+DH#D2UF) M'7,Z*U'O[0QM%&WL[#"IJ@P;O=VR$!87!'VT,IGR/L_6 "21BN?WTQQ%']15 MT&!*+-3'0IZ.4++7);Q?']ZP#0S-D[D'=NF06S02\J\$^5]Y&"?/3&/-CAY#(H[GCANF'K'L(X;*DZ?YQ>FU_L3YX4,;N$C#?GBF$60GC1*'021 MVR"N_OG."PD ^#9T#'BT*$^8KW1'P)H+G2$K(KK/AS.BFQ2&+J?/) M/@9HG M$V^4PYKP!A"FK,?4 "!3$)ZAZ+2C],, 0!MRIW"$GC2 "ZFTB8Q\A_H%#$>;E_?'/.MU!09:=Q(Q%GPSB+N $IW$4#28NX'&8?"(I$ M?QNC1T_B8C%-@G_*884^/U&Z6;1S>&9_A 3AEW./Y3>A#$N M+GZ SO!*"??+;V33&]3IBV1QWR[NYT7F: E!Z M!QZ0!_/YA=4(A(""3E#FQ&=P$]4JF:^4GQES@VO!HXD,MZ!&PZ2<11S>9:%[[(KHU2B M\A<@+?(;27S@/PD&JF(>&N'9!:"._)3$'\65>C!)HW\C-XQB01'X:R_]L:BV M*5-(,7N 0ME,1/D+!RGM'G632!Y)5^&,R._G*0I*^024&_;"TPHP.D/?D_(J MT9]3"$!A6C#^WL.MTP_ISA+D/^6H<6Y)8\I51TLO,<%SRH^2<\70)8^-&=8,HTN2B^,T9" M\@/_%&4*WDLY#R%C!;=I""CTP+D9%LKO0&F/D9K^G&<^A23(\0E.Q(Z"%3MX MLE/R&/FE4VK2 LWFX6Z9!U+, ^GM21[(CN #^@=#%)B*% E+ JM=179#07:L M:=,**T^0]91E2[81VG6IO)M2K62"1EQ14$[=5#Z=R"Z@^=PCS/R?2KVBPGZL M*G"C-&>#^$;-\N7*8KOXZ\QN*_V\\*J"Y5->1B41GI_"S0$R7+KJ,"#+:L'B M9!GFRX.9@3!\4;GIZ$1)R%,[*5PDBB4PK8S%SXSY107'9YN75Z=T]Z()EB7O M9+=HCE*U=;R&9=YK:+)9Z4BKIT0TE?-':FKODG:O**/#%V%\0D(:P8BR@%[N M_6<)_^%R1SSUYCDGNF$A\[& :,H2%?1/<0&*I66OY_>K\#[\<<#O_PM4DMNS MPL2(9M^?:EB1(U#%OBK^* !G"[]-B4P)2X8RX'B N0$L[6&04B[WG3UW!"N^ M#+S4,2BH[Q@!A?%GGE[S!Z;Z,B%_LA2DW,4@1PY4&*\7Q& 11;4SBS$U2@OR MJ !.A-\T!JIC1!RV!6AF1Q1"> :G*$9%+HL@_C0,[(%%4;S,GB0A/!A1H>Z MI9X8!7]X:E/Q %P!%'T5 OKLD6&G^7:GJAZ?&6V/9VND22'\"B'S#J,\KX8R M.40#$#=FXV@ZHV[^":*D'X'#)L)<4\&M:0<52QFH,I7T>V4H#&OD8]W*O-O52C83)\Z9B MQB-1-%"@!Y["D8PY6PL>J\Q60J?.F0")_R06 CWYSC#::EOOJLH[O:T:AL:? M?@=&HMINV].9Y[A-3'.9%A8+7XKZCQ;LML&=?F>H=KLM7F.UU4Z[6WY+>O6% ME/U0+N4H"-RTHU'$RJ!XGUZ!E77'D"1&64U\$%NS.ZH)AX?=J(:N\XT9MFIW MK*GCKT146I/O6TBD$9G*=Y67U#$$2HYG&,VZI]SDO MP&>\8(2>^:<;80CGBEK+./8G<@^EC=B:8=[\\=Y^Y#_A+> B8%(VZ6KJ6XM3.EU.!][[J6 M:G9U+@^F=5XQUEQ(AJW@75YP]'_VQE//MTJ%_RI\_2I$[3IX2'?A?^*+[\Z [I+!L31 MYCX[_@\\Z#F0 ,!35:Y;YZW"T;"7 A8!H>Y_X1&S.&@!>)ER'8 U_6F%0Q? M4P>W[X61=3=TDIO9D76[X&LUY5N^3S"%+HH7[U^S>XV[O#-;13LZ_,/E2G*4 MA+S4BX&YYF7--1;3!I5D4,;UHC W]SU*]XL+/)EJ.YJ7V?H/#F6AE*WZ^-$- MAZ>[WO( M7A4N/3%CFMD=Y3<5_1>JJN]IEDB!+1BU] +P*?$>(TZO&-'EH5WFX8+BV@B' M(2S.;1D2D'^RU"_@%W'Y!5OJ'J#T **/'E-7A/MBQ0._S/$UL]NS66L\OSZ9 MH06U*ADHC;:FI87.S[V^@0:]_)7UPP0K0PQC0]V,53WP!DJ+_0U4&CY7,%K@ M^W#"I3'>9J 6=8 MIAP=]LC [@;3L:#]LPHLKOM3#>T,AZ&X?LLZEXQ=WM%$T'ZA$B"O(.69/9Q_ M>4^0^S&GO:A41/X)UNVJK5L8M >Z?K MMMHU.Q3L N6/H'D']K%IBJKT* ,8SO0U%$P54O3\MHZ*KZ#$PY^O)%U("6Z ME.A2HK]*3E%.&2,4A)QO2]YVP>]?(H.R=H-TIUU<@T21K;:[W9(@ZJEPOEP, MO>MUNE521C25#"A8>H'T M\>XAB_KQ_C)5@5/RA3JZUE+.43SV!:T)P.)/,=B"U_)XR%6R)RC"*8Y02%=V M"O7XO/H>EJK(+^%7$FS<#X8DF8 !BUV[\F@I5: T69!4T(D4)ZN(DZ.\-[?W MX=Z\Z9%!8Z\CZ+/Z:HZF,FI;RT)'I0'R@I*RU%[/*"@I7>UH9#M/&(^UN@XC8WEE]:4:MDUIN4$Q$$D7Y&NIK>@M])8TZN?H8M'2:2MZ M^/O7M&: 5CL**PO8E9#O5EI'XX,I+G(,\1DOK:0C*]."Q(R8ZM6II. MD14A)FU5,WKX086<[*C=WMJFOF&I@+M*2;F^B+14W32EB)0BHE"Y]#-P8!D\XH M2*<;(#V!<:<;JJV9?-I,5"6CQ!7D5S<<*W?TU,D'T2HPNSRUS1:**.!,6H=3 MM5B2B"+"VAH0N!'6 1"+^*(QCDM]N1]<&HA K)1>AV4SE^Y.3>7];?&9ZT"T MVC9-\]0PNWJG^X'$0UHBRP/U. #D(70H45(D?7)P4*Q:,;53;$J?%VME&L%H MZZIM6L6*6W$:#HP;_I,,'%5@$YFWTU GH+64''-6 7/4'S\KFBB 7*5H4RKH MTR:_0\IR==M*H MF;OP-KTU:FVJNMO&56E0E/+^Y.KZZ\D'.=BMA$E]QZ/N1-I(1$JHT(Q150;N M$PAGZLGHC LI5O-&616G?HF:7AI/EHVAPLM+>/K32FRY\_XVA\J5GQ/7&Q*" M[_/L/;HN5NX&-$4*T_8^W]])5FTVJQ8&Z:6#X"*!0.R/R=!,!E?ZX:4P%U!5 M^@+]W'ZJXF[\_+?+[X(F"BF>O*EOD9'WI5?5H?)RGL]32-5]?_+KY8UDWB8S M;S&)2N M9ZL5'8N9^S.3KN=V9+3C](:"Q^L6DL@Q9!IF@Q(K['05_I9F"O>: MEBE\F^\W=:C4'1-2.3,8_[%*=K"R=#+UVL505G.+H2Z"\23P>=7S2+FB;G)\ M?AUWZAOH'-=M%D9IDV((QMXY^W]0:6VOUS@ M"G&6)H[@-<,I9M8ZDXA]3/_R:>A&$\]Y^>CZ! ;ZT2>QEL@VP?2*)Q92SJS( M)"$\\:]%YH5MMWJ6B4OI M>JMC=FLM-?]SRSSP3;6KOTJ7^H60R!$)I((D][<3\R3/TB&S[Z.FZ$!JORQ[ MS)C\Q <_S:0BS9!5,'E[B:RE17<9:\7#HSJX<:P'UTL'7T+SV+[G(0P2?W@J MMC@8,#8:?5IP9G2+=G'B&:VF<:LCBD$EYS/,5L#[W%,+A4*:>Q(K9.@IZ1D: M20;50+&UOVP"AA7YXN#!V.M),+X"-=:622/ZW_[(I*_N3S8\I<:>2TB M6G[HIN%97U/J3)VT-KOL(:0,":GU:(IDQR_DT,D2!'+KV]H>E"!TFQ'6F3?+ M;^X8W%V&'W%*Y-R-\>8\4=;_:13@J %DZOU(Q&C I5#M*Z![5P0TT\S)PFC@ MX@10&IDY=CP/$^U B%)OKQ&+TN9>OFAQ*L;2I!>&_&8?!6\ZIBTO^Q;=X**6 M\KL_9&GON"P:5YCQQYOHTGAN;/U6Z-L[8@R3[Z*8.3QUUF]Y&C2,!-O&2:D7@_ M/#8,,,_:C[-OD3A%/^M$3-_YO7774KXR;%/FJ3PK5:UL65#!.T6^P;1.3NPI MH5-309*T47EX)A@+CRD9BS;YA:G>JD('"<, MI,/\XIPD!\?_M)3?4 J+5&AO]I0TWCDG1"YQX8=YG02EIO 2&E)*HA%KX41\ M?R+KA38GQKC3Y*B9\=/(>SC6E:8@Y#?; ([LQ*6,MVCPR(:)Q_C8C&$^)=9C M_@,V_ETTYKV!MXUS[OFS*(+,+\FVPUFB(?9Y(L$>-_X:IGD@M-! B52W&PE6I@()9WG\1!8UD M2T^_5^RQF0)M23:/Z)W*CS]8X,M.C4C''OJ%CE?SGNZK1C8OMIOZ9UY<636+EZ@JFCMH5F8\#X9?!:\(HK\'/'9]&CV['E1 M29%:>.62($O[BZJTVW_AIBS\10Q_GSG0@OZWTRUT,WA0A]#1?&Z90@=+D1:+-#)/ 5%E\E0/?70V.+G'(J>' M[#JIJUXOE)3%?Y!;<2Q.'A&*'(]:"O*J.Y!1D9P/_5IX^!X&0^%4I*6'14]_ MB/(9NP.*Z-5^I.#O(R+NDOZI"(4ZU%Z2:_\#T#0W6>VDR(/=.QV3GR KST43 M0?R#6A24K)ITA(ET?-Z&=WYSPA^LA!^I,%X/UEG[>S[K&\>]\(8'3^171&A; M>2(4+-'P6GK;>0E!LF!S0M38_)JE52CMO;B*9Y%6Q=>6G#2K$1;ETJ%\3V'E9<*&Q $%> M]G N)5#J97!,9S.N6)G;.VEWOW^[?Y.N?FJW'R_O#V_O[JYOMM] M%Z^:L9M2L?XDP_4FZYFU;[&<^])= *^F+=Q"\?9XN$L,[(3YB0M=PM*! M"KQ!96%JL_)^B 6XH2B!#Q+8Z##ZT.3JWJ[6K5O=V]9;NM';3LUJM]7IU%MJ M42&M>=B;ZKY>=:]NK5_LR4EJ1_6>7_DT[W\QY+I+3+^M4VFU:AW)5NO0=@4O M?EW*!HP2+$S>B765\NB5CG^,(-1YQH$$85T0_L/Q:5Y=%0#?J&#[CO=_[BN4-\9:,.WNOH:M>T>8?H5P,"?EL+&/7K MM*L$F"3BXR#B;J^C=KL]2<22B/>8B#4@8JW30")^HU81.X5^,85SKBUMU#MS M)<,UC_#:X$.8W6Y-PJO&\:L)R%6:+APH>C1-[6EMB9YFHL=L=U73-G:#GN/Q M4[%X/Z_!JR69EZG(?:2ZMJFI9J8[?O.SH([[KD)VW!)F.TLX8ZEAAM,D9[JMF6QOU.E$?, M0A;%J6U_9*;]>YQ#W=4^2+.Q<9@QU9[6DXAI'F(ZJF':;XZ8([+D8^?G1N*X MXN3[0ENF:MG=U6FK&L=--]WV$3&@)]N:+C'30,RT5=NJH2BWA)EC,(ZO&;:( M0YE<5]L)IT14[Y@ WV&08"U0NNFC337;/H":S9_MMMK1S?6BG]L#THY,83?I[6::JFQ\FC9KT1U7<6L]6HX-:&%9'71/N4ARB$ >7.)/6W6 M?,.[*^0M)1Y*A9#H.X7,$8-MWG7!4>T $0>AHF,[<- D=2A@GVI^?/8Q]#'))3?CX8*>] ?*KMGLUOR9W!?Q(W$E-$ M1+=TG/+A8B\?; 719P!N'U.>X+?$=-AG*0@?'-\=9%NCOA#88>*!!0!^&L=$ M/6)*HZ[P[6#<]/1TGE/^\V=&\Z%"_*6',TQ&$7B< *LAFWH#_(O&[&!#]C@$ ME#F#N-PEBMYC:/"BCC(,73@Z+C2F5IKX\P$_;0JI='$WO?^A&5GJ[)M+@TK^ MDSC4? MGWR[_O7D@UC&-'N%4V0385X&WI[UT%T@ )7OY43LYIQFX=[/<194/G $5;F M-Y7S1"'77.%'(<9MVRW[+WP*@-W2_Y)) ='EWYCN\K_"ZZ+J7LN<9W%^7+E1 M8TJ9\+Z6QK>"/3>F7\R9-2?CNLO\"Y=_Z8MQT;D' M7+KDE*C,. J%W-C]B;_(.'"9J %SQ7UR/<3I0^B, :E9Z]B\51W-2 J>$>9\ M0M(+?00RD01'U@?[ *R8!7FQS3G34OT=S#;#SM7V.W#+35OC.MMJM6MI[8J5 M&35\P93G&OY^=.Q99F)P45A MP3Q1*T6.DXL'KB\-S4H-H71LFF#GB0-.' XYP9\#:P)MOQ2GK,S"H K0!(H" M H[K##75L#!4ALN>W+68L,C=U6C;:G3MLS\%H$"Z;W4/"G]L#3.E*:T\:=- MH*Q*^ ,V_=,@B961XX9\5H0TD(,3%[1/.D )OF=\)F3D#D7Z M)EA+3I^+3&I5R.EIQF[-AO*LL!],=#$*^S'X?G+6VVP_"R3Z439A-,K@:.04 MZV;KURPU[7(J%Z(Y)UJJ7=VI]+JB;K55O6/4T*C4XNUS)'"\G-(\M]_K)NA=*>HJ41'UU,K^%. MQ(!(JC2'J# 4M6 ?B0>5@>>XXWRX'>FJV65I4RQ.0C]M@SUEE?T#CZ6# M$SBC1'$P^'':3\U-,4OYCC'E.H!U]:[:L/"@H-G[(LWN@O[4=/@:PHE"2:5^ MLE]QMO4 @V!WB" QX!=Q"&1S[OLX#O*63<"X1,Q^!5--T;73_Z'^JZ,DY(XZ MBQV7!@Z[,[EP!Q#WJ4@H:/]M]P8K%8%U'>(CZ4O\P>%/VVW5[/7X&Y8)UR:2]^)YSD$HL.Q& M?&8*]RH",:TS HEZ4MED6CE5EG>B/AJ] E"A=_.X[8$"YNDHMEB4B!075 M\LNTD>OAA-9TT.W=Y06MQ/HA=;0TVNE5W?.C.WA4AFXT2,A31%T(9 ($%GD4 M PQ"V <=!P09<\E/#MD(_BYN%4!9!:N;4(VYY;QC#Q3C.]1VX9&"S P4 R00 M)6.42'_"0YDR*T85P/H:L)!?#%&H%$F/]_CF4(J.I&=XN]5I=[?3";O3:MM6 MT]IS-W93BX$N>X;+GN%+!;KL&2Y[AN\>A!OT#&]F"4&5<.); Z[>-515 %>?]VDF.?04GRKCMCL)%T3,]UZ:[8?;D#%G*2V MO:(VVU)[ZW9LE]0FJ:UF:TU3[1K6;JCM&&I./]_?S;4%#[.AA&$8LBMW@]%C M&JHE>]HW%3TZ]CJVZPIDV91E]:;IES='UH7%Z)BJW5YSD%4#+,H#1X]N]533 MJ%LK+='S5N@Q.[OS_NM%3FGY+L\H;;((O@]FJ_K6K'X^]A+YO:^ 7V_*8ET@ M-+L1A"3B/2?B]:8L2B*61-R@@Z\W9?$MB%A80>DFQ*Y[/+UJ2Y>5%?U37NUB MM&GO.HK[^33O4:3I]MDH"*<+1^9?UF\7/Z_\V#&$<>2M^I[?/'4LM:/):\[F M(.2@B:VG&M;^1D EL>T3L75UM6?N2++MI2FW\LUYQ2GVF]SWB*K-GMK3%\_= M>AU)N4 @2D+8P1':IB0$20@TPU$8/-F*A 1I[^V3O6?I:L?PYOA326R2V.II>%/5C+JIHMOT9&<:S*>O+939=YO3C@!;:!1Z M(15;#83LP0F'"SH-\ 8;O&51KVDMBV[S_=YE^]UE[Z+7Z%Q4HQ^:(.Y3E$:[ M:DE478?[NL,*&M@?I"9\KJZ_IB3Z MT+;6F>TE_-AL_@:?U%6<<;#*T*_,9T#!_00>0!,Y=#,I-X73GFK;7)\:RZ5< M":/50S^JI)RB-+'?_.NUQ%W8:/5-NN&J2]KA\J>WWA-W%LON\&\G;H_9/ M6%JG9[9-2^N;NFWV+,/HZ/V1[;3_KZ.?[+*/[D*1_NWJ?W^_^G)U_R_E_/J+ MK^_)MR>WEW\_OMQ>7=OA$VBGK@7'_@3FC(81(*JPZG^KE#BN& P*#( MBA,]7O>@3-Q!K@T M)_WY4RI$__\!;_@?%)KW72^*L@6!R=!$%Z!@9[<(1^4&U0)[ZK? M" L\=X,+TH^'.I8/D$C\/L@5^&T(%@_(06KX3E,=#-7LF+.A?= B08(<#H*< MY 8/?'3M[NQ$ILK%*XWI<+\+5H/.@]/':1Q%RH_2/H1\KY($YM/I":\&*^BT>44GSH7E"0BT#-R0"C M61&8G8-' >DGY@434I!%/<@O6UDZ(1$VFM".\3="[-(D'S@D"TG%"X+!5OTD M=/DT$%10N+OBTL$3Z(H1#MQXH0[ADR2,$H:5_\2B/1>87PH")A]DY:=B-(F(S.'_9H\*^ 9(\0M/"_A9 MYPX_N&66KE4-PRKRT/+5EP^T$?*+!G*2430]TU+OF6K;;&2(M":IB82*,H0: M>*S5E#/7.$45/:HZ7ZJ6257K;5OM659)"_KE!5-RJEP,Z:&GJ[9FEU7Z#%$N MW=9\PLP<@0B=?%3'\HJU>,7:WI,KUIW%#"L]#"[)>G@-4K0'U>+08IJYFSKC MJ>62$N&"=4V;WZ[P@5K%Y7S,@\M,I6Q%NG8RN^TFRM0-(HDE9Y""BM_R. S MYD*8T[>9KWL*G\%/ON)/_ON_>H:A?VK ?*UE 47NT&\EI+AS=-?.RTME^3Z= M99&D.,H+O^KM3,NV!J)X<>S%5\Z3AR2*.0/KILK%TGOD\9,+#W0]$.X78-.3 M#\#5X*.-N93@#AVE1@Q)R A(G#^$C.??\27 ,0O@T?/_=L:33[@" M:"C1@6?Q9D-YNK@;O<.U1)2]&]UE6+NX.Y5+IL^._P,%X/D8P#%P5.6Z==Y2 MWI],?8YOQ?7*LR(=G)8.4A@-*8H[>HSD*K[=8S%&*C'2S$_@1E'"0I4[S33Q ME#\=4=K&2RJ_N(8;L#!V7!+^%!M.^A&(>- (&+N,E >0H.#'!B'X_-\+3BV/ M_BV$']\ 2-4G-T@B'C"-'><18[@&MH39^V3UPCZ7+0:D5[E8FO=2_7M4&'G0-WX, M@^3AL8I:.X+4?DL#IYQ76!"_'=+^5RU]A(2(D!';)"$W/=P0-6'4>JLZP)[S,NY@E@9'$"$F*^XN[ MM)2.ENV9^Z2V1?1*<0_3Q+]/QSWV31&M1;E]M%JS7#HG5IY II*XH+PZ884" M?:OX)9(JCV\"%ERN1QSE,@D#'NLE2RB7!?H^\>7?S]59Y?R?8 MY.8)AX?"[I79\)X"4((W.PJ]_;]VU%#&5M,7CFUD.(:!_C"H&F)2BTAA9 MI0B]PN>C!WG2?E8MXS$X!F@]A6X>E]!TEFR8OI)(L=/J_J6)-OK2V;'+2 NO M+@">4>$*>A \,?A[+*X 13A;R"@$/NEXIPQC#!65X!UH?/?'$QON!7EY^O[K^<9Y[=.$!\L0&/Y>=Y5&,0HPF_!!71^@^X M'3]0 8.7*$._]T_J<+MBRH4DAY:#84C]R>&?!_AB(Q6*."2 M0\P3]\(^@$G/P(6FG;B+ (5-9H?_4@'WQ8Q'5C=971@H1/2YI"\R3[SB=+,< M.3\F-8M$$>GK[0QK' "S?];BVREN'8,U]N@\\\3M];D&0 MV3X.\%-2 /$CZB454(<40(!/H_YA:OW#N\E64Q6*='+#V"EFC8MX+;Z,:.R" MBV?X^P5>DP:>BKX%"M;47? !G&A\\3P!E-[BBU*E:2X8\-T/#E\S?;2P@4@D M4HQ&<$S4&:1O\I_PU_D\9IVF.] S$0-CSRD:@.3E".IVU[ R(]_TDQM @1QCI[@\4.*0GLUO'/&4GCTH&X*7ED\++>O(B09^4TDCCT*5< MH>_\X1-:2! U*(PTR7DE;PZ^?, B#O+2<@[*MJL"G(/!#_10DQ"03T10BE*4 M]^WZJ6N!:!?$CW)A(M+5\+?\-U383[HT%8ZH8*F. M_I::2;>D6CFH^JR@77:%=W[+#Z0IR^^!PX#7%/$*/'##+@JF,YCO.X= M$&0>F9?>XZ)QSAU)C/;P)4D3?,@WD26^O3,U?G51-NW!)5=4J)?47Q>0 M7#7U0)OF$).NF7;%)#2Q ^41A;S(]!B 21F5_#WA6]+Z9 M2A&X"APKR( M/3^*\,:R-CUK\V1W!9XLM_:QVE/4?8J?[(AOK^XO?^/"KGO>FA<=^=_?SZ_O MK^[/[Z_^>4FU2O#!M_3?7Z[N+K[=W/U^>WFGG'^^^?U>^>W\]G\N[Q7PXOYG MW[C]#Y9FDP015SJIZY(6WKO1#U%74XI_D M&/R6E(*XOA5E(%2TH03"0EH01 M*X9!J+"%%" &(S4K'HV8FD,1L0WIUL28)U5X%/Z M-QC9A6N%\DYHHVZTJ%*%W\+P6PH$?GI)T_1+F9#R"C:XDJ&+U<7W,25)*> W MY0>_QTMIX=**D,"TK_1AF67$ZZ%*=X)J.EM0PB6@(7X,U6TTIOKH+^>G5]?GUQ=?Y-N0.M?/G;Y?7]'2GJN]^_?_]& M_SZ__9?RY?S^O)Y&?E.:F]=<[\OE_Z?Z6A?)4W0=%R\6E-N"4_XR^[EMM$Q-K_Q*:U5_/F\IJ]6V[84K[>6(CZII M;2=GY\F0KG&6>@H?UQG1]DJ RN16!;1&H]>1Z$MFV_W5:E,>0C?YV\E\K MJ)9.VE>6C)8K6 ++_'C+C H+N)L8 MIW7.=N3[ MD!(>G9K@F)KMO_Y26F79@22IU2.U#T4B$4;&W.0)45ZL_G,/CDKZ?+/(JWU[I$Q#$]*#MP'#@0L6IKDP'WD MP)XUQ8&%:#L865@#?97W!KD(QI.0/3(_PK@E_T(RZ5XP*2+:TB63[B63]A8R MZ46>BG>'.5J/@843"79=#_8%%!M&9)-]Y%-;7TQFV8%^)(7 M]X(7$9^6*7EQ+WFQ?7*V>F*)9,C]8$A JF4M8LBY\]^.\D:WNY4;77/'-[J+ MB]!6/$2GP>F5E]]O;N^5FZ\*7H=^OX0_KN^5V\M?K^[N+V\OORC??__\[>I" M.;^XN/G]^O[J^E?EZ]7M;_6*]795!L#S. I>"1\1 A]^#IR0RAN_N"$;8!L+ M"CC\TU)^]8*^XZD87ZA(J=_-2?X>>-[+KOB8=8TD6N;C^I<2A ;7'\E]X Y""@D];(T040ZXD*J3!4CL5T;B&KXA- M0#;ITY"FUY5V%15]@6:E"^]T,*?/8@F-[.6%/LR#4JR5?U$JNXP*4O7_B9(Y M->_[+KK#82XGI2J*G+H8K*VT%6ZYZ^[BZ9^IV$Z)FV>*OL>$FK30@O=A$\TN M'9[<>9(GM^8<_X1XX;>E2Z2DUD,*,O='D_ M=RSUB*:72.VU].""N==G[1P"V7P.+/+,6_#S]MG8'+[0I7]+X.?5<5BJP-OQ M8T5VL32!RI:Q_71>Q(EUPI,X3__\W7>SH$14:&M5L^Q_QRH R\"%'E#3/MGA ML-S;@#)4P;K(&BF(I)"4! K)(9C]&U'V+[='WI>@]$'DC7Q0BR3T_Z)T?IJ7 MUCZG7:93XN/SFJER?&&&;9;5.PA=HF>:&P>;!>5%B&N6;,R:8XO> PK%F(U/ ME,+\P-LR?@V=,<.^[LI[0]/-#SMM^R>J>$1+\POJ$Q8S2C"^FZ!ZIAS^&YKQ M]*>359]1_W/P;H;@U/!?\?DV5+.,6?>>FFEGR(M&VFK:MI%)7)?%IUNT( M<]6#LE6V!E4UC&7GS-=T(I<+0&&&-FO3J[5^*2@BS,L7\A])Q^UG?6G+6,R' M"?-RB*GG70I)">) TIA+#I6[*-4!D"#D52'4]TZ9<$%74 TCS'X+\_RX3$CR MA#@JAP]9VM.&5'>?42^)-+F.?E&HY2\JTSD"F.H;1FR(FJA0Q:]XSG/N !9K M)A)/S&.!G29>F1'O\M_C$Y<_1>;_%%]F9VH8<\S59UC'G@S21I@#56O->F\*I:M-+MJ06 3:]!=[""QE:E$\A_&DK+>6.VC;D#^?5 MBC\=;!GJ/ZC(N(X28Y%*'\4C: GJKS% #GP %*8E9;RG(*=X[(?L44E79C-6 M':L$RF+#1-C D^,E?*9,ZCO/6HY))+HR% O+L//%F S&L3-D?$IM*MZH&^HS M-?F)IE]!_:X\+[7>G:(E7KWYPB0L@G*!*42/>VI>GY%J/U,O!3^B8;Q?K1@O M4)IA[3HE]RJ_.=@DMED;G]_Z9I!NGDN1,6V>.K F/GQ. 1@&K@_J.2?]&KN8 MDS*BVDI9$Y3<%X;3B*GTME!5??9 9?UQ;P'KO]0_" MGQ7=9\3('5BVR'-9_6(R MB -1YP?N,Y4,\CY[/_/>2V)H4G:HM.53%1(B91C ;K'2U/%X,S%J'89[3J6C8Y.JEN!_![M54082@"O8E9PB,@8G# M2_S*NZE> )G;+XJL6=P$HE#4C5-4[H4,2*<+W;)! -*6$$O.E/Y)^9Z73&+: M .^]6'S@%N,L>'1J/V L(L>&P**FGUDI(<&)CH!,J.JW(<=:*BU3.SGD:/X3 M;>!D/#F-DC%W\AP:D<5I@;P]8H;T&^KO_)[F-6B?^->P0S&_X4,:8R-G&YCL M@=S-*!VCX%*7\&P$.[?R\2H=(R=]-G! X?-"]Y'H42Z\3D%.O,<>RI&(OG+] M)$B$1!+G$BEFTP.@9XZ8OET 89AR=5XA>X O)/0 MHRAB+G$*A?0T@A1@*=Y)\I$VP7=+EF48C."W66106)J\R5764Z8E[L72'Y;A MY^0'5],&X!P!^."0(>%0Z3>60 ^%[(474_P@\,MMS:FW908CL;U4=_*G>.2! MOWA8V->:+4./\C:^U[1V6#OS?-'CB7DL+)-]>>]1+_ ?3DGR57R-K1## M(=?/&<=FY\3ULH/.' ]%DQOE-BV0KKC_X?MFHQ'%'<502=AS#BR?M\$O- 2M M$L/Y0$6 %I\2 <>(<7&V: 0#_9+WK"?!=3+KF : JC3"?DKB/"MQI8 M^-#3$PTY[=+) MX#-D46@PLR9A+-&./%BQG,,6BI(T.D*V<]KJM]3#N5!'7DN_E9I-8,NCI918C41KFO]2.JH3QT1\\2 ^558NQ# G>;O;7!T=[JKV:YQINO- MP9F)D+CD.AWOFPHW"#F"Q/ANS)W(VDUSY5?%MXXW$)="U'Q_K@.=W8W%8C92 M)#)I_&'>693W[1(_+4J,=*>YK[N2=QP,TH;&4>:$4Z22 N9Q\(QI!:/$&XF! MW\+OK7+Y5I<8)Y)HMT^T%UGDX#$W)PI.=XIYO,P=I@WXL=?8(,[BSWP2/&4A MIID=/-2==CFG%()"Y]A\%D!9?-'0CV!(]S"%-H3$. X:[$,EF10;9:<$N:"C MOB2CMR"C>V[(5 BRU'G- _E#FNXVB.=9&!B_*?A'16'*JV(H_36+\1%UH%-' M0A4D8'Z+3[EI^)&PS265-()*Q-U& HS_DJ5]XJBEU/3EDJ$RTKDL@B@QW! ; M:(&K4?0T^B\?YT\0V ;.=*TGD;82TN9XD/FH)V#:1Y&KL")NBW&T 8XM[%,5 M',UUPH *W,Z/M4ECA9E^)\E]5A M&7Z-A#-Y\M7[R?"!Q>ERHN,J1C2,G< M#6PR/17U(DQ'+AS F1O]4OGU0$$&K*B]UJ0%:7'4L"D!Z8\,+Z#ITBLU,"E; M*B+#,R%YLK2VXM(T$CU"6=9W@)H0(2(JG\0;41 M\0@.;1 2U95ESSP'EZ(:5-K39R!-1*"LRC]=X?*K43=COT2_*+4;O5[#!UF; MU][)V1?F!9BUJ-"\,^4^2 ; W=^^?9_7_;7)$*D-C6\!#Y5D$+%/SGYS86N% M*NPE8-A5K?^7RMW?+R\7C#YHRM[?4\Y* MD, :.">6_<2Z8R5ZI%1$)W8^K"*4]V=X0\=HV=W.5H8WZ)U6V[9J+37_<\LT MM[>IQ>=;L?E9-EFA=B,M3L]-F3U!5)Z6<"MI]?8Z(R8."Q"B-4()$.OWQ6O6 M4?F\$1I0OP*BA:@BZQ)E'[9]4=+]U:2")8_5>]5>#G^I[E9W(2[2'4+*6A-> MMOO8$MCVG<&/AS!(_.&I -%@P-AH]&D*Z K^M\MML4;#'[N:9.UE,(GXR?%* M-48"$W7.KRG[0'KO-CKBI^EVCXTZFW#*OX9\W*62^"YWR9-H>#+EH[=/E"$; MN&/'B_YV5VF:2DI:(FZW24DF4%+;4CMFMR&4=&3>Q^]^?XN"=E5#:[_98YFY M+C) _G#CQPN1/4X1C_6YI U)'H@-?P,ND2N$X:>ZN*X4%B"\YA,$[O$'P\LCSFDS3 M 2G<4\UNIR&FBC1ZWU (OP(]=8&>3#!]FT)/1V;ZWO.4OX%N-9&@X] M5XU.KR%&D32RW]3(;AHYZB=G;5WMM+6&D..6;/1&2WK"+G8NQ2:"'N);6.JLL8!ECE';6WN?,J(](-I*0EW1EO--EJLQYV-3!SZ^D MKP-_L-;-AX77;:J.%?6-,!&DT?F6?OTV" BOSL!KL1I"0-O,:M#MALM1GM-0 M75_[NE?)C0-%[=JIU<]_./)@I;R-F@*@HX&;J>I=3;7L;>67-CUE0_*6Y*VU MTE/J\I9^2KJ)%)1MWI1F2^T:3-C8,$@PEOWJK2%6>==! MM>KXYO)NA^F8^+LX&/QX##SL52S:DREX2Q^_-+YQQ#[YPVE3#B\'O^S,\=9( M2.LL M6!*^&4>8P!%=M=N8*M0BI;+U>U0D47MODR]*52T1+2FK6AAHVP^T;WF4T?FZWSF8S1QP UU M&DX'!*?C"?)Q-Z'-_AE0O=C2]RF^-> M2$K:I&7(VI34/3DS=57O-26-ZLC,\IM27Q!IG&\K469SHZJ'F0Y&IRDVE;3, MWSI59G,2LO&NW+)E][N=7K-,L$"4CVGC8^H?\-/21')IU:XK;#\GD8MCER^" M<=_U"9@7&9 OBC#.+)3UF*FK8>JB;32EJ9FT>-]0'K\=E>D@LC6U9QU8O>(> MRVP_P'&(XI:VT$NO,!!1VLKKBN]O@?]PS\+Q%]:/JF5^.1&=;EWGJ;QBQDK[.E0GI31[2+ M+:8M6VWKVXH7-SUE6U+>=J3XQI0GJM)[]E[T=SR&:LS<<2K'0%3%PXO!0=D" MEZ;U&T9&BF5Y,YR$#:K;,AI]B)2T_>C'V@6>7:R05]L]V43DK>\ /?"83F-P MF;9E41\XT]2\!5R?(_ BL*/:YL9=(F7DN8%D5/,F<'TRHJ;3JM5NR@7&,=BZ MU\MCQ]+LW45$N2;S]#1@'LU2V[)S]$'2U%:"R75I2J?6I)W-&XA)4W=EHOC" M1@P$[5!Q,;F8*;'SLVCNRA[0&\G>%+I7!-Q[YV?1<*G=N[=G8 9<;_/AG=+N M;2 I+1&Y6R8E\^2LH_8VGRC<+-MWG]I&;2FU^)@O2U:_IJO+'FTT1=IJ=VNI MHHVXG]N2[7O,)+?Z_5Q=DK- N;=UM;UYX<=;D-R;]!J:O^VMMQI:X57'X Y< M!..Q&^,,(%Z(F.5G#Q:IJ=K&7UTI_S-R/_JN][>3.$S8;/55MF?T18L[SIBK M Z^$F$N%*5=XLX^#L+[QZ=D"TT(JZNOU9,/^9O(8+X[H0W MX5V,Y>#_=+R$Y:L*&T++V+NW6*+,VT_[M?9CGYQI+6WVZGKF V7BA,H3KO9) MF7N""-\2;;9YVFETGL2/00AX'ZYFI64GLK4%$*[>7SUD;[H__>3,4H$'\/]7 M #O?LN)D[U/K@G^=XUU%43)]M)'[DPU/_V1A4'$JXTV@?I/$40Q6#XB:&GLS M:^]M'8JM#;+VFVQK/9"!J^,'RZES=?IU"3K\/C'?4:8S097(Z/4ZXVJ+""=9 MOQ3)F3]K@\E--HSQJ2$Q1AFN?L- R&:TTVT:[;QU;L9TU;=YE!L)ZFWD+@[?&SC>T)@'S6[K:E&M9L0]U9P*-A]MI4OB:DZ]O)M7>V":0M@K1E MF*I9A\2K#6+%H3YS7]B C?LL5$Q-50S-,.FY_%.=/C54!5::,%CXB7DO&QC3 MQY$RM;3;7$85PAJ:MGITK4-5@0W)?I()=6_:06XY=721.@YQSM<>5%B?PZX1 MVHX'AIL[/'5]9<"3'F5RW-H]FS.8?@>07ODBB[3FO;FN@0-@:3VP1#;N/B # M#0VDHF4]F[=$138V_M8KK:R]#CGLC80=#))QXE'38UX3@LV.0_;(_ @,T#0_ M^;T71-&'MZ\&B8/)C@#S?B.1&\'FX6\5GKFO;&M7;2P&T@02T1NZ] M4"80E&&HW5Y3AJ$=0^DSK_J(YJ;XR2*05Y''Q9Q*/CJU-KNT3\ZZ74OMVML* MOLEBD,,@O262>PND9YV<=>RV:K0WCDJ\85'(5JSF_:OBHUNTU>7[BGWU^!FK M1F'+*?=; ]#AB*352R+/_>$6!!1>6:IZ5U,M>UM]=+:'UQWY-I*S)6?OLO)T M.YS=/3FS3;!Z-Q^%V@B^)MODEQC[3J5)+(4DR[$3/K@^O7HJ5C=@@(3P]>B# M5OR(5U;N8#'%&%0BQICB#/!JQ/%?,*6'3V.( ^H=BQ"C&Y21ZSO^P"6'$SZ@ MHL!6.86G<'KQAK;!(Y63(*(KM8\A\QS,_OGT[ [CQY1F"S\4N-3RGSA]V$02 MS__)&X)V(2 M;2JCJ? G;A?9P.TQNV?9 TOK],RV:6E]4[?-GF48';T_LIWV M_V'5MOC18U8[.7$>V&D_9,Z/4V<$)_SH>,_.2X146"0YH+N$Q:+B)MZ@HN;Z[N;;U=? MSN\OORAW]_"?WRZO[^^4FZ_*]>6]-/]Y[UU?BQR"!-8:12M-G4=9BVJ "LL/Y,/<$91F)5<'4Q*]<2P_'\)Q) MQ#ZF?_F4COIU?=H,_>B36$O(#Z3]Z0L^!!?_6K"%;;>Z6A_>B )Y*Y)?!6!]X_'#]QPA>E"G2'U02F6DS]&@91I(3LB?G);->7 M%=V\8P]>'%5L0E]VA4VD]#4,QE6CTL%/\!($RWD4,?B_X4SVT KABM[)6:^C MJUWS6"8J23Z4?#C-AYW=\Z%]!#;5M5,4UK)[E>1HO\??W?[V6'O6K7YHL;L@'.V8OBJ $]]?:[0]\NI/"= MX]$U MTK/#L/O*9V&C,F5E;FOH$J MWCH94;.U M]#(!DMNFR!3UR;][)#))U%NGACTND!Z6BJ:37%JY&D\U;Z=V/2 MH096JBD=XC=$/J\!W5CGRE+J9:%JSA@W$Q8Z.-5J+0XQ-> 04U?-KASJ*(FO M1J1[*\2'OUI;4E\DOA6#Y1OA?B,DS,3C8/-:[3?L(U$G6205QGX>9BO M.JQ8R*(,]DD8C-Q81D'6-;H(BM\)B+4ECHFV%GBRG6UUA9">;),H9XG%M GE MX.CUGJ7:W8T-)4DY#:2<)>;.)I1C >58MFKJ3:&<.8:,(0V9-S!D]LE>R^1V5-UL2CQ=FB%O=8OW M-@2&XYQL4VW+:^*#)+!%=WUO0V ]3)'MJ#VS*01V##>"OX)N#QV/]+PS'+N^ M&\4A-5&36;)KQZ$X3(%ASDL0%7Q3FS'LD[-.5^UTFI*=)I,6J=J]C4NB9-[LRN3PU1D4&[B/\G^&W#R3 M;OJZBCL+:WUC3K0V4^#X(T/MV1O7)$@_J8$DM$1=;X>$<."1KAJ6O(P\1!): MHJ2W0T)M("%-U>UM=4.7SO1R(OC")B%@A,(?W*,>!["[/^D#Z4^OG4Q; "N: MK@6@UF8+"RQ60VTWQF*5[L];)L9ND9 ZF/:AVIL'*R4A-9"0EB6Y;I&0ND!( MMFI;&RMJZ4/7K(,)9K(8-G&=CSDG?%6_6ABSM1/"VSU@DHZMZKTM#^UJ;)=. M27G;=ZVQ\5)RMMSREO5BU^7\BP-/'A;4^WNQK-4&]H1==\3 M.IN3.[IG1EEU4NF5/PC&3!F%P3@US0)?)AVN;75Q>'X+HBAMW.SZ"8#C)H/M M9P8BB5WA0!,6Q4)0I?_D/^=_WF,RZ.7/.'2 :EW?"5^N8C:.K@,?=X3YHK!N M^L/HFM7.A;?TD[..#O;=MF3=GBG2 Z?4)5;:7E&JP1,HMN:)2$IM$J4NL>KV MBE)-H-2>:K8;7EZT!1-QKQX[#EN.TVT:63LR*^[]5LVXDBBI+06PU:I1Z45^ MD*IJKPEGJ56U&>%@>:K:JVB6+^EFO^EFJ8VS&=UTP.Q0C8JY=F].-SN(2;U5 ME&AW[SDL\Z6:G40HJD^VO.+R?\7.SR,U9W82E*KM(]465-V3LW9/-709D;$'G+& M=D,?@N2%*_*9-R*I2]8=#3U9RY[MC#'/(WD= ;JBG#QTI*^DF#='NDYQK[8V M6X8EL=[$H,-VL(Y3^MJJ;:T>M9+YLLO#^=XV4"0." M>71")KL"+PB$=EM=JS$8K9:9GYW('6P2]#U0G7@@:N\["^^031%YEQJ2(\IN2R%#/N-X7J^R+ZR45?1Y7O4AJW'GFL>*! M:,QJT\(Y995SSBG7R;C/PIL1">KH)F<4X5:N8\V6I6J^C:FU9RW&@ M!-;9(8&9E%38M4RUVYCA5)+ MDQ@W1T26)L(3#MTN_9(NFJMJ6 M*W9D6Y0,QU^#$/[I*X,D#)D_>%'B$%;S^ A%#Y"E*CZ8>,$(.Z<<9M1NLXXI M$>P?_C8S?B1^9&')R^'T+^!](,S\&%CG9G3O M_/R.,\[@BS@.W7X2.WV/W0??P:OWXRJ>P?8;;]>$049NUA^1]+:44A2](_-EA,*P;2RAUCBC, O,)N7@ >BA_$\+XX0#HA MB#E80S%R?<,+A)(AYP.TQNV?9 TOK],RV M:6E]4[?-GF48';T_LIWV__5Z)^F/'L/2 WJ8 /PTS#IFSO_9#).#9W380K-?_M)1?O:#O>*H"\J>E./Y0N4OZD3MT MG=!ET5PB;,H)+FZN[VZ^77TYO[_\HMS=PW]^N[R^OU-NOBH7?S^__O7R3KFZ MAB]N+O[G[S??OES>WE$HI/M)N?S?WZ_N_]7X [YW?25^#!)88QBI"OLY8"AM M,:-, >GA?)A[@K*4Q&0M%*>Y,"#Q#B3 M6$M($*3^*=%-X.)?YXS1TCASB!B0>+/XN@5?_3+[N6&V.EJW\BNMI5=^/F\I M76N9FEEKJ?F?6V;U2^2F7FU39LO2[:9MJI&0@DWIQL*EJK,X36W=+$Y[E0M7 M+CB;%J_%,M6[.!C\V$+*8Q@\+[H$:3X\SF&S: J"[?G=<8>G5S[9+Q?.!(U< M"2& T&"0C!./#'6ZXE'*,7\QV^0])E?,W/ >(\!N6>S AT,BI+0S@03,R=E] M,,U2.YC16.&=-QQLO'IB!0):ZV[@,JX=E6*9J M=#55-VN68BFI>"V!RSTP.%)9659+-C93-=VXS/%B;7VMJ:R;62Q22+'0Z++4E& MW5R5V331UE([G2TGH4H^:P:Y23Y;A<^,5^Q(7%%9632*LQO>KR?.IU]5N M."G1(]&S>RUC+M8R>:%B=!_D"028/W#EB\P!BK63S+HHB*Q;!DHIC)!#GAX[?W;"(96 ?0W"$7/CA-Y8+TO!MD[.#*.C=LT# MFCY[K$1799ZW5P@"S1(/5Z&U6*N,T8TE,>T),]7IJS3A[^8/2/1(]$CT;-5=VUP(KY[9T-MV9H.\[%E.*]^3A%B1^9$J)3C@\]N_$C7@1BTX'8 M^0E/4GL ^ 9_(6^4%MM)-5T]_XFQCQGF;D:%G/-[@;7/+Y\36+4<6/(J+?)Z.O51Y??;)F=6;G0"XNC4EPW>-5M<2/3L7"S7N MRMY<).BS*MS0-) )FSA8DN:D2)#HD>AI.'IJ2>PY'E8S!+;>#(%]#)=>=Z6; M+O2+%6? KS0!YO/KS8\L1O$:MU[G!3C7O-TR-./DK*.IG0I71\:_FDE;,CS9 M:/1LS=U9%)PLLCP%):^$X+T(HKCN4")#,T%/JO ?*0/VA,BD#)#HD>C9X0W2 M6TOH=K,D]%'<'84! &L8*:,P&"L1 [H88I.A8#1BB.QLFMP ,7IDESUOZN# MGNFK^MZ-=7*FJSVKK?;,V0%R,OZT9[2UY>R] EG-"MP.4,[&-9N29)I(,DOJ ML58DF9H*''N==4 6&6U)5'M"5/*:0J)'HJ?A:7KK2^2>D,CMC9TJ>4VTNE/E MO&!U''>;_!BVC?_"\3WND(5\5#3ET>OY5M2#O;9?A9WP5$.3ET;[ M0E,R(MEH]+R5_R*X?489ZAHPM+:M'D627B0[2_1(]#05/6_DFLP5MGJ3A.TQ M7.5# 7$L8-U(KVYL M:YB[I)T&TLX2"WTSTC$;1CJ'=4>PXE@WG<:Z&7*LV_IW!)VWF^MFZ-ATT%+; M>EO5M&.9+R")<45-W]E\V)FA8UZ?M7$FC22MPR*M56)UFXQS,(!XS]J6KG8E M[4G:*]/>&C,<5^T=90!A']E4+$EV*Y+=:P\]-'1,D^H::D_?5L=227N'07O& MAH, 5Z ]^^2L8[35KK&M1",Y/4E.3Y*A9XD>B9Z]T3)+9F$V;.*& 5KQ3.^I MNKUQX$N2HY06$CT2/0U'3QUAOB3VVSA9KC=,EA_6[9^YJKLLY7F:"]U2DWAH'C224Q[0DQU>HE.^OKO=GP),-H5Y&5 M')[4.(J2M342/1(]#?#6WFYXDF%8>S8\:>A&$\]YP8VR^80IGVK.4T=S>;?E M'NT'&+AZ#=]ZDQ[M!O:B,U1+]J/;&]J2,>M&HV<;%Y!OW '8^/_9>_OFM)$M M?_RMJ/C=W< M[M8#$@\R @3TK=U) J+5#Y]S^CP?+""HFR7M3!3(F@DRQ0/4\:CC.:"BNF\. M/6@6AU8JZHD]I0[TQ)XZ!W?^EJ5WCM?2J@SAZGC4\:CC4<>CCJ?)RI.QIISL M5O53#+LU[-JZW6]*XRJ%G3UZB+>"CMEN&'1.RT.XIO3.)S9F3R,6:N8VQ7?$ M#IQ-ENP2S^&Z OUU%M\Q.U1\QS),W=R^/G_5 SP"6^C9@+'LKM^D6]JZXCNF M@0BK*R5"0>M$H+6F@N/VU0!,JL7746Q-86\1>V^H*;9Q[*'9K2WV4,'NM&"W M\WICIM4:&H:A]P?JNE78RV)O][=MKS7LV5W=Z![%;7L.KK1::^\CCJ<)S/S(ZJB9@X;Q\M-R M_^VM]LX)1J O\?+93:N]8V*7[FY7-\VFA*2KM(=:Q?--BG_76R6EVVX-MV;( M"DR-++Y34/;V5WRGVRF#U>;%=Q2B&JT/J.-1QZ..IU9U;8_%=[I&W0YPY>Q9 MCY7O\W#\"*IVI 53]/8\!;[0R6+F3U@(*MKH56-/,R]X9?!4'&BHCD?35RU^ M9%J(2CD^].+&C^@(A'5KL?,3G@R9YZ"&A[]0'J75+ .<42U/&HX]D+QUY5U^O@ M#-MJ!L,^!Z>7JHIY,*_7-E4QNU05T]*[=K\A9@EE -N'=VOKJEY%9MNOH:.$ MPE 3,;1**=M?9;@N5H;KZ@.KKE!ZA;)F"OKJ>-3QJ..IQ=&U;Q9M"Q;=%$'@ M''Q-1QW,L.5"W\2,+J]Y(%C82UWO;6S<4K!35J^-1Q]/PX]ES+M/;>'*G63SY M'-PSWYU7/$D>!N?',&W\%_PU!6:K6%]E?@47A0YJ^-1Q]/4X]E3 MYLY29MMM$K,]!]<$G03EQ(3LD8&N\CCD<= MSTD>3Z6P<;.]89T$ND*NLS=(V@R% A;NG9_?@Q!?>!7'H3N:Q\[(8_?!=R=D M?EPF!EBM86=P^*APA2A%\$=]/-OEB>R/WGO-H/=S<#-LV:?T>%5;97E0QZ.. M1QV/.AYU/$TVJYIK[*I;-9NT^JUAMZOW.JJXX2EB9Z?0&30,.J=EGM^X3VF; M^I2:V]CE18<:OK+W)NS]))B#BI9TJ3F;CD/E<4.FL<=&II9-C4P'MJ4;VW>; MK/V$#V28.3"$&Z>V_^UP"-CXY!M&VV6RE5%#7]@>)BQ8MJ)41:F*4G=&J>:N M&__U.JVAU1[ I;MUK*XB947*YT7*U3S)A6[LJRKNK[U^C7J<18I:%;6>";56 M(M:==]SMF:VAT>OKIEVD8G7Q5E_@\M6=/1%ONC6G0[Z%J[9VZNVVAOV^I??M MO=BJ-CS!-]N/?Z78%/ASXCX/_P[_D=-]C0Z#RGHRICECC.!V_%?8#\T/8MXG 7-'<;NH"\+4]1U_[#H>S!@^H*3A MR^2H%E)S\P/Q2FVTY\X(YC$/%[^ MDSUN[%C9^<<_XS@S_/@H1 MP,79-G!;O_W#TG[S@I'CZ=J-/[[4''^BWNK\6/P1S&F&32 M.E;S/9@K,N3V^F'WT08PF>@'A>8,:T M-_QK 77;OAQ8)J)=>/;$BP4A7,)*?BU^;MF7AF&4?M6^[)1^OFRH3N>R9_8K M#;7\<\L\\4EUR[^20ZUQT:[TYG>LPG,E BPGJ4;Y;+^X*#1I_\N<,-(^^Q,V MR4E$V^Q)1KVHH-$T?+\V=VU77/XY;F&'MM!06UAU"__'\>=.^*J5;>"&)-LL M_;I\F==.]*A-O> ETJ9A\*0%,ZHM VH#ZG#/(+*SZ/V>T%,GR [QJM,*0*J: M+K!UNDSCUEK9]G2B-J1=1A'VK+JB")N31*8HX50IH;=+2N@!)=BZW5>4H"BA M\930WR4E8%)"7^]T5;G)_1U^IG8H^@I"!N<]=CVF^8G$AY_CO\:H,\S"X-F= M\&[,;U8:WI36<8Z_KTFU(.3WN2NAR6#\Q&8 0)<7.47_@/.$">3_/LRW7^+? O2&CTF!,QC?W$'L#G5F^DKMY@ ML)EHM/^*6_F9[V1E>L!R_J9N]8R&I.ZJK.\]W-FUH0<#[@U]T)C$;X6>/=S/ MM:''!/2T]8Y]8@T'C^4N_HYVFPA!@ W?,;(VGLX]BAB=^_&Y]1.L4;E.-O9+ M$'X2VWHE=K4RD72QWX[1:XJ\JC2@6A/@"A?TDORWU9 JHL9J#7M%,XPJD]HX MM-2H+]?*=GK$=KI-,;R&AJ&;_:UK?"B%IX$86F/BK@E# V"MMFX:JA'<*6)HS25=$X:P M,EA/-]M*=3X((*X?'?\!V^%H4\<-M6?L7+2J/>>9Z=([*2[_<1[!BZ((Z&;D M^K2MU\EV7V=W^RH,\7@H@H6?U(U_]81R\.UTR4^^NL[(]=SXM5.5% ?MUM#6 MX0^E;34?F#4* TV%8P>[S-K]K?TY"I,-Q.0:X:*IF*3.QZ:IC D' =AO#L@I M "Q,Q XB@ Y**K,00S7C5XJI8W_-W1EBX11&+HTX959BM8<_N;B$V*/VOB3A9(S=4QPEV/C6V*6NG<-)$G*RYR]?A MI.(5C'WS]$Z[*!;N'49G9BJ@GFA*_Z^IN=RMS"^Y2M)+, SEBQ>\W,GB567P M1W>642Q+IE3TQF&GQJNV F*RW'3J_F23BW^S,"A#4C]IJ=00;49!:H\:]DX@ M-6@:I,Y,0?[$IBP,V21);G1^LK>%OYV)Z+KIE2TWEB< W^.V7OD3^/,:/G2K M1Z4,[-;0L/1^N^A^5]K0<4-JTT"XNB%E8\N6@=ZU&Z 9*4CM5L'>%Z0ZK6%? M;[>+-0N4KKU;>&0S ]'(/6&C6'.C:(Z=\F #(A75_G8#=W9S;Z=?>-%H_^$: M=[6,"@R@ JNN.OY*26H24M;HW5618@)2C*(C1"'E^)&R1IU>C92*UR[/E.DT MI?K$.90*XJ$#$0;"92K_D(N"',N>B!EP6:13P2"XE-VG&9P+_LT9_S5WN6-# M%0E218+>#L./KN>Q"5:J8NXSUI=78M[VQAM0AT+,[OW$^)\WODPF^I'L M;:%J9 W497^*R-K4AK,39/4HF=SHJ,#'4X36IK:R^7^ MAS^JYWH_$[/GJHI!1?+ 8%\<]9]N_'@]CV"-+/P2!D]RUU.RJ:Z08:*;I?=Z MQ40W95H_;HRMJBNT7XS9K:&IF^UB:+F"V'%#;%7QH7U"S&RWJY$E@GD-J4 0W"$D>G,U/PZ\Q6*-"1V6[I#156O*W]"04\\\+@R M\5 ZFK&5=UTI9$V$UQH?T)[@95!8NXKL/3EXK7$<[0E>9FO8U?M-X%YGIO1+ MJXTVO;RJ MQ#ZDH75US:JRB XZ!G6S"7E>2E=M@ORS'F!%#'5 36TK ]H1(&BWP0N;,Z95 MM23,CE%;+0EE^'AK*@),FU)BV,\QBR)>%SH2&3$LB@$6,8._.:%/3Q*6L,N# MQV+J]\!#691!9"<^C[)(H;>+ ":&GY6U25$ZZ7$#[.T>D#4 *V*HVQH:]C8Q ML@I!QR,"[(LQ61BYT&X7 V-4SL*^BCYJXWD8HF*_K9/C/&3FRO&*M,G7?(]S MEKXB-?1:PUYOZZ1#I6J=UDU= 4#];>N'*NPTD.54OJ.7(J;B[3R@L-7&<*2: M=/1&7\G?6*R-G>@1.Q\\NQ-0M$>OV:(522G/;=3N41!.6'@1![/W> Y1X+D3 M3:[MQ(EIS?T-^X]%4K^+W?_X^D>$)==*:JE6IB8;;G=#-TH,\6\3=C<^Q2/0 MLLX9D6M2%':'2 -[@IFZ7=(43"'RG!&Y1N#8(2([6!ZCHW>[==7'V"DDA4 B M)R'WVP# +-)<_QD] M+#F!;I/28O4>QXX?.P=QG0Z6DG^!T>4JQ6GO1"$YDN9Y41"0YNGXL\\5=/,3 M-T[7F1S\W7FEUH#WP17N:,AD9T$6P1UU.\73$=],*E]%F+,YL'6SJ[(V3PU6 M:R3NG<+*; TMW6ZK:/13 ]4:H7FGH.JVAKV^;ML-8%7G4$\6-!_8K(D0YB(X M#:H3^_9:'^=AQUYWFXM=Q8(X=["GMU/X9#)' 9G)Q/@B]+%4I[&U 4/Y/1J( MEW77])OP@@F76UM@%5P:")=U%_ &<*EX[?8I"]PLMGE2_K&=7;WS_BQW^[CE^?.5//LM-KDPJZ$KNZYVMBFPJO:>)F*JJ3->'*9L7 M;AULTV9/8:J)F*JJ2]>&*1.3Y4S=WJI2J]*DJX>[S"-J;%KJ&=E&I3XU-^Y. MTD^6.'1OY%F\W:%K8F'-MJ7W[6WJ(50]RR/0Q\6;#PZ&.CMDCH> MJO?8\>.I@K=L SRM+-]A6K65[U!0:B"4*GC2ZF%-V!71'.A]JRFLZ1QL;_DH MEG'P]!3@'(+QGUHPG<*8_H,*9JGC^KZ)HCD(O0S(@S;Y#O>X"KOM-ZU:D@I< M.-#-O364!@I*IPRE"C?W!E#:X.9&'VP?"] V)03O''1OZ?_$()B1TL-W&Q3S M@\W$=M].:Y%VN^W6T.B5ZN$J;N&XH;3F)J\?2IW6L&[FK2!D\>XNG6VBYI5>_2:]&D_N6U,!4*#MNE&V6 M8[(GE%&E5=-H0";3>:G>TW*_MT:=4,Y,$=]!(NGME+Q*TM5TC;M:P5O9M96W M\I11M&'JZ)8HLMH*1<>&HEUDBZZ'T?J+VJ("I7K/:D WQ7/3R"=L%&NN.+TM M;NCCE6]W@J(B6;FMH M]QM01N8L%&51;:FH*&7P5!QHD1.[T?15BQ^9%C)>SU)[ M<>/'Q\##=6NQ\Q.>#)E'[47Q%SC@QHM7L_M_H/O\GUP[_S\ M9WH&7X+P[M$)V4?<\^O,EI?1F]4:#I07_ @ M(.+O3I^-K_U>THK/S:$[>+6 MKX-%]5M#:YNH-:60;]>?[)VHWO1+:7J_ZE2V$PU^2162&KQ1%GJCNK8^L.KJ MR]N($CFJ,=3!*S?5 4X;Y5'=;M?@*U6P/!%8;EFYJ098]MJMH3G0.YT:HN=/ MK7+3OFHI'>X]YR#Y?9Y.V9@Z6K&?XT?'?V!:")*[QO].:0PD&&(Q;OH+&G^> M@4Q\Y:=YNY3'=_UV^EGL^0_8\EL?F1C^_^=TBW^P* [=,:A2U$G&G^0_R#QY MXX^].6[I)S>:!9'C_0;;/H-?P+]YU.N<340SQ\ OL\'VT M:5X?&([MG3QR. M:PQ#38#CQB:FGO).GC16UUB8C@NKC7."[DY0/*K'3DNT*R_2B48]UQ^'#!NK MO .:HK_]@O78E4A7NTBW%0?Z#M,/0&7E1_1)'%7"E[*\CO._RHHL]A+4C4$Q MK49=F T'J=4:VGJWI/.6RLHY;GQN:LEK.#ZQH&5/MX\@H>>8Y)3K M9<*(1J)SYX,V8@^N[Z/_$?O#T3%O(*@<(5%5H2EKA_)(9A!;14;5<.('4EX5S2N:/VV5I=]YF\JB:%[1O*+Y(U5#^\;;U-"& M$CTI+[_&6%X6_IRXS\._PW\6?+M=X[)OP;'.@LC%E;ZG)#WWF7UX<2?QHSS2 MS _%:MKI3YP13'P>+_])9LYC.!@6[A^9!L[),I,3I.W(_O$##(A L/*, M;]<;1B.^=V-XVWB#+;QC3'/&F++I^*]H<^5EC.. *B8B?BG%4^2$.![,&#Z@ MK)_+_!XT$!_?_F%IOWG!R/%T[<8?7Y):?#[$=<)L6DM35W!]^^WN]NO- MIZO[SY^TNWOXX_?/W^[OM-LOVO75W7]K7[[>_O.N\:MXY_I:_!C,88Q)],O2 MZ>:)!B-4D-:&-+C 5VEO M^->"T&W[LM_N(ZT+"Y%XL6 #E["27XN?=[N7O6Z_]*OV9:?T\V5#=7J77=NJ M--3RSRW3//%)K=[T#5UFI4;ACK6):XV35*-L?U]<%(*T_V5.&&F?_0G+F_>V MV9,-8NI+A)R&[]B([ HN+3'7A#-0U&71+88UUR?*WFHB.P)2G4BKH&M MYH_,JU5NA""OULR!;0!X $B AED4;Q.'I*%[0@E1BA9.E1;6Y'=M2PO=UK"K&T93VG@K4E"D\-;TL6U)P6H-K>I1 M2BH,N+H\-PZ>&"\KN$'HUW'3Z(F2XEH)#8_X'D\8J;$R*?9:0[.MFT:Q:FA# M0DH53H\#IVNEI^UPVF\-#5OOE:0U*9PJG-8IVFR'TP$U,#?Z>P[17Y*1;JF, M].9+*MTR..^>\Y-WUXBY /EL_=+>NQ]!I38F!?_& MPW^)[E %_M7$M$&;*GG83;% *>I0U%%58]DA=730/MLQFU+GYAS:R7RC^."9 M\TJQF2CI!_$C"[5@!'/C)=.HP1OCEEUG_-? MTX;!;Y8HE6YYY+2_1J),NH*_A; M;)6D#ZRZ:@,H(XLBA$/)BUL1 E:\U,V2 M-GR*#AJ#%44'&PF#6]$!]J+4C;8R*^[OZ'^PL>=$D3N%"='9!U/-!U$^'WPX+L5VX8/[!-L&ZX(Z%0):)5;^S $9+>;1D#G8(OD M'6:9YN'Y*=/CV6B::UM!D2#Y%5%QFP9! *'/PY!5#LRW.^B1,P8JXDN11N-) M8XTQLF[2,) TNK8*%5:DT7C26&.?7$L:1?2;K:'9KYC^JFR26QRW$.>I/M6R M))CR ,@7-WZ$!Y^> IQT,/Y3V23/15MC3*^T,7,^*WO1&5)4;1QH(X0M='&Y@84JVD&%$4WBFXJ=U78X:72 M U5K^[I'=5H7EW8^..]:^V?9]Z&[O.\#3A=![ Z8/;#LL=7N#UT_P\%I^V;1?2-DDX1"P4#+I"SPM<#/"#Q42AXP6 %9,M:3=0W M^KY/[?B[,7R[O?]\I]W?:KFV#%]NOEU]N[ZY^IIIT-#XI>1:,N@:^SEF6&@8 M75D:L"'GES(*VV =RR"[(4GV6ZL9?&= A6+V7.?$D(F/6B=IHBGN[V_S)QAN M7'09Y,T]M^&#X[O_INOW.F'V\(^/3N1&M]/O(8NP,#9]-(_@Y5'TB47CT)V) M._P*+HXY7?#?X<=C()=[>-]'C^YO>6OW6\)2,6>3JUA\AK.!H9P9'ELX9ZUA M=C9$A=^<> X''TPU^7+M=B;DAT@* 6*I"X<+WXE7\N&2JM/X+S>F[T]X+$".W7C2(LR+%5[!]/Q&%;@8=ZK#B3/",%& M^\,UET/H7X#G()1?I .+[W[1W$ASM%D8/*-4B3")V?C1AX4^P)AP_*AXN?&K MYD01["1*+/1Q-/>H'A")%0@EG289!=/X!1F-,YMYTC&.8M!L#C+JF)Z9A>XS M"#]:!'.'J8T]EUK8$M=B6"0^="( \QAQJVLP.L8)PM/ALSMF$7\[?0]CZQK< MYQ[0 (I3P.O\9S<,?%Z(GL_H@05PA#'*7'#:?[(81@@X :"81C.$.Y[G.SNC M,' FE]H]3"2SB9W^AR@SS[$WA^=QLG]"^<#LF4+8UN:IS4X')@#.IH=+.AO@^G?R"% M^#__/[O7MPNZY3$OZ8\%MG1*:SO!XT*3B!M%P.MANCOLPJ(.K<8E??WVFZ*O MXUC2Q[GKX4Q1AGD(G2>0M7R'QTDJ:CN.)7WV0:QC\-L%!GGDRSK)D\IH.=HC M*$#QH_:?SM/L@Q8Y4Q:_*I([CB5=N\^NMXYE'OD:3_#8?J0F!RT&)3T2?KY2 M64617V.7=#O10G>^]@1GZ2FSYC&E'WP)0N9'[EB9-X]C27F+"Y<^?0RL M@'^%+ KFH;K[CHG^OH+8P@-FM6@^FP6A,KDT_LQ^!/!Z9)FDM:>!)XKLCN8( M/^.+'KC"$,\GKKKWFG]FORU(F[G +N%T$$%?BA*/YE1___Q='%X:[J=-6 03 MVV$COY)DCU\7@DRKA!3#4AH>4VQH\2V$7[@^#UR>8)QO M2)'7F4!O*G#@I*0Q2W?Z 7TMCN>]XO=L)L:B0&B?8I#O< ;T]BO:;D=[)R+/ MZ86_75U]3P+/\10?G6>FC1CS<78SF.5$F\U#[ @08] XCAS.\YIX0 M/,3Z[MAX'E+_67KB\\_Q(\5,I^%^VKM,7/S=YVOY>A[CO7XCL]'>8E.*NUL2 MG7^I77D>_#IFH<@*S+J*^71'CH?&URBS#0RCN7U'[.PX"^O+XEVI%=C3YJSV MBXN9H=_AT6 B>0?@\1BY!%^*]K_,"8\MTR.3: #X1D-$1%!*L0A4._<0<\#W M-,OXU3)A1/8G/$&+?H5%:\RGV+N T^(=&J8FSJLV]H*(141)G]B8/8U8R)-\ MS0Y\^N[ED?'J)B'E$0A*G@)3"%YP.$P<]B

&C M:(-)X.<,BZI,@53&CX4Q*DQ)_ +(^ K3)?@FZ7)3C+9AZOA?@^==P-\ZDI(G ML(D:[N!BXNWB15&)FOZ(V.WTQ;!$/+EDD<=(:OR6 M2:J0+^'XA=LPN;P :'_-74!;)E@+D?WD_,DP(HCO#$\EPEY$,Y'_].C$FC.= MLG',[S2B=*QJ_L0O% 'T]=<1C5S(,Z?++%HU Q0 1EC'%.DSG7N2W/04 (F& M#/,],YE>N$=S.+C0HW=-X?+B0X_=<#Q_@GG1]859=@^T@.PPKL]K=I#$]NRX M'JI]0*_C>)YA:W"C>A-MXL+FA%J4"N<@8TS#X E'7;6P-*^*#\%H0GS0$,MS[!L*UL\K3Y(].]Z<0#*C^QNM"AZ70QPJC [? "OU-1^.(HI ]>'B MSE, /\YL67*])& M;T^*=-D4\GO3Z5Y2%M\7QPTUA$*60.81/[*,!(^MM48R^1=XQ\CU93=7F4Y( M9\91)7BCB[L..*%$0;CU0:YVJ2TL< ?)!8+RRFGZZHNUW.0C]E/6O#B?@A?6 M\H(7JG:%JEVQR0K.O';%,8S1FX.+KJZ2^991Z;JI@L!)LB4^9:R*D?X65)A#Z5-,&W@S+I MLU=14T6;SNF^!C44N??+HSM^Y%;M)[0#<@L]6/:*"XU+Z0W@];1#9#^C-C)7UR7E&S9S]A+53U1!N'; *K"MWH3V&CA'F/ M'/]/N6!:!8H246*Z%S5;M$]B2VY\D7@ [PGAVA%"0?(I%5GANT.O@!L)OX,) MY+8ALW.7VN^IB6C$/!.!FMF(8"+ETXB R0\$P81VNRIU%):XPC6/X_B4+KR)!E0+:(8:156 MDJ_,!,-/Z!EB-/B!+-$$DB-W=J+P2$:O^!'VL]/^#RE;/M D0B[51$!)F/:> M\QL =T*WP0?M,7B!QT)=6UK6U9^C:V6QLJN9ZZ!AK*6)[RS$#X!E=)*JK:C M2/K 'O7%%@'_47U>_7KG9<&\!L5YT2E6G=J@WJGURK=LP7^;&,$70('25L;+ M%I6ZE; 631+J[ A;@G]UX!8&,%WG0MN>)^%P;_@.;@8/G&TK1T;8^W"X"?I M3-YKYM4\4IR-K,G#N"1NAKPTS/')3F9 FS0C^BD M_:7)%0*264A>S%RYAA&+7S#F1LCN,P?#)[>_,*@+S*W I3^L<,KHU>S@+ M#NZYG[A!_YH'Y"<-,D5/G!.#A-_^:3QYP*9<+ M=?B/'")&0R&2QP5Q%E#Q/2=<@H$"A""/#A'ZCG@)/"W8$B5= M\#94I,3DWYK\-ACA14QB LZ$4%KVXB9&0KP)6&9#@37W,T=!AY>.!)21A,LMY>AK5$:&U*+1>;# MF?/*/W']<8 F1.[2*K-]GO#Z"[&8F%+ VDEL:[E+:A" M'*. 1/AR(>"RK0L-#]^Q&(PI]3Z2RYTP?$W#<*A!W:[V@,>2+>Y#5NO$*0'< M,IC+V!QE5 :(5=$CX%H$(Q$LT6HKY2L^!D@^#R+N1,9LP:?L)^I!;$)EO&79 M>A+IJ/.-B-+.[PGM;^&<5LTZDO(ENARCQ&[EA(E:19]3?T8*/0LHEHS3*97R M]D1T:\Z$BHS621N"B]Z DN_S,6%P8=EZA?U!2,L&@O+UPJ([?G10080MA#>, M-Z??QK#EO*YR-0:<23GUW=)4D+VJ!MZ;M.*:N:HB,#RZXS@66' MO)MU&;"X$ %'SHT,*G7A_TA">G.^[=S52C]#?B"#37/L$H,S\;M8\)W,2[C2 MF&%$.BBP%(',9("KC&BXU'Z3L0U.@J_"4%G=4_"TU+&5;U\JM>'LO'T6+QTZ MRR[%,VG0'ZJ]:P("LWM4LC^\M/L%DO''Y=HB5^N?I$;I<)6$K$8X>6# M\<;<8R:#2]B"R!0EN0=RUDNW&F[RWV2ZDYYS>S#_P7F@+@WQHQM.+M!P@':& M"9LQXEV90$HT\P%[<'D"!+P4_^:6AF#+.:?1Z0L'DCN,-^[_PIC,"?V+8![G MKS&\'Y-L"17+62&6LZ=B.54LIXKEW$DLIUD:R]E='LO)C?XEK@#C0,;_E;OE M1&2!7G(M9B\I9/(\ XBB:J2"E?J42NXRKFIF!=LT&+-H5<@$]BPYOI)841,5?R.PSHM; %PEU^8F2V<+!,*R@$!*=7_X'&O.=FUTP2;RA M%KSX:%E8SB3(!!FR)\#IF*D6OC8IM M/IFMN-R,Q?3Q9Y>]R%()%SPJGKV1^V:)DC+/1<(UD@O6Y$A)8CZ;+ Z05I[E!AC-+MLGQ**Q#PF-EB/\ MN%ES>\Z.+QR\8P\UN*G+E6_AAQ!?YD/3TDH9\XA4Q=\QS$&[=D(/XSF?1"$+ M$1H4S#BO 3+G$6L3!@)LHN4BE8@9<&/%XERE[Y ??N9F#W@2[(0MA.YE6:F( M2Y)F+1'Z@60'WT8BRO^190B1S+R7N5(Z,!PR 49NB F3_^"6XBC=0$(&S_TE ME]I"RB^&&O/T?R]X86'F_N=52>0#Z>=C8*!I9"+"!JVH<^KV^!/V^4ERQ4V@ M?JG]X<4BW$K/&7IP IY'@<=IS*ZP@PM+??ZF2-.1LW;P+ [E,:TR]Y")/AT^ MF027K#@-R),JJP^";!Q$H)4N>3&0T8H)EUU9^L S?$*%)B[PB?_\ +.A(_BW# M_; P T99/Z$30V@FV):W?'HD+TJ>GDBLY*V& V#RZH_8=.X!CWQ.3<;<&GD) M7 ?H!LL\8)J>D(:Q=HPORLU'0I 36A1=J/!"],#!U?() [C';NHM!"88QM(_ MZ-)&P87"KT>X1(#IX^E4,#CYR #D]Z2N\+IY6*VAMVEU5C?!/\I_>_8$'[-)9UP2U0O++XR MJM=OWM$!U]P-<+NMH5DOJUAIS"9!9/_&=T4Y8JKNBTVW[^,QKY"7\_KZO)Y M4M&+?+[8[6!],?)^XPU=N6H5N1J4W O%+?*9&JD4@)F6;$+O,/J/-4QVY;D+ MX]1[GZ\N"IN (;&,&Z5R,?+%- @J#X+.06$D1Q\UE1V]F6(:H!@K"(4M3,Z' M_70CC*?/AOD)'V;!@2928S$6?^H%+WG[D4Z6( 7 M!1GQ)MF$V^G7P'_XBIFI9+&(_AN$G"]!"%=8[NYZ/W5_LLG%OUD8)$GB[?02 MZR<7^4;3Z^]Y>H-JT^OM>7IV:^@'A0S[]1]DP8R9%P\RG06Y^E*S^(L391S0 M=::YR]AOD(5NDM!>OC'+_#]&29Z[<:1Y[FGH.^QWN@$:WX%C\PXEJW%71^B3 M2Y<\CG[J$,+8=U%G*^-=IC!ND)!X>/M"R'?6F\_C:C8HWEN6PK#4&76IW2\& MU:?Y:4E-1N[7)Y;,Z_^4#96_9$74?B3S^47=\4((_XILA25A3VE9ETI9#/F= M.;JHO%R$9U+PXR$E+U$,9$$>@UV]FC^ 3J-UJ/+1&^6SK! & AA_ >(SK1#_ M%_9V<6,>0OG$XD>,)+GR)>P?A30A(F( !U,WC&2-3Y6,4"49H:^2$50R@DI& MV$DR0KN3M9-NKAX@THSZ3X8499>F'D M;@F/.1,:PUE(=..A)EREQ$I]GOLG!F53Y#%JI8G6G[_QG87RT/A[JB9*/\1< MSX6L<=DCI6QILE#J$Q8G!/G>#YY$@:TD=QL^G,B\40JF$;_525+#NJ>9$IQ< MJ,&%\X! +I3!90-7LA^+N^Z"<@.G\"*^9XF:+J["9+,CN0G\0(.LI2$.L*-ZR>M%IB@7>..D:8Y\XT(ER'2OL@:%QS"8/SQJ3RB5SKQL MV#UU/77_FLNR#YP:(O$BWIH&\X-S&=-C/[.1MR&3J<1< MD":))9.K@"(NG?2"[2F[:!1_@C&/@LI*];D&,+D0WWFT.N.57I9THS+B-D9(F*2-)=DKBME.LX*^';#4VF2\^E&Y'->?K-:OYB%<&XA M3"HMS@S\)< D#K2B>\&#GG["I5,X\T=WAO9#JL^*=H,(*69>@&'1:7-?$+)%"-T2Q:=:>-OR@#;.6801N%:SKYCI@G*A3+NUFG:!Z^!V M8H9 $VR\:WM>-I]?[,1*O<;.>HL7#AG/4HOK-9DYHPK65:-3S?B[QG1>TZ2, M6@WF-4W*W(T=^B%K%RTR[05[=)KN83(:Z6XS:'$XU8>FR&+B4O\C*R4O*T9BB(G+X3+5 DPI(Q^>U6-1?N?\U M67ZV,A:THT=94YH[I$2U) $-H:^@"NYCZ4U0 M_#,$3%:"C-4K&8%*O>:?3=]3&#KM1H$OR5B*,L4,1;-6YU]!2*[ Z0("TP7Q MSA?R_>6C2?# GCZY$8$"QWZXWC1)G!L##_Q,Y9O/U>ML?!!)!/'7X+P M3]PO4-LCD3)-911F@>OSINCE.W2+]"N)#*4DXH.LH][HC5S"UYN ,3ZLMT8L;$S MI^K8V'/('0NC6P))494@#+Q$JQ:7SF5R&Z7S)!.*YXR"4->B^0C9-QKOT,HJ M,9PUP69G>:G]MM#O \&<(#];/@^;3,F;+[.G>>*NVFNBWO8PAM4:VNTZVG/4 MVQ[&Z+6&@]*V(6_ISU%O?QBC7[YGR_K#++8+JM@<9K-KN5E\;H%$,JR%2[+> M_&EV$48"#7FTQ:RPS^UB,W1J:75.WS"+=<6Q66M : \H>%F2V84%M M6^\9Q3X_DA;)ZU&1'H]1\'C;G544+Q8$A1?I14R<#\$H=EP_2B[CO"FK>[K,M[:5%._3HC#K^#;J>T$/%P5'8=F9W6L%/'%6Z5=]BJ>;8&S+;(+=]V ML5OEC;=JGK%9OK^[NNZ/SE.QNG-!5N%^="I>(MV-+I$?,K/F>ZH\W":Z0^5K MHPNB9]?6K4ZQ!QLN-,WC6:*KZ&DOVTJ+M8Q#K!84@%[?U VS9+5NE'9:X$7! M"DKB(U8'_QFOSN2SWK:6S^+=@%9XY'9Z1]HPGQRO<= I3?>C1L'I"GM9CI,D M'XINPK+PUJ+91!8)K;+*0N[D/E<)2HE1R'P7J[S,&&2G%*>+X"1[@C./'V'A M_Q9J-EF&1NBA3=JG+=8V78+Z2^W[$M5=ZMN!3P%:V#981J>3DSY])[:#EL8U M,2_QSZ0=5LBFV,6<"VYSS\L,E6_V+,M3)@FXU$0 ]U%#H@]:"3CX84B M98M5K(H2N7V< 4J$KL/3CU.Y3?)0E-[D BW4Z':%4*U!RI46X5J MJU#MVD.UA5N\Q%EN+ WDXX'<9>'=O94N]:9(\8F1_"G332AI>O6$Z^0798[3 M\Q;$F=LT%33X."@Y)L%;HH(K72&9"+YH',R8KLG 9BE%PZT#H-+S<=' H_&F MY)X"T3:,1]5R%QCIS" M!K,7^-$Y51,6 MC-29=, A8Q#/RAO/81:O/&H8'&38T.[19;R< M!?X2]@I^'/CX4W+]X*,8OTR]$W41GQUE%HZIXN3XG /T0K1KB1Z<" AA(TI] M6KP4AZMJZV M>!62)?R+:QE]-C!$;TXMQ^0X MO" VA?SS3M6OF4A],04Y.-_C)!!?IBD@ZYZ)E.)(-'^E:O\+PXBXZ:0I 2=6 MRAGF R)S23HO""X@6\E2.V7>D7%U/&MJ#5NZS>E@42X:9X&UDQ\)N;B<\=%Q MX*LEK9Y7&ALY'PU)8^<^-DI?N<"-SM[/N4Q?E-80N415.161,J%(@Q1W(WZ/ M;2 P0F8&)XFTXN'5SBOARAKT::_#]R7Q!KRH%P;$4NX5]:=HXO%4KDF^-+#B MH %O5#8@2K"35#3>O)%\3A_KF0N'<-$9'(Q(*':O]^%P^YO?FT[WDIQ[]RNC M_$2882I2DPSZ!+(QT"N99I& II@ 1G7DB853RME8=)@1A1)(5L$:6$G;SS2< MC[-@;$I ;(!?X FA9F9#DC/XJ9LQ RY[.'('9)*@15 MB_IZN)Z'4PJYJ(@3XW'P&2N4;+U(XIT0@_#GW+SL3V1&AY@[2?&RG+Y.MYN( MP)'W"_\9E6X5Q:30P3A)4O=D"!"]/6F+G55$.+&*_H91-A0*+SP>(.Y$P)WSEK/> .KA %NQ-=,16/5:8S8[BR*+=+HPR,/L>4%H .\S-)[$!G;@0X_!W!OD0D+8GM M(L-*"DS.CUWJ[\.]%V3IX7(DO[VDHR)=(9]OU@DC@D8<2J=9-/R\,*Y0419. MVIEEBIW+W*2U3Q2'0E&.1(L#7E!@DNIG'O,?,-FQF?'Q%275+XGP?5#!M%F9 M*YQ$FB&R;\8?_ S[YY$Q^#%EZ%/L 3EV8RJ.A3G>$RF;L) >TM/^>OQ"$#WR MRAA-1BH4P5A"?EM\[_&FD0@Y0+O*% O[P1Y$K[4HR1OZ* MSR;%AS8&9&/8=&*#_R@*YAX;29&<2O$LPK:[F(^E2[U1F%\I@1^[^ECME@Z)&38I(Q(G.LP.;LFM0RC*&1D06CT MHE=-B<',1S%6'1%>/.F[2GA1/DDI-;YF<4:KH_QN43(Z6:!80_)*#*!+!DM< M:&F!Z^2*8,^+/8BS#I[GP'O.N O2DE&)9$Z(YIL/BJTLO96OU4,E1)/8)*# M>>KRI(N$SE 9!W=GN.#F*#0B:.]280#.D=P93T\LY*=*S_VBKRMZI**ARL*F&%45%FLE+DT[DE9$]]P>_RW&\&M3IZ@;$24LM[N M?K]3Q42+0T8$1=E*:NMWL_6_\>Q +:FIFEJ@3T"/(J$[38!,M2.TRJ'9)ZE' MVS&2!(Z"7B';+"=VN4)=">F)7*+X)+F8W&D%ZL4#ZDS4P#G 0A)77F)Q0?M. MX.<6,<-H)+A?O-=D@& Z+62+\,'(7N:QI) "_> "GH\6=2L>QX(Q9NC!0K-. MG%WYT1W_'R6&BH(BG8FBD_JO#+*2[O79/(RP7JJ6B=6139_#]%#%RTBTE1%< M#(-8I0]\(9]+/D^QCPLX3+*>,C#\3<(V,>#P*+0(?4X1^VLNVC"4FGS21@]N M:H!,&FB7[531I+-(/!XVN) 54JC^2&D2R5X<-,)"0_'8;B&V<<&RDS.R2-U)'%M,60Q$T7+*8<@KP4OKX$(B M<8<'B&Y3+_%J0OT"L901^CJ6MD8R[6,LA9A9W;%=CIFI2R:!L7%"G*"*[W / MIG$"27"U*#1%E]J3R,: Q^LDH._\ M7,;3L%WU\?$TL8.PKN/T?29--:1<3H& ?%$Q+HJR-JA1!.ES%(^1EG?]%ESR MVZ_?;4O1JEDQ,V4'=# #!DB)^=JNV?V3(1OBDT],%/[)G4:VJ@"6UN8Y24#6 M&(T1OF8JV$=)"7LI(V-T0WE_/*H0G?CJ,IDU\W 61$("I%3ZM%M?6CP?U7KG MI^8Y+Z <766:D*1F *FQEZG_$[E0'$1,4!1OHH0F*MVTKH%.A%M$TT878YB- M3"P;/^L3Y2Y:ZC7@)U%$LN26SV3Z9-FZ]&P+8)JSZ(\28X#)GZS0UP3K],YF M,'O95R4;:HMAC&.'9V7*=$2A?.@X>='9@ILIDG(@[D_*-I1:BA! _@773S1Q MQ[+*0R;)2Y(\3ZK"B,3?TT7D>AWS%B\LVF G4I]QV1$+=:20OU::XB7P?Y][ MIUAMZN8NGP5&4HKK\1]G\IHVK6O84,:> MZ&U)O>Y4($A)/I*B 1"$SZ8B%(HH1OI7>544;J_)4XDC [M$^R>B,UX5!;34 M%\H +*7<"!0^1TK,\C5)\D\2EB6*5&?F@LR'Q9)&,V-?X-@7G"N(1E)Z%CC% M+-!U&Q+))J<>!,0X\SFUX MB@E:F=#, +IV''O\!)*0Q_(-S4>09&MQ)\F_^7-[F+O\[D;F VPOOY%IE1V* MM89ESV.*W:1 "T?&.#U1E K0CY][?VK#):F.]BJ0M@BLR0+;(MMQ)0FO>'FD MEYI4G=Y44 5E1W? [(%ECZUV;V!V3:L],CNV.; ,H]<936VG^W^=-GH%5U+O M/CP;_7)7+O:S,$EXZH!\4$VJACE<<TG:A6])VX0=#='NOQ3/B![C$(M@M+571Y:4J3C&Z>^6QWX!DP":G M'-R^7 U=JHP6"Z3 9R4=2)9CO234H+LJU* I M^1CEYR5I7KN:!#.\*MKNX\@2N$%H5W=_8%6 OKVHMUO6C.= MFR?TW@N8@>C'#X,T57D^G]QH[ 5H*CAP5YT6[J78Q]8OPIV&G\UG$\H)#]/) M1V+RDV3R4KGG2QW)[!'>=2)9(=5MS!3%R RY29!L5IHZYQ#97EN%R*H0614B M6W_!0"[%ELBVRPL&[4R7K9M(QEI3,"RE7$FN!B$2:I-O/ M]:/+IMIM8A[\Q,8\(NUWYT^XFM^UKF\__=[Z151 $'XY$7W$'*IXA7P>BVQP MJSBWGXFI_!?%N)%5+:026IF[AY(1Q=429:\;8;V.W5C4(TH-3AFV3W Y".J_44]Z\G<2RVZN3$:'1D *S(V(#P<<9>8<'-5%( M'79!YY%O,J8J4W8@*\J0X\7A*D-3>XG4YJZMF+2TV:*7\^ RZX!%UH'E/+C< M/&<=3G5)B&<3U:5Q+7L759<4&V4JRR;X:%+\Y5HT60LJD9U3B;(WDO/P #>G MR/5/VP<[HP#S,C/N8KR$8FS@EW)S-/"'G._#/,:NY\K"ME@ $4N>1%GVL]"> M..?ZGCGN9-FE(8MR288L2EV^X2[IEK%CNJ03GIP=MM1CE#8+0$_4*XMYTP!! M%MBVTYG 3?+LN![O,HDQ%Q%&38]930S?WIKA;X+XDDMA4X^,OR>G\6L0#?67B'.D*)>;M7<\.'F$P3W/7*C&K S!&T5.#7\# MRO]84>2!9:K>B J.-&:$):\Q!I^&R;26X^PQV]AC[C^S2 1IQ+#=^%<^QB7< MCVA%FI1-6@0HB9:\ 3;3H&*\^ M*2^,U6C-5@:>@8L!?>"02<$+>R313B2S@ MG#-92 Q0YM5SV4],1(\X4X5?8, FW5*\^G+Z--6#1NZ7BN*2X6:WB)Z5 0UB MRY(?I(D N7)BB_6ADS5[KV+5SRR[0M$=6)8Y@/'%,<@;"GWOHCRVJ/\E!L>+ M"$:^D*,VT66Q-BYE!5!+$(IY(X($*,=H&:EL&FTK\,V6]V_CDRATO+*RL<+M M0J@P'(L\E;ODJ'EK2#;AG=V>9G,>3G$[76305Q2P=;-7 M[/FVHJ7>D@7V&KC 06O8[QIZK]]9$NY==9']!BX2!*%^OZ^#I%0,(L<63\NX M\&(SOK*\GF+!\I!QSEEQYSK-VSBKW1IV;-TH:7!<&?T-!+\%PHMAZ79)ZM*; ML-] Z%L&0%\',B\"OW!+9"[0-$,"[]%LE@3%\\GK@AOP)D)2*0Y8O&QDYW9> MPTFH5XN7KN@8X.8;P&<*CR9Z'^E\3RQ>-)U5DN7O1+7/XIZ3V'CE3X0L=H^: M9%'2MZID531)3DC#0+GW-%O-:\&8( 6RC%2,!++)D MF[RIX)&PWHUJ57&;H? _2Q9ZS1GQ!;/-EN M3]+'!"$2IT3?*X:,:W)M1[-?Q%T3BZ=L?9S;KBV6?XY;*)*^U196W<+_"&)%NR4(RN:"VG NN>UV6BRIB/U5B7U,A9=?$WCO0;-]*['T@ M=ENW^XK8%;$W8VTU%AC:-;$/#C3;MQ*[#<3>USO=8G&GAA"[T$T6LG),;K:M M246"T:@$JL=VKXXU[5TGI/=_8CYU=]Q0\Z]WVW?\V#FHZ#PH:P,7TM+#-:IM M2.G-?D37WUOB!OXIMO>*[^XWB@2ZG9)[,[I-][C"]9=ZEWL8'V#I[4%/;W>+ M,0)'*RXJ@&T>N;%;@&$MRJ[>MTR];Q9C&!3 3@)@J^-F=@LP@P#6,2W=-(L: M\$%EX,V1-J7_'=7E_SD)YDVB?E9%XI'9GGJ+ODD8*-F@TR2EU<+ #;:)X%W& MA$I)@US%L-FC>2?8JS#$&E>4=U.9OLS6T.P!][:*,785B:L< MY#OCW@NOJ\R]SP9RJ\6# T"NBP;-MFX/BB'-"G(G ;G5 L,!((<.,WN@=SJ] MAD#N'.P'J0A!>484TLF%A4RS"2?MX_TVT>%LI/ :1(=KRA%\H%3:&W$F=^)E M%2FJUQH:7=TRBH9JI?2=!-QJ$!MJA%N?#%G=DO8<"FXG ;<:1(8:X88]DPS= M-HV&P.T<+ Z?-D]3VL;&(/QQ(D&DQ"6W-%;S#*CP3;X*<7 %@U]EJK,YD^]W M==.H2U"OZ;B/0*U4P*[;1U(7L/O<#6?TVGIGH("M@'UHWTQMP.;NOY[5T\W: MK'D'!#:)6;^2.%FI!\=&U6_/KX!Q9WD!XPIELCI&4B9+E3U698\W6<&9ESUN M9C4YJQG5Y*J5GLB$]'[^:^[&K[B4M#1FL=A$OZ2J:=\HEI6[J]@YB(]1,O+N M.P>5GVEF9_Y+XWNS0=^:)4LKW[3&-(I9N1%W6(ACXH2O7-P)L/FDN]B)XY3: MVO.3N<7"X.'X4>OP%/K.0@MUP#0U?08!%C#R$F+94%^;@20'9"OU?J!VI+-2:QQ>5HWT('=Y- MG#K_"9@!0X+-7P5%*74WXPN8']&D,C[GCZ]%C_2+$T[H/_]@U+&4 ZV3 M@Q80W_C]9!Y.G-=TOZW6T&PO7@ 7\(@FZNW";L+.CA_A;97K>+4/0Q_D$.SH MMEG2"#Q3:U<@B!/%+5]M0A9EY",Z:RXR#B*>2RWE0E89%\)K.FW)FJ%!/=/T MT:6>F Q0.Z'Z2;,P&#/&JU Z,_C73^I/Z;U6; 2_)DWXNW@-5A:[$84X;Z>9 M5**JR4-]=))UVWK/+F%0LFGI9#Y.JB\)^25?OJBZFI0 A:.X@E/QM(Z9/8H<7:;%2O&KW/$G_6TS75O+SZ3:*1C[/@7T M'77TCE7"37=^"'66I^Y8#6\8VGMCP]"/\P@&C"+8M)'+>X*LE.CM$N'4+DKT MTL(F+-&R#[Z ::_>K:>'B-=*.G[F[0C_X<;8;7\FTQY_[N 5X3F5QZR1GC@@06P M:*H8';/QHP^+?GCEW>>#:?R"FO](0NU=ZQ\W=W!Q3H%[:5_-_W;"T(TN-?B0 MBC;*'C^\M/!\%(U#EWCN!6]5G@P8)1.1U0 =N*Q?(Y>SY4R'=QQ(_HKZP(QE M,P-X[@I_%+MC:FW@:'-?WC'D2_"-@NS*Q3]0X8M%O#OJ6;)45[^=H7UH9[QTM^ MR\BX<8#(<:(H $S$HM$2;X:$\Q+K)SFS"?$""^-77HTW#BX!*DPCIM[I M-*U'"DXKTKZ+"Q=7-><)ZE7 MY$Q!A4,VM&>\2Y/CAAHVVQ!=L$ /")\[;G."#'!VYQ' M>4O\$'4A84A;7*9,!*]SX#_EHR-^S"! MP;E20ISZW_QD>#,RL;QQ' "AS2->&!A)'Q ;/4K!DU:<6_!K[M2=I,H_,"7V MC$I^=N+8+E07I8=YF?H%4.CP. FSD1#ED7YTT1F-,U9JC9/9[J.KY@^2PATK"MA<^T?M$7) 4$>\@>0=- 2TY&'HGXA1X):43*#*#>AZ(' MWA@5&2Q%^N1&U#PPUS$6.=5X#GK]$QEIQF$@P(J +TF:6'G 6MELH\>W5D< MJ $._1 \L] G@H@8@5R0E>S15"(ZQ(MD!^BN)DYT#RA.H)O=M'6K5U8(/3WQ M:@NRUBC&W,@5W0=7',)RA2SZ#<^M\B(PD[-CZWVS& '#>UQ$CPC$:HM85YT) M[VYQ=5>>L-D:]DJS3I%8$-\!4+T?Q(*I59OXFDHS"47 #WFTH M UW_@4S[*L*^R]7+S@RZ"##=*K, YSN]_%?>.K M0F0I0\OL7X&QK7//R1BT]#H1]\NDZ#HYN#/YC/D M](>"87X[A$?\RI_(#2G9 [L-DE])O:3$ZR+.DA:=WP;N4:3^-]3[!KNTA&1^ MB\D_GKAT\K?V3C"1WQR1&I7;IJ_RPBS;A Y&H4P)N$D@2)WCJS6,$^8(#8/A)N782?6C!Q%-G'WKSGC30K9TRB8 MD(0&\@>BVIV"_HEW/$ILPIO^.FNT'-7LJ\8V-KMJE !850!LEL_.J.ZS.TD) MMK\N@*8^RC(WHJQ4=C76&[J0#39\U=W=B*[]-?$VNQ1=;8L280RCK!'C&V77 M=>NI6W:U0:6P],&@F//\1MFUOR;T9AOCG-VG<,QVB2T1^P_G[7-1U8EOZ#JN M3>BV06WHEAD:]RITUTA ZX7NBL?-4X,'94%594)Y3AI_(=FK?CE\4YA4DL,K M[8O51DU%-^RB7P#$=%]$DXI@CZ=@PCRM0ECZ^26L&<:)ZC/-?%]P:WH8?D!3HEFOB=W90K.V MVA@+8NMMHUC.OP[5>DW SE[C7JRVA>I3?W!H=U>-)%:SYFVU,:_/TONER:%K M-6^\!G>B>F\(HUVJWGTTEW5*K#;+5&\E5BJQR*G(:U7/8:-#&"0J)87'C6&?<4 N^AUY2'1./A,IR^+8IRXR'@TQ M%HGHW)E%[+W\RX>)&\T\Y_6]Z],^T8\^ MB,&$<0\M@@M%M.@@^=?"UF7;E_UV'\U=HG"I>+&PA%W"OO]:_-P87!J&5?I5 M^[)3^OFRH3KP [O\JV5#+?_<'/34I-2DFCNIU32S85O)\A*-G4W:3W);9:,: M4"*_K+_QY-&LW3CCM7=R:]\&_:6=7%?7G6SX]OSCYFX#9*Q?[9EL%^;(J?W: M?+\H.UIMV.8;=A_$CE!R343AN=/=W.UDUR%:$V"[**4'>0;7A(0L52*;JY M?9]71:C-@JPBU+4WZG$1JD$E9_J]NEHL*DIM"&85I>X@<6AGE#IU?[+)Q;]9 M&)01J=D:4HUEXX.B4D6E9T:EU6,,#WF?8MBNWAT4PS2;1JCGT,OXH^MY(B!L M[H_X/]+:$9&./0VV:6)\2GTM#VW%G8I/64T?D/LV5=2&R1RJ6;6[M7E"0;" D]VJ8JPN2HFS'UG9TA<@&(G*O%JBZ M$(GMFMJZ-2BFNRE(G@ D]VEJJ0N26.Q&[]M=AK\D M)_@PD#R'8++8'J!131YJMF;3 8E2S]%LEIB,O"?&:N5INA8;J=_1.+A MRK34 8%#[]3F]VJ W5S!<*V=H'DP-$@3ZQ;3UQ4,CQ^&RVP#>X!A$6EF:VA9 MBMV=(LZ6:?S-8W?=UK"KFU9=D=8*AHV"X1(M_R#L#FL*F8K=G23.ENCNS6-W M6+5)MQL#PW/P^7\/@QG#JD7H]XY?BPB;6:\IW61 M>-!)U6F*J4M97X_5C[\"W34UP=)RC:T2KHD*DB> "3WZ*FO#Y(& MHHHVYN+?EM>UR/UOJ=XW4FB M<%\>^I4H7%GLP.S77>Q 0;!1$-R7\WZ#ZW;0&EJU%9-3SOGU0*&BU-M$T9^) MR6N/+GDZDF^!/\XFJ53AUW9M_%J97YN(Q3VZZI=@L8"Y+B9"6MK^R@PF(3L;A'Q_K& MO ]=+5O;'I73?&/ W"RV#WZ_5"_?UO:E?J]^O^_?UV14X\S?;C@M7\\C>#D+ MM9!YQ*ZC1W>F[&S+;\!!>W\W8,IH*_ODNE9K:%IZ3\7!PEYK:)FZ MI5*R3A.%QG&@L(])6)9BA:<)PCV:1[8!X: UM#MZ3Z4"GB8*N\>!0LP,U'MM MQ0I/$H3648#0PG3 GFXV)D6U)J/=<6C\]Z$S800,E>RRG)+V:.?>AI(Z/+'6 M:D@\F@I[K!6$>PSIV@:$!JI71J^NQIT*A(T"X1YCN7(@+.+,!)QMG["M4-9$ ME.TQIF8;5M?%3E%6>^L4;07"!H+0/I1KIX@S"UA=;VOU2*&LB2@[#M>-174H MVW930'B>7GE--B^0XD" M81-!>"@?4Q%G=FMH;U_;1*&LB2@[#B=2KXVJ>,]6_4A/$H2'\K\4<=9I#;N6 M0ME)HNPX'"P]*@PYZ#:E&?A9NE?J(#%;UQBB"$7S0 A2NSM7N6JIMVVA \ M#E]3K]<:]G2CW92R:@J%]:*P"6E"JQFA*B!YXA!L@O]F-00'38/@67GXV6G"K#$I.GU,T=D^9%C!K)$P.PZO2K^+KKUN8TI] MU^DM-_L-5Z/O@]CQM*O29@WK%CP*P@D++^)@]A[7&P6>.]'DE-<25^.VXF^[ M6__I,)5]=JTH*V:\ 3NQ0 ^T]>[VT3=5C_E 9F-%IHI,#]G0XXUDV@,%IZ_; M_;I\B(I,&X561:8-ZX/R1C+MMX9]O=M3EZFBTG.ETGWVCWDCE0ZPFTQ7']AU MM715=-HHN"HZ;5C?G3?2J0U"KVZIVU11Z?E2Z1Y=N6^CTD$;9%Y3[UA;9^7O M@TS/H:5PYF3/+.3K75.-LYE/*M-7!Z35GFZ9Q3R:7Y3+\;@1N$>[XS8(Q.Z; MIMXKJ=BF$'C<"-RG26T;!)I4@][2#;(- BPH"&463I0+@D0-PCRK^-@#LD11H#XK1W'M'X#FT(?[$IBP, ML3"+\U/SME3ICS^?G-E2%557UOK&-:J5R[-:P:Q<#V178CAML^]3IZ^%\=AM[[^B]$A^6 F/C MP-A4[7X3+*XLDF%WFE8D0X'Q:%7]FCBC@>EFEE%L";5WQG@.KOMO+-8<.EO- M$8=;U;9RME%"E=??;,;25+L'0+0R$S%;0[.K=TI,AV]+6FU$)-\*\[:B446C MA[0'O85&NZUAKZ,/!G6U/5$TVBBH*AIMF)GL+31JH3#>ZZMK5)'HN9+H/HV+ M;R%1])*WVWJ_NW43946DBD@;M/"F6EW?0J1]#">UN^H>521ZMB2Z1U/T6TAT MT!I:(.O6UA5L'UEE*6K)$/GFTQ[S1CJ56?^JG,(E[P._,B% M/2%.I:ZRV11/UG MQM[G,',?PI2XRQ1Q\PU1 [<9W']/@7^'L*E\A]FM8=_2S?[6JF!SO/F*4DZ6 M4I9TP-@#I?3:;BE : R9%*()0 M#JFH=%M#&U3ZSM;M-U10=!737@QS97ZL,2?T+X)YG"1$OW(K'YKWEMCV-LH_ M.-Y2 W48PU;X?);14\;)<^./Y_C1YHDNO79]G=E538LF JUZ-]4= :VG@';2 M0*L>5%T):$5 ]3%,6G4:/$4P+;56[ Y- X6F4T73,GU^%W?@!HJ+#4C3#7MK M_XK"6A.QMD=Y:SW6.MA;7.^8=642J6IAZ]'".U/F#E4UJ-S5^D^'<=1H$>A4 M9A.=FL-C&A&&K?I[* (\C*6D.@$:=4?=* IL%! 5!>[7A%2= LW6T-:[?=7A M2M'?N=)?G5:WZ@38Q1BAKM[M*!)4)'BN)%BCJ;(Z!5H@A'9UP]C:"JX(4!%@ M@Q9^(/MM=0(4%2NZW:/0 L\AX.GSSS$<-F(DD](8P RU^)%ISA,L#PM$1A', M%!M$!/2Y7ZP=J;W[+0@F+Z[G56[1(0Z1[\-[$TYJ$LQ''DL.\FSY5/T;=$*, M;#>%*"6*:ZHNT.OT6\-N1^\,:JXN4 ,8FETB1+$#Q0X.7_.R=G8P: W[?;TW MV#JJ6[$#Q0X4.]AS>J] MOI(.%#]0_.#8BH;6S@\ZP \ZNJ'8@6('BAT<78'2VMD!-LBR0%LHM@X\1G9 M[I5?8]PW^'/B/@_ELK[!!H7N>/AW^% NXLD)'UR?IM*71.GZN/?OS1X5/]TS MR@Q$F3QB[<6)M! P ?LUT49.!/\%T*4^%&WTJKT\NN-'^FPV#\>/\) V@V4R MC?T<,X8_Q.^FCAMJSXXW9UHP7>IMP23TS.ANQ!'@Q''HCN:TJ=)9$[(9?( P MX<^(44<"U,F8.GW\$H1_ BQA5JZOS3P'_B+?%;WZ# X!=@]&'L'GXT>7/<-D MIF'PA$]$C \6N?BVZ%*[8TS#4@B:K6L2G#LZ)AKQO1L#RL95#@X7=^/'CO_@ MXIYQ"M[Q7%?.3$>NH$WG(6QH"(? >02YY?PL.)S)O^91_,30/P?G\9!=D"MX M$IR-FZZ-8^@R.8F4YL94]F!.K\E1G9A9UX*ISP)^KN]#YL&3S^S#BSN)'R6_ MS?Q*,)1V^A-G!+QC'B__289MC&'N+#P00??,A=W)_/)&&^3ED-P6 M#?\^"I&=9J==W^C[/H!O_["TW[Q@Y'@ZT.7XDO!\-Q]%[L1U0F ^2Q?:F!7< MWG^^T^YOM>O;;W>W7V\^7=U__J1]N?EV]>WZYNJK=G.7\L[% M.RR8PQB32*=["L6 1R=DVL2)G5_*B&6!GPCII=NW0;!:=J5WC.;!E_P2KE) M;Y9[&.&C1S6*I*AI-[-0T\+W@!?J)QL6,& M:^"WTM*]@'_)76!OV@=^1[HH(FNOS DCS6@;IH[_-71B&?"WSJ6F%43*'&#+ MH2I66K)^8RF +5Y_GS8@N05)> ;8>LXL8N_E7SY,W @$J]?WKD_@HQ]]$&.) MJQ/OVP7!F:B#?YW>))=M?IN(*"7Q9O'U)7SU:_%SJWUIM0>E7[4O.Z6?+QNJ MT[VTNF:EH99_;IGE+SF=2?56#K4FW*QB5?\2ZP6_2@ZDI?=+M72DVJ55M$Y_ M[<89K[V36_LY),[_%@816@F>&=PJT>Z"E4_,*[!G&NV!3&SK=L\Z!B(]A\2H&W\ M8I/K((JCJF@RJ=ROU2_R:;W:"JK;;.I:00<4/;UG%@M@\%.IM(KJ6FU=JS!: M0U,W^D6SKY[QW'NO^H+;_B+D+X5UP%NU&5"I ^#%T($@&TY!?33Z'Z*/RR M(3MP(LWE<2WX=2Z84WMT)EHPYF6Z-2?F,:0,=IO.#Z:5&9[&3>)&^3^V&:MS MJ>$6IEN3#8N$3Y]="KMEL,&:B]5,GF:NEPDHP;8EM]'>K(=J2U!Z;,D M.L4HC4XQ"6A1!DV914C\("H$]'"#@ER(*>S';![. HS*"7SOE5\P\ L_B#6? M8:D8)P3R@-],X'JE"POP]Q#6@-\LSCQZ3R>ATN"E"Y+!(,- M@X>6Q[FI,*%F1>0T>S7YL$8JG]4L%;*GA+^9QKMI)D5/)(VNJ$I[FR6@Z"YV!@ MZ\;V_9!4K(>BNP8M? >VO3KI#L,@.X;>,51I=T5WYTIW&UJCZZ0[JS7L]RR] M9VX=\Z#"INH!S#<6"P/GDJT_'>(_43+>0FR%P^?NY*^@*U4FYEYKV#5U8U Q MEV WM^&*2T\AN.$(WD( W [!6.J[JYM&1>UK[PA604$GA_DMA*_M,#\ S-MZ M?_N^CG4&^)RX+?*C$[ECC3DANLNCU-U?5=H]97(O6^+QDOMW%M[A":\4UHP* MU3\^"_#(@0E2"7VW4_JV6T/C54UD33A2**)JWM+431VS51=-M(%/9 M$84BBF,ABO[.B:+3&IJ75EV]%96Q;3T./KE84W&RN21X.F1\XM1:FUPG(%)& MKP9)=A7I55G;%&1W+'6M@*Q)D*TH=RGSFC*O-4Z*6@'R+LI1YM;*A4J8RR3@ M7&62,UY8R+0G9Y(42"\F2< 7/!4CG^L13(OEM/'9D$T]-HX72K=GBG O5&_7 M^8^P6CQ- .1=^#GE'\!.V#VP++'5KLW,+NFU1Z9'=L<6(;1ZXRFMM/]OPXV+UR=O5*GW:P"OQ$5$]R%@\\J?W&(!^!]LS-QGI+[H MDQN-O2":AZQ8K[=K%3."NE:Q7N]!CN:CZWFB9<$?_HC_([.N!*"+E7I79=G0 MXBIN\=WXD4WF'A7P&5->'.TW[3SL]Q>98)3.K62C>X4M;7[Z8>8 YO( PO0 M.$=T(I&B&+W?)+WRB#*9>N9E>U MHV=I?D[OLMN\I"&J(#QAH#D*XNB]YJ#B@=H7[QN M$78AC*=S3W/$L2^5W(QJFU'*,)I'.._JO*7DSGX)PD]B7XO4=(WU,_S*'2F[ M-M8!,NUB/:9?]FVGK*%DGD+5YOQXEZBRVHBJ;KWBII:3D#LLW!0U M"H<;_#ZST)*FZMN.ON?9G8,(]$>)5TPETYQJB'1%*>8:'L9A_NG&C]?S"-;$ M0FH33R:HMW)7$[AKQ]*M$BU'91$T!D:*1#:2.W9#(EA5Q]([[;J:"RISK#+' M'MH]/V=N"M+'[GJ$/>C6'Y1R(LI?D3&63&RHE+I2+:2RZ]4MR%J+[ M\LP%R]XP'-85;KI=J+$ZD\!I7'<*KA^RJ/X=SS&!R/N)^3 M=-/*=4W##[!EF@K=49$$>PGPJRKG]:A_9Z^V"\_QFZ,;L(IE/2B.8^VFJP^S@5Z-F&EVX: MLG3D)+"&F6XFC- AW,(95.:O7>*O_6+Q^,V)I3GA;PI7&_?@V#6N>-!+>YL, M,A4TMH59BOF3-QFD\B'JY>Z;Y;K'2:O,=6Y-LQG-WK.?*[.7'IFQ:NMY4L>9 M'DB=4)2L*/F8#=+]F@S2!Z;D#2(.5E9M%:?61??U+."E:]^'S(,GGUGJM?Z/ M?-" 6&8[_8DS@D7-X^4_*7@8#Q19T.LNU$7-_+="152CDU1$?4QR#V?. [L8 MAS4>1.W&=T,UD M[2TNM#$KN+W_?*?=WVK7M]_N;K_>?+JZ__Q)^W+S[>K;]4$>_YNX,ZRZO*M;;&Q2+]?8&Q6*]3*RB/%>Y.[9G5Y2 M,Y>_H^3-QE%4L?U>T]&4'(A=LBUV\4"RY\%RYU%20OCSPG4JO$W1[1G3 MK7%\=-LANC5JSBL\2'#<,4D)U\'3; ["VW+)H,2E?H2>\TH.+?/XR,< \NGH MMEW1'[:_QGSG!Z-.YPAQA.T=+7W0Z>T71^>@D-W-PV?&+5=3EWDKE+$3CV*J M1D1KP@N:2$3=UK!GZ)955YG]"44H_M7_:MAC/>^R!VO&UDY^V,H\=-5D' TON]HV@X64U8/Y;K0]193L\70)0>\&G*[W7647XC6>V&H 98 MUJ2K]TJJ*RS+-U-"^^$J(S<+.YW6L-O5.T:1&>\*.VJK' MJNU<86K)CGB2 ?=96S?J%A!5H67%&!1CV+F-!H[1PE+)2O@??!PW*,;7+QI%* M+2I>M26RL6*ME0N5LP?3Y&U>(&0OF&O M^L3T-14OWUQ >KS%H4_\Y,;@V(<[^,6Y2$JSW7W5GH<3,DH\\C3.GU:Q1*7% M:$%Y[;N%H1.&[\@M_L/Q$B(,WL$1S"!Z3&M0R2O&HC1RP \7 MHH>(A@]YW*!4%,>NJ6QO9[FK#+]0M68J2_6N*2NLE;OR0;5Z4$97MZVC52LK M9ONJ=*F.?TD-UC_S[4Z=(MU=>[#7V+VR*ZT=:IH/F/Y5B%!*NQG].W%3HJ3U M&9I<>NND-_I7$L6;TUNY\-;9NB"$?_I"VI]M^"Z\A/ T+XWN83\/\>_-'\]W MPCCQZ38/[.(P_^AK%N=RJ>]O,ZL(,:ZA[.CA\0LG>^!%X]O/LK84C>=[[;KG M6+;2Z=F2:*NMZ'O"*1FX=AU%N[;4 L]/(C% #YRWGRPKPI:TS;T5P<0,+%FTU(,U@;>;9!(X6S(--V_#:X+) MZO0T43*;:FS"H=1**&W9?Y9A8X,-.I@YBF.F'9A9T^ZVSBYJ%4&F) &"N-6Y M3 1M(@1,C#IP"<+;4N308YIN2BI;3$JV*LAT.)C;!5*\_>QE-6Z*VFB&_*6$A M7;F>DS=@OSC@-!GEZYV>Q4'3 M#4PHRZI?AQ[YC'P X!AFB;316.\W/\[4M? M25&Y;8*\83=OV-T(>\7>ML+L]&!PHJVWO2EW Z=/7%NYMC;DVT^X*46N7$45 M#?/@'%&NP5R#N0;7TN#:^W\;8G.NIUQ/N9XV=?1RQ(,76>KTC+*Z[G[PPC65 M:^HE:VJ#Q*S[[F!EN=/3%4W4#[^4.;.V5A D;J1Y:@5=CZ)W;^*!V'=1FXJ:#F''DRV#&6:9ZX00,J) M(#:[F!W9B&HK@I$204@2*^60O(ZV6>#L>/'81#*>C*PBHES1FIA#B4THU22P*\AV8F$Q M?U-TR SL^CEP"L Y'6>7J2 -B@1AO\RQ=,U8:H@TVE24IHEK.:"8 M2Q*&H4 ME36*FFLX;6N^7%O:E!Q\Z4?TS0OHQL.K=-3+5NTY9-4?M9:OC96 MJW %Y@I)XC*JN@?YBM'I*167Z\W6 MCG(%Y@I\.0K, !^24=&"8P Y-J?HD.H#32D[1%-O9QT(CC^J-X\M^C">>=I@Q\4+;M\RBZ, MPV J.(5R-,'U:>-F*@&L#Q+<2"#96(0X$ 8$)IJ/!P<"WQ@&4R+$SD]AEH2S M(")15T@#)R+ZR=4JY=,?&99-:SY!W6A3_A$D>#^((M2 M?_3&A6]EWDM:?,49@*-*XO5?*94BGLE[&/J*= I_3L)%(?4KN1F R/^Z<<8P MV$^.]^:\1^A"B_X1G&/V<%.!MZ^;>^:U;S#VA%];*.OL1V$6[UA5U9J9B'K_ M.PC1=Q>'W=S33[T CW_JPF]>,' \47CPAUVJJ,_)(')'KA.Z)%H[469F\/1R M_RR\/ FW3X_/3U\?[OHO]W?"EX?'_N/M0_^K\/P"/_C]_K&0P,OJ5#Z BXTG M00+/&$4B.-^;.^?AQ,(03SR-/[B@OL@7\%NCA8OZ-/G MOV# _0)/^0RAU5\+FP_FGX GF"$BPH1LE!XKX7=)>*+@DU@4P$OE!=WISDB5 MQ$7XMO*KK.!;>",A/@:<&02=;]&GM0I3$(;>(K8;J6M8:C-T*7)75>H1YYR MPX4/B@_J"(-2S:/Q LEZ2WF!%FP9F5W=@7#DTB6Q!V_(5=&LI-G)81!%= MQ MZX3A.PR<_B,]O^&L-77%"1OZ9)K0HY)8&_=W1$;-U1[N.DQ&W]C<>[NT%=W4#_$DX$6Z:A!=_50M?=>IB.GH* M101^-'%G\V.Z1D=D=/4=AE1Q.8)K=J-V*\Z/!DY$\ &= MW@=Y]01UCYS]2\MCJ9KBY62BR.J61MT;SHEIJ%?[$A3SOF5--(RFN%L8J#3B M^M$F_:C)FK"_@A2"]V+<7EME:%JU(4H5E<-M;*/*M:5-VG(J98&]66W%,-+B M0_WP[G%<.[AV'%\[MA3A-AYKF9V>HBBB;1_,K\+U@^O'"6*M_16DJ5C+0LY6 M4=(U'FIQ9;E09[)/J(547:HNVEI9,:Z#Y^%LIXLOH3,B='%;>**HK#E1W(F; MY4KH]4"W3AH6:A*&A:)J':S*G*Z1S3!J?T U%$9I6.IBB:I2+D3D9*#,H>M4 MX-HC[M"43D^#<+RI@E8.)J; I&UA%VK<]2%=F2%:5E,,)1Q/;+F^ P#5E.O3 M &*P45(;:+W.T74IUHJZOC)6L(^)?G#SK8;0'Z=!E=7U4R+;_(/BHF'@,?IC"=D;B--]D:O\G> MKLCJ:<,.7>GT9$VT#V\^P@]W/Z":\0?AD2! MI*JL]"CF:&H635N:N#3M^PR99N&P4PO)\=2P[]L?4 WY/B.]V5"EM4X-K']ZFT$L]06,-_*PGK&1YH41/30OH,NQ M-B>^E3"T3D]3#/!;39WU\0["7*^O1*]KQ:AGOQTR\ +2MD5#:B S@FLYU_(K MT?+3*/D^.P4#:6$,T>2^FVLUU^KC:?6);^H,K!F4(2:OX#3D>LWUFNMU4S'Y MV6],#0NY1W315AH@'^%:SK7\2K3\-$J^3TR.*1"&)&IJN>"_C;Z;'O[_#VUL M76B;G2YZC[9F*_74/GVFFG)( R7A*/EU.W8[SWP'&0D 8@?>'CKXVQO\I ## M=",A@,$+)(H!<.!L!+R_$STL=VX5-J!RQB^51^=]I'@ M@%?P]=&I2T<:CMKIZ1<)3O6"P:G+1T*#MA\XE2,-!R\#I(M$I]8F=.)R8WR8 M.-Z.^*P1P-8"A+&7:]>U(PW'O%3CJ;<)GG6-IWXD-%A5:-@.3N-(P[%W-IXK MG]D\WM71/@\G9)1XY&G<'_X[<4,RVK!9_?S^N_.O(+SUG"AZ@8=^]H+A7_,A M6Q#D$-BMSN#Q<9B0M,@I!]_4"5]=/]U"*OFAB.N/B!]_4HU9?/I=/L7JRX3 M6GA>\ 9;6(%N0H4HF<)HX2$10E1(OP_X= "TSBL1$KJ.&5R#,6S]-V=U"4XF M6@%6&5^C2(HJXI^**#C^"/\F?RJ9G#62 T%EP\QV]>G>' 3F.;.(?,K_\NO( MC6:>\_[)]>FTZ9=^S1Z6;?4KS A=E_37O[ZYHWB"QR%=*3T2R5+TLC=GO^[" MK_ZG_'/=[BI6]:^DKESY\W6/DN6N(=NU'K7^Y[IZX8-2E(V/VK&I_8[-P2O. M.(>@TB1D*O<2%6Z'#O>7.G?EBN18>+BI=K13"';!6.^HQ7^O2@?&1UUKI],QN M:8?!E_H$2UTZ##[R4JN=GM4MG70.L9ND6Y,BKB8?AW=()W_7N5E;Z M[AP2$%T"'$MW,$>&HXG&164I/+VDU2Q=81UY-3'GDZU]Y26M9ND*ZLBKB7=! M6\*X:]A/5'#%7_N&HG3[>%PDVA+?4!QQ-4]\_&C+?#6/N)HG/F"T%5S-S=O# M:]A0;.(WO?9-Q8D/0FVUTS,:.K&X7B*I__I_EB(KOW(6.;X\N]3.K"I;=2:1 MSDX*5K&X42 _9\2/,"R*FH5 MO0F$D$0S,L046N^]NYQJMU>^9##>X#*_)'$2DN+D[E-8OZ"BEC,G;;.%F9-] MFOMX1X9D.B!A:OY42M M C[9!Q' 9W^091N!\(1?A\09QR047/A)E&5W1COE5^KM2:^T]*ZF,9E^N/GE M.Z8?LK73J,XN^Y)B[Y^ O6M-L ,;E_AQ(WO,?;-1F-N @@'4FM[B-":\2V,E MJ#U_MC<3)V+[*T58L9F M7=FP@=*9#E8Y'^P)!,1-UCY\L):D-=:CH?$U/5)."_X;)>[Z"37N2_>YV:II M>/M:)M":7[K^LGS+GDU66GS%&<"\DGC]5TI7ZB3>,Y;OMXI\X7,2):Q'; MTNVA+AF6JJFZ-%!E6[5T (X\&-N.]G^R8G;R;TW"Q77D*[D90)#SUPV-_-K"%78VL@$W]/13 M+]OCG[KPFQ<,'$\4'OQAEZ8O/">#R!VY3NB2:.U$F9G!T\O]L_#R)-P^/3X_ M?7VXZ[_!(D\(Q1) KDYY"@ M89LX(1%&3NRL4?CV_='\),P(:.OKC-P/;"*)+ISHZ$71$E83F.R)#WU@V"5R:@?9S_#]RPG M-V5/%0J/79LBO'^&%C+:K8Z^.O_*DHQ2_M6*@UE,$5[8BNRL3,;>8O+"&VQ6 MBQE1PH6E1!EJ5[+JI3ZM360RNIJFLI9=A8,R.+G;"M3S%$0ASSZ\PF2L%4'( M::;TU=7^W"9A".LBS/#$$5;;/AS?MY.S#Q5$:N<U-H#CEV%;?%,FR3\S0>ZK(7:G9XJ*S1P^2YT5USD^RGOR9)^^L,:C^#T)R5"G<"V'@]-2J=GB(9L,(*F:XA6/Q.?C-UX/Z-Z M'2'&;E'J_73F!>^$Y +=5P>P":*HJ>7VUCQ:;3^4=HM6FX*2AE "T# "I6L( M6O/-?Y ?\N0<,#QJ/2AJG1^:99FO=4MZ+5FGD:K4U#$9CU190M .D>KA"#(Z M/4W4M8/-*8].=\; $Q+@\-!T[\L]%%\Y<6C?>,+L]%11.5P!>&C*()2VW5HU M"R6KTU-$3>.E_F>N.#E>\OP5W6X?+)W+L2*[G94T8$!L",9,45,./B=I=BG9 M3D/A:LS5N,%SJL/56)% C351E2] C==4>BU7=E7Q&>]8T:1*\XHF1DLUY#U+ M->[((-Y4BJ'(Y5(,12Z78CRN*[Q84_^0/J/BR2+X@W$K)*EGQ2 M9QI@=86&<.9158L-4P?HQD5X&H"VIOVCYR:EK)QY?/'.)=6L\.*= M*R_>>2:^&X3","0C-Q;&SK#9@ITKVI9=SZY+-J7-^Z[E>.'6"<-W$$-*6UY[ MZP5QBVSKHJDW=:%U"2)I;4$V+) M "Q9HF8?7++ KYYW1L,7UW?\(4GI"W@FY"%4>RC'Y<+AVAI@8AZ;)I7[RO%, MR/8C:,O-73,(LC 13#,.KJCEF9#U,B&+1^@\.-T04&RQHXT&%#8$%*)L'6Q. M>6S*))2V&-0FH80W_+)HR1HC4+J&T!373X!-?T(#U&$0Q9$H^"1&MJUB7]LK8:/UM-;#/XP9XBHE%! M379R_%Q#P$K3S=-SU,VY((<$LH?=VK"G-@U:W:^!__I"PBDZN+X_NG5F+BP( MW?@5DJ$>_*&7H)2R!,[?G3@):49G;?520;UD3335IHB6F.#^:RA,OF:@;C'O M)P+2J'4Z7Q6)U! M9#5BR_=%ED&O@663\T.=#AP[)'.+@D>B2!@N6_$]O2CO378" 5V./6K$T]4V M1"9V)]5%S6CJT/^\/;:S6BT45N[\7;;%@VSJ6PSYAL0[EF]MMB" M/XV+2[&F+Y5JM["6[4L"3&0X-2O>3/;4_-FVEU#JEN0=O1"-;.K&783A6IL>9U2V5669X?63,". MT%=8>982,-*;]T;*S>J8949@4>URP?AH9VHU?7WQW!77T]38C"UBA^]DYKS3 M\O>G\;?0]8?NS/$>_$=X[,L;\7Z0W^$=D]I1G"8U>PS)UB%_"P^2P CI>QDA MGJAV:MW#^.'E+:BMIFO3Y7>:+"2!BMMO:[!WU32,_-K.7XMUQJC4^6[:\>Z M.F81&Z+1='8FN[=OZR_!C@<%^L1/>%OJ#G>X!_*%?O*:1+$@J_1&3A8^0) B=&Z](,)637=.3#H?18Q.'-C2?"9\?_"R\<^Q1+CB@\=OM=X4-G MY>?X5GS>:.KZ;A1C'YP?1'!>84"B$+W!0U%:@H>O"^G;/1+'F.4USAGLL$2. MA*ELT@RP]-.8&Q;&[VFT%PN$>'L*(WI- MG-#QXR",NL*W),0JO#B?[A9)ID.9A>2'&R01RC)TWGR!7L4.@^G4C>E& YAC\<%R/I@S$$W") MKY,5NV=DMBK?%&2&+S4[?D'H#KU,I:6PLUD8P&3AIZ!J-25K;Y;LMS" ;<(H M^A(&4Y1RE(NYMABQ%%^U*CG6A#B MZ2$_P:KB)P8Y$J+"6ZA)6M;=C \4K> L1-<*3XV2X20U^?3=!8>#_^X*GZN> MO<5(4CA$9)C SX4!>#-A[(8 !/I27'G/)3Y.$PUS#,;7I6X)_LAMMQ-%)+6B M!4M.(;C]W5X4 'JQ;@>M/0!K.(18"_$R)@[-JYF!:-R8BJ[H=*F,_YW [/%K M\(@0<[IR32B)\;V&0% (,!*(ZA 6CE? >#+#%R]'-662\$*D4_IR$BX21 M5W(S@"7[ZX8>+WQRO#?G/<)PN!@D0H28/=S$(''=W+,(_ ;WDO!K"V6=_2C, M]B]6559*)J+>_P["_^FM#54/?/JI%^#Q3UWXS0L&CB<*#_ZP2ZW$69^:E\ MH/8(/ L0B2"$Q@2W#].T.9"8.]\K%*6]=T%U,KN MK&-,DSS;P9_Y\>4E:$ M5?T\?GG(+/^#?W"(I4OI)=J.(59_8QZG/UK]549SGNV/DAB=Z8A&!(Y'F46R M4&*;>\(HI9YTK2V-%1E+;VNB''4C S1*WL0 MN[3MW&*OP&] G!!W222D450L_ #_0/<$L/N'L;U-7 PW0R+B+Y=WZ<$,Y098 M=M/#!T>X3R!&I_5=PW?Z '",PB>X)?$I:. G/#]]^2Y\>,[BS2?8J_DX M#R%E[D!U^ [?_2A P'L'*OXN/+O3&0P)OR<*,R^)4!6) R,;8L"'D=ILYKE# M.O!T>?#\!$8TP-_3D<#R!!!,I +GKXV_H MYZ+2&MT3K^SOKH_G8U]P<+=T;+?!EH5&JN^NO'ZA MLPH;% O!8N2Q@)(I8WJS>5X^XT=[#"*E*N+2:(T>KN-'*M:G;!%WVFDN%^*< MHE5?->Y2093_K&4W5ZSEU'D7)LZ/%*UD/$;?BK51[M1=/=L!\Y6QS@KTMF : MP._3"X5X@C&."(N)(*9+@*Y^F"I"^AD8!3TV$P6Z\TO/@1TA#D$B&9S!Y24> M?2U5D]O4P*CK0^@R_T7AE*AHD/'=KT[Z MS/RCA0%$Z="=\1BFB5$'C5@67TE?YZ?E8X,D$S9GD6%HQ?S"K;\$'+D=LK:#')%%.8FE(/!(Z./_%2:S>/B. MHP>K^X,&PO!$SP5TCIPT7LZ_^*]D])I=/H5H7?V(QL-> ,N'SZ>(S$Q.!LGB MK9FW:*LJT-/$- J___[PW,\"U1EL*BL,$?LN;RML*?"B59C!;F BP 1=F,(H M@N J>"74'E!5FU\WTA_E*8*I:7H+$F]$?248C@3O-(3.=P!?Z Y1KM_2#W?H M@S)X@S/Q$<,9*+9F$L,&L*WTS)]"Z*,($,RN-,5 -R2*B@GC!4,&#'WU7*;'.+4 'OL^9W8:FJHG ^@$F H= []L0/ MYV@08=\(<*>9'+"4$X+(0>31G6EZ[8#WX^DCZ? _+J3FQ+2_05SO4&13 A\F MT.3R^9J/OE]X>^U#$A-$5GT&)J[LO/'@7GAUZ35+YM'S.ZH,J#N&W-*J_5&[ MIGX^$T19*4=ETM_4]8=9IL'\ZSN:"7J!7?.\; ]B MW=]"\#*U<4$)_4VIG.\)L0:56)$*.8T=RA+)+K6QK "6#5&SY08N,K98K4.'BD2ZDJA*99J[+?0B M&ZZEEG5RYZ.1_\9.W0@8](M9L+A\EAWDX6OQTFNITW?]PVYMXU$W1D7_R ;5 M3\=4/.FN.MTVL/=BMQPI_E)6W(I-%3[$M8@-_F6H2X:E:JHN#5395BU=40QY M,+8=[?]DI"?<;.1.<>A3W8\96?P$61'^Z_^!;LOS'.ISV)RY/ZC%.O05HII; MNDZON/6^$BZ=2XA!^.E]!= .XK/2P*>"?*)[T]E$^& MVI6L>M1.:XF:C*ZFJ:RQ1^&@C";8HRZ%8TE)>^9D]0IYS'"%9%,K@L@"K49X MI]I4M7B[QM*)PH" $2J>H[Y7L))Q%BG.(E5S=Y4'-[!#&6#6S_IP9N_^EH:9 M]IL^O)/)*>*Q=.N+$FA9G>U^VN$G,)?PG"XBZ]2@GL3L^H.(/?J +'\2D[D2^!,1MM!\9V,DF%^X9DGY;Q3FSC/U9@Z(W)E MC:AJM?9LQES.(XCYDCR-YS\#!*+?835J*Y!,VX)6I$3PMK+MQEXSAOJH MV*,M:16#@9;&%Q2^YE6#F.>5_NWCL@4O7%F'Y*:8.PX?&SMNF)[I7V:P>YCY MCF#\\+<]=2E?F8(&?4_7XB7X3GY?+,33^ LLPY^X"K5U2J7$W];N]IP'RZP' MRR?!#3(>BG9%>W >2#?2"GS=I:B8%_+0G&]:(W!(1'W-G9:WY%"=X,C.U#L] M392,:SDYY\ALRZ6.:;3I4N>"PO&*[M[K7,%E1MSGM>![-ELVL51$M)43AT,\ MECZE#=T7&Q:84DFT])K]*'BL?$A"S4%-MI=]%N?[/H& +L?P-.^4'@-_F-N> MLGE!&D_MX.Z[C:\HV\DY7*>Y3I\UF"CJ=+UXPI+PT$"SRK59;53Y-93_R^6! M&YH 7!^KK,5993FK+&>5;9Y5=F/YE^]16JFV9DM9N!%'&K5"$EI76*R((IYF2;9P+K"Z$LJZ6\-T)7+N^KU7 M8A>>@5T+E&W6"Y35O$!9J%D=#, @Y&E&Q>F_?D6)1^5J5N136:U0M;2*"N$] M7IYQL*Q]=06[MZ667YU^7RC7 Z_^NXB*-=8_G5K%A)7U9;SIF"I&NJ&,ERU. MBR)KQ2QTL8+7>Z?,3+391@ @F3>,"'+$Y+_'P&>RB;" ?FZC-UDEO7JD% =/ MXWM0ZAG-45B&Z9+%@4D/T>J\@8V-B%_!>F7IG5[D_BR;&Y(_OSPKFL7OAL,0 M N=(2**T%PC2K+V2 -:(,@UFWZ+6_V65;C856NG!U(A%-&T*Z:4A:(&_CMTA M*30X67H:OARD3(\OQ[#K"M+&,D@[1?E#AK07!XZ7,DUEKQDE)"?!C5R C),R MFU%F)HB+0 ( %:3M2A>0$@^F'4>H^46AP 3GO5E2XHHYXW->MDU=5DH3O40. M2OF]L.$+'5;:"8T68,=(^48IHKS 0<832@Z6#Y&V?5D592:=;%XI3R2.TJ5+ M0!O%P"!VLS\474_T@2F2'M+'(!-W&52C))S"I$/LBYV\\HLG-:^VA"2+R\Q-DJIK"C,Z7,JH%/PX(/I/O:S>AJ"XQW.6E> M2*D;P65Z0MK[1HB=GYEB8ILC>#T,R4EY<(F_8)_Z2!N<"=BGQR.KK^T*S\&4 ME%DFLW7(>M2LUWH8%7ESO/]+&?AJJ?^RMN?&X"FE\L/L)7AR71-@=GHPK;() M 'E/ Z1*39^>YCP1DK((HBZ 87P-G>?QU%MT1?CVL<(9DL05+#9>5$YS8B^ E* M@)C&J,CD5B5Y^MLY=D:+5[ZYGH>4AY0A<4#>@[3=="1#0CQ8:;NO.4AVJ @I(1%Z!#$#'^KCW)3DSTBG@OX1O'07H 37?LIM20XWG7@O0CZ_E6UX.MZJ!H=^O^.;6RSVAD;[.Q M#3-NM[EAZ?NCY> 33QXK(E"K(JZS*H+?G>9U:B5Z3L"ISSUYT?D VE+KZ5+N MYWEF]VI+BSQT04^2KNS"#R,U(RXX)8")/NUD95I$TR);74/=3&-R>FX53>VJ MFL;8H&2]:\H*BX.RFF"A8>MZKW020)&=&K&3,,HP-_=E&W^%K#H2IQ>J%,0^ M]$(U[CB95HH^;7K0' 9V$LR..&KKJZXAD^YI^;0J:YZQ X[V*P XHO3F+69. M7@%?W,,7I"C27E5'81$UNOH.0ZM(C$#DWZC=BC@:-\?X@$[O@[QZ>]H0"@XN MM69.>VIG65UHGM0V6NJEXSVJ+T_C/R)"G5;MRT2[TU,-T5++S,_[)4*U('N1 M:P9+'3RMQKAT\' MRJX4/N$5RXW[\V;BCD;$_X3XDCM;/Z*<:1F^Y=>O>'(YO^6]A!!L^3_U [)= M<+6I+K<"5Q=8-K8E@BG>'1QJI57,XU:MFEQDNRK\T<(7CJ,&_'V3.,)V':*F M'1P&-X2CADY+4D@H745GW/&G?!W9I2\[QR9-?K^QXOX+W;-<8TG4IE:,:V_; M5TQ=;?Y.&PE39%&IZ&/)("T%USRN>:<++8ZL>09HGB*:1DUNY;,2PJP4":II M$DH35Z(G_5A!5!7EF6=]UR6E4BP:B3=_A=Z*C[5R,3?2*/&%/'@+9M)$1J87 M>^[T6-AWM4$[MAW>FML_8G5Z_>$P3+">H\)P+O^'WQM?X>U8+>KD6A?'AS)R MV4B9HU;6H;:1Q9ZKQ<6J1:U;XP/5PI8DJA92!;,,:P3[M0ZO6Q#!9%OU-MX7 MLQ>_V-+6^VE;4BJI5OT "UIGSCLM5,$KY*Q=^Z)%>P,ASO7>H#49$Q2/MPXV M?2J8/E%1#FEKPZ]A6011C7O8@T&D(8A4M'(07=!)SH(HCQ_F\,,[.\O[:T?D:64@F_+2<&6)@3\_(#! M\X/]#: L8QJN;%GGW_UQ')W]".$ '%&.5%D]Q(_R3.Y#,[DK]S_7E*.LIQZU*RG'KIO&"ZQT*FY5&"IM++/TG5@PE+\!8(V\%6;4P M.R!G&$L+'G*^-;% ETF!(90I@*(RD>;\%R%9\$5CE3KM:3!,IDE*SNE,\=S@ M/W,"X5IM(G;RR55%J/W%"/J% =36:9U6C6AV.:6(2J2)R>Q04MO4;(Q.SQ 5 MN9PE@"3.V7@+>,EHZ4KX:6",NI<>-G)XA]3PMA'5Q>-BF+F^GC9 MOP2[J=E86.%O&>40=04O91LHE%EUFZ!(II-%RGOPVG=N1*GGO\,TJUF0;=G> MF>_X?.V0.-GQ 63'AMJUV*3P97)0FVFACY1U_29PH=_$B>,=B?%O'":9!&SHCJN%_;G/&3N_;,K\_=VWR#(%N]+&U;W.1*M#K-CQ\ZW:!N62 MH2J>RS0"9$RHV )DOGR-6:+&ET_%Y2NU7JRR0[E@6D[W%GZN[4"P-/G8VVH&2O(XEN[LQ5ML>M5RS=9/NUZN_'RL][FKGC1\XV$0YJ4FEU6 MW2@+1XOY%Z6;JE_XBAYI1?7CKZB^?47Y%H[O 4YMK39L$79%MM'IF0W9*KZ> MA]JJ!M;3W+Z>.V35E5/)RC\I7-EG$M'0:)73V.;WZK\LISUDM_+2XBO. &*Y M)%[_E1(6SI0J8=@KH7;ASTFX"'A?RW* K@%];*.OL1V$&2*M*73:T!&_NZ:=>@,<_=>$W+Q@XGB@\ M^,,N33EY3@:1.W*=L%AK4MDTG849/+W'N_[+_9WPY>&Q M_WC[T/\J/+_ #WZ_?WQY9GXJ'UQ?B"=! L\81:) ?@X);LLFF&$WK6B29?O.#M89%QM2:G3+': MEE,VA+D)8YCNPVSUS7G'*#ZJ6[JC($6\)MI2F]=OH0L0FSG>WM9!H>SUS+01KXW_RX'YA:)Y2SC9+)K3 MAAY:35?'0X&Y(UIAL'K*;-N# M?Y]9MB]!N*;I0VTWI8.;DD7)JNFG^%:!1UW-;!5."7;,-!$VBJ;HQT70YJ?)71O).7R8D MRP?%2##+\TRF,%AX2$0338?!=!;XN+U$=L]TJS($*5!2T%*WE5DG;4\2[.K&0PF M?S*9D=+MH4FW;(5.&[@8!?1])R'?8V[^MYX31>X8AK/4 M4>U@&5Q*PBI/E>:ITI>3*KTOJ1]S.]Z5,UX:MK>1+9$YP7YQAGE5':VY6_PS MJ])C)B_]H@_@ZTW^W]CI6#[-D4I=V+GRWGZ$._PY50[ M/56TI'*! U_.T\<2AR\G398V='WSG93Q7Y]QG[_I51_*XCNTO_ M[*^TQQW/:S.+77:K-R.,^ 7F)'Y'9B'8Z52F& 7>Q S*L1V.]<:A:&KK8T/ MZ&>LZ6F):)D3A2_R>>LEFUQD@Q:A59S0\$4^;WUADXMLTD76RYWLCQ$\7T;D M\(#)%B2*!5C1$ILK"P%W&T*%N1#)SQGQ%PV%&Y>;4D]NE9<8[;8L-6*$?%7N MTT6I,A@6WD"7]]K[G=HSTU^?]MWLKOBK-)(!92,@@2O/G/17VW*0_,"NARC MMR6,VOO^0I<[/4415>O@G+[&5^^8GI;K+]=?EJ+;_?47VXI+HF67SU"X_G+] MY?I[FDW'_OJ+#(&6J-F7X7]W8%>8MQ^KZJE7BWJAN-.;TU#\[L1)"/]=0\>@ MZR4ZAIIT#U%$R!H*C&WOUEK0JKG<%O:.++&_%^D-_A\9/:Y,VZ04N;Y(IR 09+F[@N4I\ 8W.[MZ_= 0<-/U>L5EZP5>KS?DR'!?\O(6U-8=B[(Z MF_K!N1L;R@=.?"+-P=649=X75#8UR.;!Y=X-8>H:JL' &!L\K;(55GH2$E)7 MI0P)" ^73S%KGWHVLE,[X4JF18$5!1',YF/US)[;/+@F"&S^R5(PMKZ MH5#R *NI9 \>'+<(7+M8W1149=RHX*W-IE(,>/B[D[FU>/C;"COL_J@?IU#6 M#]UNBC^,1[\M M=.=IB"JHP;'?RWV=35#(]N%T4E\W0@'N,R8EO[N!I[&U@# M7"CS;01^R>BJM,KK454&CMSI MF2H#L+F&Z/L;6%SPEL(/QTO(HAWO$7G!=G2:O,;V! )BVR@U:),:ZCMNXAVJ M+9I*PQ$BXQ7S7)NY-K.DS9411FU=5K$WAE81G[91E7KD5L2[>'NF18JJ;JTD"5;=72%<60!V/;T?Y/1FKEC673LG6"PO12 MD2,M3'\,8B+(FO!?_\]29/E7H5[=_FTPG;HQ/53H^Z-;*J!7X@\A.+J#H-8+ MHB2L*-DWM136($TRZL?9S_#QRX7\ABS?#6]8N@W+, M9:!/_.3&@,_A#HP!7R'$?*5C%X5;SW&GD4AE@/3 4;1\%KP)6DKN%LY/@O"R M(#80W$B(DL&_R# 6XD 8@O(ZKB\,Z43I/#WG+4J0Y"!^GZ%>>^_"V/7(2'!> MX9-13*D,B _S)# :_U5$1$6)1PN7\0'X3X!1:E)G83 &L5%IPK/(*WYJ%H(! M#&&>A5\[GD#", @C(0B%8.K2'T9=H3CVH1.&2,2P]*U\7P!3@V&$:(7%JBF. MR C'!-8HG><,C-WP';X.2,(!IX&G\$Y(BO$V\2% MM[T1^A@_B-./DE%7^,<$9"[ RL.G$7-@N>')^)$!\5P85/H67 O8+@5>DK=> M@)\@$V&ZGF^NYPD3!S[M(-<%K!<(S!G!(. SX"% 1#@W0+ [2NA2!SA<$,9K M2$ )0)*HP@"&K*,#?'T61&ZJ'?!B6'9*G9'18(!H\ E#)YH(8Z2O$(M3 #?E M!V\ I51(!/QMMCBP>#!OZL)0D/1W "@<8^ M=!(N#CM?R'Q_[C[4/_J_#\ C_X_?[QY9GYJ7P ZQ5/@@2>,0+K@U88 ]L)&MB1$SL? MJY2"T>!0WS,X7$2 3V-TG<2/J#W\GK9-1%ZOZ!DE\ADV*Z/\QT16^A2Z2: 6KOUF5^N? "4$J MHV 6KY>VHJZ9X0?\0J?X ?QQYR.^."0SSQD2^LQ5$2[%FX6%S];=\;K"DR_\ M/?%!J=6<>VQ7N*P.)U^GY9]B3 Q!',![!(L$N RI]2/#A$XO&(]=B+6RK4Q MUX),9U[P3DK<9Q UQA,!-_]Q&F&[N90B8?".4?Q\P:8X86<(PX#U#-Y\>,/$ MG<$7LGX4U!@389!$H#X1C;M%)#=SLM@1AN@/(41V7HL/1+,0N@,(LO!?A9%1 M M=XL><40TU(4A#1%4]%/EG]##(]P8D) >^F"X3]U.NMO(?KN0/L;(-P-J,X,P M?43V3^<-, QSVTQ=M_;L*GUIB7#9LHH'6 ^/7U:]QL(C%&UX/P1AI?'[Y_>2 MT^CC4,&\P_B>QO2W43\!]QN"'1WM=OHE+=P-39*$@%/4S'+632Y,$,DPF$X# M/U\NI,N;OY.N"PE_X-]2V_CJ1@C&$=UOP:XRH2N34OFM5Z_BZE:_EX((?OU* M /6X=4H7* <@O@T' EJ7+>O0<\=C ;"8;I0IU]^2XP)'-+QQ?]Y,W!'XMD\H M$;/3B]^"S&^B,FP.!&RIL46E?_R9#O8;O"L8R4OKB8/]-$K"-[#R$?$7BPC; MA3%N>BFWX6H$L&+N4T5$H]\MQ0:[ASO/PPEL[3V2(; TV^_SM:2!RA^HB>D< M 5D_UO-;FO8F?DN&CWH60HZ2*1ZT_"?;;SO9A!',)?N5FAT!UA2_N<10F5H< M^%-)M0K^)G]BE982]I==*=UCUN&EU*VN)C5$W&AU34MMC$VR^B5[#4IO@DWR M4K@&J;Y0DR%0FW"%=(M4!/^@_P [T,\.)W^C9OD.8_$OCAL*?V(BQ@7W?ZYF MH?S#1U^]" <&@/\W8']:O@N*-0>RFLQP[-HMT:DMGRLB#0-YQ[H-00]VWC" MD/MEXOA/::S_&&2+F\:N=2-5"]E"3$F4K7+35@;3Z+>J\J)98[/=WL*@>33S"067]IW>9_2S?7>WG7 M]F8\UW:@RMD<*%V@Z,%/CP9J^T_L\F/HHJ$=7%W%3CK^P8!D3@MKM]JY>$>G MG,G1+:O;7MY.[?1LN:NRPD-Z94W0_Z1ARB&[Q1;ZL_45/.PYM'2!]G9H&C@T MW10UM4R2O7N-$#OL.0>#D3D%K+VCX[[L))JVER_3.SU#[\H7UN:Z+;[L2Q". MB7M]V[,VN;/Y&NWMT8Q.3U5%6RJS>[6Q5IIOSKA#.[*N)6 "]O)F9J>G6UWE MX/8J;.W,&%&>?>[VY#37@=_M'7 TJ;;V;L_J]$Q-$[7#6Y!?R-W>)?O&:]GL MJ:V\H;-AGV=T&Z-@X_N\4U_"%4Q?1?7Y-?A!K:57=#9294FJ*&M-=9G:'0M\ MC\CWB$?R@UIK+_!L["4D6UWUX)0SMO:);?&&_ :/<7]WV V>K8!ZJ;)HFV7] MXC=X+&"1;^I8<6:'W^#!?K1GJ-VVM ZYM)T=O\%CWYT=?(-G8U,G21:M@SP: MO\)CP:/Q[1G35W@V)J28W<-Y&]G:FC&B/'6N\'*V!$'EEWB''U[J;;W$LXU. MSY15T;1Y@1[?[[5($S=Z1[V-EWBVV>E9<@/I+7RKQR_QSN0'C;9>XEF=GF)9 MHJF8_!*/[Q);I(D;_:#1WDL\F[;R[*I-Z2,C.\6V>$-^B<>XOSOH$@^FBUDK MEBY:!J_#8U,#^:Z.%6]V\"T>3%KN]#2K:S?5KX;O[?@UWH4YM$.O\6#&:8,W MRS[$I?%K/!9<&M^@L7R-!S-&DA2SJ[#"2L3O\82<\+R!>[QC-7QLD=:N\X]F M2R_Z8+H:7KT;HFDT7*YWN?U/+]G#7LNFT6SA52#,5\?C3ZUK-'4K?X(6I=7$ M]B8[C/_/A=8AP\)R8Y<<^#O!CH\A&0:O/C;(P'Y^#@PQ=/ 1-_@X ;X+G\'6 MA+1+0-ZB8D;W*Z+@$]HL!18J<3RTSWF,U16VOCMML(?M'H):'0?2[D95?0=H M+Z2_U>G9A06S,$15*G,?TG8Q,X)M,8CWO@.>E[%*>\=D MP%2PVY"78 >F9M%YG[5I>DZ[R53+YL7Y^9GX9.S&7\)@VHC4;-J-QRHO_3XK MOP6_9YJC+ $R1+F"%',9&"+:OR63AKVY@I467O-&M#=#SXDB=^P6FCEA7Y8X MB+'+;90V-H7?3<&EQ7GWK0U?I]V$BIASLQYA/^F3O/>&(7>\^&'QM;Q)NDNB M;XZ[X[%8<>WD3L\4);EL7+M"_Q#9F U =1XF4:E$+[CPQ=]C"\;'(/XG@=?F MGKF^!/!@4*M64<#4B(Q)&*X8LKRA( (\3S,@#P@2R%"'@F$9.JX/AJ\M[Q' MB)/U"%D.$O!]6UI3&2<39'K.^B4(LQ_AYZJ;5V&L49"G"M:@J^FK(6 :DH@H ML\0OB,G9T)^MJ/!C[*'R V/BU;Y+Z8E'=OZQ:^.E(P1 I[IDHLM7V"'4!3RR MK-JB:9?+QIH.J-HB$=Q0F>#!RODDQPC0VB(5#+PUT5+*V\R5@&^7_N$[]LG6 MY7F?;$;;"1M[MA/^!@N-R^R/Z*I] Y,;DM@-TQ5/([)HT7.XU$@/%L0L-1+& M'Y8["><^0<@>2SLR[M-&.'M\6SKVY2U,HQGH0@"&7Y/D#W]]%&8P_33Z2]WV MHF7KE!#J?X$]XK_&$]K<-/6K 'C:GI6J'>V16FBOFLSR,!:B M!1@9[LR=.(F#\!WBT:D;IWYL:32T_RL=4[%G+#QFZOR%37WCX80VN(3!0!2& MBXA^CHXU?S%J//:&I*=O2=OZHK?-F]LNMWXM M>.4L3*>^N9[UVVS[[E(!W1;F@.#,$!LB_E$K M\)WXL?ZM/I59HI9)I3#_9E M6WS[H>.N:WLQPU$TM')*R!X.:4LHWOR2*!*RWI:O_U:W@RM[P)*V;@WB]O!# MF5G*;(>&R2FS(*+1[:?TF.T'6;3 _&79]F6W&=+B*\X@"CRP 6N_4FI:>";[ M:,HKTBG\6<<_:W/_/ GS.'Q_[C[4/_J_#\ C_X_?[QY9GYJ7R@K=.#!)XQHIWE*" M#9.=CU5*P6C@:>X9> ((@REY<7YN#"X5N2*X5.1R<)D^3H#GP03W"RK3QU:] M3>GLW;4:@YC I[NB\7S*V9%F%@=7=ZB&%RLM;%&=K4/L_)R?J:+/W'3B0;#) M>Y0UMHXNK?6TIG4MR6BFR[/1U33F6D\S.RCK:/VP9;U]W:#3I.(T=/TGU<9[ MO(:MT_EYQP;9=5)HV)47M6:[9ZK5G/XUBG ;:0<7X1H1;FI=L*/*MB$1[#8) M0XQ>3@20)G%TCE==677G%P*R<;R#D@5Y/B3#^9 UCVPS:Y'!HK2IJGVVJ:@T MH4NR6.$RX!QK/L1.3*ZN2;CZ0HE+L^Z.OP; 1I3 Z/5TTF&EHT4!Q,X=4S?"C M:4B9G9XM2MK!M8 <4@Q":C>GW32D,$M'5'56K-2UG>D$(?S3OS+*KB,<@J1R M;$ ?:(*7;K%2PMG -H^#J>ZAP5HPE?&B2N"2-8Z62T3+CKOH.FA!1C&I*2H' MEG;)LM)56'>VM.Y"&*;+AO6L*WDZ#;%(7S;'RMXN>DWN5VT/K2JT3*JJWOE@ MTN?S$9XTM$6Z9ACNYMP;@Z':Z:F2:!].S,-A>%$PW"UJ: R&6GII*S5%ZG94 M&&81QTJQAYKFLEYDC@H[Z3!M2H2ZRXK[=\F$:E;D1_[8M1UO5:HEEQ#7IR8/%$DXN_PCVJ-U^ZS6U,/[ OFJA9Y53%-C+J M&E(4@(;DC+%RLGA=6V[=9Z,O+74WW8U%JGCWJHMFQ=UK[5!UM]5K MP1[I>F%8=W/>& RQ^LX2=;W,%<]A>'TPK!L[- 9#@W8LT,IT_0RAL#H!1=:/ MF(%RJIR0\[WGLOHX;@K=MN<,;YOSQO9[UU!Q7T, ;!OE!L^-&C/!]&)4MYOB MJ-A]K1AEL-C:[/+:%>Z"=6[+N5MC.H?MUY3*-)L?UCF&]VY+_WIC> MV91SQM:;NC4YNM[MT(UU3XKM?"L'4NU'$8DCO)-=-*!;1Z^M2SO2:S/4#O:% M3&=!B%R@(W<,LR;^$!Z./>!"-Z*=6">$MG2M.F6=]R 4HDGPY@N4A'[>9H6R MN)N_XM-\NMVA/3 &CN? .^ ;! 1[Z5S=AMJ5K'JVCQ=[,1=X,!72[^'7W M87F^<$%<.-5P[C*H7730:;2:=?C*,G6^$B=:M-0M]J[AI, 73NVXIK.G_X.0 M3Z4XD.*D$ G6CK*Q[:,LB:K%"K,CISWENK%6-_33ZH9"=:.JQV'[^5Q:X 1A M)86A$X;OL&ZT??:5%:8TX#56[X+GR@%_N85_N_%M4<#U500IY455.?B,AM<+ M, BJ->;VZ*#2\);+,CAEY5D0TA\.PX2,Z)E;WB.=EPPT:7GSGV4GY$O-Z/U1 MWI(\;R9>_'5]7<+<,5E4S OJ^<'!=XB%/B7X# H^6V,%?%LL>7XV#P,EZ[%Z MS$]=683?QSL6>ON"'53Q.BX>)Y[@#(?8X9S'^\?T.M\)#/,'P:M$ZO'A2?/E M^!*$=]EB]+.UJ*_\)A(M5Q6I\ZU!^_%WN.,Y.OXL2O1=D33/=Q&G:'7IS-P8 MQO$?V$G@4COA<$([8M^1'\0+9E.DZ+T-HCVM_'6$=W6M_(/_+0R&)(IRB8-R M%>1=7X?L3D]31?GPAB1\]\ @O.H:\:;A94@TQD) 'V8V9 M7RK/^EJ 5["B;?,S]$O$4%T;NR>&\*I2E)2##2F#P6Y[.D^,2CE7>^8H[\FK MSIQ8]LVIWV'^EV,AZGJ9W\(@JK\=-M1.SY1$0SIX/UQWJ1C- N*J=GVJ5M<9 M[ZEJ&MTUVW(K5.T4+1LV%-LTGDR\R[LN-<][7O_"0%^%*SOO[ __G;AI.5+L M^*\NX(\G;;^T]'!Z=BB*5]& MGP>N*A>K*KL'8<=2%8-V=E.40YB,^(GS/D#YCG^_"<8W2432$Y)K2_)HPJNL MUCL4](0*^&G\1[2W1?.-(#1_><:T[F/'\E_"X,93/C]F^?X,<0H][ 9W/-.W*8YLYI2 MKGYH8QS/D75@X-L(A'!8F MIGVHHG;0>0[/^.#*QM#$C^%TFU$VK=/3)=&2#XG=SI?S<=0N"4?-^3@=@1S3 M%N&Q2(O:1%S"NQBTOHO!\;>Y]N\)C(,"# 1^.)_QPO"2[:\U)#"+!"0E\98BJ,Q*<5\?U MH[B2D+Z*RS[-CD$J^GV U!7N*IY9Q,LL! F$@'P8H@?3$.( QK%R:;Q(9LW& M(PIO$QW ?I?X?O^ G*=41$^I0 CTV71^/& M9!IUA<_DU?5]["3@^@6=0[+)VP0%#M_^>S"(A/XP%HCG3ET?1A_1#P4S.@28 M2*:.'LYXE, GM\PAZT0P [0$=$D2.B[\<$AHYG"$@YPY[R2,Z OF_ G%VWLB M1 F\(WUF /94& ,8A7=X-:QH$D:) Z^$K^\JK>ZR(47(H]*Y?HKF74SK%H.< MF44-CW5G0>3B8S]12,#(%\T,?EEN3I$Y&FGQ%6< .[PD7O^5$O'\F4R_J:S( MM/#G)%QL]VY[^(L&1#9 MXY^Z\)L7#!Q/!)@.NQ3RS\D@O#W?] ME_L[X&6")G_D MQ,['*GBOV(VY-U7D&R7UX_ K,NK'\Q^K%0AF.VY;#N&+;%N; Y@G\ X@ M/?_U:Q!%AU&HFC:&75)%AC/U!L[/&PCJP46 "_JC^]P5Q@1<++@&C#:#?!B" M!^-89F &"3BQ@(G8$)3&V",3/)=85P[V_G(H3]62.CVK?."*\X2OP=KZVV?U M@7YB7!7%?5PSY=K1JR))C4X;62/,ZGDOK6\48W"W300B?B\-[9J9%4TK73LE ML.W_@N&]!/3J@5;BS[L]O%?&/N+&W7=_NZ7 @2IY?3GV' M87V'#:4_A%T<7=1UK=\L?M:TN;V9^UO[\;D MH*RC]9R3]?;U6J/(_>*B!1;^20\G[M&=[--LK8E;8.;EM7>3OB;NVR]2A%7M M_;@(=Q#AWQW8PX.KW*,_XD4D4>!!,(1WX\K8@>=W7F?*6:WSC1W[8R\'\FO: M9O?C+(A]SG&XM!FH?3!D&;0B4U:T-G 3\:10KJ%'T%"#:0W%O@FJ*-FM8 _C M&LHU] @::C*MH5:JH5I3?4%/D>M]:"DKTSKUG)_7DD@4LKN<_/!OD(+@RJI; MCQ^P4IGW_='7 *8\_\P>"5<6O:LT+%;:/?*JU_/'6HV!RY9H+U&=@^L2P;5? MF- PSRGZI;6AVWUY7>Q3T^[)=[BW%B8[:C;>2SV<#;RIM2%G1;(KCK=UX*X4! M;.!-HWA3&R@&YV< VQ&3[_548UI=WT[\W=E>_H&G/;.D6XF_@?_CX+PX9/?,M%7:@A61NM-77KQ M/113]K:Q/?M>R+*1I>[\^R2.J1.&@PJIR$<3 076!H-KOX*@,J@K;AT<7+)U2-26%B7K:L,;)3+$*?!T M\\8$=#E&9=?P9SGQO+YGTO Z0[?+;(D')98WL)9LUX9P;>;:?(2X\U!MUI&] M2-2DG_B+6':9QU&%B\:/=+1% M<L%R1.0G]. M5DV90?.TRG\EH1N-W.&<&OP'/"-(HBS7$G^2TVT6/QJE+(;Y,$C*L)F27<_S M/"*Z'-D=7XJ:"#G<'&$*C[SQW+] _#=(^W:#](C%#\836*))X(W258LG0416 MGDW \%$&\]67(%/BE#A10IFX4X9O#Y:21'%.+9<2 ^8UI"GQGQL)KR%!XO>4 MB4Z7?A'2(>+'!P1'#K_W:#I+,@M282X,443BV".4&_S-C2J4,C0[\("0>"!*^[_JI#X/9P$HMPUE64#A!\CK! M?VATMF@:75A/&%@ OI#.+?U\MN1I(2V\YA;&#\_V7:?T8$4J/!A)Z'=Y\%HL MB1F ED C(BJ]9)03^54,2]P N;8I:F/-(IIL +%RZ9Y%3?5/VV4)3]L-M8+% MM>D.$&N'7#$J&?,$RF>YRR:?LN)"[!9%Y22US";,.R*X8V'QB9J4R/LMQ0M8 MB7\$B3=Z 0,X[FSW)/70);IO8BFE>]%3K526V=4,6BUT[.TBO8B;_@K#+E5]/'I6->9<)WSLN[V*,[+>@Q>UO+'VD'P MN _-Z(4+8G>RT(L4Q+53?GYV/&SU(!;<'3BWM%<39_P\UOPOYP"ZP6V)7KTM M89!7C#/_<5TZ@BXI6SI^-'8L8= D0+/ANUFN:VQ CNO:+EE-RHETC9;6TLB2 M?5V[AFJ'O(%3)*1$6H&_RVK(U:SZ,1_J\2&+?+,$UZO3@#T,"RQ!])U'B M85NO+V$PO4U%_HUN0@I%;]5AH]7I:16'H#R?O?V@VI*L=D10V4AS?'!\Q$'% M(*BVI$P=#U0*W@8>WGR"K1J*EOAZS']8=O-XR@6K%J9W]9QNXR2>_1M*?$=M MD3L]I;%J 9VH1Q21_'K=2"E='JL\"-P0+'JT]<"JKCS'[L_R>CF/R0,*H&F M=GHT)U?YE1&X7"&/@D;3W#/SHZV(U*M5&Z_3,LL?G=(;M!M=^WKYQ<&%%FL3),B\-7?NY M_L;1971ZVB'LZGQ7OS,\%FM'M_5\2W^B+?T=.5:X;+(6+O/=&0,10$V\5>"* M-BLLE^MQ;LUVPVD_EW\XG.Q.3V6@8P\G8+RP@XMY#B[Q1WMDWV8SWK^D_J)S MG!J6#MMFE,$:2'5M#>1^]YX-+>29=NY_][^#\']6ZJH+A=.,<%T4*^YQP<-1)#C#89B0 MD>!B921E7X$]P(SX#NQ0R5(R\L;"^S(Y;%?H-_/HE&BCP"N5;5>$YPDA>;G[ M"2@?YCQ(W_(I]/W10S:W;*Z52J'"MMTL$Y>=BMAA[W$C(6HE(<6^E"F[,3JM M499VJ-B#G[%7(6J?PE<'5B.E5<"K@GM8SV#J#@'/-T'.GY6)#(02S"@ST0<\ MBU:D7Y_N;^_H7^5?/U+>(5HO\,WU/"<47MX"X3T >3=(.=4X7[,(CP MB=-@1#PA3#P2B0 9;">4*AHH9A)F3$L KG 69!Q>E$D(- _9F&(D?W)]=YI, M4[HV6&U9_P5U$1F0ALA 03FLX.?S6:1\'G\ >N$1E#,HHBQ*2!KU3F)X,\ ' M?N615S?R,J:)Z2PE8\JYA@ISRP8_"=Z0#X3*$WEV?B O!O'GCP.A(JU6[/@I MK.:_@,$.P;8[[@I!$?XB)8TI$OBDTR!15_@'R4F5,IXS%)L3122*4HZU)0!6 MNH0<<"41S[,WAZN7\67IZ$VZ?'YZ>O#W?]E_L[X0Y\# M3@ \="%$//5DI@'88LPZWVQ7WV!J ;72*0<3?MX-T30[^(\ S*TP9V%:5*PA M75_!DN=6U\'ONY28\)5T=[&5*"[7(K:EVT-=,BQ54W5IH,JV:NF*8LB#L>UH M_P=Q1&<+IYQU I]?3>'Q&("/E"V!7B'+O];EFB*OZ *_$_#%Z COW&CH!>BF M*TBE5+V"5$K5RZ12Z>,H/5/V@F@_%JCTX57O5-:20['$[U?8\_QW)-Q.7#(6 M[G^284+9R)[&8W=(U6 2(+DD+;BDG\D"&_#_&'*G497S%PF%#YW;I[O?.Q]% M&MX$:8B'T54AG( =3[">C35*%V1C4L3#XY=5H#Q2$M>G\1PI&&PM[]%!2$/< MI[_AUHXLFO1)!009&XX.#AS94RZS''*U!V=V>L@J2DJ;CO(N9+% Z#+#!=ZS M241%"K2=62FS8X,;/ 7[9*@K.+XYB96I!C+="1CS(Y0C#8$^\9,;@S<>;AW4 MLK1DK4M9X1[\<>A$8(:&,>XU/E#$@+H<>>0;A9?11%)B4Q(5=16, O$! @0> M[+^*PM#]X7K"+ Q>0V<**N^#(T,XB0)8# \)8F$(/\!H1"D+*K*OTKFB(OT[ M<>A'8+^0A/2,8D;Q2C^]"P;5ARZ!I8H J9]?GCL?SXG3.:'I.J3^<,/ 1SQ"-#8ACA=/P(RFXP?L>L3! M6(R$,#D$9IIF(@J#;/;I%K8*W/CSW^^_92*)%S)*3P^*.(:/M@+*EP'R%$6JM%7:^0/)(I4Z M_!0"$1KFH+U/N5LC4AF0%+=/;E@X#BT$,]E!^H @O7:!O9SRCT\Q\,O.$[-C M]N(QNC/\=^+FRPZ$L(V1PQZ 2[5XR!;30V'OL^B!]ES:IFX\!7P*Q M?4HIF(15*_)ISSV1M8$9%\/(DU/CVG;7TM4]F'%-Q6R,[]6P&R.A52Y[4.;F MEQ_"C"OK[2-"I8>Z6:>#?]+.!?=@\9<3$)MA"Z[#7L6NO/:F$MYI^M0OP4Q.>T0P4V+8!P9GW-5[, :A)G MYWC5-50)/CQ^.:0PX])R\ZJF>$D)=EM*&K^G!H)R=L$W\9G_<./);1+!!$GX MD+=9R]69+12XI] 930*=L771JDC0 MXSK##*ZXSN0ZHS*@,S+HC*6*IE(FG.#L4D8_';_Q$FC-BC&%MZ5DRB&#M;74$5;*]/ZM':_R$%6 )G% ,BP M/Y9NB:IR,&D%!QF3(+,9 !DVAE(-ADZ+&]K%T_>:-%6,:6__$F 2Y^O&^\,= M"^2OKW-<[?E?CO5@X*9)LSH]RY!%LX+<\""FA_.V<#RY_@G,%.^GZ3OC^$)-I]!CX^-HP\#Q:():2 MCM7WKG*G9^BB(?$D+:Y:+5"M+8F-3*D6]J2T1$6_H/LLKEJ7JUI;\A^94BT5 M]H2R:*FL>"V>)LF3B[:D23*E/TA :XF67.:@Y8ENEX#%+=F43&%1[_0TE6/Q M8K&XY3*'*2P:8!=U45&:HMEG)#F3*2PBE8 J2LK!-49L'5VT*S=TG_O5 M'6+Y YJ#M5P%Y2U]L%A2062\AU!?E/2&NVFQV?*. W@G +?HTM:0$<"::$I' M3Q+F &X-@%MT-6I@-T--$J7#*V2.#N!3YR>=HZT-1=MM3F!\%/)K TFWMXZB MHIL7+NF-VJT@ZT72YS1=[H.\VD#H.DZ//M2S$*4;7B2@A[\Q;2I4,!62*5I: M.5C[R/?M+4=DZL>_;AWVMLP)[@3MIXO"8AM@]5@P3)31LKH]#1+5!I+\V@.$&S7 M6W*3P$U"&Q>AI*U]HTC;-VSGW(^SLN M-1\,QMCCVO%?7=J4#_[YMP9W!/W"JY[&#_,7(4'#2E/IG=35IKG;1@5AKEAO MW%O"EH;';6)O H@\*LZ4TX:MM<:^Q;XV/7:9)A!I=KGV"1]%&UN.TXYO[[3C M&\&.;ZGUQ&9F:3NI=)KP-UDL=,OTWKL[]0\US]"($?Q>5TI]7YU.C(;:51KL MQ*BIC34]K'[)'H-2I120]OF!G*<(X57FU_4 MEE21MP5\>P9'69\0K>)RMK6I_EP-+E<-MNT=]E0#[&2B&*(J'9SAS-:],-.H MY@0)F[&^I6)L7ZQK@'5-%66=MX:Z3-QLJ>[:%S?8;P0V1=+A_4;8*O9FVD;R M"N^-6%>VE%'MBW6CTS,D53147@%[F;C9=NZ_)V[,3D\U((ZT6-E.G3J.Y-48 MIZ[&N)*H1ME2KK6OQEI8+B&+JGDP[P:/AIG$S1::QGUQ8P-N9%FTK:;:73 2 M#;-B.9RS,<6CLH]C8>%A JB;$JB;BL- M!8I-+!RCY_5<7;FZ[J:N6V@\]U57N=.S55TT&VN">BYEY?F5/+]R;7[E? >= M156H6Y$;Q5F*)0F'P12&]2[ 8*>NGZ8ZT[2X[/-^$ N.YP5#>,9(B ,A2EFC M(BSX2QM;"4,GFM#OT+^0?R?N#U W_ S](0C&<7TAB"G/<([6,12H"C M[.$F0JGNW'O_.PC1XJ[)#F5%9(]_ZL)O7C!P/%%X\(==JH:(5W?D.J%;*,QE M=@9/+_?/PLN3&N_W)_)WQY>.P_WC[TOPK/+_"#W^\?"Y?-K$[E M U7Y((%GC")1(#^'!/W_!*W"R(F=U6-"^N>*!9A'+:I^HZ3Q$?R*C/KQ_,=J MIPU&\V5A'X61&SFOKR%Y11LHN& HEYM5"^,PF-*Y8EP6"6]N/!&&65?%2!B\ M"Z\D> V=V<0=IO85)"7./W$3O\](FN&=/X/^B.:'$V!A\S2N#/? MUA7N"H,;+8:4^CQ";7C!8\Z]Z4WVA,4WWF!T$V'BP( )\9==*1U%]HVN4)3- M !X.3XC@12Y^$QSVB,Q<%,,D>*.OAS M=4[.>$R&.":0*0%A!5.0Z!@$%H0@BD?P^0Z68<"( 3$ (O>' M.TH<;RYJ 20ZQ%&$[YF7CR=.A:,3G"']&/P %V%*B0+PD[+T"XYS:?WI1Y9R M^*L2]\%WIL'[8P(#@6&7*D'6-NN\_PD+YCM>WJ@S^OS^VQQ0?7 ET0N"X@6> M]AD6[:_"WJ%*!RT%WT9@O#.T/F$"H=]OQ0D!-#V("-RQFTH:Q3-U_@6S+.#8 MP?=BE)#B)DC" N3?R"*2$--_P8?'@8>GN* M'!2]:VM&4_4$NEVO-.$D10Y\4+L/2CM:.0C>,[>M#(*JTY?4FOX3K&FY'*29 M IDZE:2,2ZLB%_](Y1(7)+1-Z9]<:&N$MBD?C MMC=#H76$="W81J8-+\?2> M)]17?:MR/?@U%PE^"$/[I M\T+A#6JSI5#X8+49NS_)Z.8_) PJ-<;L@&98BJS\RD@J/"^A:!9?6PJ*3V*6 MK4Y/M43-:*H!$L<84QA3MQ3RG@1C6-.CBX9U<*M1CC$F,;:EZ/<4&+.E3D_7 M1%EGI=SP*LO&EK/'&LW>ES8E\%_7SI6SBB_EEVVK1#V)^9&/=,?"> ^!8U6? M<6WGVKY&VQDX3;8S=D=+.ICJBVL[UW:N[>NUG8$C$AM)+ U5M \G:./:SK6= M:_N>/4-.HNM:IV<9LFBJEZ'KU87I&RLI>:D).P44?%"\U*2I4I.]&FY<3RX[ M+S7AI2:\U(19H?%2$UYJPI/\-M[";B%R/_T5%L7+9,GNG,-O#H-9.$B MTNCT%$D3)97]-%NN@5P#&]9 !LHM;1.SW311MQJ^'.0:>&XL<@W0XQ)B)T_'4R1%("8(BK6P2T,>:4)KS1A>^/* M\].6\M,8N&)1)/5(5RP\&Y5K.]?VHK:?_S!9D;"I/$0;NGEP[337=J[M7-O7 M:_OYZ\H42<>K(TM43],0C6L[U_;KU'86=-WH]$S+$,T+B>-YI4FKZR?XH'BE M25.5)C*O-.&5)KS2Y/Q"XY4FO-*$5YKP'+^&;V&U\W-**I*)O*6J:"HZ\SE^ M/,N6:V##&GA^J@Q%LCH]V3!%26_X:H)KX+FQR#5PNP:RD J O,JJ)DI2P]<% M7 //C46N@=LU\/S5EHHL=7J&I8FFQ7X4RBM-> HMJLVQLUHV5IHHLLPK32X; M7^?: MSK7]>-JN,Y ^(2-)F6KP?F5 M\$DUP#"='-X*S1HN'G@(@W=AF,U4>",A$9P( .AYP5OT22B5].1CS:IS$ Z MG0BO]&&E?H4/BE?Z-%7IH_)*'U[IPRM]SB\T7NG#*WUVW+U\@T@=HE[''PG_ M3IS(O9FE/XC(, ["QO+5KFO3>U5[6D5GH/Q D3H]59)%33EZ^4&[#JBX*EZ5 M*C)0AP"[F9XABZI\]#($KHE<$YG51 ;J$12ETU,4592EAMM7J])4K8K":U5XK0JO53F_T'BM"J]58:M6Y8IV7%=$ M$*ZS<':B='JJK(B6S)MD< V\-@TT&& Z4E5:G&(J#5],<@4\-Q2Y FY70!:. M%+5.3U8LT6PZ-8!KX+FQR#5PNP8R4)^IZIV>+JFBJAR]%(77H? ZE":UAX'4 M-M7H]"Q5E Q>(G"9&&.@6%!%.E93$BV=@^PR0<9 09UJ=7J*+>KJP4=1'&-, M8HR!S% 5,T/!6VJ'YXKQ.A1>A\+V-I9GKRUEKZD,;'4U9 6S==$R#V[]QT3^ M&L]5Y=K.J+8SL&W29(@V5$74S?^_O6]O3EQ)]OPJ%=Z=F>X;,D82XN&>ZPV, M<9L9-_@"W>?N_G-"B,)H+"1&C[:YGWXSJTH/7C;8V!90$S'G' ,J565E_O)1 MF5D[/EV5TBZE74I[5MISX%N4\%9?HZKHVH[[#$IIE](NI3V5]CS(NGYR4:F6 ME;UDI:SN.*$H!_&Q6E +XH@!6)M3)[>[<\EH?LR=K)A:K6E*(NRU .D\ER4$]G M%+$:5=&--]OADL=RR6,Y2 PU,#&T!*9F;HHV91F*+$.1R6L?@3^E' 1[#6S[ M5=65BK9C5U>FJDIIE]*>E?8<1)8-'=RFJJ'4:E+:I;1+:7_'EIXY"&,;V,], M+\NKSJ2T2VE_3VG/0=J489Q<5(IE!?Y_$+*^H@Q%+*L= =4,>9ID?WGV$]3^._IZ<"GYL.I.8+)GIO.HSD+<#LR:YK8;CQX18.W M;[OV%_8F+R1K_S+(=\<;F(Y"0$(++*6V%PT">VB;OIT)$N5V!9U^LT?Z'=+H MM'N=V]95O=^\(M>M=KW=:-5O2:\/'_QHMC,9^7E=RA?;)>'8BV",8: 0^F11 M1)RQZ5,R-$/SZRKVGH.+Y0NLYC&Z9XWI,')H9]0$1 EG?]A#VG(Y"(.H9R"\ M^01T<$TGAN_@\/("H.Z.^Q1_[=MT: /[[IT/.LA ]'E$T(!N:=(6#^B M7,=D$2S^J:H;H$66=\)VA[ +YWH9[)G/V8CO%L2LDCA1TQ M ]!>CN,]!N=D+6N)NC_4'@9;CJPA?'&H8R[7R^6D9 WA2S6$NJPAE#6$LH;P M\XDF:PAE#>&&H8^&%X2G/K4G@\@/F%46&WFO/1D_]G#9447#M$H.6@@;E9,+ MW:@II5VW8-KWT+84Q:,2Q1QT2#*J)Q=J65,JVIM3W*0H2E',T<*W$\4\G!)A MTW.CK!3+[WZ_CA1%*8JY%<4<)%Z6BR<7E4I5T=2],%"/HL9MU=6462$*0=YC645&^XJ1OG-LB0K=?+(8]4<9-.5M9.+5T^42NR32>/LMX[+>4-8;YMNKE5G**U2VM=*>PYDO8H]:E6EHA^&K,MKK_:Z$$-.2I:L[*ID M19,E*[)D19:L?#[19,F*+%F1)2LR(_ C3F;S<#12PZ.1FE)5W_W>C_V*CDA1 M/"I1S$%7YDH1\PD-I:R_^0X#*8I2%'.T\.U$,0>%G!66VEM1:C4IBE(4CU<4 M5 MLE)[^S6&DL=RR6/OD?2S@HTP9U=>M':8/%3+06E=I7QR 7:EKLN:E,.L29&7 M.+^9-(<#.:J>@S*X"O8'JQE*M;+CPY8W[7*^(TY2MJ5LORC;>3B]J9Y<:+JF M&)6*E&TIVU*V=R7;>8A!X\7?1E71=]W74\JVE.WCE>T<2'85&Z)5RTIE[RWR M5]62R$*3O2B?D).2A2:[*C119:&)+#21A2:?3S19:"(+362AB3"P!L>Y=THA\EC[U$PMX*-,"FW*'GH M,'DH!P5QU2I6,"NE4EZ*F62AB2PTD4EM[P4YI3Q #G;UJNI@&^W8EY4)JU*V MCUFVDWEQT$?=%&9E&TIV\<@VSGH MO%333BXJQ;("_]]SR5Y1:((+0HK;;F2R%<5+;$= /]MB!26,%':5UJI&S3** MY:I>THWB0%=K>M70M+(Z&-7,TI\J7D>05+&$H*"<>4-+P)3&=&3.O?D>W3(3$=AW@C]IT7A4%H MNLCH!(AEAS-B8S(S#<( _HLTS @DV8R>%')#'VD8*N2OYF3ZC?QA.E//H0JY MO6THQ"13W_MM@R3AP-0%^E!8!0P*8\,X(]\,8%>L,/+9X600.2%^"TO];5N4 MO>H:R&0/S0+IP[S,^WN?WIO 1=/(M\9F0,7)IAV0:$I"C_SO[>*;+S@DEU$ M4PX"H-7 =AD' ,0%N"+V1]^'G1E1'\BG;H]II9,+HZ88Q>6,3@56+E!SQRNZ M,V<3)D)>G>][O$0:?,<0W_:K,$XN2H927+$*W'3+#,;$#(GE>/">>V6[Y>C% M%ZS*>/9L,8&- S89O[8$N[:" "AX^._$7-_F4Y$01,!*-/A]HO%NS'7KC4C M57\+8"63B8?B#CBE,(8'<0 !# Q'4)-WST%,- M#AQ*F$ZGZ""<&Z4%'7F*GWR28=+J-W^06H%;DLO_;-S4V]^;/=)JDWK[BERU M>O7OW6;S1[/=[Y$_6OT;4F\T.C_;_3I^T&G'?[;:W]D#UZUVO=UHU6_QT<9M MI_>SVURJ&%Y'M9S8$6W/I87E26_*D+67K-)]8)#Z>@[IM/O=SFV/;?==M]-H M7L$>][;;9(X__P*_R1[-/FFAS(/SG( IK#O?L^@0C+-@W[BU'J!BO:(6G0RH MS_=(+S+S5^?F+X7U"9T]A7=X&' !IPWLX,$,/@6#LNZ"2G)(ETX]'_0TF**@ M XE://WGO %MF;YOPW.HS6&E]#=H3:;*%%#A:/OBCX-HBD9M@(H=2?L('C)_ MN8F.HCWE[@7,R 83&]9O-J/H(;TDW#JU&X6 14.N!Y[+B1A-,73#IP"MB- (WB]ENN),^ M%;X>/#F@\1OCB: MMS".,E3X&C#XH\"S$P -D.4A6QU_!^42(=X; A0(T@(73<','-GI)'NPNS[8 M=923)WDS3'YB!RAAP*(^\AC['E\;^\Q8$MW9LRTQY5@RL6]Z;.W)IN7,DJ!; K, MGZ1.?B3T^]L*J6!.F@L?":U#.B!&&6KQ7\+:]TW]I,M&Z /)G:+'A<()W$C M+05!M8-Q' F9F+8;PO_9WT/89HQPV#%Q!!@0Q!@0P9@X?DP/1 M()!>0!0V,-.@^'?$W%H,!,$P4UP[^+B@NQP'@UL6G8:<+OC^G^!3PU^]$"@< M@#:AEAD%-%:[MCL&@(5-#O1JO _L.P2'.*-'R)=&I]?YBLRC%55]":^8 MZM:^X_[#"5XCF\L:RJ-+'YU, MM'B0Q T5X$DN1F B/)I"!#("*!;%$WG3ZI ')GM/_]^OBP$Q]36QOW:P%CE,?Z-(0%M,::/T-X$& :A8^]F;@DJ M1'@K\RC,--8+7_I>=#]>"R6B>Q/^D7TN8*<-H1TB(NM_B1DP9*FNR)AAL.#U MO. 6,!VK_F7AH<2TG\^>9>*$/QOQV2%'$ZXQUJQCW\"D ]I@03JW<[.V4R<( M.BFP#%(7D0:I>N G2"N]WM26WXT*8PL>4 KV"C@, E"OJ.,ANHJ3LKX'O$P! MFNZ4I3D,Z92R/43KR0Y"YEM:>*+,X&(:@?5H96V?D>U/V/IL7TP13("Q#<(" M^C-5BR!2=V /D%8+A!O,"E)5$@?BG=B$C7@.QA3,> /&2>V.7F+XO/,,GYV/ MB):\$ VB3V"2H3I##1>Y8+\[?*>\*1CU:03E0YAO8[#XK BC 'E[V?_;-YCK MHY[B01G72[778A!AJWW-.')S,94YKVXI7L9\"<^R(I\%""(_=KA&@*0@^<"2 M?LB/X1E L=^/34!+,(,0'9FSQ-@38S2@G]#&21RZ&7A$#QB7@+4M/;",7QLN M]\UJ;4WOU>,]/:RL/SW\A'/ S\&7;O.NT^V3SC5IM:^:=TWX1[M/NLWOK5Z_ MV6U>D;N?E[>M1O:,[KK5_;%M>]]/P1N.+#U,*1A[SA <"(8#^.&E9_HL+'T% M+I05>CY3$>U?!OGN> /T@M"#'^ M*:L.&M@9/J;$@I9-!."..^(Q7]=3A[S#@GOP'J&7O\P=/'PE7^X:]<[E5RX7 M&(O"!'.VHRM#_YROQ6DF>^;%F)&R%,#"4^LHC@\0_K9K.O Q-Y@_BT_Q!.'8 MHQVN]6@QO.(%=.5\]V+KZ^AK!0 % R[\Z?%)$K9[_8'E7' Z"4PGL=1,['L[ M90M>FXQN[RZZ'4?)F N?'#^PXQYPDK_@+1U M&P\<)]VD!_BHE]G*\+4[A>P"Z3#M*"C#B%&N<[@^5GH%:= 4SQ1RKK+?P $5W=?:- M.<"LU,.)14E6V'0IP3$F2B.S@ M(B2?R2,T'AB_T"60$]#O8$@DVQ6?78H#E+-S!8IH.@[-1LKO# M*MCPH-IC1,^>B&,&)U/B6'T#S[H4:58)DH+W_C$\%;_[PX%27.?II+.Q$$^,9REE]. M\IY_ S,$>.HU8DZ*,L@H+,EKHYU]PQXJ@H5,3&&PJ#T5W@U84F".V"';@_FE MLFD/*(XS,6&QGNNL-$S,"';6S\8B,[8M)V[F 1?( \(DP/"ZE$=$*XF0B): MK"1 ?T&\4NP4:;=,8OPT41_3;X4416[,G$PN$F=7P615=JJ>$?P%]D^@3N MDQV+I?SR"&5JZG!+)39$]C8 M^/DZXDYXYFG?)O2W.BY#&O4+D[@L8J4?U$K MP1 $H/D,QWE[$)!S%+$^!7%="L)5$ W^E7&G4L,TR8G$60TH5E/#4I+<_D&Z M="M-AT%/PA;K]D19"#=7[WU^(L,R:>UYIR+1<-Z'71;T7;H!7-?-%OJ6 L MI/NSWYC5^21S M!TK3J6>S,I0?/J(J?3)9;=&-9SU,1, "O[FD+KD!JS%BC@KV=J&)NVM.34OX M(99WNJ8N)1#U+$+OL:.('Z8/'K;*9UP@S22R$4VQZ0;+$^?SXX4C.)$KVWJ MT>#[/UB3IM5EF"R'#O3'FLG@7!P6L8\F/!8..,_ .?UI8PP^0$P"]O.X-5%* M 3-(?R8(BVD4G.P\A(:^2,!THP/<0X.0!&/0.CSSI\"6M$AK0>>E=XI#/_BO M5838N_SR[-(QUYJ1E/DZ8":QLXVX)FD%&[-8:9 IA.HD,:!L(=0=:%&;14X# M&Q5NW$5)*ZI& ;ZU445[7+GCL^GOTS*JI9&5N5U+IXV32?GG%[8TFA\O_4OD MVYR2G@?&)IBL^[]]S*;3B^R,*N#5)7A\2)F[Z-L4R6_'UBYU>/S4RAXK@J!, MA36G)(9R$,< %3SR#..C0(50][?M>RXB _[YB+\'5$&5+1H,P,\OP0@T(_(+?A*:8/1>8QHP\A]#3Q54MY@K.[+)5-0, M9@O/\N/0HO[XDP7K6$Q@1F[- 9J?'B:!S2,6-D#" X[%%]BR^ MV<+BQ4YCL"8G>\+,%R LK#@PB#,'9^"GRX^=0QZ)8<$R,(ZIBW':N/U8MJG8 M/@I.1ITF92;K^ 9C M*E;-S+Q R,;5\'G:S\Q>,AS4,CB88-8Z).1]]8#LLVP4+$4H)<6O8!: "\P3 M0?AY&S]: <&9A;8E I/\9,2+TY<$PL&^E7$'V/YE)IVB0(^ZJ!";?"X-/@'3 M995'@C'82V#RO=G0I3.%U", ,]/!RJQ4G6*MC1)O/P J?VE906Y-WR9>@S,6 M>1TQ0K#W]:9>Z*#7WLLT$OR#.K !]R&&8W#[_A\U'1A@CIDW!"7Q^DR5/YMP M)S3OO0P([1V\9!('&,-9(3_^1I#%2 S:D:!B$$PG4\>;\9 K4D54J*.5_HQ9 M.DUWF?*$)* K&R0N\ Q9"9L+RT&K>D4%+O7K$JDTZWV?K>)O_XV6WUKEH-C!?T2/^FWB=W MW>8OK%)IM7MW3?[%OF%'VPLSJ2 ORJU@H*,0W6IQ-Z);S:GH?CR=5TOE7;T+ M(M1JO3I@654/H$NA6GP&EKJ +IUN3R'-_VXV?O9;OYJDF3&M51W/XM9L-M:]X[]=R_.G'B^C&+#S>CQ^PF8G M:,MA0&8H8+) M,TLZYXPR;2KB1-W7-]O$JYCWGXW5M6R<\FZC\^.NV>ZQT+MDTWUCT\HAL*FV MEDU[P*7=5O__DLX?;<#7F]8=%B4#U/;KK3:Y;+:; +S8%)A_S_#W1[U=_\X: M"[,_N\U;P.(KTNMW&O^\Z=Q>-;OPDWX??B[9?<_8'2\>VW]VU]>W0!:,S7@6 M/1A@^-X<%_>[=V1A;9U:M9.W/8>T7[YS9!]8NK67M MNVZKW6C= 51GFT8TFYR+>\WN+["@)2+GAFV/.=:@[B364-O)!1(''VOX]7K( M7'DA LS&.H45XETIY[Q1]FPQ-VP/(Z6J\8PO=].Z;/5[2N:2C%X?S 5F _<: M-\VKG[?;8.L<=1!<7Z3.AUR(MEI:OYB?V+%AGE3E0@WOCES9@>_\==0OZSFG MOIHCZNM,1OMK$KJ7"SNS9;'/MB=DB<8&+[5/K338:&JSJL+%NNB53".,+]<+ MXZ:Z6"[*/N3E-I@OGW"6:/KGSAWD'"I[?&:KG-7LT:.4F&&(B0=8'3VV!W9( M6D"JIPUZD!ZJ?ASD;IO$SFRF$WE(@EWVFOH6[&99;"UB3@-Z'O_'-RP-VRB;"'8MM/."1H2R]<+,MVBG\MS.Q:K5 I5M#2QIMFTYMPA1%> +J>+7]> M+6C5TLIOB@5UR\\-7=_JB;5SJA8JU>>'8K?IBG6NN#![X;+>EVZIABW[>#,9 MO"(^KR&6;#*U\OBKDXMVA)ESB[<;/[/6[!W@ATF2*]:V:1IFV[$@7=Z# M&9XK)1J-W@=[7EC^W\V5[B+EP/3MTR=(QCY>4CH.P^GYV=GCXV,!IEFX]WZ? MU7UK;/^FP1D=WIO^V= ,S3/5T+5:63V#Z:K@)*N:H>I%K:27C;-AJ5)4M1)H M0%TMC,/)R85>4/]^9B[&##Y')B1GY(DSZA/>VXHW!F,V\) T>,M\2R07MI)0 M)NM4V5H;V00K.3; @.,6FN4DA4)=UHU'C-9+K_ 19EGO5,T$,WD+G&8#OTXJ M2:H*$5T;5_*TQ+,]Y]J27JF4:JI1U-1JU3@#;CU-@$R30"99(LL2"V#% (UW MB.3PLSW"B4JQ&X\5 ,07^KP9]QJB0'+!#:V>_G,-WL7]!@G'.T/BW?$PMQ;C MG2[Q3K)$EB56XMGEC/46W!2C-(E1DB%?YTG "TJ&GO$D2H(O2]+'E)RQDC-Z M>!,UH!9/6YFSO38#K!('K-2T:WL%LF/_4C3&4*5KN3_,ZOZF]!23FE1-+SYE MH8AMWWXO0CN -?R'U @'*V29TP26DIBTJ9;0N0>[BGH^6%#T]M/_&7K6?[ZH M\,M:5:L"0X"74E8K9PF#%(VBB,FH16D,2B9Y@4F6;C]CZA2OMUB=Q=1,NTFF@,8O.4U:QU88ME01V5A;9AH^8KW4X@W'J]J;;XZ- MN\MY6ISWUX*$P\-D^V?4=C6!Q+*$1,D;JWAC%?0I OLZ5N@AA/"S_**2@![K M(L^3.;$VE.)]<[_$9I-?_*NO'&)M:XP7(/0]?HTF,07^LC8?>%&1N/[NVO:# M<#[I]+FI\?NE1:X!-_O45?-;G$,%V3&"V98HXIL@'?S<&P M'MU' *&B?L%8AX97>-\;&J^ X,/"UCBHKX/!_P(L"YE&6&ZR]%]K$#">Y8IXK=H)]SQS;$#RW^1L[L7D%^I4E^DD^WYK/RT5= M-S25\WFFFX%LPR>Y8IXKEMH7<.BC5-0GWD4PMAG,-3!X?4;]WUZ12_^/R*6B M+U]9XM:!7A@887VD_N;^.!SE(LDW62DE-> MYI1GBHNX(6C#CD/ U16U4CL+F'AC? M2<@&N />,$P M4I]C6_ETW0I MO >]P0W/#5B=V(A<4Y$%DGQ[>R=%> ]W6(_A69?Z][ W M.+W&1MR T!C;= 0F.;4B%E/IC.!;ZI-IY >1R=,CNJR_N&Z>JJ4O)B^658VA M^(N]F]OCR64*,)XU-MU[2NH6@PNUII=$!,>;HD^0'1X;"%:^$;VHQ19!S_0' MIDN#T\Z30V?Q(%JQN"Z=1\)+OKE/2^!%-C _Y U> R_7MFNZEFTZ$EXD]^V> M^[38>M' >I'X> Q!W8";+PW'?!R8F!3I.;8U^T"I_N#F M"*QC@5I4"ZUV[Z!+QE>O_+\ON[? "$%HX@'5E6=%>"KV[C7BG[7)O<;-L6YR MWWSR7&\R XD/0,!TK!V[K MEY('$AZX-0?4.:+=O^LVY>XGNW_G4SS+.C8(N&I>2R9(F.!*7*VZ*0O$\Q:# MZZQWVTY(N.W/#H4GXQOPYK);CX)^19\"#ZU,3SX;^% M2^KY,S)UL'=X]FO3]S$2CH\5#A*U_N,(V>*:)3IB>CPF.Q[HOA[EQD:^:P?C M[.:2_M@.6$_I]. ,/AA0+&H8);\//(\=G(8R'QJ1?PG+SDH6H<[%Y_WL:+2^:&A@D,L"!N?:D< M+@*F#V^'221I@"(%6"&/8XJE(0"(0PI#P?0H0SILQLE^B?G*C(#>2(&![TU_ MZ-" #83CWE.7^J:3F0*N!I#S/@* Q5*](++&XO4%LBQ=V_5MW1D/53=J8OKG MMO^336/?UC167]\T%M=@#__SQ*[26M6H64:Q7-5+(&L#'42D:FA:61V,:F;I M3ZVHG<1/?6ZKV0P/J]H\5GX0G9<:=S(Z]UK?V_7^SVZSMY8GLU.OQE.W 8!< ML,7+NQ?(#3GD+@.]"$\^_7=D^\PDR^(IOR=5U1'+5./+\&MRE/A28@,?-$Z2 M)F, WB$6/5AF%+ ZNE0-F,^/4%E"=4\!\HO 0O0D!F M YI1./9\6/JPL,DF&-S_^>@^Q95B9=L^Q:6"KNVFN["N%\K&ZJ^V;E1PA*/!/:1@L3@-O.Y?U6X6TVHV5QO:"4E1+ MG^?X?TI\X(,V:+7-? 76WCG9PEG8<%$<5C[+$: #G]^DPHNL2Y_F#'WJWIX% M9TL7^+[&V]VM%.T#Y=K@>IUOP#1"(3.;:1JB&VD/23R]?9(8R2:OH5K?#IW# M0\_&V+1]&"63Y;>4 ?AJMWY?W(H-78?4-T"_88#5W,(]$ [!"$QTC[70F#+Y M"M!O$#Z#>$W&^6"!'GX3NV5.38N_'#_UW"0X$\!/>&#[T!P)72U42KN[\43? MC4]2*93*VPWU_I/2RH6B5GFG:UAXI&(?;AWIP<3,,/+IAQAX^T,7II@D3>9O MJ ' / SW\_B\U!<]F<-C[QW99L="F.==_A=$89=NW.>10 H($.'+G6^[ECTU MG67!^+I[BBR"K50F^Z%,1'>MFT+:8.LHQ65-$=]1TD*JD LI%DM:))4-=O^< M97F1&V(\1RH5J53FE4IZ.6&]$-]/>)3BP[5*9TK1"T]%16%U 3:&?OG-X[9/ MK="3VN9(ML6_ ),E(DM$ MSI#@8Z1$(K)$Y#,"S 4O;A3(-6 .JO[CQ&,)N<<-N1\A!A)P)>">D2N_0*ZH M:V,9MFT]V&YPE)@C ?>X ?0@)M+P/W#=AS;G)"K KC9D1T>YXF\ MQ-OCQML/D )IWTJX/0,'RG0MSPY(W_2'1WKR)L'VN,'VW67@/:%H;0G11[;+ MR$UGC)1[ESICG V\X0S^-0XGSL7_!U!+ P04 " #0>5=8EBYO/8$5 !L M]@ $0 &YV964M,C R,S$R,S N>'-D[5UM=^(XEO[>OT++GK-;,?TARYBZ]XK MZ;F2[HLD__S7EZ6+GC#CA'KWM<;'\QK"WHS:Q)O?U[Y/.O6;VE\___##S_]1 MK__]8=1#CW06++'GHQ;#EH]M]$S\!?(7&/U*V>_DR4)#U_(=RI;U^F=)UJ*K M-2/SA8\NSB^NXF+Q6W9W[MS<.#]9EW7GZO*V?G5KW]1O\)55=RP'-YSK6\NZ MN?QQ?C>[MF^OK^V+^J=IX[Q^=7WNU&^FYS_5@>BGVYO&Y=4G_$DR?>%W?+; M2PM!TSQ^]\+O:PO?7]V=G3T_/W]\OOQ(V?SLXOR\FIQ'!?WGC#>*>X]77^QP4%&Y+#F'C2">"]V?BO1!T7C]OU"\:25&VOR%+RKD^"U_6D.7[C$P#'W< MJ$?L6($+)('W1V"YQ"'8!BUPL0J58_&IK"5GOB2KH1##'IU9OE1-49+'#5+*GV'7Y^*ONOCKXPNW:V?F M4@->GUO6JI#D)$TH/7I2I 8)A6SO0@-2Z]!JM[(\G7QL]ZXJ%\V"HC- M4D!SV?!7/:8[1AVVHZM8'6*Z5]8A=4QEZ8*.4O[-#:N1/D8-.R$F$*V_+B*0 MX]G'.7TZF]' \]G:1/G32.(_BJC]#C,;DR*RX^+B1XI,R_.H+^G%D^C9:D4\ MAX8/X)%0F+M8:T;8B6=.9?9/&9KRGSN+S1AU->/X;,7H"C.?8)Y<.22#!MD$Q"Z&$]S4..+@X[*(R MM]_&3M'V PGQR+]%ZUUK6K3U0(+=__<-GUENT88#R2QP#]%Z03Z!]XC8][46 M!<.WAL2S[Z-NJ@DCQ87E8D8QJZWN?3Z7_S50?6L>UY&D^OELO^P>EX!C>^!] MEK_W1W-$'!7)(=SK#V.ZW>&32A8]C/LMIS>;@4W\KB=,?UD3@XY52+1]?+'; MQY(!2G"H4'^W!OWQH-=];$[:CP_-7K/?:H^_MMN3L8E&9])J$;B$;A]#G^%8 MS1.L4,0+A].&'=:7UM]K^TQ]W^>#)H_>_70>^Q/1JW__:]._G'*W#.XZK% M^"=SC",Y "=*2OJO_[RY:'SZ'Q1*/*'<:37'7SN]P:]%%\AT'EH$/Q5 $+@B MR;9", W8W/+(OV0M+,_N6W[ ,'4> DX\S/D ? CYSF31-.>EA>U&6)B$SUS* M@0?\D>2-@#D*N2/JH)@_V@JH$(#C8+FTV)HZ8S+WB .6@^Y#%S$64"58HRUO%#.O$&PC/(/*N^LNYP&V$_W,J <_9W*^ M,H'-D)$.ML;Y/FPQ8Q1RWL%KAW>%4&M;S(,.X##1C!=@K!O@HY!HD6CL(Q&S M0, #2285ZO*Q3V>_+ZAK8\;;?P3$7YO,92J1MMLOE'DKP>2_4B M<:6@(7E(NRMFB!(<*X3+, RKKZ$KQ(RP$BN@AWT#2+(HM6A<[Z,1:00:2'XM ]!Q 0EN%2HW_O4QWQHK<5T##HX\!>8#:8N MF1L[[SH.6D04EUUR1!%+.3(D4Y3@6B&$6E3Z3M ^,6)'84JC!*?Z91:1!1/ M?,L)[;"J$ P];'&C22DJJ.OD"\5O#@DKU*4MNEP27X8"8)!O=,PP[)1'K>U\ MQ55.<),SS@Z_"F$B?=<'4$3HT>4*>]QTLLD@U"*1[CW7)2>49%4A$-K+E4O7 M&#]@#]CZ0S V30)&*53:[E?\YY@+BMB(#>%5ZONN!QV*)]:+T224+*WM:\4[ M#JF1)*]0%X^PV%@JC+LQGIN'JQ4B;851*2G#20.31Z)EJ(%!-.DU&J(E@9"2)CG/+IM1 I%E].FJF*\.1DC(PA MTO/0PJ0D/O)S3U5$2LTG&0.42:K%14E_I"2DJ@B&)J]DC(P9'RU,2D[$($M5 M1=@RDD[&<.73ZV"Z4;(J6:FK*F(39IB,H=@IKNUY)900DE>QG]-S(>9!@3QR M+0[&"94J(I.(UQO#H=)H,5 <_62DOXK]KD;OC;L_DU2+@N+>IX3_JPB&6="Q M;S&Q4C[A1^Q;Q.CPZX&,M4 J08 "<4TPU&)YZ$,D\03V/B9M[I.EN!#L.\=. MX/:@MSAUT@(#Q]:&XI*UZI*2@BJ@+IL*H;!&2%9)T*;'-4Y:E8GM"#]A+\ C M/*/S4/2QM2=;@E9+E'A((2V)!*.$Y),B%(?IM\;;JP+(."G#GZ(,<3IK&.7% M#C AM"RT4"KQM$V2;;A)LE7=*-A/8(IK-.W Q=39[W]P&X7FVX_$#6!-+ [D MP2*T0"L1N91L*@SD2*X8R:HF_(BD=+FB1_(KJ1#JN<<"*W4FK0["6R5:EW9T MLI* I*6U#YA.C=AH85)">^EY\JK/JJE;$1:X8Q'VB^4&PJ\)1\F\QO174YJ4W4BR/, M ]<' +=7DSB,+BUOO5.:O59=BLO1JHG9B6QI-4O90CVVTI$0#^JQWB-C)^78 M]-V047&OMR7R6>"$V")8D0+DZS2CH!"M6ACNM9*[1Y"4C)*B,[2EDBJ1LZUJ MXRKG%2J@&,<2I56/PON\=EQT[::PDYKLP-*<@9$&IC41ET8V79<^BUO@' M:3#UG<"-XAQ'4I7"XK3JHH1X]>H25P(13W[P8E,/!!5!<4WB"$\U=29C)^#6 M=U]M"^#B&8%7L=?JA!+#R]N'N!L86"5+XDI']C,P.L#W-.6D!5:)Z.4#6VTG M-&>GZ':S7.&F.^>P2B$N1-UM?FO,YPW/X MU5Q2YD>W)X^P*][Y]$^I3'7JFQ:+?1*@#+U'$X%\= &R:<]1BG'7F>Q=C^1 ).=$^ZU 2$J).R.X-NY;%%QV7 M/A]]/.:1RGC;H6Y04<&BT++8)*8#-GI K&)Z2@FW?\ M0O'NH)CD(5RU>"K1RE0\][Q)B6[5PYD'P&$4GCJ,[PGH-P,Z_1J50ZXU,&.D MA5*]QB#K9I:J.SWI/3["W&=DYF-;OF\^6\PN, \?P%0+J7K50#:D6TEA*13* MJB3 *=\J*'"T-)M8"Y@2JTO]WD$E,4G<<[3YV7X1&ASWM#E$YKRTB"EQNIV[ ME))_HD@"^A#)^$O5<>QCZ&<',R:V1$1/YKB=DT>M0XX]?-5^\!5VH#1SW_BKA!O!KI;,,1S*&#M_@ 5.K M 1,M;DK(+NWZPJI/M&I'A\="A3)WB&?!I&2Y!\72#^6LQ=7H6LKX>*L1>/ M5L!]6+V8*'L4@-,8:J%5XCY::&,Q2#;R!.HN!M$.N..!FL)0"ZH2&]*#&HFI M+JC['P@L$([-H-3"I 2$E"\,_KLC\?/9"[^S5BL"UH!X$O[M>32LNWP$3W"8 MC)4\8_R9W(3X2,/=]D>/EW_!RBED-65,NU?B^YK, UY!G+?%]+:NT)T[M MP)B(2[],F4ON5I@1:HLZWM?L(/Y&.0=H?.('XJ\OC :K^UI8G/AX64-^6-QG M=?&+-^YLNK2(UX67@E/M++,IS6&W%=\>B.VAM1:OFV )>W-9$AQ2U^)07S/CS=O>I'-BQ,?A9C@%__!I;/?,WOP*+S?4M_\6(Q) M1T47%K7H<@KU%2+B2Y(29GGH7#^(VTUPPHL?.-$U5GA,H*6).X\>Q7DVN?D[ MNQO?7G)IU7.C)CT*'0"^[AK:)Q)G,.O_$Z:F"6V_K$A^VMYS=.8! , M$XL[-&?(8#"0E2O&Q_:>,3&PX-=L;3*UO8YM66:U7P@/=N(88^I*01KK0$]7 M"COA$8QUEZZP/<&SA4==.E_GMRN'H"0-"I-AS:CVV>W8+W?TZH=/Q*8&;VY0 M\WZP%-,)9;JJIQ1\[[I_ \L$G WQ<"B%/DJ\LEJ06;P4*A0YL!U&E[$#*V?S M*$(!-9[)Q0"$\MBEYID3X8'/0%;Z6Y8J#!MF68%;Y-YIA8B(3ES: ?DHL MJ+II,KO\>\^6L1_\B,-_NUZ&7;G)-&;B=0BK5RCKFQKPF1[O2%QD,W"^\^BZ M$KT?H^=04B=F[^Z@Y*DCG;X;D;ZWZK<=!XN+1K<>N*C?[O:(;4PIN4.TN12M MR83^]8S+.BQB2S6YN<'4NDVG>6\ED#A,%1RVDELDCBN*<$3XP8LN#$P6 MR'2#]+K]A>4-5M*WZE,0P&$0[ V&+\#:%_&7_(^JZG3#(D?B9U9]EKO%[ MH[D?!\^>G96"91URT5F5_-.!AC'>@WB5)?HAS=LNYP&V'P.A#Z&[)O5QYYLI M&%9744Z DZ\%KV%96C-;U&_@C(.IL+D"5]@-8\R>P)3.[HAL4\8P8+.%6 -%R'\3,YE@#\8 MA_6\0DC/J%C MJ!YWUI,%&.[A1VU$J$Q\[PR&CLS615=#0M'4TVJ-[!3.GUN+LH+1"F#L@6VJ M\1^48N]M9&9,G^*+A8/ !R-:&%5Y\3P3ZK*"EAG6T,>'3$C+.M-&N,CZ1D#9?R/(+IGQEB?AJK]?*MZ(RBY?"C!(W[[7H$P;=\GL$YDM;Q!J> M+.+J=-. LJ11NH?).!^R1(&2@+0QND+[:O_&!1-S+8NRI"#MU[Q S&RO_'LO M?M+*B*Y+S->[M)*E4, >^$-@>H+()RMK$7<#Z@1BF8K^G=/PG=(0]_&R(=A;Q&\U8Q//Q'#.3 M\1YYJ&*-CR[?6?\#6ZQ#GC"8HN!;@9/K^+LSV>[H-N=05J#-PT ;:WR$[6 F MG@RS#,_&92O[<=$\]6FT_2[4YFV7.\GO#=)SS1Z<27H\82FX.B M<3<3MYEM#N,89!J+\WEO5,?8(Y3MFF$:*S6'HA3#,7,_?)_Z1]E7G\6GI*[4 MW@0SPJ(?X]$G%NF">U/R&+RW.C='H6(VYPS+5YK@3%;Q4BAR^O:P_3VH8F]J MRF>)"VXZ,^9:VLQ6N%E#7'!V<=YHY..>7K84H(<)]8&GB14HQ4I1^7' GO!: M1JNQN_TPKF9!R2S-8M<$19Y8K;JT8PO @G%.V%CN*\]MG1EN*9D;N M.'@0#*HLCOR$OV3>+$HKZ7QY#7%9W;U'[ $LGLD1CM2B[[WRA7N_.P'SB/CN M3M,S'7X&A*70S7#&FSQ3DXDQ4:PP@/IX##8C99H&I!4M12-ZUA0TWK.C M!'H4JVN_S-Q N*CIZ?3L$-%AW,H:STB)WXPV-X]U;2A+'&)M/MH9'5NVH0.2 M6T0X#Y9BA< KB]C:Z.F;RBRI-V.R5;RU$#M[>=?;NUYN2'G^I0C'85Y6%4U+ MN4096Q?';D'7>Z",T6<8@BUK!:5R]0 M)AW?Q'%QG<'P2J;O;5IL_?S=+^D4V4-M0%Z6;=/# $"8067_%EB[V._GJDBA0"M50CJPW7PC/ MJGQ&X2,TQ/;O; )\.0G/S!Z\G1**8K**8VA+'85X62\,\YQ\;TXE,_V8;^P@G9JR!LSER>(2M!H>)+:UQ M_Z4]R)]+$@5*,7?\F><>2G'XXNV<';FA(MGE\EY)#O/)TOK\P_\!4$L#!!0 M ( -!Y5UBG01BO,"\ #?N 0 5 ;G9E92TR,#(S,3(S,%]C86PN>&UL M[7U9DUNYL>:[?X6FYW72PKXX;-]02VI?131Y]QOAC/IG_YA?^1_?(( MIVF6Q],/?_GE]_>_@?OE/_[ZAS_\^7\!_->O;U\^>C9+YVPQ/SH MRWCY\='R(S[ZYVS^K_'G\.C-)"S+;'X&\-?NSY[./GV;CS]\7#X23*B+CUW\ M=OXG5IPK)D@H2GI0/CMPJ *44) 7[4-P\O]\^%/2V6N=!=C(&2C-"KC(#- ? M&>^X5!9M]]#)>/JO/]5_8EC@(QK>=-%]^Y=?/BZ7G_[T^/&7+U_^^#7.)W^< MS3\\%HS)QQ>?_F7]\:^W/O]%=I_FWOO'W6\O/[H8W_5!>BQ__%]_?_DN?<2S M ./I8AFFJ;Y@,?[3HOOARUD*RV[6'\3U:.,GZG=P\3&H/P(N0/(_?EWD7_[Z MAT>/5M,QGTWP+99'];^_OWUQ[973S_J/:7;VN/[N\=/7K]Z]?OGBV9/WSY_] M^N3EDU=/G[_[S^?/W[\CY-V3EM\^X5]^68S//DWPXF>3;B9>TO?K1U8P!Z/$KTN<9EQ-Q,7[)K-T[4.3*H;9 M_.(O)R'BI/OIZ'P!'T+X-'HY#G$\&2_'N'AZ/I\3^4>2%V:-1\A%<% 9&7&V M$M<:S:U3Z-*-V:E#6=!8.O&5L(B=#->O>%RG[3%.EHN+GW03V4WB9A2K6=Q_ M7$]2FIU/EXLWX5N($[P8&^9L-48#7A.55"@6 O<)$H_2V2RUS:KQV.Y&S>89YZ2P?GGT!:MR6>NN%:PP3[<(='W=K#_Q>'%^=M8]$\9+/+OX M^S*?G37EP'+6?.I74J9Q'$J#7\\7XRDN%D]G9W$\[2;CZ6RZ) - D.BKQ9AF M>KT^5Y/P[0*OE29H00.W3FO2Q(37F2) %!1*\836A,94V1_M-G02/R:=CB3" M9I1[.9M^>(_SLV<8ET^F^6GX-%Z&R4LD&_8Z3L8?.JB7,V,=$N]=!"T*0=1. M0\Q:0&+99.>%SS*U5K:[ -R&6/+')%9_@FK&I4KT>4C+?Y(?^O1\L9R=X?R2 MY:-BA5 \*K I!5!*1@@A<1 F>V-01VU;&^I[ 6W#%?5C$UQZORN M(>9BM*.PTNCB:(@Z0#!9 5>H;#:,0M38F T;H&S#!?-C C6I7E%_%1WY?XT'=@>,(45S!TK_)K,/ MG?2&OM#9V6QZ!462:'@6&5(V2"B4 *=L .,<"RXQ[J)N[OYN(U%J012H0!(GF@$@=2Y2 W)L<=4ZEN?K8$>*0XJG&).I36.T8 ME?.X3DV8O GC_&*ZSA",8@?M'!B?1 Y:D:%LGL9[ %,+ M?VN\K-NA]?F7*==$[QM1-$N1BRJ@/$82;(P0M63@,R\QHQ=&LAY^7 MOE/>9W8A.):<#^3E,4N*69#&#S%X,M&>%+3Q'ID[+ M!2XO,UT4%$:7O2:%DSR%AYGLLA 6O+6%"RN B\4+3IG Y,)G>#Y"!LN-V -R?SMSXEM=EP.D4[A&58?.SVE1OHFQ:*M[:EN[2X\0\I,M2-',PGT$E_)9#CS!,!@*.MD"A,, M. M8);'BJ^:U)F2D^L+*6 (4COR@7DD']A(,%G[P!4YR*;'G,D G:=] MI7U/B+C/7)^R^/+5;)K6D+DO.K/LP$9&,8U)G-P\Q@"+510Y66\B/WW]Y7? M0_*N6C'I>!(\7.&23+RC4-S58@_&T.N0F.2M4Q;;(1N2W]5, M(;6723.^/%N7-ZPVG=Z'KU<&3>9_%%PLQG .4@IR*%3V$)PFS6F8HF!"))]: M;Q,^ &E(SE3,*TZN :_7ZJ.TGT]6]DVJ<).WW\MG+D=?E]@=U[GY0ESJ]5>'R: M8QJOV#7-3\YF\^7X?[IO27USC-X$L,S3W$B2>:"H"+07@AM2["&W+\7K>U1# MB@_VX.#M9-F@:-!.57_J_-#IA[O0C[(UV68;P2I-&L-[ QZ- QY$3)B\9ZQU MWOY>0$,*%1J0JMWD-^/#B^DR3#^,XV0%HOH0S[^FR7D]^OVWV2Q_&4\FH^0J M'9TF+T+7K#!&\"6Y6L8J+4<*7E TIL4VN(84 31@1W-1-"/)Y=L5,UJJ', 9 MY*"<KJG-";"+L(^;B;U(&'O-:5M'?8UR[[[BPZ=*)R<3R5$ M L62JO42 C+YGU@/\AG;>F?Z3B!#B 4%, M68/6F&4U.HH=L1+AM,><&LAY_\F](=\_/[XY(2_I^P/[>+Q[3__^_?FK]^]> M__;J^?L7KYZ^_OOS)Z^>T7_>O'W^G\]?O7OQC^>KGUZ'M7N7CUU>U; 'R-XC M;-0AA.SU]X+LD2S)2,D]6)=)_JD::AY)PP>,(3(*\E/KQ,R-J'G4T7OV*9S?$R$86+YU^7\T#KEL*C^;<7M-PZ?5?+4V83>LT' M_^'+SMC0Y# M_@TCG370=0',KSC%,EZ.0D&I T>0-I,A=J3M?:& W$2-R'D(+K?>7=T 9<=H M%WXH)ATV\>UV,<9S3,O+0/SI;$%6G]!KGZP$&PF$2IY&%ZT%GQ+W/G&)J;4^ MN@O'OF.KUGCE9:Z>NAH4"VAH.CU(94E0C$5PSB5@)GB)4CAIW4-6_/H<'4[2#4-_[NKP[CW73^'RR#-/E.YQ_'B=82*.@UD8P[*F5B MK:PZOB%]T$+UZTCM*_);._^'3GC#7@.?<7J.%W'!S<,'Y.^MDM8U(4+_R_5< MLC?2&^TYF* E*"-=37,(=D_5KQIF]I-0[0^HDXHTSD ML8E($^BQEL48B-(D(HUB@CF:PMSZ\,#1,@Y[;?IUSUD'9".1G4'G%=3T)JA8 M/1]>2\-CE#Q)[71I79!P \*@-/90B'C'!N'>8CO!*KT&]N+;U9_O,7-==9M* MLB@R<,!5[1MDYCUPFFQ3W_'\WTB>XP_3U59;^O9^ M'J8+*PW?NM0^2,Q.3 RBB1Z,4EZ0 M%TJ#;!VOWP(QJ,WJ'Y9!QH4R[S(P*(OK2/M M!RBVXT9JM\E#SMU;[ YBK)]Y65#=]8;Z-2PP5Z^!?K4ZDZ&TC8X9 2&+=:]7C\D?7T8):[MO/8OBG;[OLF6]MS^^'-"0'O UG^I!% M3^>G+J!HXF2(64!.(9'29@C.D0D@,\"4T5QFU^^YJ1W(<*P-_+9D.'S>&QZ$ MWWRF3VH6DQ<)=':DM+C*$)6A$4<9==")Y^;]S X\DWFL,S-MZ=!*!L>NO'_Z MY-U__O;R]3\/ODGS[H?V5$V_ 76[NOG:9HQ"K,]C>MJOWWY?U/X&+V@"%I4P M3Q)I_=5!>>:8TMR%6HHG2:"AMJ_B"5"5+ M/RIC6!Q&W1W?PR?/PK>M8_'[V M)/W[?#S'BZ8RN&KOWK5D6_TFCVBD19IDP3M'BX?'!#4$I:^S6D?&^Y->N(^=-A!M/N8]*XL&S>A"*U2[93"9PADL*:GGMFRTL MC\U[%&R-;E"YAU.QJXWL&G9[G27$W"5@WH4)OB[TDWQ>![\^SSQB/CHGL@%; MJL..)=;4A@ 7G>0IBE)N&9\ ME%$Q9U0 R17%1\IQB(47,)@CIQBZR#ZV\^X'-:0LUI'HTU90)^A%^F0^#_33 MSBMY^K%^24,XJR,@7_>!YI=\9.N..V<63$H)E.<*:#T86APH1;WS0033F(5' M&MH/X%&TYO(02=/N'I>/@6*Y6_L3-BKA..GT*+IK'G4!F;*,:33AD*O2%?21%S;UW!6"E&OJM+9$8IJ]!UB3):>@ MA*#$5ARYX^%#ZKIS#!(<.K\]>N9WGT@Y.JE/1%,]M): M*W/P/71)V07B-E2R/P>5CB'$ODP2Q17S<\S7[UI;]0U>]QN_VHP8>2F:%P&9 MU\QT0@YD.I%F!^NMH8RGFUN86]NGG8!L0R[W1U9NMV)T_W-0YG !]&C7UC>-723([KQQ;"2L-\F+#(%K M 2HS Z&$ MD&)X,I2F'KW8#]D&Z5VF0GWF[JW\XU%VJ[HKTPGE;ZOYX^&R\^ MS1;===BORPH2'WF7.6*.8$WM6%5[K0:-&EU6;=TO6VMHQ=!S(K 6N8#2&$F7B@36,T3TRGO9_ :#>_!L M19J?+$7>3#YM&R??,+<.R2VZ.>,C6.JV \=I22A;2B<91G*G0 M1".U2;IU@<[6X+;BTD^6HNY'66LOJK\_C!4W?;[/Y ML]EY7);SR<5V]DA:8TS& CS7/C7U=DTB/*^[=CZY:(O6/=QWM!'/5H3Z23+@ MS>5SA#J5[V0>,6=+\8F@8#U:F54!;T2]C=7KP )I4];^XIF'<6W%(/N3J*3> M!-;+@1SZ>H)WG0K)D@;H:GK4"025! =7NT!H1J%EC@ZU;MV/?QM<6U'I)TES M]R:OOBM0+R//*Q.@9$JF6$MA08K$]%J*DKFGJ3#H(S+OFI\$W1Y=JX,"ZQ.[ M[V?OP]?J>WR<3>J)73(B&RHPT'"?Z_5%IKL_)65!?D=.M9U79#I9*5)?QU)V MQ?HC'%$YE'B;#A'T*M=>CA1\W_&:XN)U6978CIA4KGCN(/%4K\PC!>02-\"T MYEPK15/9.A9^$-0/4,K:G%9-!=4+?UXL%N?UTLY:97AV-IMV30=&R"SQ5U&L MI!/1FM5+FD(@H\:%\)EYG9JWYWD0U ]0/MHG?PX75,,^UY_6^O)UN9O6'),2 MGER3$M'6>M0 #F4"'E*)-892S5NX/PAJQW+0G\*NM954/P2Z#J=>Z)J=ADQ^ M,M3K_FJ<1.HQA*"E"(DUOW1H(Y@=JT)_/L+L+9G6!W/)_WJH0/6NB1#U%H L M#1E7SZMSIB X&X$C$RQ31*Y$ZYW*@P#O6('Z4Q#N>!)N?EK\=7F&<7EAE]?W M3F2=E*6Q:ZM4O<*4[#$CQ1IL<%ESK4/SBX#O@;-C'>K/1*B#I=,#73J7[3HB M(XV/M5.B4;[430D.I$XM:!>C1D=ZM?GU'_?AV;&V]"#0%K$6*(5P(M3@R@O-):^N81M,Z67#<$1XU^VE*LDZ YH7B>15) MPV03R+MV0@:IK6G>'G+?[.>)&YT/E^-WE!+W(?YFZF(UQ-?EZK!?3P^:X,NI M7-4DALG?YK/S3_07]'U:=9'%_+V)["AFQ0-%BA"*J%JW%+*IF=/T,NFM*SRZ MUK0__:B'E-#\@9;3Z06W$UW[WD.[JXF-29%U-Q8E;S4HRS)$=A/B54"X+7[+*[CVZ[-Z,'O/+ +:=LQ-VI2^L]N'6%^\IF(\@%?G9]%G+\N MZS=W:!:OSY>+)<$AB"->C _>(:#(LEYN3^0QSH&-6AJ,N4C3VE/<$>*ABG3# MZVZ]IQ/2*#*ME4P.(M9K#62IY3RH@06?L+# I6Q=+K,3P"'%C'UR[:8^[$^* M;2M%:^HJ3-9;PAVXZS=R?:];6>>YKC8:&AEF+*LG$CD3&136ZYH\SZ!M]BK: M$IEIS;[#40\I[CHF)8\L[^/R]/ONS^1;EX*EGZX^-T+D3J L('4.0)$;HVC- M>_#)"NEE2+%Y,=&RK>LFO#J-NWC_$7\+X_D_PN0< M%[/UV=R+EM4T;U<[4="(S@YR,]L".-#G['$V&CF@=[38>XMI]F$Z_A\*8#+1 M;%S&E6/7<3ZY"V=W=:V6K%B*NV.H_">^@ZMQ3A0RYL@U2]AZ-Z3Q$'KH=+DW MG*O'_(RP2C@10(1@02DA(+JD 5WFC)M<3]0,>&9W/IW1$/*T9YX3?2I>@ZDTB#5SKH; MR^J35[ME6!O0%*] F-KL1Q=2K2HRL"B*2#E'FUHWV3W&N'Y6WW5H2Z4%K=JT M^FDYK+>5%:_+[XN+ZZ"24]%H9#3?FH;#O .75(28?*XML:R0-\JW-W0"ZA/E MD++1 ^'\L)@Q2,NP^1H]GA@JS &\")E"@8S@7;3@,RWTX)1IWS?T* ,;4N70 M0-;)<(DU/..P[@-\>8US;= :O0K % U$\:AH\4L)/&IMC/$*V:".^@WS$34^MZ%_O MNI4R06<4*2!*TB9CM3SARKH#\< SK&UI> (A]U;WV#7,#M-\1^_L=W6^Y]]F MY;X/'5+RV.K=AU8[]C('C0H=[^IUWCD2]>C6RG,><<,D2Y9#U+63OO&6O!?N MP,3D. J#.;7N*+X%K(/[86QZQ9.4SL_.NY:=3R:3V9?:MZ-V$NHZ5M5+=2[F M188D7/6;C)!8-^L*1&,8&0*+1DME2:#'FI=M00^JR+ U^6XJT..*N%VGEDVP M_S:_ BUQSVS.FM2[SC6F0' LD+;GA7 E'6WS&Y.V C8D4WTR@NTMJ7:W;=UJ M%W]ES#&J(BQ2Q">QD%="[JHOBH+2E"4*%=&+UNW9[\/3?JS=_(]$G>:L/+AD M#=#BC?05K=ZL.9,J%Y)XZ[Z/&Z ,*8QJQHQ;%X@U$$,[_E_1ZS?OX/@.\&+8 MQCBI799@5&VQ(TH&I\EA1L:,"13&Q=3Z--A. '=4JOV:[?X(U)O,^HIO+K8= MPY4=QRDNOQ^B__3] WCQ@0-BFH/>=V M]T*XW90[%4I!338BDLNDL"0(5G$@G5)48"FTCZIZ'="@(JZ!+9D[6M,/A%DM MKT789TB_8IG-<%ZM7GV@$];+ M##3RQU:O?7G7:^MA+U-WR0(FB#EW[6Q8;:=Y2%SYE+KMC#W(SI4M=_S M]%7@*SE9&D$+!7F.-?'3G>&@;T/Q:(35(K?V'A_"-*1$1$.^W%2(3473S!>X M!]75C/0UGR5EQGW(H(M*H&(T9!5L!N,C6LYC,6B.1Z$-* >5G3@-JUK([[16 M\WQY/L?GB^7XK!O$AP]S_$!?71W-^B*[Y>R4)K8QSJ/8XS[G]CC&6_*2M-$6 M)!$::HH/?(VB-"M8;P[-J%J'&";"*G!&<%#< MDR*)09*7;IG.6CBTQ]3'FY'^0(9^%V[MHI(;B?$HYO\VUE>TL-]_PB8K=L M9N?S40[69ID\)"4#*'0:7(D:LN&JV**],*TO%MH/Z9!.IPZ&>GN)\824>_]E M-B+')F6O(S!K:D,$Q2!**2!DX4W2BAMQ6J6W!CJD8YZ#(MRN0CP1W[I,[:5[ M4%,!IK@(Z.O-7XPBQ2!T $Y1G/:A1!]:[T$= '=(YRT'P[W]!7I*C4=DPI$O M6D25$I3(ZXEE66O&;0 F<@S:9&6;5^?O"75(1QD'P[S]!-E7\N=)2O/S:P<$ M#LC0;'[8@6F4+5$VRG7#>80]7/Y2TKW=;?Y8VWE^530@H9?95P;9K#E(' HB>&*B\=DQB:-T"_']&0 M,A9M&')3CS242,LZX3K2?X2T.F"TQL)L43ZA)@3UMBA!BM.CXZ"\93*]^.I]^/I]I,:Y4'2]?=(7&JF3 M"AS3$@1J8\G+XJ*XA\S(UF\;4AC?5OC]3'AKK?">UWL2.WWC"DV+0_VW'8Q/85='9]$LB8U>,:8;IJ MQ?,Z3L8?NH_+V?3#>YR?/<-82T.?AD_C99AT MT<@5!)>W@:Y)^O>P/)^O.J*[8I+VI4#$>I01!0>OZ[6@FBN?B6 BM4[''XKY M4"-7W_MBNEC.SVM![=,PGW^K-Y>>U5-)(\]\2$)$8)JB-14].6>>"UK#P7"G MDRW8NJ;Q/CQ#"J&/RK6;=K"9T)KY2A=7#*S+L9_.%JN\I ]1QI"QGBLG,"DZ M<"$FL+Q((S'&;%L?X]X 95!5?"=FS^&R:KF+<%F_?YDR&BENF;*I@.ZZR5AK M( IG:V-@KY-A,ND>=N)O QE2A'Y2SAPNID$[8R-^,G=LQ ?AD-V<@:&X9,([ MH9(CJC*/H()W1-IH0 3M7;!.F9L=@7]XEVR[]U^$6,*4H&M9E;:\ID:4@FA) M?QL14HD\RJ1:]Y#=">!/Y;3MPL:;*K0_L38SQMM!'+%40FT_ #Y00*\*N9DQ MUF[,)@FT%I/5\224&])NR@_ M9T$>2+[O3I<<-&)Z#Q,OL_0K-1A+M?#["^M MLC.$?NWY83/2@UT?48QI&&<,N/"IWD%@P*DZR59Q)4U4UK>^_O?J^UMJO>]S M^18_K2Z#7[PN;^;C:1I_"I,7TXNB/QM*"8HC>*L"*&B8!\\3MSFX;&/K7(I0&N;7REZ\N[\T]D8*L/&2:_ADG='7[W$7'Y8EIF\[-##?,!;SO0:+<:YX$& MO7//+LL?;S0Z7-RZ.IE\,5:4E>2/58:D2-PD)0;,9\%S]+73PE;.\-:O;'M^ MZ\;31Q336N>,I$A#>E"J(#A);BTO@CF6:7 M0J&;@)(6.AI%"%R1%*82EFCK!9A26B\M1Y?[+!?:@RM]V[DC.5*)(&'QM-:&" V4T M Z>-!N7A'W+M@P8['G7=12[]5E)>WO0DF:;EEE% 0+$T!K M[SQ:%*A:5_<\"&H(&T$GU"M[2J=?U7(%%$6^FML@(-E0ZA5( 5SAI.^,C#I) MYVG0Q] NNQ&F[[V2_9"@/8ADO/O(SAR MA4!S%KMSN6C[;<9R>UPG+H7:2]+W6XN=9_H8H?FU;N$EN% MI9PLEK<0O2BL>,VL[Z$EYB8X0W \^R/&(7/?C S_"/-Q+77^/KQBR"$R5D T M2=1KB3F$0%@8\;&>8J7):QV!W (Q! >RK> /F^=C.8?7BMFO>K6'M?;;YS6- M7@E8?Y_F\:*[;A7S\Z\)%XOUB?GL;-*!(63;[?TG7ZL '/V3$LL)4_$]W'JP M/< A>:Y-V;15--M$;#V?5Q?,>.T"Q=6B]K"+A@RGK8T7DDHTYLQYZ>$JK/W. MJQ_Q3H(C,V4G,;0KDB9&(F[(W%T=;U%=/R0HZ>^'P\:?U>OHF2&08S<@]+DMU'HZ<%J4?O["9UMZ[85)PDZKCS_ MUND:995@BD?0P@=:9%Y2_.UJ*WV6-$-="AX[\-KG3-1@0H]=.+650]E*>/U& M'U=07AQV9I*A[(\CLAZ]$RBJ]31N!.H8K,&762SN+ZZALZ@XQ M"\$5!H'U,D#R*GE,$&U*1 '/$,D_E.PHB;8[L TIWW]R+NTLK.-2J;ORJMYH M1,B @@80 M:_>.[,%C,E"4L)@^'<3GG?5D(]^C*\B+1,Y 6ULR!RW2]49(^BKDVNG40>H]8)6P?%.T(< M4G \*,+M(\+3\*R+PNKNL[*2_)V"-=,M#$U)U, Q*&8<&IU.I>,&&3P/CVL[ MB_$D;.OBM,"-E$9Y0.-I3;C:H,!F!08]*UEDS*+U?;J[8AQ2<#TXKNTLQ--0 MK7K;-0G DI=@0[ 4Q['N7*,'ICU+Y )$HYOW#=P1XY""[^%1;5 M?KDN?U]?.GE E?'V#S]PHW_/433:W+^X0&C#JT"72EDI$O6I)QS M B$T:J_1&MXZ@MP%WY 2%UY;PF9;*)1UR"&R MKB.)U 6Q1AVM2VVW0S:D-,11-%,[.37CT+HAR29,*G-IK$O ,=4F3CI!*)H! M:OI-CKG$TIH[]R-J--ZU*&X/6)0<2Z8!.U0D788&O,4"PNK(ZSD3VWQO^0%( M0[+?#=ER4,GEP,@4(7BZV;W6\% M;$B6NG_F-!12:_ZL7=([G%&3(Z\WFM.<%E!>2?"IT+=%*_HNJ%):5T(_ &E( M-OD(VJ:%8)JQ9=- F0E!,G3 ;#T\@1C :Q4@D5\I&$^F\-8LZ=?Z;O2 I$HV MDW\E6:)9#Y+731>$('.@<2J22NM.=;MX&Z>UO2W8L6$9M)!'\ZAF$ZCB4TJH M*-1*.=#2Y BQ2 W)"JND3@J;7Y"U4X;IM':V#Y:TE,@19@LGDPFLR^UA)7" MV&>S\[@LYQ/Z73TBO1BAUTPG7O>\.%E3S15$P30%M%9C,J:F>?JFT<&C&)*M M.P8%CROV-GW0;PWBYOG?$49E>8@T15$0IN@$>*L#+2F1I4D9[Z7DS?S&>U64.E+KW@(U'W&7[&R>Q3W:P?J=H,+)-:U:[N MS;-,$Y"SA"20U*NN-\WT;M\>P#BD*K)CJ)V6(CNF37PZ.ZO_78EFFM<1PN(Y MN=:S;WCMUR,9D"FN!/#2'>*0$8*FV"&E++V(N>385ZE FQ$,J=[L-+:P+W'W M2MFG]/UX^33,Y]_*;/XES/-BQ'W@HJA8"Z+RNBJ 9UTS':H>9T+">P0NW@%M M2/5E1R+9H0+J+Q5UU;9G'6PIWM1:2DVV'0-$EKNN8\9G'KPHO>>A-CI:!ZV4 M*T_]VVR6OXPG$UK<+Z;+,/TPCI.+BX,XN3*Q! FQT\;8DC;C A]S7O/"F-$08AA*7$P1A*6 MC(+46 @U2!%&Q)A*\RXU=R-I'OBL7'6GI G.*S#= 2#A:VI*(ZU%9R6&G!1O MO<.^S5;-@XX9'"NNV9<,#\8UN\__<<(8F4JM:Y5@:='1ZI:N7BL@""#CP=9M MX]X8\7 8,PR7J@=:'"R*TYV1>HMI-DV$.1QXS_>^K^K]_-06(VRTH;ZIHL)1 M<)895A^ZEK99\J9CK/&9"-Q8AV0R6Z>C>JKXNGSL]4G=\+8G%Q5YM9CSG)[\ M[?O?AR6.A+,V9$P0G4"*6\E+\+7A2+;<2FNYY*9U=7;3 0PI'=&">S?5V^FD MW;X(\_H0[CX%1$H[*8^Y>L=)95+:2E@(L40(CNPYQ34>F^]B[ AQ2";UB*1K M(K&^:769[5Z,R'?0*>3:#-83+&$Y>/H!R.)"I+G.6K4^:O,@J!V3%?UZZ4?D MSIYB:9.N>%X*IN7X,U[3AML^9WZZ&Z% D0]J&/PF[FHFI M;VO7)8"?Y/\^7RR[+B&CP(.7.CG0E?$J>$N,#PR8U=HX9C3CK4_.;0EM2-ON M1S1\!TEHRYS$^N?UGTBD_>L?_A]02P,$% @ T'E76)76T]T630 3'(# M !4 !N=F5E+3(P,C,Q,C,P7V1E9BYX;6SMO5ES6TF2+OC>OR*GYG6\,O:E MK+NO:G M__7O__(O__I_ ?SOI^]>_?)\DL[/<#S_Y=D4PQSS+W\,YY]^F7_"7_YK,OW' M\$OXY>THS,MD>@;P[XM_]FSR^6(Z_/AI_HM@0JU_;?W3Z5]8<:Z8(*$HZ4'Y M[,"A"E!"05ZT#\')_^?C7Y+.7NLLP$;.0&E6P$5F@/Z1\8Y+9=$N/G0T'/_C M+_6/&&;X"RUO/%M\^V]_^C2??_[+K[_^\<GR>?_N'5]'H7Y<_I%^=#?\R6_S[5Y,4Y@L%W;N$7S;^1OT.UK\&]:^ "Y#\ MSU]G^4___B^__+*47)BFZ62$[[#\LOKR;^]>WD0Z',]_S<.S7U>_\VL8C0CQ MXA/F%Y_QW_XT&YY]'N'Z[SY-L6Q$OUYR!:4KG/^[?MJO>V/Z1$"FZ3PBT-_B MN%*\(<;;/GU_S-\^"S*6<#Z:-T1\\[.;XIV?>P7G&N1UA/4CQU_TG]/D[-<%LF=O7K]_\^KE\R MO_GMV7\\>?W[B_'7.8XS+O>H-9#1)'WW2Z.Z0TZ^ MJ704(HX6?SLXG\''$#X/WL_IN*HG%R''E_3E;("%^6 % ZTU@N(L@[>^0 H: M$_,2E5$W"3%;$ZR$65Q08O6(7ZND?\71?+;^FX7L%W+?C&(IW@;K^A#B" ?* M"NG1(P2&&I3S&F+P!F+A44;C)4^EJS4M$'R_GDO"/)FN5[9Z&7$ZM?C!8/ MI%<7/]8OFC'AQ3_/A_.+9Y.SSY,Q?3M[\G4X&Q1>BC(Z0_:AD/V$#B+J!$%R M9*A*2MQW18S; #7DR1WG_!V\>8"B-W%F;X'?1J$]V7 -T_/%";45J,$URZ,1 M&VX%U) %&RVG.SBPO^(F74F]-TH0SY%Q25Y7$?0&Y) @)I_ ,IXX2I52B(^7 M"M\9I8=GPB["[H !!.=L,GX_GZ1__'5AJPZ<-?3,$(&9PFG_4PY"4K0),L,P M"9\43XVU?P-$2\W?9N#?5'L#Y4Q:2O:FJMF^JGZ2\T*(8?0V#//+\;/P>3@/ MHQ4X(Y-,"24(ZPA<=K14;RUX7@SC(1M1X9S6BOE%F(Z'XX^S%2HK;'&"!AUR:,R/VY&< AD:R/BFYN6^FB<63C',\#DN__MR>;!]FHSH\V=+*;R; MC$:_3:9_A&D>1.4#$XF(&DT$^H8DD$N%FXO1: TZV9@2.T+LGRN-XQ-=JJ0# MZ^.*.?3^4YCB[,WYO*9 :EYID+)/EI%1Q)S,H(11$&.R(+F/AK'BE6AM?-R% MIW]N=*K,S8;I?IKHP"BYN>J!4P*EXP84PP J64?OB!-@(M/:8$&G6GNC-U&< M-B/VE'H'EL:3_-_GLWG=+&\@I%2,ZL+ 6DGLYFYUC?GX^I:UX"7.Y0[_#V7PZ3.0@+'[M297F:YR_ M*239@L/Y.?W.P#,M4P@F*WPH^21J1)!%^=!&1W(5^4*&'HC#,L>E>B'DUMC_B$IV8U&;S)2 M/Y21M7!A\/9\FCZ1@&9ORA4C]D,M!IAB?GKQXNSS:'*!2"?$>]KZ9^7BPR=< M;/_TX_\:SC]5D=*:/X2O]?U;1%SH5^N'/+U^:@R8,*D4LH!L(=FJ*N^H8H 8 M# HC,V9W+3UZL[BB=]2G2=[C5OY-EIM'PW(^X#HHJ\G#\Y(I,O3I#Z^U!66# M-2JZ;!(_.IKSGSP_@/IO$MUV:O4^24O#G8#.!ED+KV2P@*D6!5>,03/ZPV-0 M0G'+>4^6Q$UPI\G&;G5TDTQNKUWS+L/F*LB%05-_KU9?/YO,YK.!Y1$)*[T# M#@6HH#P$,JY)5D5J)Z*B#7^K+?#A&$Z307TJYB:??*>;TVO\8_&CV2!FE$IS M0HF,?+00);EG+D Q3BO)O,[*]+DS?4-VFJ3J4#NW!+3WSGO<1?]+E#FA]JXH M(%)K($O30Y3&0HF*J,^C+JQU.'(K8#\DA?;0S2T,VK]08XO(YZ)N8""9B:BT M 2FDKNP:>_,RIW;YA(BT(^;<;U MJ<];^/C@_,$:/V&\!#PP1NH84P)FZTZJG0(OM0!NF,DL&6$%;\RN[P"<-E<> M+NM;-/_@F/I694\^^9B="> P"#I2-8-@5*QYUF19+%YA:_]K^P*T)F5412L5 M12R0D7E0*M47SY,SK*SD'E-.II/#^98RJG_]]1K=7]&W#[@A_?[\["Q,+R;E M_?#C>%B&*8SG3U*:G(_G]2BXYM=TGZ@4_: M[YYTB^4UNBK]=CK)YXG>YMK&(ZQ6L:IA+2IH9XL';G6F'9U>HN@8@^S)\&#* M6.M;$^L..'N_.>D3YO,1OBDW'[*\'YH]HQ.,U:V"_E"FODC*21"EN&B+EH+I MUB_2?:#ZNF+=B@O$4Q^D3O=7_6-PF M%'2L.!LTI&CH2#310Y#!08@F%!V]#+$UE>[#=+!+V&T9<*/DN:$F.KF%>1W? M&MWJ1LDV^#JZI7T?ML-@HZE&7^ 0E#>@BB6S M+R /^98&-X^0+O=PN[@[M6'X1EY#&_*AVD8SPI. MWY3?)Y/\9KHJB%^\ 8R<':V+!C+A:-%GSW9@-75 5=,&;%;@IYC=?<$J8UTT04O8Q.4L6 M6E&T=,LD!"XS[;PI!2581-:Z0".H*0VD-5..E2_AV8I+]/R$(>UV0A 21T:3[;A%0%K1@W M'%@F/TWQPLB,%AJ2MLD$S8TNK7>0[=&=$&6ZT4@7Q\WY;#XYJ]5TM\.+/$N- MFN M@L:!;+!(UC58DHJK7:JM;%W-?P^DTV%)2]DWC+[.IO/+-G&7FU\8+0[9 M:(*)Y'"#<;4S>7()7(F>SEP3J\^6C-PJ\$%/N4(&^NZ2"'<"."V?I9VL&S9> M68!:5I]B8-%37I2LH-CX>[P24R:WB,D%HIL!"YH-/')'5OO>IWG]C?J=U0NI-]1=.!L;^L87Z/Z7Q* L39TXN7 MXTR&Q/1BP4>9N2DV,D@H&/%1&:AEXV CF2*!_A2^=0[K;D2G=5YWH(6&_:DV MH5MC6S%X&W2=3EO9A.PPP<:6NKR')@T4T=D EHTHL62M8BD0@RWDH2IZ8YBS MD+F-UHJH_7:G_9'3Y)[ X^%8LHO\6QL$;\_C:)B>C/-_GH?9\//B.P)*_V(= MOLC%&XP2,FV8H*2,=!HF)"<839&J)'^]9\3&SEUW/^E0;?7;J&72E4P[L#!> MGGT.PVFUG]Z45Y/QQU?#+YB?S&8XG_T'CO)OD^G?9CB(Z RO-I1!K)VZ7"6\ M"V!D\*&P8JUJW2U]*V#]\Z2K^RCM]= !6197<1>@+N$^^Q2F'[%>MBR:]CX/ M41=7F[E5WXB^RLD77XQ6PG5R;?IV.*=#C%8R[R-[^98L=OJ+\!'Y($BQ&! # MPM6Y9=(H".0A@^;"ZJ",YMA^J-=F/*=#B&92[V15J?J@QS]^MO0D^@XZR-^&]-4PQ.&H-II8@ER-8O@?S(/L!$/2.4@=$Z@< MR?Z6.8/D2:/+.1K;?A#0+@@?/Y=ZT$P'<;4G^0M.Y\,9;84OOM;^Q3BPECOG MR/?3HG:;C=Y!9#4"P(00BM5Q-:TO-]Y$<3I\V%/"&[N@]]OMX\5L/CRK+:_) M02OGH^JXS28U#OV9%G<1QKF&%CY7L[WS=B"[0^FC7\B> FK74&3QO+>C"O+* M0R^YS'12K-"9%97"VIG =11)RV9TF'2KE@["2)M7?UEY MMPW$CK*86\ [3"JSN6JWI>CD0A;S(.=>AMT75.:.8$6+$ #(KI3%J*4)K MX_U@U+DGO7D,S-E%':T3G6\*V:KXV_ETO!@Q=A7ANNZ'Q<@0(\105!U^+2'4 M:EP>DY7<>*&O-X'=$#ZZ]U$'<>?::F?2F6@[R&'53K+GAT7N:^)&U/OL M@CQ/9BR07VM!&%6B4 )+:CT_? .4TV%$2YFWW@/>GT^_X 4M]K M ?.,G+;,#6T^!(>)C#X8$:U7#8J9OSWP)'V+AXNT"[VNZ+4-C(8W%:X\NO^[ M"0\4_G7U[2&YQK@P#MN&+35 MWRX":ZRWOY*DSL[/5D R0^9D9'1^ET1[":/-75D+AD<5T'N51(O-];N']GO5 MX,%BG[2064-K> $D?+T")*#V5B@#HC@RRS&X.@.O@/4F>V.-\MM-N[Q/>5DO/E176W@BFT\?05];B$=42& M;YO0?FM5;'S5^\UM?I^4KX_K/(>Y^9%]Y"JW7'"CG.2WIU4*+VZNVG M;JKH&J!O5';X<"1+7\AD(9A/9(*%6G"2L#:;XY'V \?)&T*%IG5ZJ@WROO*C M!^+KA@K&/M5]+%G6O9?^?AZF\^=AOG0_I"<9\(78@8.NWX.%4:!V+_2N&V?ET\:8LQPDN$+ELLZNCH] D!LJ2 M7)PA1#F@R\P'+86\S^;8_/$_(',:R;IA$.]V1*LX]#:8;H_H;,M][0F>?*0S V792HG7/KB_^$ [44\: MR:EAE.\*E@]_3%98-)<^BJ2!820L*>2:WB-HWJ#322M[/2)TI\Z^??!IZ.QA M5G3!03EHR!")4GPD4LD3K9@J2C2K:E'@HK3N0;P6L_P#?8_)-=U); M!S4P>\MJ^:[P@66^H.4*K-$"%*O9_6SIE='&/;B&M)>(]H ?-J9]?=$_H]H_H]K'(<.?4>T?(JK],_AW L&_;L)#/X-_ M/X-_QZ;5G\&_G\&_G\&_G\&_G\&_G\&_G\&_G\&_4V7HHPO^O0C3NI@9@7O_ M*4SQ=9C6]HA?<(]JU7L_<[_0W6Z0&T7FGHSGPSP[M^.GLB6KKR M+$CR!42=8$AVH:H6(EDI9+%DI;**D0#HQI)LNX*^HG0'X>[F#CZ]*__0L;I& M>GAZI("O, MZ[$D=3BR976V*)=*M6YAZ-$2;1<%=A)UFLVGP^KYO9]/TGHP:1"\ M-E_-(%1MR6J+@%AB!"5DX$$(IFSK(6.W NG?9V^KKQN>^+["[B VM.>;\^2L MEIX,;.8VU1$YRM6F!@0=G%4*M'">*RV##JWG3CC<)L]J8L'GK)FVRG\<9;7QA>O$^?%O5PLC+QEB6 MM 2CG"._5UF(UA7P/C.+RDM[O?OC_HS9!.;P480]M7V=14VDWH'U>P5.-?'> ME _3,)XMLQXK>V\;A!VY]/>C.XQ3WTB=UTG2C2X.Q!INHHP^ RO5IF<>P?-4 MP/*04%EI VN=+#D46^YQS ]'EAU4T,U4U06\-Z7@E&SGE;-74N%D'3MR'VO[ MTSI9U"7#(;GY]-EF<5PDA?N\NPU_K'XT6R @0GNR$LWB=%%)1,4_;SU MP; 5LOZ9TH&WTEX''>P<2SA+F&^GPX3KJ,K T9XFI$R B=':8S 03-' '09G MZ+QTJO4@]HU@3H(/323=Q6:QR#D$Y+^>3Z<+3YIUJ(*6]3WUZ\=?PWY/IE7BD-8%9FQ)(8^O$BJ A!K+D M+&=!"31)QT8^+?!6DIF74>R#<".\@KW@CM, M6J&)*K>@Q_YZ. AAHN/2,C+VBJGW'(M4Y+)F"4PE9XH(BJ76A=('(LH]&87# M\&07\;=.)_Q]2,[ Z,HL]O>36KI#1NNZA,PSE+_;E9CS4RZ$FOK6]Q$Z;/?<3+[3,C"Z-6K9]_FYQFL7 ;&)*U6 M\E [@@0HW!>FC2E%IJU4O>$!)Z7A%D)L/HAT_@FG5]:Z@B20!V9HN]*YSEXU MUH(+]:YG%DG&4$3.VTT?O/WS3TJM#4380>#L/4Z'.'M37H[S\,LPT]8RNGAY M1CL+_7T8W19R6./6#*4G(@HO#.$6C+PPI2"7D&S4]2Y.\_N #\1Z*C3J56<; M(W$/Y]ISC/.7XQEYO8M0\J+OC$LA(;GQ)2WZ8$0&GF$MRT4OHJ<=+;7V0F^B M^/$ >^Y49\/DM5$@$* M7$D@@TB2QY0$^)R]X4CX5.MN'OT2X1Y/LB\>["+GUN;FW\9I,AK5 RV,AO]3 M\^"3L^%L-IE>O)[,U^VJM'+:,Y. TU9']I(/0,<:[;QTKB6)+@03MC(^MWE: M_S9$&\5,NI1J!W4F:^OEV>0L#L<+!_<9&3!#^O3%-XO"K()3.BSYP BREZ7R M8+0D>R9P!TX63[P7WG*)EO[;471I&WP'N*;55QZE,S5U0*E5Z<+LPV0EGC5X MG/T^G;M;Y+:< ]F$Z8.DW5T8'A M4??"&8%<&-G2N*"\I%,#&7GG*!V=K#R"R+0!8V!9\M8[S-7GGS -'BSF#IR/ M6USFY3U'6CI.<39?5N.]F2X*7 CPW\/HO$IC^'&,F8Y,$P,O2/L;.6'*:@NN M% Y%*3J3F:)=KG7)PWZ(3YA6/:JR@PC)Z_,JQC?E5E&\ _8?H=2LDW^:J[X6LM&B;S[[M%O1J& M.!S18@;&)6FT,:"#(-_6Q03.>DF;<)0R*I.X[^HHW0'F#\>_=DJ[R3/3 <^N MG/[OL$8\\K,)O2(#*X)PP2N"YLBUD$K62S0!A.?6>Y-\,JUON&Z/[L=B50L5 MW223[;Y:_,,G_"T,IPN[<38I2S&M)1G&>?U>U$990I%Q*]):\ MFMH5@TQ7B#DP$%IQM#$XT[P=__;H^BHY;\Z5S:7F315R['7E2F=KI,Q SE*] MQRS)WG0Q0/*18X@^!]%ZBMO1UI6W5?R61>2[*. @-<'; /Q91+ZS*G0/5FL#$1Y3$7FI\\6<4Q!B3;?QVM0F)0;)Q*R,D0I-ZW#O M*161/X1&O>JL@Q3I'3[5U1KIY>6Z8FQDA@#R6A=I@H+HR<<22"]%*BG$V-IP MW '>B?NG72FJ@_WK#JB70*]48&X#MR,/=D>HA_%G.U/]]A1KIK<./-Y=8=N4 MLZ^5W;R.B%6<(41--ANW-IMZW;.4UO6)1T&S>[SA8V79+NKJ@%W/SF?SR1E. M%UFU>FY_&GZ>?2ON+KQDLOY+'>ZMBA!D(BH&,C/-E=>6A=:1_SO@]&]2=:K* M23=ZZ* B^L,T9*S+7./QG#QZCK7DUI(AF5,&[V4 8:40J3BKFE_FO([AM,FP ME\0[W"1>#6?S-204TA<3"]0";% B.G A>T"#A"\X'EGK6N=;8)PV#_:5>P?& M[P=,G\:3T>3CQ:+1XPT1K!H5(Q9?KV_0HAVHY"*X+"1HKYP/3%BF6Z?UM@)V MVG1IKYL.//)%3&H#-*^9%Y%QP"1BG;B4P*$2$&3*MB =@WQ9<;Q?%B&X1OH=0'1D]L*B)Z%V2?Z0:U^_1)&]2;1P,<< M@_,<7"W85UI9\);V4BF#<(7V5S*HNB_K:[BBHR+JJR;E,$=$@7ZNK3Y\=>?3 M:;W9O?A-^A2D1=*_)"=6))DSJT3N6U7."[X<=/\S?E;[/5+P^L&T[ MWY 0[!+E";'VN#3:X?W.%FM[.YU\QNG\XNTHT$NY/(0^UX+*@3/T]A4C:XQ1 MDNAI?70J"9#>D]E6E)*A=7/G7A9V0DP_7D(T],N:O\YOI_@Y#/.+KW5(!!T\ M*2DA#,N0C5*@0B%_T^@",LN2T$AOY':-.SL$>4*D/2I]'KESN/"!7T_&Z:K1 M-"C"&X.!@[5:@$+#P2MKP,O@)1K+7)9'O#/?NJ@3(OAQ$J&?&[$/7N"E"FK] M;W$RHP1//@&H2.95G:H"T@:+46#6S1O8=+24GZSN1.G]W+I]\+)6;V>M02T> M:U&9HQ4%=."L,2#1RT3.KK.=-8MOMXJ?#&ZMZHVW?(^#O%?^9L"]55A,J'WS M5!T26B!Z7ANPLK.EK*3QIWHO2;7';'Q.7GN&PM\B%\O;I":T0L MM:ARR8!3CH-7/A,YXZS[JAI??NJ?C*\:RK<)+L_)K*_QOG ",Z88@)R M6*2-A*S=3CDHP8N,S$A>CCFE0DOX2>.F2KXE4;+?;;9-W9MJ#G/1 Y%@7YV6 M:;@613D)T1A'$#."TP9!!Q6\-DX8<HO'7 M%9:_7 8X\B!$YK4L'$1MEJ-R'>V@4H)@A#$<>5:^]8CV_1"?$-\.H,);&-A% MEFQS3V=OBI2B., 2:YNFP"$B]R!"Y"9&06;7M";?.]X8KJ=XQSM>W*B?E\^4OX/H7]F@!M]?S]NOXUFZIC1J\;6&WH"8//%M@ M*M/K2T(>Y*M]:_(PL@(QT\[- M4LG6&>'*]9G1CYLZJR'1QAN\E\ D%FV"#^T=QD^$-I+OX"8..9^?S^6BC&^]I7W$&TM6-6Y(:76OWE6D^:W0#E]-C00N:M;ZB\/Y]^P8L% M/7&4KR-CWEM39,W4RYK&)&//661@=8E>^V""NK8];,BRW/F8T]%T8Y%V<,?C M%889?IJ,\LNSS]/)EX5?]*UE&>J@9"BU. /)]B8*>BYJGS0EB]/9TF'8^-V_ M \[IL**U[#NXG+YQZ0L:C\,XX0+]M2M+3[%,Z'!+Z?SL?#&TQ&BC*P7(D1.U2YH#QXGYJ%U6 8VWV)M'W&Y91T33-I&; M8Z-"%Z-.'[;$+1?G&7>Z* 0C"PF?6?(F IWIS&!4(8828SH.GO]D^('5WV=X MX)[%E7GMF+O5"IE,4F0G04:6JKM<(!CZHWBKA1&&#)O6T?/N5_63Y=T28:,M MVW'"\768UL3_%VR?6[SQT9VD$>]>0*.,(5FD85$SSS6C\J8\ MO?@KSC]-EG?%/GP*X_=AA)<<=>2JILPE<=0;4+7"VSGR;W*L\0U$U*QUK/'A M:/?=77=^\C*K8;+#S)F#+$/-:J3:>#S5^>X.ZAK2O[&-/?+N^ M)_:@OF/)4;XTAR_.E/H/AJM!*$5Q;D1 R$I)6@^+$#UMXXY'[U76 M'&/K!A^["+Z3F;6/*?= M-,T7\VE744W!4]&8/8A:'$DP!$3E/+UA6M;CV\3K?2WOFEESX_/[]]D::N#& MO)K]Q-=!F.RJZT>^GI#:2&*K$I9\/9O!121?3SIOA"Y6Y-;1VZO//X"J#V.B M/ECH&PG0RL%>%R"3?WJ],/JRU'7]2WMXVP]ZSGZN]_Y+:^2'KY]QR25CG8D> M:1.118.J#;!#K'=*C0_!9F$5:YV0OP&B75WN^J.7IK2*/(@4%"0G$RA9^\PD M'X!EZ8RDS4_9UD7(&Z#TY??NI]_-1;8/E^NQ^*O?SM3U]8CWR\]=#B9!D1VS MV0&7=7(;9PIB$;0O\F1,\+%(&UHSY2Y AZ^CW4/CUUG43/(=>!LK+"L#:QLP M';FAWP$YC-O94%$WIMSM*^7.5<^$P\!IBW0L\]H*)X!']* M>FN$LB&U#J'V MH/)[',F^-+Z+<%N[CB]?_[8>]\-4,&0%@D >R7W">JDW,C"F6,,U*^:ZBC=X MB]\^LG^O80^Y3O862NL1PT\_O%^7)R67B&H2K(V"/%%C(>2DH'BN73(8BW-; MJ>;;1SY:U3Q,**W?FM]?O%E7CRHZW4M >O?27;09AL#6G@T JMDP"B*.T''FM45]:*[A0SRCIHH'5: M;?WLPZGUP8K8H-B=I-B!U?GMFOWJVOWS\^EP_/$M3H>3/. 8R-32MLZ!IVTE MFKHSD=>E16U@+HG4HBL-WX;G=+2^M[0[W,3?GD_3IS"KM:V3\_&<\#W)_WT^ MFR\,\0$=*]+S:$ $5D Y[\#7CITQ\>A+*@YCZZ9_6P$['6ZTDW\'A?-KD+1@ M''X<+Z?0I(M%EYGE0-/?27:O)K/9P,J26&1DUA@F21:%@].E#K2T2+8\G7VQ M=6IT>W2G0Y?&FNB@D_^WHTXF'TU!2PY\,G4T$4$@GQVLYRXB*NT[.TX.D!I: M-M89W=98I^MLT1:/[B&!M*L &N64MFIH9&1*QF<&&E6I]YK(ZO)<00@F:AML M3+'UW:]M<+7+/-WQM&4(W14=HC$"?"%?4R51D^WT%>T.QC&)HOVUC>W1]96? M:LZ5S2FKI@HYEBS6'8MZ>G$YRG01OLWDT60O&(04Z12R-D/@V4,6W 5-)J\R MK7-:.\ [?(:K+4&NW\SO2%%=M&_8<3CN-G [2I+M"/4P:;3.5+\]Q9KI[0CH MEM"F4'/-DB&O\1H+GM'A0.ZZ+%(PGV/KVV!'0;-[4G?'RK)=U-4!NYZ1XSXY MP^D[7/IDLT_#S^MRQVP8)R_/@1"!H%EAP%E&+J .TF@2B\FMW:$[X!Q5Y]'] M57F]%TDC/7003R>//6-=YAJ/-"8:J2P4AXS<9%; ,6]!EA"%]DYHTWK@T74, MITV&O23>X2;Q:GA9"VUMTF35$2FCJK$24\!'IVBE(>C .4K;O#'131BGS8-] MY=Y!$+[.)IR];IM0%D3D$4MJZ36$"YWS-$:3, U/>R]:1]\UH M3IL8C;30>GKO<_R"H\EGS!\P?1I/1I./%^NJ&4?<9'76'TL:%"T9?! )K"@N M&TU_XG:E1!L?<9H*;RC6AH'SV70^>$<+7G9KS,*S*)F'4*]1*4YP FH'B>OH MHY"!FZUNHM"G7GGGZ;O+]_V[!YYH).3A0FVXS7\#L38]MX"Q2^QB&QVW?Y_O MCT7L(?SKZMM#<@U-M^MPBBI,96)D-)%V"A0(3OE,.U"**4FIE=@JN'EH!6[P M\MOK;Q>!-=;;7TE29^=G*R *F8TL,?+YG*@'NH%@5 "R_+C 4+S+6^5![M'< M=P_M[S#=2^R3%C)KZ#$O@(2O5X D:741/(/@]0:JM(FL=:NKXR884]'IRQGU M^RCOZD,?H?(>++-^XZVOUS"47)TRV%LC^IUTI#.0J:-:PZ[9-ENZBKYZK3&,C+ MJ28%\MIM0DA%=D7M[)QRUM(5P9KW97C45:<[J7*'JM-=]-!'U6E.2N<@ FCZ M9:"O&=2D$KC(T69I3 [QAZ\ZW8<,>TF\IZK3XGCAG!=@FOP-)8F>L6;VN57, M9[08S' M7'6Z#S$:::&_JE//I?>E,T&*Q&E/.(WW+9&!*R#]ZCXU2;V MUYOZ.F_ _GHRQ]G;<%'#4&&\;#[_)HZ&'Y>V]#T_WB/WT>;!^Z4\.EA\HTS' M#D#T'CY(E'Y-TS>^G;("R_R"(JQ^[ M#(-&QVA;]QE<]I/JL60? MOE_',K14F%"!*S NUY)*;\ AK8H\_,!S#L7*UGF]FR@.E4O86Z]W\F1G^7;@ M*7^/Z&HP>0M<'24!-F$Z3+1_7YW=28$]!=XG(41 4Q2SU3'+M4JE%I%(#Y(V M3322OHZMAX/V2X1[XO%]\6 7.;=N1?T>QT/R \G$'LY_"VDX&L[7GIL-2K*H M(EA!'KK*L5Z,J0,3O2K"1^&L-_<9G_<\HW^/I8T2)NTEV+K]^]_&:3*JY:;3 M,!K^#^:W)(KA;#:97E1K>]TJ (7B7M:R9D$6D':1G'->\TF%,90QI.M5>QM4 MO,W33D'9S:7:_'V>3](_5J[4^MZOT3F7:" 79>L0 DEN,)DOTAC%4:=<<+O MULW//@65[BFQ#@+8WZ_Q69A.+VK?W+/:0'?@E<[1!'):8BT&+MQ"5"R *4D+ M])I;;)W9N@O/H1G0A3>WA\2[N2D4Q@E?89CAJV&(BP-FD&-1(HI2L_X.%(;% MI45+QJW,(@?D3+7VX&\%V M=;AP)X _$J<>HI,.DJ[;@1UD%BRO1VO!0"@-G:^U01TX)KE$;V5FK7,LVR'[ MD2BSDQ9N="^HXQZD9TSIS0TJOPYI8D:1T MRX"(A?2_8@6V-A!ZS''JPJ5S]-887F_K)RYK58L''R1G625RW5H/13C"'.4X=]+K_3G. M7>3;9TIK&UP_:HYS)YUMF]MZB,#[)$3.5CK/,A2C51T#*\';J""@%-J2]95" MZXK@8\]Q=L*#7>3<8XZ3>5^;95M@A Y4\1EBR@F$*-S)FJ$3]QJ4CR?'N9,2 MMLQQ[B+!UCG.]T@60W[R;@GL6YWYM]9PF'/MA!]L7,RCT^0VF=IHQR1FR#WF MU]OI;=3M'8\Y#?6VDF/K5W<3)D<;4I"8 -$Q4-%:\+DHL,A8849))K=+7)^P M5EO(KH.X]O>[R+(%J\ST8!OJ2$=R4GAF$+324(32/!<7>=JJ*?0N%[5NH#@5 M:WQ/^7:N\36MM\#4D25^&Y[#6.'[ZNI.U>\AZ"XN:-Z*S1OII$+ P&KSNT#; MFB9;0F:#*+*S'%O':/I3_CV6=R^ZWT&^'>B\AJ'>E"6RU>'#?3;9JFH]I.I< MB "Q9#(KM)0N.$-'6_-LT0T4_9_N^VOG>G!_/]%V4*?R#K],1E]J/O,V-X$+ MHU&2O:&MT61TT-GH,[,0,1HR/$P)I76]RIV 3H "[03>\:O_#=FR<_?3R70Z M^:/B#I_I)_.+ 497=/9D@AI)?#7D7,3D,HABA,XQ)J]:W[/?8;2:;BGJV!#W1&%;TOH+&65 O!P66L8C"FU*ZKZ&5CJFP$ MCE.TYK&?CF^R=R4DD(CPVJ:CA>5N44 #X$I M[1BG8W"KR,!#$3QN5O0G_"Y*YJ[@'A1T(I1@@.?%6 ^3:B^#",72W^O@Z41L M'52X^OS'38.])=I%6=HMK'PYGN,49_-W88[/SZ?$Q; MU:*<061>JT+>DPJLT!\>(=1A>>A5C8\RH9)Z\ FRZ:F/FQ#="GECU5D';%B- MAOIM^!7SLT]A^A'K3RYQ6Y11"._!!EDCLTR!EZD.UTU2F^RY+7QO=KG*^&_SP?YDO3:'EIA$5+YZ#38%Q%)S!#5-&!T#IE5G2) MU^?V;&PC=<^C3H &;<5Y4]FVBSLXR[% 1@K:IF( U'7"0@AU3V+'N,$KWH]%2"9-5X)C0+0U6RJC06B MC DXYZYPX;S!UH'-N_"1ZRW1I[UCD'6-UWK+7?5M!J;VEHO: M@ Y!@8JFU(%/#)SP0A#:D$L7W5'N@'0:/&@I]UMXT7BVT:)[P-,P(U.U=CL= MSQ9[5HM[*EM^\G[74QX"O]&ME/=DVN.-1S^A)X\_+LJ5GEY<_LK;<+&H3_TC M3/,ES5 )9G5R8&(MC;*.3@*G)'@G?9$^"M,\F;P_ZG;SB>[%,ML$9C4,147K M9-1@"ZM]S9!!%(R#EMYA,?26Y=;-\YN![^M>3<\LW3S[J$]E'\O%G;>C,*Z5 MD(OB&,]=S(+V_1PS60$F&?#+U#8OS'.&1;=FZ]7G'WZX4:\,N)XD?*@F.B@M M6&-9]ZS> DU'A83?(SE,">'#-;-!Q7N(M7ME6\&<04%.@5Z,>P]Q.65"\1@C M^85.A-975OM0\CVE@EWI>!=IMD[PO_CG^7!^40'1'L375PW(A:>E&6!6JMI> MD4-(2D,,A='>99.VX3Z[>>.G]^\>[2/N24M9-2S1F4WG@W?UQ%F043"-GN@' MJ%F-S*4(GJD,25B&&&7M8K+-^TB?>N5=I.\NW\/O'OACGL(/EWG#(HMO(%;\ MVP;&+N?N-A1H_R+??]#N(?SKZMM#<@VWW^MP4/O(>!-=;;*C>Z)I)'7] B&0!ET8TXT(&""8I+2IF" MR6\W1_$>S7WWT/Y.T;W$/FDAL\;'YJK:=CTP+;IDI9<@7;UFK4RH22T.+@F' M7M!2RU:5K/V65-'@8TNUG.8\,@>-+D> MBCT6'7>PL76R-B-R4"4JB$RO,H%!1/)7C?8Z))NC:IY>>#2\O2?B<^2TW46U M'=#U'<[FTV&:8U[D+]?3%D2*'#U)2=6[="$[<$HCH&12A)1(@.VO&-X"I/\X MT^%U?.-JXKX*ZN!2V8-3>:_/*_R5N3-[.4ZD%I<$R\7OSQ=WI5OUW2X -5?$BU$#\K M6H9BHLZ"U0(,%W0*<9E=:9U@:8G_)YO[4GX7[O5H\3MT:-RZJ!=?ZY)[G'X9 M)KP=ZX?P]2F.267S>@_ZME4$':T,M*U+P1.H7.L.JS%#(@L);O)_/_@_!VFR0!5)]F'PC0D:Y1S M4K$MTZ6MSX&'+.:'>Q..@Q8-+S1WOK"E;_#;9+KZJ_I[?)!1L> 9N;S,UKY5 MSM!J;5URR,)G*XINW;&IWQ7^?#..AT -+W%W?R+^?2&?E^/ELA<2^BT,IW\/ MHW/RA((V!:.%1$L$I;TEDS+Q.E&0Y&""#JYU]ZK#K/2'>WT> :$V7H_O]B[< MM5S [OD![\OMPM+N[LOMHNQC MN2_W?=6 4UZY@F1=>5-[>)(<'88,F9F;-?VL3]NI/FTGFO11Z/,0'3\6_O(DO30Z@N8UOE_KB*-)&D)6!:UTB?G6 M"9W'P]N=ZM..CK:[J+:W^C2MF1+^"3\R!X]):AB3EM=5?N9WW: M[CK>JCYM%P4=4QW/O2&$;V&[=Y/1Z+?)M/ZC 2L,A> >/,OTYAIEZVW44HN8 M;%(B!VP^>Z7?%1XASSMV?HZ70(_S=5E6_ T22L6=K*,YJAN @4%0H5:P:B=Y M*CG*UL.">UO<(WI)>F!I_R_4 RAV"/OZP0O]G3YB/EM'KP?>H76RT!%K/1VQ MM6UC#%)""4+ZF+RQ[/&\2M^O[>>;=) W:0^"=5!KV%<::$"& .:H'7@KZBP& MKR&6*"$Y3J8J0U_8XZG4^GYM/U^D@[Q(>Q#L454_DA8*#J\NU205=2ZTU.)) M'S8(6$RTQIRX$YBU>D2>T(WE_7R=#O(Z[4>S#BHB^S-F6=#:\WIY1$7:.DJD MKX1BD)5 %XN*_GC2S/OY2]MK83EGO4*(=Z",%Y>_*D4'+DE'#+6VSGH+P5P+3F[HO':\:WQ$&^%^ M\: CU\-.7'M4SN[VDADPC4[1BP.E-G!47&LZOJ(%K1AWW$6>;>LJ\F-8=W_O MX$F]!/W'I=HR^%&]Q=]'%.X7!-ETF@MFH/!<&R4@67B\9'"2H\LI^6"VZL)V M%*_RCHO_^3X?]_O<)9-8^<_7^;A?Y\Y8_#B#B/?+((>BT&8-,L@,2FH%KC@%'K/0(96JY$?S)N_J M.[>ZK/5R3%_BA_ 59RVFE=WU!ET#^)X%.E&3$Q"CCN!CT=*JA,:W;C6X!:R])UMN?,3R.H3C"F5R M$7*6OJ[:0\14^YPAEN 25\T;+]T#J:];3:TY<6/V94/)'\MEI&_O[:I3WOQB M42L>Z?!R,02(C E0O$[O%CI!=-([.H!]X:T=J]N1'.IZ4E-=3YK+O(-0W4U4 MJQ+N;7!U=(-H$Z;#W )JH;=[J;"'T/LDA4F(21 ^'J,"E1D'KU@ PZ0PS&H? M6.NAGOV2X9ZK-7UR81=9=\ !0E$;4*9GD_/Q?'JQNH:AI/".L00,[6)"!VV M/M5:6"69EUB\;QU/OQ5(__GB-GJZ/D]Y;R%W4+Q//B^Y.^-KF 0S,?@Z(T33 MR4=>'GC#$0(*0=95]$ZU+@Z^#<>)Z'UO$7>1M)N30_MDG%_1;X[^W_/I<):' MJ9_--O& MU2:.TF^@R."WH!G4\S# M^5543\[J=C;03LM<> ;TG+:Q6 QX;B)H44."!-K%UJ2X \[IL:*5[%L/C=VX M[O?G\;\QS3],7GS]/)PN@K.#[++7*E;^+J/]9"RKZ&E/$XDY;S(3U\+$&TH: M=WGJZ7"A6X$W/$3N!OIZ,K\5:RRI9*4 (P90]>J=$^A :"-,-,&2O/8CQ^T/ M_E'XT4#L&U/1K5(@[_#S9#JO0;?WRY#G[/WYV5E8#/7X;3@.XS0,HY=C6M'9 M OT>Z9&'/FJ_U$F3!;9J7[=$L(1$A'F'7W!\CK4I*,&@?_6Q4O&2DE&C(GXD MX)QL#I6-!V>M@VPB4ZI((T3S2P2[0=R_2\CJR?U-6CZOMZ-?J^C!Y-AG/ M)J-AKE,6EO'AE)AVEJQT&W6F=Y77IE1< *?WU)#A;K)N'1][&-+>6LYUR*R; MC4,ZU]FA\S=UZNKE"FB5"ZDM8I JNU*<):N/95J&#[1[\Q2!9<^X%L''V&)D M[>U//U2^I@^53YJ*OO',Z9N(5@&);3 UG "_"4?_X^!;Z.A.E>\AX+Z4'X7# M:*4 HSV"0H%DR64%P1ME;59.3*9E0 M=(2]GHQ7R%; G#)F$76.5BUB/@7H5#/ E7 FN!*3V>IEWT'[&\&<@/[;"+JK M_,RBG/%\1O;R;+8FZ&*ODX:<]B0U'8ZJSFR(&6(P F+V$9W/3O+F YWO O0# M6(3M%=/%K9TEEM6+L0V8KMH"7P5RF$J>AHJZ3H&]I=S%AO$=J)ADTM%%*"P[ M\JQM !\LAV11Y\P]8FP=FNA!Y??4Z_2E\5V$VSKO\O+U;ZL#*F0=!:-S3NE" MZXF1@[G8&Z(FW_[R .T97BX7"=["Z6AW;9 \?3#^Q6*9"7J M5#Q44H$2Q+)001DTSM"ZO+-J*]5\^\A'JYJ'":7U6_/[BS!MYJIJ*M'IK$VYV3@8IE,\8[G.,79?* *+TE4VTJ7LL/.C $7AR5L7W/RN/F%"%\<;WU+9S/!MJ$X'UP@*I>:F'T M GI&5K%UWFB?G#3-PX=W(SIMHC741@\W%;":!%CS$P$.A$2""T**(\"G,H9,B<7 MVZ-F#+>Z-7-/*GXC@,,/>NR> )/6BFAI%(-66![95NU*CDOU=Q3K]*GY783; M4.-I>:]S\+?W@ZRE%/6Y] 6MR01:$X\>HM.)W+F<#-X5E9QA^O/'R9=?5Y^X MU/#JFTL%7SZOWP*,1H*?["6UUDF;[^[F#G%=_V.0!Y:, U/OV:E"Y(S::!!% MVIBCS$G=ZP+=\?F/67&MQ-9[T4PLG(AD>+UC3U:&%AZ"M&3K6J--O4=))/P1 MBF8.8*RU5U#GQ3/;@/E1BV=V4M3=I10/D'+WQ3.9B,Q* A26SB/)'7B?.6A/ M?K#4.=GKF_]C4/E>Q3,--;Z#<+LKGG&2*1U3!&$SH6 H(:0800<,SL:@#-_N M?#^>XIE=Y'I[\$:1R1=8))N$/ !0@1N(RB)@E+)@-%9=[SUS],4S M#U7-PX327?%,\MIS:SG87!O7&&LAA)#K?*^H6"Q*2KV5:HZG>.:AJGF84(ZD M>"9+5VRR$;BMO8<,8V3VEP"<,9NE3,G;CO(,QUT\=<*W+A3]Y!27"_B M V'H)IEXVQ,Z2R/>NYP#W=#W00;%#9T.QCI0:#TXI238PD2P"5-1K=_GQW%# MGW$2030%@N:*!./);!6"TW*D"_3.!J9:]TD^K1OZNS"KT0W]771V#-G OX;_ MGDPO3XGJ+0DA46(VD%#4>EK'P!>90#G.E;>%I[+52.A[HOPWG_S([F'MI.I) M,Y$WSO:\#F?XIGR':65=;@.J8<)O(Y#^$W[[:FC2E7A[T[W6(MH@-: I9!(B MDV2BL0+,)_*ELU186F3Z>M;Y'9F^7E2^BU1;^\%OS^-HF,@-^,_S,!M^7GSW M'A/]BY4G& TRM%@3'XK^$*C!JR)!*&69B,X8O]WDWON>U&_ZJ)$V)EV)LG4H MZNUT^(7.J._Q.!5805X[Z)'#QBZY<,?OS;W%%CO MF4!FC+6*,]!,8HUF<_"915HI3]QSFY.+/T(FL$>SK;UB.L\ ;@/F1\T [J2H M._-!#Y%RYQE EHPJ.1J(OD0R5X*#P @9;8+2>4D_<5LY<,>E\KTR@ TUOH-P MN\L >J9E4(73>DJJHS@C1),T:)$%5[H8J[9K.WLT&<"=Y'I[!G 7H727 -8PXL8LS<*(Y\NSO:1Y,!?+!J'B:4[C* 624)WB;_[EG.@Q!^&@-(Q(IWS="@$ M0\2(4@*30GO&I:=3XX=,_"F??%0Y09%%@"J.7-1:V,P<:A\UIY^UOM%\6HF_ M79C5*/&WB\X.G?A;+_6VC?MIF UG;\K;Z3#5W;LZ3S;15AW)+M#=J+(C5:?S57501SB?I0KNW4;G!U%I[;%>)C M51=ZWIE*>RCID*32M+.G4&>9EE2'PJ"%:(N$&#,Y12PSYEH/_#PLF>X)B1T3 MEW;13>L P+/);#[%X5D\G\[J1KP&O;[W9:7(0G-.?D\RH'QDX&R((#VYSYH+ MR\IV$9M['M2_0]B->B8=R;:+^;##KYCK4K\!6^&2=!9SGS/P;!!49 B^V R: M87(BN*Q#Z^MTF["<&"V:BK[WY*IF@4N7:_$SLN4 4Y^C!9:Y<2SK6B__,[G: MB8G;3C&=)U>W ?.C)E=W4M2=J;:'2+G[Y"I7JF!TD%1E.',)?*H-:S$58Z1$ MCQW-DSO:Y&H[C>\BW.Z2J[F4R".A8#$2"N0>(O<%O,TBL2!1Q+"5/7@\R=5= MY'I[)I3N MDJO2F*B+X8"\[@*UDW?4B78!H5#5MCCA^H#UHT^N/E0U#Q/*D217(_,R.Y&A M1&_)/.7-TO!]&MWCI/KKX_CS/\YSG)Z\67:B?L MD47=]%'[I4NW M@J+_K]LRXI0MY24)Y%,#'6.G&AP!5G0#ARA(TR2!YW:UMR M Y:]C>3O/W?I#1+UF&$J@39U2G<; M!O*^@CV69./:=7B2_GD^G"T5L)ALY)1D(B(X;T2=J4 VI>,&,)K:'J(>NZVS MBQN@'*REU=XJGK07=0>.]&VPZI=3Q/4TLBT =A17N1?<86(M352Y!3WVU\-! M".-]XHL[.G1*DWT=\\+HD9!U=-))(]/U3DB/E2CW1&@.PY-=Q-_:\Z3EG?V. MD]GG,!^&T:M7SU8N%V,\Q'IW2RA:=IVA"J[.5^5DD <1G.;!WV=SWO6 _CV/ MQGJ8-!9B!VF[ZRYE$Z@#Y6%:J.Y^.NPA]RZR,1L![+TO3*AUW$W3T/5N<6G5HF)7*M?>09% L* M//,%HG0\%9P.L7,!R$48X4K8&*=J:L(:[3* '/>6U.V05J&D[.NL;0VACOJ4$3G:4DRY?H-S M;\K8WT_K?:GK_/8S.ZS3$X<[]$)\(K7I46P>NSNU[9TTQDH"^VT6? M3&D;_8C+VWWUJS?ES?F\SGB=+5;T'\./GP:8DT@E"C"R-JL**=.Y; -H6H@V MWL<22R\'WD-7<&*D/(!:;Y)TOSF<-SBQ$"YB/ONU-AJFI= []6)\?K9:T*OA M;+Y%KG<'WM4'SBZ)5Q^]6P*XP1(:98.7W9>?Q-DBK=_X3;SVX?M:2M/)9YS. M+]Z.PGC^9)SKIOJYTI2^_HTX/4[X"L,,WQ%!YV_*WV;+P >]^<;N?+#SL-H\2Z\B:/AQP6W.U+6;L]^! I\D# WFLP;K)'57]<_(GWP MO__+_P]02P,$% @ T'E76)86NJCZ)0$ X@P, !4 !N=F5E+3(P,C,Q M,C,P7VQA8BYX;6SDO7EOY#B6+_K_? J^GH>YU8!9I862R)[EPKGU2Z"ZG"_3 MU7T'A8L 5UNWPQ$>29&9[D__2"VQ+Z2"DE7S@.XLIU,BS_E1_/&0/,N__<_O M3W/P519EOES\^Q_"'X,_ +G@2Y$O'O[]#[_>?X#X#__S/_[IG_[M_X+P?[WY M_#-XM^2K)[FHP-M"TDH*\"VO'D'U*,'?EL7?\Z\4?)K32BV+)PC_HW[M[?+Y MI<@?'BL0!1'J'NO^M?A3H#!6*8VA0C&!B @,L404*JIDJ!)"*8YO'O[$$T&2 M1$0P8V$ 41(HB%F00OU22G 8HTQF=:/S?/'W/YD_&"TET.HMROJO__Z'QZIZ M_M-//WW[]NW'[ZR8_[@L'GZ*@B#^J7OZ#^WCWP^>_Q;73X>$D)_J?UT_6N;' M'M3-AC_]K[_\_(4_RB<*\T59T04W'93YG\KZES\O.:UJU"_*!4X^8?X&N\>@ M^14,(QB'/WXOQ1_^XY\ :. HEG/Y62I@_OOKYX\GNR0_F2=^6L@',[:?9)$O MQ9>*%M7/E,FYEKYNK7IYEO_^AS)_>I[+[G>/A53'FYT7Q4ZK1DIBI Q3(^4_ MG^KLIRO$]R1O=2BK!^%J=7_Q)>,Y3'_Q)NZ]9@@YO,!;W5PMFU_\K']JNS$-G2'3NI^6NK=$E=\KN1"R M8->AXPGH^.W'PDT!I902TLH MA?@*MO"=!7/(=P>;&J%@6^\@LN3,RFTE; M:J5J6!0M6:U7VY;&*(I_DO.J['X#S6_JF6O=W4\'W\1MT>E$"WYA@-HG?N)+ M;5T]5W!GK%2Q?.JG?+7L]SDU@Z"%^@-8%D(6VJ(^HN#!1W^G#?#;^7Q9&?7RU^5\M="[HI[T->:-%_?N,9JG@81#!-&0$!(V4X#QJ&A2/-'A+ M]7#JW\^B),4R)2E,4H$@P@&!."81#'F@"$]$K!+ELLESZ7QJ$[N5$[!.4,!; M2=TV+DX#8+>7&0K6@B@7@L/WEZ"VGG7TPR^>_'Q=VS+/2*4_>05W1^R\JJH+R:<1X' M*=4DQEFB=U9AH'=6/.:01T%*$B43*;@+D]EW/34>>_MHUI(2Y NP[$0&M"QE MU3B?S+I<"'(8<6='*EJ M"=W8<.#AM&/0Z0S2P*S;*0JV-+T!&UW!MK*@T19TZM;+XO9M::OQ#3 ZU_^Z MI;4_MAYG=#PQ_,#"CKHJC /\_DHR4J\]+BONJD=9O-.=\>KMLM3L$D89PA%A M4&8XA4@A"6F<21@1*A4.(D$BJ\7B:.M3X_9:/B!J 0$W$CHD9*\:.G*XM3H)V]K3AX:;R+BE/R[MQ1G'RHYWGHTC#NPMCK M6YIA? !J;$C8#&--S("'X;Q)ON,B:^3BE/=S3N MF>1%A0].("^_<:TW;^,K_#<],3XN3,Q[:ZU]E8N5_*!5>/]=3],%G;]=E=7R M2<_8-R^?:L:O3/S0EX;ORXWKJ:0IQ9QG>AABI TJ1B#F 88B(2I%5#$163GW M#R[IU)AJV[&UU0J8;PAT>H&U8H"]@$ZU>MGME.OK4.S[([ CQ4D,[<" ^[50]5(<]5YU'6L@WM-2[^N73LUR4M3BW16'N M<_>>83?3&_N_U&"U'_<:][U5)]TA/L%SWE&L>+&0DEYVD:0YP&B3GN MC2##D7$WI(AGBO 4.\67#B'DU-::6E)@1'7TYAET)"U7C5<>GX$7#)>A<2?^ M ;'SQ?E#B#@NW0\(\@'3#]E7/Y)O5Y?/TK2E-RZ?9%&O/!J[.S;/'VH)WW]_ MEMRD11)!2E4#!HBSE24 D M3ER(W9=@4R/SSL1\WN@#EFN%@&PU E6MDME>E%M*F=>T5F[T[VV,[2C_-49N MG'V!N;EKE0);6H&-6C>@4PS;UD?&]_(-/^U#ID+O:JEX^+LBKJJXVR/A6_?Z2+)@=%^Q[_X_G__*;A$+^3H?>T17R-P1S8H*@5@K5&8%MKL*6V.6W["E/FAN@BL-0)N8J;P!:PSTCS4*(^Y/?0_<6)M6;W)/:R?K>SB!>AG M_;R3K-IQDY2^99 M50^38YY_O.>>J*)5S5)ZPU7IYAZ7<_URV7#3.D*$L$!E*,E@K#C1UBQ)M34; M*D;VJ%M0A^H MNAMQ+BCY,L"L^AS7>'*!X<#P<7JY'SVU]E)YOVP=L#NW;5G^N5B6Y2R(5$:U MA0(CE2"(4D(@%B2"22A5(I7DL;+*$ Y//-GJML& C[0VHY?7'.K;(>"*M=EDHH);%3$@?/\DV-O[8]"DUYHP\T M+\!?Z7RE-V?MKW;CP\I3\6%]_0K]#+NE<7H_FP#T\LOJ^7E>F\%T;N( /\R7W[;\ M&/=H F0X? _*!2;J1_L8":1<6]@.^0W3BP(,P4@"C%G UIR9H<7VD:MR> MMH>&FZ%19FCRK:'9"F[<2BFC5U.5+VK'G'F-CZ^PQBO0/AOYV*?=\8(CK]!Z M)W[RFG;ZWO/H[\!<1BVJ(F>KVGU&?WCOGY[GRQ<3RUGR0IK?TN)E^Z';I^7* M9,6.(M[41"!Z<4("(T@3&D.2!5BI&%'$G&*CKA-G:NM5JPW@6Y*"9_V(<_FU M:\;(]DII+.0'OWEJ0-\6TM2_-7Z'K3)@1YO=)QM]O)9V\X"KO\)OUP@S=EDX M#\ =*1KGH]7>CN3+^5>3?6HW U^31Y8$$25A0&"*6 :1"E+(DH##* LSSDDD MHE0Z>H>?[FUJ5+D6=C_CI+,;]QF$[9C0&VX#$]U)R 8H-6>%B3^OZ#-]C>WJ M?%GM(_[+%B_UO8#7)M_'LEQ)\6Y5-,[1^5+41Z"U1\H,IR(TCC@PE<:5%&N+ M#.,H@@'A*8^#+.".I:HN]3@U)NE< /7VB&]29?#M5!G@6UX]ZE\]/>F?2Z.@ MZPW\I5&PO7WWB.W@-^]:5M ("QIIVS"-F^8$_J9QB?)YZVZ)CK<;]TO]C7S; M;JG^X4V[[8N]MXR[=7>WCDU_D=5,1#1!<8I@3*G>&")JBF&&$M* I3'#<::- MG*L*;N_V-S7^.5)O^R!O[Y7EM_< M][@^8)Q^!WJ\]VH(@3"(5QS!140I1 MC%)(>&9V2IR0! >[UWMTIS E*T/?E=0,!-!%F/- AP1IK<[*H(X M81@*'J:A"!+.N%-J[./=3(T2.BG!!.-T\G^IG:S._$!+*3TVWNGX(3*9&R(- 4FF#C&_BB-0="]]^6[9>JK:0L"X($,IQBB#)3_A&G,11AR+.( MD50*^]*V>XU/C4#;\J-:/@<7I7W SD_M:V$8>#YO$+@\CR]#X>")=04D(WE9 M67P<;NY0)U0^Z^JT_\YX;DPGI-UQ43KU3&_K[BFOZHB-VX782=<]2W J8H$D M1"JE$.G=',11?:*L4!RI+$.9TWG/F;ZF1E);HM:^>GQ;6&?KY"3"UA:*#]R& MMU)V('MK!5D?.^42&/YLE9,]C6VO7%+YB,UR\95^A+$NX%:[2FX=/'>!7^]6 MI]\/1$54Y=C\I=?4#9)[->;5R1<[!L[NX_%3F7VMJJ?S?+E"3*I--@ M(D,0R9!!DJ(,QCR(J10TY8Z77Z=ZFAIO-8*"O);T!CP;64V&UR:O6YWA32SG MS$?6 Y],=; ^+&%L1;3^.\TV=,\YSL[AX7/_&1'^QD_ MG]@Y=8_F_SK[0D^[R#CVU &-'Y^>:5X88GJKVWTP&RD5"9DE"-*8F-U4F$+" MS&V91$%*I!!<.069G^EK:NSQY^52?,OG\WI+D"\J_6]YG<'+2%^7SF[$=[2& MSH!M:?SX@7!@TFARG-5B@HV M;=,>MW->MJP<8\1^R+_*F4AC$H0R@@D.0LTH)(",J]#<%F%&<)0$(7*JONN9QMM3J2;?5O,G]XU/^]_:H5>I!_UDU7[V@E36J: MVN7ZL]Z=?%@6IM6M'V0"$H@)ED21T0HEH76=V[3U7-J M3-VI 5H]0*T(,)IL91-RN ^;+O0VMY33E7Y"*U.38)Q9)B)G?A*1VWVHX#<# M&6@Q^]][?_WO\1D[W#!/5XL)7G;_]_NLW>[FI_^QG'43F+#XXWDL3!B$8\X3 MOP-QKXA+WDGI:S+F'TMPSU1,E>(!S.*00Q2G!%(D45W[B 2AB./(*.4V_K>/]:AED H MY=3I2N1BCU-CGT[@IHS[=BH$L%1*FK!QQW3@%S&W(R&O2 Y,/KL@=M*:S!.- MO$V% H\9P6VQ\942_&)_X^8$MU7_("FX]8O79@7O[AOK''TSAD@<<9% KDPA M=Z9M'8)2K&T=1# *$I%&/;-[[_0S-6[93M.ZOH!M4H2Z!BR? -;2GKD>KJ%/ MEOH@=44>ZZ,X>,]'O=O+*^65/JKJZ?S0QQ]WHX.RJ#9E3OXLEP\%?7[,.9W? M?L_+F4"QY!)E4'']!XID"FFFME#\WY74#6]-=_VTSU<^W/^5N)C0:OD6@#B2<3X&Q7H]H!-DKO&P-6[_0CB^:PXXODQOT_E^7' MA5B55='E)>68JC3E#(J:+H(TA40F 21Q$/$@XU@1)^?N\]U-CS :Z8 66'_* MX+=WRR>:+QRW"A<@MJ,/?\ -3B".F#G3AAT4GHCC0F>C4H>=XOOD8?E6;UNC M,&Y2[V3SWX^+.C4UY=7?\NKQK>Y($U>Q=J*:Q;$2+$PD5,1D2B-A +4)PF' M$$ZD2$1,4[=D'HX2N,R4<9)\O-%[NWSQ4()\ >1W+LNR21!;MN&BLJSRI[I0 MAJ3%HGYRN0 KLR0\SV75)?'7"KL;-4YC9VWG##4>PYL^M<3@AT[V/YHQZ<1O M4O-V"FPY?WHUB/I@Y\]&S7C-B=U$VGS6$[O(N9[ ]6/U M9?HOLKI3'Y:%DGFEC;QRAB0),6$)9%&,]78M09!0)*$4J0A%EM(@LCJ:\2;1 MU$RTCGJ+7V6SK(+PZ\*YTC;R[>N@<;K;'&I"ASXS/).)N%+H!6^/5 M/-[Z:VFUS+*WI=C@Z;K=,1XVG;>#/%-(]^T.GV4Z\!X-][Z,?Y9%]6+*K%2W M"['.8Z5__M#4(*MC #X;OZ4[]6LIZQBG-U(M"WG+^>II55

R>?"\GSQF-J M(6Z?3'K1?S1.H2'FE- DUK9NH D\D1'$F?XCSD*>2,3#5%HYTX\H\]0H_GY9 MT;GSE?_@(VOM-#"E\1K>[:#6]J8N:U7=U!N837(^\[=6Z2:$"M1JPZ6"6O$F MG/,&L%IWL*4\V-:^;F5;?Z]>#&,-EC\_B,$E'MN38JPA..*+,5K7_1:LKF+\ MV^43TP*9%@^K!YMK8HOZP2>UG24AD@&.$[-D46CNA"#AF$ D$%4"A2@CW&7) M&D7JJ2U:G:#-$4Z_]*WC#+?=.C:Y01QX)>OT!5L*WQRK"%^7%[:L"6^RFYQ; M(/VM9*,.EZ>U;!R91UW-1AV&_?5LW,[='9+^0O_/LNB.W,K:>P8G44RB.( \ MS *(8B4A30-A%J& ,Y4&#%MY)QQO?FIK1">0N^QU=A\? =&L+A9.S MT6F-K_ R.M+H:.Y%IQ7:]BLZ\U3/)"P;.F@K)ZP3*L:"(A:+$":*1!!E4D&: M2 0)$R))2!9&J5-%M=-=36_RUN)M%U#[DV.BE=.P2AZF 44(RBPQ9:3T'SC& M*4PEHIRG8:8( AQ M$*80A91#BO2V73.'C).4TX@YY1"VZW9J/-Q*VZ]NY06$[8C#/VX#D\BZBF4K M\78URU9H\$,K]NEKT][E+.UP\ES5\D*GKU+S76]E)?OGVB MQ5U1NZLWM7HWN7\)#@AGVDZ17$&4I-I.B7@"24!(' 8T)K%3MCV[;J=&06NI M&Q>$&_!,"_"USA;B(PFPY5C8WD?Y1GCP*Z4.W"\-N%IF_2F#1NHV*4O? C_#B"SW-BB;-V8=EL:X35>F?RES4&8*7B[6?>.,>8DJ*\RK_6A\) MS6*!*,_B$+)8Z+U1(#)(:(!A(DU9\ #%0M/(0CX88^C>P0ZY1BBKR4.:R7,@ MVH!K:IM;N0E\Z;0R/V[4>MM5WYHAB%L) Q50;9*9>C*D<0S@.0A*$&"MBG9K\1"=3L\H:,<&\EA/DC:! ]_SD MD$3Y%*#GFR](OY,X]]*S/=AOS\&XO&.5-F:E^+AX_YT_FH2\FI'K'N_8/'^HOY5R M?=M-XC -F(FN%B:U&\DRB 7%D+ T"P0F0<:L0@:O%V5J3+H.-EB5;9TM;7&V M"K71U[5*M254\ZW^Y[56#EQRW0!:;\](DW$ MR)9"-HX/O@?'83D8;9!&6C2N&RQ/"XL74,\N/]?U,-XBY06)G:7,3XL]$XFL M"\?=J9^7BX>?\Z]2-&+\/W(N=,=:K%FB9!0@&4,I*8,H)=K^%PF!&)(082R$.)0$I@F7*591F@8$C>WW!,]NQLU[=E[5@X1G%QZ_-I/Z MR5BH)@-X)@,<\3B%21)'FB0B!$D8!#!.$RRS##.)LGZIU<]W/#4S92_4<2\5 MP)5)UR^,@>4=\P#(#GU7\+V"]V^4@9W.S!.IW2W?+\?4=UR MOEPMJO*SY#+_:AK\159M@,*,,RR3@% 8X8Q E+$$4H8HS!*9"8P"(3(GWY9S MG4V-D$RB16W!%&M1RSI'F!L%G44WRK@)8*604H$@"@,."=%&(A5)E@2,IS'F ML\JDLQD9W767OV=T[4C=%V8#$WDG)MC(>0.HTO, W,[GRV]UCISZ1KZ0(J_T M%K7<1'SY(W@;M#R1^MFN1B5R&Z7WR=OJG7Z$W17X^+Q563:.!4HU)4,>4+W= M3%@ *1$,IIA3Q%,NL\#JHOM,'U.CYTV5F<_NE8+/86G'&U^D_ MU@6A27Q6UHZK;U;YW 26:,/F_4(6 M#R_@7^C3\[^"+SR7QOSYX<_X(\@6?KX0L@6P>K?-J+;[FQ7)1 MJS8'S^8:*N.WSJ M;>$Q_#RE3K*!Y2S#G7IW/+Z[(/T.^UUZMH\#G_PJ%RMIBKH>*R^@N^'U_>6? M"[VK;Q\N9R1.)5:)A()2DRH:(X@#DUJ)I#%EJ1 I$O:.>WU$F!J/MG)UE:"W MZW#P=1V.YT85$SOR8)31ED:CC8M/6*\!LR#BP8=A8)KN1L HL*F$\K?=2BBM M%N!.@5H/\'FL$7#QQAMZ)$8SL@<9$44>K5!C.NQB"("$8D89#+%4#*N"*$13:/8+8/??A=36U6, MA&:U:&1TS3)W *#=\>)UL S,\KN(7#[+Z)%-[I3VWK+('70P9HT[ M^63O^]YB)<7[I^?Y\D5V^9^ZE'2S# F1\"B!/*;UC:^ - BDJ4)",YEF 4N< M;A+.=S>UN=Z)YWP->0Y2ZXM(3T -?Q5I! 6=I* 3=9C[1@M0_-TXGNML[#M' M"\6/W#K:O-5CB_JIR+_22C9%6MN5C"(A:91E,.:9*=[XG7[<+9V YNY,Z]MYX^Z0S4N_L@LX]YT9K M0N:S^X*:RYXO+T]L.9]%@J9)@$,H5$@UG_$(LI0@&&<<9UPRS(B5)^Y!RU,C MLE8XT$AG-V,/X3K/8%>!,#!U6>IO/>].ZGK$,-&3_<>'Y=>?]#N-3:)_V)@B MARV-,@5/*M#-O=,/]-N$_+*LZU'+2MX^%+(^3"_;%0!+EB$L*8R#3,_"(!:0 M1$+ #).(RBQ(L70Z8#C=U=2FI984MJ*Z[3_.H,G#)$-!I""-J;;1F"8V3%$, MHY@BGN&0"J3<0I#\X#E.%-(0B-KMYOR@-# /;H0$&RD'.,ZY#(:G'=R9CD;= MO5U6>'_G9O%&S^.>SCO89&6J3Y&,:[ L[Q;K'$P;']6R#BBXE]^K-UJ=O\^$ M9@VE8K.YH]+L\$)(S(E0F'*!@E21.';BXFN$F1I;=^$9YM+DI NV+(&V^S<9 MT+:TH#8("1A50Z^*1^'Q ZNMPZQI1QCWZ M\@#:P<&8CS9[FKJR:FHNF!YGH6*19M0,*AX&$*DT-B$_>H_)56Q\]T,6()>0 MGYW6G2ARA!@?+9SQP]32.5I?.Y A2540A0(J_9.)DDK-MAS#* MC'&*:4)0Y MFK!]01O):O4"FZ6=VA>*H4U3C4%;9N8'(YK'NC)'5?9E@.ZT/:[->4RM S/S MZ$/]B.V#R2TIZWP:'Q>5'KQ\4QMTJX9U6V?FUL2J_:>DQ0?]PDQ&+(M"I2#& M,H%(" 9QE"H8IP&GF5 BRY2+87F%+%.S*^\?92'KR#ZWV7_-<-AQQ4@@#V\? M:BW:]#T;/;I,/D9Z;@[IMU7J0BV-.L#HXX^-/(#JB;NND614IO, V3XO^FC2 M5['4&S-)"0I#:',<$0B*M*Z2I:]C7C8Q=0,Q7O3!^"')5*O MK>G9NY;GA CK6 W/(0MW>J:5(QV\%I+9<]8I$->IS[OB!>]6 MTE#(_;?E+ U50I1,8: "8C:%'%(5*RB"4) @HDH%3I4Y+?N=FN6C/YW$V>:Q M MC:OO$-VRAG76UB[IOMH@O5$C )/M%3J_W-#*D-F7D71=@VV0?WYP/LP1%04HQ9'',M,$1"X@9-J7P JHQR=(( M.?E\GN]N:K33B.=H:9P'U-+J\ ;3T!9(+>@-6(O:50+X;9!3QOL\ ML?A'<6!BJ0%\NP9P+2ZX'0I !_]2KT".Y&UZ':!NCJ;6^)QU.[WIMA*VSNB@C+I"=O YT<1Y<1E""11)"P;/(%&2DVC[.")0! M8DHK*PFA=O>.?N$=YQ)R!( M%C-OH V\D&VA54NZG637/3#B/&P.2Y@W^%XG M(]1SF_>V2=ZT1K1ZI!6@A01\3LLRUY^GJ68!RI-?K*_0"BLXSZYVYUL8;Z6S MTF1GE;-[HV?AW%/YC>ON-@P5GZFN86ZZ_S%4=5_/.?#T\K[]1_>;VQXO_&3MFZ.P#K6H?K8FWK]-(;W<&V\G4CV^I[K.D\VE#Y*OP\O,#C5H<> M;0 .2DB/UW/?]!E:HD**,QXC/^<+^;&23^6,RSA46&\08(DIBR%1,8":C M)(XSG*0D=$NF8=_YU.R'3G9PU@&K!+\9#4"M@F,R;Z>AL5LTA@)\8/KWBG6/ MI!WNH'E+X>'0]<@)/=Q!.4SOT:.-J]W2-']^J9;\[X_+N7Z_-(Q=CE1G&W'4Z.W+;EKRVA;\G_Y9QR%V;^" M1H/>/FWG!\+RSGD >(>^?=Y#MA'4IICS-]A")O5/E(ISW ?E5%G6AB2Y7:_G6*&9^-IO0SWGY]RZA*L\4 M(I%)FQ8QB'",M %%! Q5DIC$0V$8,;?23;9=3XV@-I*ODW>7@&_+#@HMO&N% M)^N1L*.H8? =F*BVH%U+#7;$!D;N 7)_N,/EK7Z4=<2PVI1S"_U8 M["U]SLU5@SEPNV/S_*%NOORXJ"-UQ"Q- A6K5'.5--6I>$(AS=(("/N_A0'P)6CLN\@C8T)NX^I9A(R/H9/3'-)9@>**72[V- MRBF6JN\3B>UK/2N@GSZK2*E,$3.98TD20Z1,TM@X#F"8B@#Q6)L^&7>J>?Z[ M.28Z=BPD:XG_Y%C;_-J3H-_%V4\CV VXK:HB9ZNF'ERU!)]H'2DZQ!G0:*<^ M4SGG<3_9&>PLY\",>2,7_/&)%G]O"W6A1"@I8@&UP5$G)),0:T,#ZM]2%(L4 M6U:'L^UP:O1QQ&1?2^Q8$,T:G?ET4DB\?%OD_I+BGW[N4^9\WE7SWDND11F/&@Q!&--.V M2QPCJ+WV-N<.ZA3M@YRG\49 M0U&:1E!A%$*$PQ@24TDL#M,0BX!0*IPV@6=[FQI7OLGG\[K,=+X \CN796GF M*U^657/)+1N4'"Y7WV<'FE6LW?>_;-?63++X\TD*^H67.;Q?B73Y? M57)_\R!BAG@B,!0!BR!"V 0"1RF4(I,JIBFC?7=\3G),C5.V-QJ?I?D@-($W M9RKZ-_>/$FPE\34VS=^D<=HWJ36_RH(^2%#K7(*[557JX:Y+\ICL[";T\RV= M<^/*W[96 U,WTD(#.NA,[>*FH;Z;2;>/P74G.=@0C[B-/,3ZYLB(C+.+[(6G M]RVDFQ2OM'_L!=7IS6._YGI2==N!%&]-591%V43R%(7^1.OB*&]>-H^TZ=)N MS?ZU_N.O9O>T>-""YDL1SD1$!%4T@22,8ZB-0'-I0"@,E''_E"*.I=.E@4_A MID;JM8C@:R,C>*Z%="16GT-GR;:O-"!#4["1&=9"@VW%P)9F@+V [>=:[4"M MV4WS']!J"#Z='TYW5AX =U]4[5.TN, M_HU8\2K_VMK^LXQ& B$2PT0EVOZ6B8*$$P;3.! "]W*74V/E3F)@ M/A=0TL8LH[6LSN'XE^"VXUR_( [,I+OX?6GQVPC<[OF]1K!;HN,O OU2AV-' MD%L"<"0"W/;-'OG4WBLEZZ::?>D]_?Z95G)W^_KVT=!@^7&Q=UWR:5GF=<() M7&:OL*LJ+?P7,K MLT,^+"^#=I[67F4HAK[^F. H."0O&WLT1LIQ=ONT7&D#7:\_(M<:%E+S:0F8 MK+Y):4K$/R\+: MSU$[FTK-2T?C95SSB-2USI]P<7FJY/LTOC6=1OEA)T=84T-;!C*09SU)6!_@1B!(6 MF30O" 8T"I. )3&-G'WL+5>4UQ=T0NO2YOOHX &#_-=&!UOZC_!EJHW8(-"^XCY=O9^N?O& M&A[0X0-J@-J+W@U$8(.1O[5N.N/M:<6<@$*CKKL3T/?$ZCTAR4:^$6\"]#XN MM!;U\499.UC=:Q3NGFO!?EDNS'VO%%MNX#-%HC!+]<8;Z_V7B7))(-,_0LDB MEG%,")%N$;JCBC^UM;U6#?RJ#4?'I7KD41_XNGWPL9S^A7R;O&X+ ] XH%8: M!=#"< /60.@?5\;UT:S[K;O<;]NQ.SY]K%YE6%_[OK^?\+\/CX"K!L:;S\!U M4O1<+?.'1:YR;I)(\WR[3F/(4R0SP6',4JI7.91"BC.SU%%$ MHTB$.'5*7FK7[>16I]73$RU>:HK9* V&H!.!:BW2_H?43-DUMY M>>IXJ>73TW)1)^"8)2DE2G&D!R2,(4HR!EFF37;)8X94F'%F5S;ICC65M?RTW>C7A@KS6#)1&-8=;<@_C:N&I,.YH#>V=U0[4 MG0(;=<"./D KU!K*6RJ!O]5QG:W;F$*4D+2-$Y@RK') M2Y4F$+.(:ZPX1AE- H3HK GH^E+1HAH.K/U.AH/LC7S(%R8H$3 Z-[EX>V*G M0B*C-!$PR\PG%BBDUX\H@!K/.%91DE#68?=^(89&KNMBP+OD)MCZ.M#LSFWZ MP##P6G!QHO5(!M".1,8>EH$)Z&1:OMH!IV@* MLG8J-3%KM5)M &_]REHO?RSF$V5/#.A%I%'9TR>(^\SKM6W/I=HW]SEQP((X M(QP*1/5F'"D.,>8()G$:APPG*J+42ZGUZ5ZH;>5.V2FDO1;=4PUMUTLTOU . M?2R\6\-ZKX3UD-EF[&$:NG[T*UV>V0-@7;_9RZ59QW3O9//?CXMCN00-^_VZ M8-I$E>*SY#+_:CZ5=)("HJ-J XGBM<-DL61X_"8CT-P:UNO4T1;?^OR M7.W=5JL,,-J ]MT<:-P5NT%BYU3=3XM]JS;I9<;,J<9MS_CZ+1?&:^_V>U[.6!03Q5$*<8881*'0/TF* M821YG"B2T9@&;H6;SO0V-;.^]=W=" E^,V(ZUELY#["='>\-MH%7.&?$>E1K MLD#"6\&FF=9-5?:*5W!]7+?TI:?#"IRQ9";R.T.:UUYZM=0J8YAZM+8021(0&(C8IJY2 2$38)!E',*1Z:QS')% 1MN;Q MXWU,C;0;+_PM,1U(Y02*%OQ\/38#D_$!+)<+R%CCX\"PU^,T$IW:?T9N;'D> M@+/4>.+5\7CPO.P[I'?AT7YG?T>8-#=>!6U 1VE2\>8+GC_3^<>%H=C[;\N9 M-F33L,X'%20I1)QG4(]X E48E,WU,C:*:];<1$]1RNMHIAS#:VG%7 M@3.*';>-2V]#[A @5T/N*J!&->3< .MATIV$XK))=_CJR";=2=D/3;K3C[JQ MG9#Y[/VBTNODER$*$@#EBLK3620"P(@EQBS*1(D$)6 M!X\GVI\:RS4B@EI&T EI-X]/(7B>Y#S@,O2=K!,DUC/U@N)'K*-2\A\?EE]_ MTF\VAI'^86,/G6IOE*E[09ENVEYZK$]:D!6;UU7U_M\5+?/G^F]?-",LBW8) M8;%,D% 1C+@I1IHF&%(A&^,O@O(S%L1 9E M+;-+\H=+,%N8,C[!&WC.;^%6"PO;7S3B]C%P+@+HDAO#(Y C&3T?%\8?KTE- M4LBY\^T;!SC?J+>^%)6;GLUI<:F3$G!66^NQFI+!]J=]QV)E, M[[=/QMOS'_4'T-XF\9$LDSHA0FPN5 MK)\84Z-N_?5E;D=B/>&W.Q0;'M2!*?UL=8J;VC6DSO&]K4UW5:F%\'=F=AV2 MGD[->@HQZKG9=4#MGYQ=V9K[;O)G_27,/STN%[+)2#NC&-&(!10JSA*(,AE# M&@G-0U< Q^'&^-A-/> M\93*O3:.!XV-MFL\I<;VEO'D,_W,E,-H@39E9;F)"IB%*151$)H,69Q#1*( M8HD$9(+I?22*9!Q'7>R;G5EBTZW5=[L;X#;P1'[3,[+-"6P[$\0;@"-'J_WP M;AT E2^ZU+;E5DR:/]O"!2)/EH15EZ/:#2X@[%L)3N_VWB69)$(_F^;7.<#: M7('ENY7L7+%FD:DGH?= 4.),0L15"FFL7K9")N%]4,\D9 M4A&.($Y1 A&.8DA$$L!0AEB05,9!'+CMKB[V.;VMU5ID-QJYC*X=D_A!;"0G MHW4(WZ%!LQ'8'YM88^.)4"[W-RJG6*N_3ROV+_;,IK9V"Q56E@J333 MF\G#[=T6K1"W(YJK41RUJD8-7RTHZ"2]X.[IGB[- A!?B=+.=35NBC0+I0^2 MH]F\TX])WLGG0O*\\;9(4Q0D02I@K*B$2.@=#DD""B,JF(@X"_4&R&6'L]WX MU/8SV[)UB1;<*&$'.CL*Z O(P%-^6RQ_T_N8LIZF\T[3HT[?8TKM3]>CS_2= MGJS:5$#\18_AN^43S1>S!$F64IG!C MJ$BJ%D.H%'B8BC0G.2$J$4P7"4QU- M;]JR:JL*JC9[J=E'-\(Z9E0Z":[M9+X>LL$G=B^T>DSU\U!XF_8GNAF9 LXK M>T@'%Y[OX>[[UUR; /,M;\(OR_FJSM/ M!D&4A)&=,YE5;U,CB49>L.ULN9;8P5?U(LCG><([= .3Q3G4^KCZ7H3/P=77 M)XPCN?KV^@C=G'EM43GKS'NQD?&<>6WUV7'FM7ZIGP6V4[1Z(3[+*B_J9'CO M\I+/E^6JD.NR9W$012J.8RCB4$"4Z4T42Z2 49:&>FO%TC1PJBKBT/?4*'@C M*^C*#8#?.F$=[327(; SW08"=F""[HFILS77 QU/!IY+SZ/:?#T@V3<#^S1Q M[>EP;7KN'0X3E08\@ IKDQ!E(864HA2B2,1"A"K O/?A\$%OTSX;%F9SE'=G MFU>="1_B['HDW ^[\4^$FQWEX ?")^'P?AY\V-,K'0>?5/GT:?#I5WIL*=\V M-U/KE91)%:2I(# ,S#42TYRAC1D&!9$\CD(<,&Z?:G*O\:E9*ZUX+O5O]^&R MV M> <+ ,_RB_F[[DA.*GMV&[+\SWJ[CA+0[FXQ3S_3VO%\^R75:;>/77UL% M)I&[D!S)+&4PQASK99D0R#*9P"32_\#T+B(43EYF9_J:VBQL1 5K64$G;*]\ M^>= MEN=/4$W\-SMC5H?K_I+>/ASIC_9T]@^])=4/N(Z?_&5GB4VVO)P[<*_ M/E(N-^7/FJV7&YPW$+=U@#<%"]P_[-'KN&]TJ92E%?94-[]_3[9TU\GZ51*Y\W=^!? M'FDAW]!2BITSD+K"U8Q@FB%,*8Q5&$(44 4QC:3^*8@9DP'&F97/B1=I)D=F MQMT',B.L<65;2^NP3[EZ@"PV-F/"/C37U1YOKXNXP[W8F,B/5:YD7?G.9,41 MN7':E.:PB'I^\L7Q-9?+6@0O\P)J#\3_6J[WLDEFOW2U^81^IZQR#I34;$CGH-2ZK_1"];+=8$&-D5$MP7,AS=_;?_IA MOBS+/VX*]>6+E6FW+>YCKE1I514Y6U7UJJG?+\TX'9GLOE+_^/I6SF[CK^YD MO'V_+SQV#@J\-=HS$[@#X#9K?%&'@8 M!EZ'&^EO]O$^&<+;*33H+N0*2'UE^>XAP;A)OOM#=)#C^XJF>OIZT/+Q=B', M?TRIPZ]T;O9)GY;SG+]LIA]#B$<\(C". @)1Q G$)C-!%LHL(1A)%6=.7AXV MO4Z-(8VTM8U5_[ EMZ-KAQ7B=H3G'<>A+UU.07@#&J'!;^U_!R$S)[A\^7=8 M]3FN9X<+# <^'4XO]_;FJ/,-Z7[JVH-T7JXO'8,H222.$ R1%! E"84T)!Q* M$299I/3_4ZOZ Q9]38V .E'K&=0)V]O%[!S(=NSC";J!.:+B60)2&%B6*)0IR*C%JE!+?O@D?BFN9?S6=W= M%A]O)=XO=CARG7=; Z+O5N_V?>(2N_CC+?:WJE&2%"2F1!&(7"FV8AQ2 3* M3!BRMF1$P,+$R?'E1#]3HZ"=R]7Z+,G(['J(=!Q2VX.BJX$:_#"H/OHQ,@Y\ MOG,6"6]G.,=[&?FP,6TI$E M;- .92:C.%,0FS2;B& ,&8LPS%B&$I)PRE@XJY85G;\.VNN>_UN@;7FNY1?# MH4^U6FD;N[F3]Z:K+U 7U :W\_GR6QU!H)8%>%M(D1N_Q5(#_=9W#BL'^+Q% M,5WN<>3H)6L(#J.6[%_MMPB8AFCY^*E8?M6;+O'FY=?2E";XN/AJ+M\7#[?F M.K6^65N?R""]%,A8F;%@39HA( MQKDIG1[4$>=8,H@9%C!.4!)E* MD9X.(V+'@Z8W'P-1A#X4S.1Q5V=/\WVU[U"E^5*W]67S\H9X3=5'E(C>I M<[[*+Y*W/H_OO_/Y2EL]'[2 ;VM'Z9HK[M1[6BRT\5-^DD5]-]#ZKF-*&BN$P+FO5RU9$8'V]>_](%W?/=8C* MGW435?EQT5P!ST2 $64B@ DRFTTJ)*19F, XXCA+@@SQQ,U?9"3!IT;_M72: M6/K[D8PUXG8KPA3'<>!%H]8'U@J!;:7!EM;F9'#[N<[9J%;]!C3*[T10-]'I ME=8?M #<@ 8"4S&H <&CD\S(P^;+U68LL<=UV!EY, [:7YJZX:1[II\YWO@V9%[?T@& MIF '--R=EX\J[;?Q<5V4CRIVX)5\_*F>][M:,EH^;JY+%J*IYZA__EC) MI\WUH4:**BXCJ))40I1R!AD/,\A5'(A0_Y))I_(CUCU/;:)KP:&1?/L:=Z$W MHIWP5USJ6@^&Y5WN$! /?87;R+QU5VO 78L-:KF'N;1U1T;K" M<7 SZ]Q /PK;#=^_4[\N"OV;AT7^#RGNZ?;U:ZWNX#>C M/6C5=[2[!O]\[+AZ2A_%P!0_F>_!>8D8:Y \K2R#BSOJ@C06^/OKV&C]]DU7 MJSEU2UP_2QQQ]S MF[I"YK./7!6WFB\TXK=5)VE\;@M>]F3\KW^[B$O02O MM]O6BQWU6RO^O%R*;_E\_K/>0M8'IS,B52I2J1E>( 91S -(THC!6$C)68B2 M2"D7KC_H86IM5V S,C&ZP.!/:2=4]$=)A^Z,2 MRDGU]@GA](,];RSRA\?J3OU:RCI8]XZ9@R(3M?;^.W\T)/-A69S(K#GC69 1 M(1'$,DH@"M,(,AI*R+(DI3+(0OT;I\N(_K),C20VV6CG=?9?QWN *P;%\HA_ M'*B'/KTW6L"E@EJ/)F\ Z#0Q?G"=+G7N@+W\P)OTP!Z/Y*\'U==I^Q62C'N0 M?CUD!V?D'IKL&1@C_L^JK)J2*H(.3HW>:<_+M[2Y[RB\R9Y6X*2),91 M!@,4Q1")@$,<"@9E*M,LSKA0@=,&V;KGJ?'D9\GGM"QSE?/U#=R\&P[8_9N> MSM08M77U!%G[$1[^FV,@C/58V1'J(",P,'UNR6R W4A=ITHW#-H*[CWMGC-: MOJ)2K/L=-_+$%8Z#Z!+G!GHR7)>.1W/HN^6*56HUO^6\OF3\O,Z"9"X45>MQ MP%B:1*%B,,."0I00!$Y(,;>#?4CR(UAJ;^>M[0H7MIV MRSH?XBPF 4F(WB/S$ 4026$24H49S,*8IB%)N&41.\O^ID9^6YLP,[MV!&X3 M=CIRW"7 [1C-(XP#\]=5"#K3E"4NGDCI4F^C4I"EZON$8_O: %6[?EV(O*RI M30J]U]6/MN'Z6<82;BK\2JF9!V4Q@YCB$&(2!Z$*8D$"U;EAW7LJWW5*F!X> M6_V&J#1PWN*A*MP'*,DUTD9IE.4 MZQ),3F6Y+C;6CR!_+>6=>E]6^9,IMCG#BL5*12GD' N(&,802QK#4"C$%%6Q M0LC%W-IM?FK6E3D%-RE'.OG<:&P/.CM^Z@_(P,2SC\4XI;*.P^&)/_8:'Y48 MCBNV/^-//'6-K=.$:-XIGP70Q1:Z':"2+HQ6TJ[[ZVX!U/L]CXM5Z.-'5*Q@)YY4^ M;@M<>,>-)^HJRI_T9_-H6KM3;^O*2W55FGNYT.^;#+SOGY[GRQ>I>UM^T59( MJ5[N'^5G*AU% 4H=]U.@*3'3OM8:@J:ZU53^K:F$P'I6R Z*N@-Y 41=? M+UHPZCH"+1JFWKI^LDOD:]XP#1ZIF>[N7CO^=W>>GZ?Y&8V4VF/[TVD4!TT5 ML?NM3^?]]J?S9>O3Z0 6PB &H)U@F+SQM:GLXW#5#\7L>1U@IWF;[_+SV9' MA?^_?3[65LBK#6%CTICN:SLEC.*@ME7&%V@4P^?5<.ZLJ-<3H-_6[3Y_TAW= MJ?N"+DIEW-"-V^I=\4467W/>)O@.$Q03G, H(3%$-$X@BXB$2F8A830F62A< M=G 6?4YM(]>(;+BG$]K\;,36:(-6\%X9P6T&P&[7YQG6@>T!+X@Z[P(=,/*T M&;3I<=0]H0,$^UM#EU=[!CBVE3-KXGQ>+NKD@^KC0N\#I&;#-H"Z39ZP5QG3 MQ#G'&$<0L5AO_(*00)P$ A*,DRA$5"I$G$(9^\LR-?K:+DBZ4<;\K5&G3H/2 M*@1^8(U*KC&,5PR='<&--" #$Y_;6+3:_''0&JD>@/45;'B%)..&%5X/V4$ MH8?7R(9_+)@YQAE'(!0HX#")LLI6%VMK+-*MF-!)9F G*(RN' M]V.-3XT7&_F $; -]K5/&7$ W'D2NQ:.@5G) 0FGG!"G5.Z5">*@L='R/YQ2 M8SOKP\EGKC6%KBQ(T'C7)3'"*=&[-H(S;1WIOT*&!881IYRI@ 5(.M5<]BO> MU(AA>Y'V5$RDG].DYZ_ U= :>VQ'M+W&&M8KK#&?Z'LWT+P(]THVFT]@3YMQ M7GOQ[>3^\SJA09AF.!52+P549A#%2*\1:9S!@*0R18R&"7:JWV?1Y]3H_KRK M]L]]DT?8H&_'R)XQ'9AFKX?3H_O[ 4"#N\#__#J)*1P@L'>%/WQU '?X-AM. M^6XE;Y6>[_\I:?%!D^8,XS0.1&J2U4B3G8PI2"0GICI5EDI,:4:^@;4\ .C"#":C.3]?@G( M,;S?3\HP'>_W2S Y>;]?;.Q:PVRGM[>KHM"]S5(NB4QI!%&D.$0J,F4$&(&8 MBT1$+ MDW^##8]U-C>%:L<#SLEAGFJ@SP;WBZFK:7OMICF?5'JP-K;1#V+/G4/%N MRA[M[)6LV'.*GS9@S[YU[4GL\1R/GV59%3G7T[1VT?EUD5=EG=GQMBGI]+)W MVYFAB)(HBB 1D=YPTP1!G!!MU0I-]B&F@>Q[%.M%OJFM!MN'=DVR5K:;K'63 M8O,&;'1MW0.-MC>@T[3OX:N?@7<]?1U].(<^?CV6:M=A]$:Z!/<*N_=S5S_2 MO=+!JU=H3Y^\^NVFYXG'_K[63ZW&XH[]:G(%SQ_IO./ M"[.KN->?BIQEDI$@3E(8J"S5BX-"D&4LA#@(,HK33"CJ5/ZTGQA36P/T?$@= M3SOZP6]YW#$XJ$.?=V@%H-$ &!5N0*N$MF3K,XU:7(^'&E?!Y>M4HY\0XQYK M7 74P;G&=:WUB/&K>56O[(9'_R)KKYB8I4DJI8(11N8X@T20R2R '#-%<90D M-+1*.GZB_:D155/N?=Z&M54LE!YWQZR M>:5G+J/CQ3W?25[4"13TSG,U-\>3QNE'&UW+XI/4?YIG/RW+.@5P.<,D2C(> M13!%(H (R102G(1Z^Y>F21;1$,?4[1K"AUC3NZSXK#?YO):MS@'[W$EJS@>? MC1+@1=NRKBF5?(R@'7>--BHCI6\Z786Y4PFL56J<*FNE0*-5_ZJU 8F*YL 7"*B-I6\/%IM=ICXJJQPOK-QRRA8*7Y0,\'NK;Y1P5\>Y7QN;E#IXF5& MHS2,34)RA -SD!]S2*A*H&*!2I%2R#)![_'FI\81;3QL+2)H972-#=Z![[+% M=!TH W. $QX](H2/J7U%C/!.B+ MW\C!$Z_E8= 7GKY!$]?Z%73]O5F5^<+4'N#_MID5@G,-B2^ 9T,H/?&JD=8U@O MXV[':U[1')C'K@72F;2LP?%$4I?[&Y64K-7?)R'[%WN[ N25IK6OIBCQ[N;J M%UG-8A*K, H%S) 4FG$P@22-.$Q8B+G).F>RC%?+BL[M&.=\=TYTL^YTN%FB M1;I4_*G-P +:U7/P +5/RY ISK;&QO O%CS@$ MV+S5CSL^%4MM'&E;2'\.U>U"O->\]&RLHI_7N1\XCVB:J *SE-3[0U#BA6% M/&4B2U.5(.Y4&N5REU,S63J);T M,Z + =927Y%YPP)\.Y[Q"^G 7.,!36?* ML0?($^U8=#@J]=@#L$\_#F_VHZ!?Y+>V@J[>H>G>%OI'7H=:E4UIK>;/38!: MF&!%F$AAA+F$R$2@Z+U3 B,>*!DE$J/ *>S<58"IT9.I.[RHYB_@5BR?353: M1ANPJTX]UT[_ZR_+"ORGL9>:=MS(S'D8[:AMR,$9F.BTZ*?!'J=^7%_T/+&@ M<_>COK*4C/T5C6'F8H0 M#E.:0BF0-"6F,L@H9Y"&(99IJ&0<6D5Q]^E\:CRY(SYXIKD /QC1;\#""&_( M\:=ET80VN-1N)ZOFFB>K1@)0,M2BRQ, $4=Z$/G$@A:>0ORZ8GVV0@@ MUS;'"P_JJ>U.[%#?-OJ9XQ^?]*35K3*"N\ORM26GDZ3 M]D"MO5_LM#'N2NP%- J!)CBSTBH!H],5YPM7#*6=<3[. V\8@T^-LY6^_6P M>K+?KQ!D5$O^>L#V;7H/+7H-TOJX.!9PT&:..A+D$Z HRS*8!!%#"(B,60H M5#")J/Y?JD+D6*C>BUA3H^5;(=JHK"99D[%YZ/>M8*VM@J_&&.)MRC\3NN4E M?S!&IBBST1O=4KM1V]UV1E?)7ZK)]+#1G"Y"C6%&*Z>0%I&"/OE@MH*?99TP=/'P67Z5BY7\+ U$>O>U>##KQ\8$"U.>)B&A,,4J@R@( M,H@3+*!*@IBDF20I=DO Y];_U+BZ%1^LY3>)V&H-P)8*M2UVA]_,/]PNQ.XOMIZ<*44RG$48!F%DW"<1@R2+"911H$**9*RY7BA:5 M'35>)9/+;-V7;,!SV/7IG_E!;L0%__+/. K#?]6;W(=\L6C+VS:"N7'E=2,9 MZ/4+8Z(@#E.D=RA,0*J('E,2DA!G82P4;T?R_<(RE<3(X]C)]9JC*!?B=<;/ M;N4;;42&OM:HKS#JX=@2<"<7;/.(&:R]7VZ_X6]=](*LIU7R.EE&73.]P+:_ M@OIIU+OW[RWGJZ=5?8*Q'8,YRY(@T^210A$(3;@ABB'+"#:'];$,,&P8]*!()Z&?[$S]CZ=CB_ -[PC\BD!IN*< M? $@!X?E2RWU\(A9!W=ICMW.G59^SA\>JSOU:]DE/% J45PD" J$:M"V\7 ;!<& F M&PL^!_^506 94,W_48+"2&UN7%:E!*N%IH'YB]FE-F WOP'+ M=?"N,;A5F\*R'I;2EZ>*,ZYG?53L6QO/.\59PQV_%/>W1\@<\&TYBX(XB84V M;VG,*4122(B%"&$6LBRE"4,A=BM.X-;_U [.]:>8#)@U0 -N9\ ."./ G-\O M8\"WY2OE"]A@]QK9 G3OT\T5L('FJDP!6\WT3"[7^(N7)G0C_VJ2@O^Y6);E MC"4T(P$GINB6\:"C%%*$E28QC"(>)R%B3FX;)_J9&D6]R>=S;4X5:RD=\^*> M@M..F#R -# !=1*"C8@WFF[4LM!;Z/E\^:VV?DR>X;>%%'E55[3VF._L/$"^ M$IV=Z&7<#&?G53U(;7;A\3[52>0B7Q;-.'Z@O.:?MJ8$DVF0!B;M=I3J#6P8 M)I!$&,$$Z0VL4G&HD$.5DI/]3(T=&DD!;SYMUM4Q.@^52T\0+:*]4V^3H]P:$9!7(%V55U#)Y*WIR$:GSQ4].OSYB M$92+.NP60[G\>#^SZJ^TR T)U];;VV59S3C&$1,D@#%#FC(Q"R'C$D&F$*%2 M2>H(@$<29AIIC)"9^&D,:*08-YO&GN, MC-VEHTO#KW#_V$/OXU>1?1KJZ<>^B;BO"[F7'\MR)<4LY($0&<60I1F'")$$ MDHPQ&*<\%2H-$(YC%\/T1#]36X?>;B69N %E+2G(:U'!#_FB_8UEQH]+&-M9 MK1Z0&WA=:4'[TH#6"'D#&C$]>@J?Q\&7#_")7L;U[CVOZH'?[H7'>P;ZF:;> M& K4>M7+Q_418[F.,+][KB,0 M_RK+RCC5-;&),REPP)(DA2*4W.3;2" E.(0H0R34S!.&(7;SXQU+=*LY.*KW M;R-??ZH:;=#MN&]2 SG2%8C1!]8*@6VEP9;6)I7']G.MYJ!6_08TRH,M[; M=9./YF#AN ? MS1%^1]P!D;=;MH?"<^"E=UV*9$ONFUUHP9;H_DN2N.#EN3J)5=>O4JC$!913 M-4N4Y^*I%D_O)#/I_M_2Y]Q,!G.N>L?F^4,]_BV0 <<;U\" <)5@PE2#J5J5\L $:IVCY M](;(CL$'@WU@CC=R_W__[T'KXDN\-:,$# M+7F-;N-"W4M]U]7J\Y@NXX*6KV09J[FG395Q@>4D4<9I$/OFWE\%VY;%YN7= M+W4T7GT3G]2W;*$V%$0SG@,((08PE0B0G*;JGSQ,0Q'%">.F[;W/33"W':63 M,>B$#+24YBV^SX(XS#@^H!G[IM<.%:M&WT.J.[7Z/CO@9,V^A]3IM_L>_-SM MAN0BC7$H=3ING.?:0:7[D"!, 4D1$6&DNU+F-@>[_N!S.]G5%TON)H.#13"C M=_-PPQ]G2Q]QQWZ]#=EDO_7X1OY!-OJ%+W3QV^R?+#2B>Z MOE=?"W6&X#Q+"0%2IFK/E6&N]MP8 X[51BSC)$ESJX[53E+,;6-67Z+<_14W M!]^>"T:!=%+2N M:'5[:5'HM[3A,8@W6")1C+L.K<9,U3$,D9C^8^1Z:\/ M=1-O6/@HGS M49B?UDI8'419!UQ6]95?__O-?8O-EUWFHB;94PK8_TI^+%E#W^5Z%M":>WGIZR M_LY2K[-&GHYB$PL_Z4GN=1;F^"#X2E+8;895N5G\07X53]NGMOA7"M.8T$B" M'&-](J084)1I7P#!.<(()0*9[%,G(\]M"VF%,]LL3G$:YO&;M!^98ENYKA>- M,V;$B]H.D95ZJ$=4ZE][DCH=;Q+^N*A&]VI?_H!S;OGQW=#N,C2,$.:(Y""! M4 *(,@J0KFB6A9&4/$^I"(6-)WU@KKDYUM^8)KI%?9@7U/Y3![ZU4?C'9\Y7GYS"CN]19E9%;LE*B[@7>MI_3? M=[]HU;L[3"#74?\<>8XZ#OB60]"SEV^6I%(RJY\N4I3&J4@E(&&<*DL34^T#E" 6 ML9!)'"(1VS4@OT6:N7%[IXRVI#IU@L$V=[KV1*U44&L5_%GK9=N?_*85->/_ MR=9I["O#T9?(OKZ'#VA]%>VX299I*W'X@.VDO(:706?F8UI &.8)9 2$0O>- MR6 &,&(4Z)K(/.,DBU X"W?2W C][T)7#=2E(W^(DGP3@=9(>YU=6FN/M[ZO M["::$[W[\P@U70C_!3Q _RK.GO]+_#J3NW 1Y5(\N8A;C/"$( M)#"7NET0UFTO*. 421$1%AFV0#P>>&ZDW##19MN,Y\?M9CF=_[R? ]G.Y?K\NG\B'E=1_Z!\U%[F_UVW: MFK\_DE^BVMF;XFNA-.I%+KTE&_7/S98L%U)9;X13 @0+,P EHH"06( T9B+G M(8]8E-\2?^M7W+G10NOP:#ODM9D*&ZW-;6&?GA=YF'GFMW0C\]DT"L_J&W!; M7/#K?1,F"AM^_%Y4@5@VI5O+2W7_BXMON_YM_=E6^:#2VN]_U$ 0<%V#4?UF MN>5-6=/Z4\IH70EF=TQ<<2 XW%6VS8>V;,4 MKQJN/ ZBUZ*91YK5L?C>>LU_%LME=P7VM@Z_;TM-YS2%69[HJN(Y I 1 3#! M,4A3"5,AL8R%54;DT&1S,R'LUUL$T!\ M5?D;FFK:LG\&2I_4 31YYJ9F76M%9J0L7Q17Z7N-3^O-URW];\$VC^MWOYZ+ M)C5C 1&*$H2(8HV4ZT)-(2!1F !"(4S3)(QQ;IX_:#GYW*BDCK?:-P[212]9 M3XFJSE>H&CUT#);8:>+4/,IL@0S.'B/"/C(Q]?IU:;3[LM_5%\"M^,'C.G@W M!=I.7;J\HSZ1U>X9?==66E;P&7;1,AOS-1IH66E[H7>6W1B.-8B4.?P@#WL_ M?U@I&A;5YHNR:@^L)65QHD1D!&1!99.3-M)I_; M+M+)&93ZM-JFR;KX)JU6P,Q>'0O7D;<)+;:^(F@$#SK)[X(=UEKXL6Q:%]!\ ME1^RF7K:JD,.H)P4&W(9P\$F_ILZJ2]U08^2+.O\*Z5-457K\D4QIVC3@1C. MDB13)^>4ZR"ZNF%M"!E("$ES1F+"4V%L")O,.#?>.I99E[QOA6Y*+UN874:( M&UBVOG$[5]W?W:0#EHMQH--)VQ M:J/7@85J]:#C/:A8?RO)\_>"O=&:K#:-L?NEJ/[1Y;_F,&%Y+@##E ,H60Q( ME",@A8Q%C"#,L)%'UGC&N1'Y7N" ]24.2B6RY17I5;0-[TE]8CCV9>D>O@-A M RVMQYQ;:VQ\W9M>G6_:RU-3]4]N4(T?=# 9[[\T9NG]MU+4CL3VZXZR*,E9 MB@"7J0 PRB. XBP'*8LA35.G,KRO2'UA*&$.( AS4RL]7&17YD M0M[5G>Q)?Z>/X4&M0-!IH"\)&]CO@E8+_\TN[1'TW/+20H!7:7QI#]"E]I<. M(SG6:5@_Z70C97-NE<7YTF[4">2QP(B D$H,8,Q"0%FBR! E,.4I#L.(6I5; M.#?+[ BN%;+)TM]NOJ]U*P#+N@EGX30CJIM!&IF+SN,SP@ER$ A?!07.SC%M M78 A-4_2^P<_?%-@C>Z@]FFKQWN0;9_VQ_47L1(_%Y*2/(09!SSF$D A(* H MC8",1JR:3SCW#BAD5+[ZM:-G/IBMM22.@5M#$!M<'[T#>#(?-$+ MQZ@[+[98/LB@%5G'87P9 TNGJ!<_F$X?ZN**K6MXRW6<#&-:!@9ZC4"6ZWI= MB%XQ>-"!G]^*'V*Y?A;\4;#OJ_5R_:VS)B#A(:0R4N"B"$ 6IP#ED "9\@R+ MB&>QE,:D?'&:N3'Q3M!@LY/4@C^;O51ATW[CDO]?FX^>.C.BQ' MBU# +!(IU==TBA 30H R4AE(),8R3R3)D)&'='"6N?%A(VC0BGC7_270P@8/ M*XND],O #E.C-[A&9D9GI*PRV*\BX93.?GG4R7+;KRK63W2__F%_+WZ\X D+ M,TX1@#)A !+$ ,X( R07:4II2//8J(7%X"S_4B_^X\_U[2]^?,.+;P77:[[X M0TAY>?'C45[\^/5?_-CFQ8\=7WS+ECP?N\9+7P3?,OV3![G[V?MUV=9IJOX@ M7"PDSJGD40:B"$$ H<#J ,4%8)S&2(:I.ESQQ4I\TQG8!D>H<:0T>H]P\Q[U M91WO==H)K:_#=IVNZHSTKIUJ\*0D'Z7#F=4"&QSI7G'1YMBQ+MAI%.R7^4'V M?JPT[:J=5<$?LUCF49K;C;7LHC1\>^]NZGMWVD9O^DYX+BOHJ3N> MU=1S[)CG@IUC%SVGJ=R=VRE!O06;G^C8'V:;?=U+?NC4%Z8I _TH?FU^5PK_8\%$CG*&,( "Z3N0 M) 8X%PF0.8RB/-8MFXPJ;OH2:&Y$UB_&_G7[_-P4]2++H-4UJ)4->D61; Q; M#PMHVR M354;C]#M4FU@O*C81-@>++]O%KY^LO!TE_*W+\+G!PSP3'A+\H7)X(O XKIOY?Z_.'UQ'RQ8_ MQ%?!U E5?^$^J>_XV_43*58+&G'M+" @3F$"8)A10#,9@IS+.$V0)();!?M? MFW!N>V1?WF O\%V@10[^;(2V;!AS%72S4X!/*$?>UVY$T=KD-X7&DZ5_=;I) M#7Q3Y8_M>N/G'!M?;6DE_KE5N_"['[K>=]W]",DL5OP2 H1T33I=#Q]3*4$N M4,9B'&EWI54_JS.3S(U2]C(&M9".7:?.P6E&'+>"-#)96.-CW_)I !?G9S. M33%M@Z8!)4_Z+@U]UC%[9F<#/\A^BXTO0E>-X+K31K5OTM%='^P/$^K%%R3G M*<@PA@"B) *4TQ3$(D))DF"90*,B/9[DF1V);)10;:<=HZ:7HRR2&=],"/W8 MU#3AYR!),3*J(*QHLXX5396)! 60J11A!<_1$G7IN1Y94:; M-[0_[XC>AD92RT[T5W U8SN/6(W,9JVD02MJG;S8"AO\UHI[.57=ON^\&3"^ M>L]?F6W:_O-FJI_TH#=\;!S7[R=%5X\_Q?*'^&.]VGRO%ADE*8F%!#%5YS0( M90YHAC/ 69+K3@1,_=>G!_A8@+G98.H[!_TZ@D\@]^,/O@7(^;B%O<2CWPK9 M1+[AD^EGY2*^!(ZMI_CB. X.XT_;)WUAOB[O:;4I"=LL."(1HHJDB*"YHBM] M=2T(!SC"68QE'&;"O%_;R?!S(Z.=@,&?G8@V_K]3^ R!,C*Q>,?#PKMY M$RX3^2IW,GKR'%[4>= />/K4=%Z]BQ(?^.@N?\I;P:W[7T6UD"&7N5HU &4D M 60X @3E.<#*L(HCK&"S:Q)^89ZYT=:Y*D[JC5626MZ'7\+5S(+R@-;(?.8" ME(]R5GT8QJM95<_RVH6I^JH:5)\Z^+BC^WVY7/_4)M+[=?EVO:4;N5W>,Z8# MTZLO@HGBA[Z);X^!"XH0)9G, KS5%&$8@<:13' RI#)J?H"R4B8)>F;MUH1,W+QC_)$7OM6QF OY%UP?X!V M6]Y3MZFY"UH-/+KQ78#SY=.WFGM:![\++"?>?J=!O+C^NS8*V% 2 Y[*-)9ADG-DY>$[.\O<[)UCY_9-3G^K&GHWPS.V;^W$[>^]>MX@ M!.,X_E^C>MZ@FE=<_UZ*"E]L7U8M4@G5>TV)SB)2-DP*):""$Q!AB$4>$HE3 MH[)YUZ>:VYM_K>6D'1,,0&Q&!WZ &YD3!MH67L;+FA:N0^&)&P8FFI0@KBM\ MS!(&3[A1Q=]6I6#K;RO=0^:1_&H]6]6NX_9GL2)+'8=XO^)=PS!EII1;P1<\ MIZ&,E0'!*-+^*(0 )7D&TE2@,$19BF5BPR4WR#(WLFED#C;D5_#<25VG#11= M&SW2"&['.K>LEADM3;0&(_-67XO:K=[IH?L8UBNC?_CY8&5V#0[OKZR,-;]Y MP-03 =XBR:0,Z0&R8PKU,:1KO%"U47.4EQH[Y7D6,1FG(,T5A4*2I !%$:O# ML3&+8RZDU4'LRGQSX\I.W#,]H&SCAX9Q-F- C^B-S'(#P(UP>#/$Q5OXT/!L M$X)#OBU6Q$1^+'T);7.IK M5M"EN*]SL(]2VW-)I*0L!"P6=5T\"6@"$X!CQC.:$!QE=GEJ]C+,CL9ZU2,: M)[^\UW47[<%Y_H7-U0Q(2'$H,40P%@+#C RG(#'(6)D!'. M<&S4#O7*/'-CN5K,@+69$KVB');7]1=0-;RKOQVKL2_J:YAZ(HX0#7 %!5]W M]!=FF?:"?EC5D]OY*Q]W8X+&^JH-,AV/N@^$3>)8PDB=X+ ZQD&ACG&4\AR$ M&20TPFF>H=B&"2[,,S['YWETQJ4F76ZZK%2F+1/U/ MWW OI&1A(AD%2,H80)DR@.)<_2W+*(\Y33)B=:_L(,/<2.2OI?9CEXTBEC:$ MRQ*8<B8PQ;F4;F4T[-Y:[]!+6DNO[BU9VIT0/PY4P=+9YQW=LGYLG:.W=;U9( M^?+"F4TZK3/."H@3GYS=TXXWW+HXT(>JV@K^MFXZ\+GN-U!7)*D^B9_UKZH% MY4F4$)HHW)-,=XB+M5..@S EG$8RC8E9"V.[:>=&5I_+-1."5XW]4 GU->"D M?%'ODA1:B;M@)>HV$4Q7=0E^*U9!56MTV:UTRZ)@B-7I&N= QF$.(&,$X(AA MP#C.>)PB1#FU*][B?UFFJ>$RLX4Q]#%X!WMLMX(6.&@D#AJ1@T;FNZ"1^BY0 M?\!AT:P>4+]>!V:33>@NL@#AQ$-@];=]BL*T$^A+%]+'8+,4"1GFJSO(I MB"5- 419"BCD##!UV"=I3I-(&E6!.3?XW/:&6BA-,5'\&_U+5[G6L+GR6?2& M6>163$;F"ELXK)H%7M+;J4?@R6"3M0:\I$:_(^#%SS@U0U^MGW0[H5ZI"BIS M7597 )DHFPZB) 4$L0S@E,IF?/C=E%_.+4A_U+[_\N=LJHO3ZHNWK M:_9"L'@$F04"FHVW=SXIY;//@[* M$%LCF\LC8J-;8&VPNHY*;Z2]:RI=]D.EO")H99]Y1'(R:^TF1&T-.4. KIAU MUT:9TL@SU.C(Y#-]REM)O.ISN7ZONPY^$ILFH$4GGB\HTR=;S$&NF!; /)8 MD3S2!;$2$6'$)3(JZ6D]\]QH6!>3*&KI;JZ2=P%J._//*X!368 ]H>\")750 MBQU\JGM>UC%LOVG1/:8/6<,U7L6]"_.^=@V^83@,JO)=&>#&@C9?Q;>F\W9; MPHJ$(E0G3T"3% *8Q (@'@E 6"ADBC&+,Z,.LU?FF1O[[,NR5*V^ H/ODC5'L[Q.O9KSJEXL5G/AXXY!%;M^+OV.+[WN M/[^_G+1\N=,]6FMS*QJ(_C?1?'M MN_KS_H=2X)OXJQIZ\Y9LQ'M2E/])EENQ8'$L!4YS$$(8 4@3H:B'8I R!&,N M84Y)NGAN7( ;4F[,:&<.JMF\OL<*CF@KB&_%:J7?9!U>P-?+)2FK0,W?A!K8 M1AK, .<%CA")L,@ 2A%7-C1$@$B2@2C/DQ"A,&$X;[]"[U:&=63GH)C]%ZA3 M;[ROCYKA_ZKOCMD&/0=19V0-])O&]0$YZ!Q'7X*SS>4T+'=! TS00R9H,NXV M"IN@!>Q,-KKO7Y MF5XAWWI0Y?,YU\./W$@;7W3^ RN616WW7*B,==_U"M7IWUNULB_[YY4ALT@B ME$4488 @B0!,90IPAB.0IBDE@BNNB:R*N'B5;F[4I-\NL@EDVQVWZH0.2NOZ M?7Y7T9+)IEZ;D;GOG92";8H?HE_R3\L8'"JJUZ[K;+Q3ZOB9N^#^2;<\&8$P M?<+NFV*]R/8ZI.P3UHLT[G626ZL4=EUY/JTWHOJX)BM=(;IIK5JLONU[]>Q# M-T,98B:$!"G.=2]!3@#-DQ!DDF L$$$B06[5"JUEF1NI]ZOH=LTZS*V+>C[@LR49U#9W2]USNTE^25ZAXZ0W:Y M_J'[D([EK7>6_(/LWSA^$4O=V?"-SCFN+QQI[\*QVITV(<%Q!F4$\IQR=:3/ M&< L2P&B-"5)+"'"5KGUMXDS.Q:N71WTT-71\X:XGO]O7#0SWIUN*29T3#FN M@GT!;2_@^2JI?9LPTQ;9]@+<2=EM/Z/:IY6_6VV*S8LRE3]P-6(A"U;/^VE; M!X+A1"*<\4R;K8H])4T #C,(,L1DI*@SSX517-W5F>9&C(VP]?'T4-R@D=<\ M\WP8X&&F\PK;V-&4J3X\\F1IZT8*]G/8S1YPL[W^NE[SG\5R M^7Y=BN+;JBEGRUX>U=94+>MI_DJ*51VFGL9QRM*8 Q'71UT2 2KB!*1"1'F. M2,8RV/7$?C0WM\PE,'H5#KMB/TY )*W@02=YT!-='[56:_VYMX'5Z#:>BH$_HN&%P!+;GW[ )[P#S941833VHSV0-R M;!\YC.!ZW"P%V^PBEVO#:Y'!.&<1I0!SJ@NT)0C0,,U G F9H0Q&60H7F_6& M+$T/D:>36%E NZE&]+KH.0)>2]I4]K(] IX!TO1@=QL\(U-+(UZP3RYX,XB. MP]'LLOK>#EQGIICX&'59R=/#TT?VXD[Z7)^H'\H^+9E=Z]G7G7Y$+;A=] 9C+'O M.=UP,'XES^H]]#JJ!WJOHOK7_C4\'&N25_"L^-WK=_Z7;IM?$XG=%K\K1/7[ MRX<5WU:;\J7^+JYO:R=;+JJ M8E.QS;XT^A6 S790?["-_%I;(F:]PYH!X6G;O3+9I'NQF>+'&[3A4ZZN@KHE M.JD#O]Z2#>D:J*49YAD3'.@^Y8HTI 18$ ID!BD/693 -+'S%)R?:&YTT5Y[ M]X35N5WD:M@>MG M;,-I75P!$Q_ W0JW&2 ^S!0^ 9RHU/44H%D4:_,+WD35VCZKP?1!ZX=.GM1> MIZ7NQB3^WRK@156'K.FR^-9X1:2RXAK(G]M(@Z;WPWIWY:E# 66C?O/) MZM\]%7LS!WBPVIO!,-.5>S/7Z:#>F\5CWBK^ZHCK;ZOB?P3O_,EDU]^XKNY4 M"J[;PN]?1?4[]1WF=3;O)P5&L[$T3RSB.,4DYPQD!"8 ,K4!H%0W*<@BD>$\ M13RRZM<^NL1SLR^;\@+$H7_[^(MK=HZ=U9*-O%N=*VI\%^S5#?KZ=EWB.XUK M4NWI'+1*W[4U)O9ZMT^.6A9YG#4:KZ*R9WE?NQCS./ ;U'$>:6*W#>J>_Q#E MIJ@ZK]_G];)@+_L$#4Y3D66Z\TW.=8,-&@-=>Q0(09),0,$%MMI>KLPWM\VA M)Z[=WG -5S-F]XC6R+S833V[47F(.*FUYF^<)SF4M,90H?+31-D;KCB M'!Q^XHM.$U5/KSN-GKHM*EI901]6:LAOQP3\ZGG1C.=Y/4A9R_[M9/,K0M@9LB, ^O(K#.,Z%W06CBC M6CKVP'F.=#:8^%4BGJ5.?+I):;G( M0L%3&"4@I@D&ZB\88(@$2"1/2"9$RKD1:UV=:6XDU6[D6EKP#RUNT,G;M-VU M3ONZA+"I >0!MVEL'P?('*R>*W#<8/!<&GEB6^>*@J=FSK4''),@VD8S;;;% MA;HK"QDAPC,4@IQA700]0P KR@ 00491'BLKQZIKMO%FEVE-"KTW.]=<%1/1^M MV0V5O3TLL"$)3;IL8S/7KU3\MZL M5]5Z6?"FT*8>K#4@DCP7,902Q!!* &.. ,E3!"1+8A:A)"/8R/0:FF1N='L@ M9_,*6AIC@Y .TZ$OH$8F.">,K%+YKH%P0V;?Q:$G2_2[IEP_[^_J9]TLMR]B MHP81_!TI=6>UZIZQ[=.VKC>FCG@%*S8+3'@H1:I,,88P@ 0)0(2^\!$1I%$< MTBC,;"RSZU/.C0HZB0/1BFQG/!E@;&8<^45N9&[8@=9)&_S6DS=H!?9XLV.. MCB>KQ6#"2:T2%R6;VN9%/3_C:RWL@OH\^+79K8\94HR$^ MND'C#VS[[D\NH/GJ"F4U][3=HEQ@.>DBY32(JTWU0ZRVXKW21$^D1_Q[L?G^ M9EMMUD^B/ Y/"5-,8(HIR''& $R5D84%BT%.$PG#..?"+&O:;?JYT5TK?9WPAHXZ]2]3O3@IY(]Z(0?-SK(#3EO%IK5Y!-;:R[ MG%IN3J/<%A+P2'[U4C\&@I46@D')*9,@2V .8)010"6*@(#C&4P>AD/$\%'IKA=KE>Q$]6VKJ+U0M@%$?@%=^)X AU T)/^+G ,.W4. M+;!&SW.4@?G\KQ)P8 W/I=@#^X'TKX0SA/LQI(Z Y,H/Y -*I1HX!/#>5RAD:?_**.0;*GBN<8_*88WYK MS5%M+9Y]SZ(HB6,9Z0[$.5+_(3' BE74(3%E* U9DB.K GQG9YD;E;3BM:4. M_K=E/NM9',T,GYO1&9D:NGR.#J QKI\&,?"5IWIVCFFS4X?4/,E)'?SP#66G M]WVN>$:R,),<JU77T>#3UZ:^VDKKPJ=N+D#1AC_--V(R],?=@>7<% MEEMJ2!QI[K]L1#?!:U6*.%)PH#C$\2=O;>G<_5EKNI;D8?R M<[G^42CU%R&-$!8D 2RF(8""QP!%, .(RIAD/*,HM:RHXO7"MN[ MO^L$MKT$O8"OZ>WG[:A-<^WI )C#9>.+KS6'U3N\UKWS^5M.J M]4Y7VCW][I=Z^U9DV;FF:U):K[Y]+'X(WM!434P+'F8DH3D#!!.AB"-!@"1$ M)QO$(HUQFN/$*A[F-G'F1B_]O;[3IXGNZ#3:!7:T&[]2"M1:=>9 L_W;9H#= MMJBVIMC82S6A13;2*MU@F=T"KG<#S4F85[+3;@'NLKEVTZAN%-VO)+XK)-YU ME'^[%8N<14PP9;TA1B6 /)& 8EV].X0\Y9!)2*PZ(EZ;T(IF)^[3T-6_MR/, MJQ";4:)/X$8FO5;4H&VQN)/V+MBL RJ"SZ3@_NC,%!A/A'5UNDDIR53Y8](Q M?LZ-5CZ)S1M2?:_M2"[X[R]_JP3_L-KW,-"M9YIZT3L_=\HP36(!DC3553T2 MK*P]*@ +$:Q'F9N%I\0.Y7/\\;;BQD]W2->ZP+F;L-"[:(_.5 M$CZHP>[$U[GXOVD-@F+UEUYOY[T6H_CJW$'TQ&T. DS*=NX '?/?#2,Y^@[5 M,9L7RZUNN;5OQ_?N%UMNU?Q-V/;3\[9I_O,@NP2\SZ*LT_P_[LIG$(HCF>4I MR**8*H.,Z/HH,0=IE,8R0AG/L%T\D"?!YL:>?;V"O6)!IUF7";'331_1=BFJ M2KVF&L<-M5*\+;FA>_05%G)LI^J4:VCOE?4,N"]?KB^QIO4 >P;SQ&_L>WSG M\W:Q$?4A_C@X_?YI76Z*_ZD%:%W;G\2OS>-/L?PA_EBO-M]U<:PDCX6D ,>8 MJS,XXH!F40Y"A$6."4V3A-N0_VWBS(WRU:L K<_FMRR'\/\F;LZ[(7ID@Y]K>Z"_Q*D#!Y6'L-A_ #J[S[@%F&FOBWP -R9NP0?H[H1 MZLYBKZ\RNAN,12I(*B *@82ZC4O&&$ R@2")8)[2#"FJC&V(\OPTBN;/#ZM[QLJM.&A1MVK:TVEWRJ,HGWJ_6F"40E(KHGQ^[,MZ[>,"%-O2(CTU:G2?!;I\M?@F(5="MTT#M4K5#3-K1V+VN= M[(,PO:R017/M"5=JHL[;$ZR877MM3Q /]MZ^=8[I&G-[0N.@:[>O,=VKK5WL MNQ?E'&*)(D!SE@,8BE#]+8D CK#@*^JNG.5S7=^=9[ M>8/?U'O9_/AR84)[R*D,(Q+&$>!Q%@/(4@QP$B4 DY0P"5&:8K)0-E&QYE\W MI-Q,"_SQQ./!_SM9U@$"XZ"_?Y&&G>EV:JZJISU1_BB8IR$8:ZN7B< M A)"!""%L3HD9A(PG.1A"FDFH56#*U=!YK:7-GIHSUM?DV"O2M#I$O25L>UC MX[AJ9E0UQ5J,3&..RQ#\V6CBM9G.;6!ZZ[OC*,;$+7IN ^NTF\^-X[F>-)2V MNNR@'O)+4?WC32EXL=%_6V0B%0AQ",*08 !E% ,40@Y"'@J24Q(R;N6T')AK M;MQX(*I^-QM1 RVKK3UV&6!3<\P+;*-;8WW$M'!W?="FZ61L )4W,^WR3!-; M:5=5/C72KC]BGTMZOU5CK,N/>I'T'2'/198D/ 12DD2SASHS8T9 @B&.4YJG M(/QIX;6[3B!9U\Y@FBQZ -,\*-4(S, ,8H6&5]7M#7*='S>*S)77!F(81BE!').A%64JJL@0T?_PN J8DUJ?G MZCR$_^[)'6X S*"K>^CYZ=S8!EHB.HS>:D+/T!"DDPR! 2* ME448,0QHHB_2TRA67,E#E%E=G_<'GQLCUK+I='$MG&6&9A\S,XO-%8F1^:X! MX?,5$.R3),]HZRO]L3_TM(F-9Y0Z25D\]QG'V]JVJ,3'HMITCA)=MA3+5 *2 MH 3 G!. 89H#F2<0BSR+.8FL;FE/YYC;:[IK?$0)^\=R?=G1:PRB3&(H8)B# M7"84P% R0(E.9\]I$LQ8_J;&=@&%U0^(1S[U-:@]R"#G;#!48*<5_0L[JU\HCC1Y=5-:-I=7IFB M,WB#=760Z:ZQ3/4YN,LR?LC-(-3=OY[$(_FEFQ*O6+$L]GW ZOJ,C"QWGU%? M[A 1W21 (;^34K"Z6$XC7UW[_XL&_5"5KK9V4W!6 MJ=/[O%Z;^R?=U,Z?E>F(J"=;TW;V22U.1VB.[4[786[.*_M,RH>RGH;_)UEN M1589?9,RN"' M%K=.RN'KY9*45:#VIR9!QST_Y^(2&%ZB^05V[$NU@VP=);!N$-"('-0R[\M^ MC9*W:Q ,)/-LA<&FFN7&/%D_;5[6 P9]:1-M"_Q=! M->,5+U"-S"96*-DGPEQ#P%>FR\5YIDUEN:;N2:[*U0=NN+?7Y?Q*\5W'B/T0 MC>GS?EV*XMNJZ>+*7AY+LJIT*>4ZAJS^U[*VFN[Y?V^KC3X^?A*;!ZDLIL^Z MC)7ZQ693%G2[J?LFK169Z5OI*,991ED(9)A) "5- (X$![%,(Y1'F41,6-_] M3R7]W&BK53)@K9;!9J]8L%Q7^X.C.D8Z^!DF^U98^"KFN-:3^#L.%.^.H+]] M5*O\E[N@^R9T& 0]$.J#:P^&8(_#7?"I^7XH+'2R4-G\O@>';D+0 .+9C3+U M.OITQ4PF^_3NG*F7Y:Q+:'(AO/9M^+#Z(:I#A]8BSB*88@9!*#*DSO>0 B(B M"G22O(ATF=H,VC2&,9_::L^:H$6,)IRZWN*VZ1B@_M?*W&O4X*5/P[EU,-MH MQD%W;%_4<%^&G? ]=_GHS1@&$!NW"<.YB>?0?&$ $,.F"T,CV-%856X6G]07 MZD'^0?Y[778106_73Z18+0C+0RYP"'2I)0"C* 44)@F0<9XF&9,QET9W 8.S MS,V@W@6A_=G(9W@),(SD,.=XPV?LJT1C:(S)PTCU(9Y0 _0X0OUKSP_#8T]" M!4;J=6^]V8>=[93&B-*'A?L?I%@V1E#OJO'[>JG&JWXG5<$6RE!)12P@R @E M &:$ )JFJ7KU<9YDB(:I9?*!W?QS(P6]L1;-<>O?_A>*H^@_ JKEM#92K!;! MV%(9"]H)S)6#0VRP$U^?.?N>BU:#N^#W0=A=C!87\/Q9+E:S3VV^N$!SQH9Q M&L:-YRP[@G[C:Q,HYQ4T8\LIUF5DVAQS2:P)]%8\/3&ILQB34NJM8!USZ\WC.<12_UT4 MW[YOU) _1$F^B9;&3RJ>9FE,!8T%("Q1!F0L!%8; M+87X6BC%>H58W^I07;;9DN4B)BPG>:2H0.KN922, 8Y2;7*D&8(,9AQ:G=Z\ M2S@W8OEKJ4[C0=G:CW:$XG_YS/CH51=E9#K;E9KN*7>GW7A!K5_04_ N:%74 M01N=DD&EM>P7J@ZTGG=!HZD_7AQM$3S1JG_Y)F7ET> ])O7Q)G(L$E>*XHEN MRTK?#KY9K^H6\EUQ"YY1@3&A@"JB!Q"+#.!8<) QB6&21E%&C;P1)I/-C:FU MN* OKSI&M@);5D(;0MC@N.@1M[']E!JR+WW(=K)>+RKB\.VTJR3G"<.)$G([ M"8.?Q>9[P#H/<+$*?GXOV/> U)EO>BOJOI;!$WD):%.#[N"+Z[/JG &(5RO/ M#8TQ;?4Y VU.*M"9/.-FGN^2(OI])VOJ)-^174.J<424R&XJ=O74- MS(SG<9 =F,\!)R&*8 HS0$*,059S**$04$)LZJQ?F&>N5'39S68OB)K -'OO;X-G[!.C'3+V^? 7E?>5_GXZP;39[A<5/$ENO_Q)QUQV]EWP[;(. MF]ULRWI#>Y!=;VCMO'BL(\YV;3T03%,4A@)('.K"O5@["S*J* G(HLP@]RH M[8"K '.CA4Y^;1KL-=#_JH.(-KJ5NM;",AO>=EG,:&1,L$Y.GNP M. 28*1,DEPE,"<[CE&0V;^GP=/-\<9N*%9O^?:EHQ+:MAC\(M>'IQ!N 8Y]4 M6M1Z%Z*MK,%OK;27"Z,Y%,PW@<5;[?S!R28NHV^B^&E%?:.G' ,BBU*P?7U6 M[0.J[FE5.WX6*,V2+)429#6AA"(&%"52_2>G49I#'N96Q0.')IO;^:61M?8W M5H:1U$:8FC&'+Z1&YHT6I/W=9BUH\&E;T?SY8?6Y%,^DX&^%%(JD>$M-72_()D%D@6G$0TES$(E,TPA/ M 89, $SR/!1IR&F6+U;BFZY':$8D;H(8O3BX>7'ZXHSJ1-%2=R9*DV2UKJLR MD5IDZT+,+NMC1DDC8CX-674*!+]U*OQ%1YQT:] 9/'H)FL)8]\-+X%)_^08$ M_95A=A%BZFK,-P!UIBCS+:.Y4>4]8]NG[5)SR*7*4VV@%X(17]5/*]G4R/NZ(>6F#M?6/ML(Z5Z5(@1IHLL=T) !B@4#C,DLAE"D M(K?JO^97O+GQ7:N=SKQH]0MZ"@9[#>^"3L>@4;*NE=Q3LVXD46[JY PG_[OG M[X$9K;[>ZH[,O:^SL*Y%%CSC[[?T@B_A7J,@@V=@+Y1I\#V+VT;RN=2]W38O MG]6+L%&&]*[ST]NB8LMUM2U[/ODDXYQ0G( \2F.U3: $D)RD(&&1B..$1Z&@ M-MN$S>1SVP0ZV>MCYT[PNKRV'85;K8 908^%Z\CTVXE]%]2"'R(;[&4/_APE M%L(%-4^D:37UI)3H LHQX3F-X6H7/Y,7/70OP.*CSFQ\D$VDV4*$89[*E(,H MBXBN&A$!!/,$1(Q"E+*,B%!T=YJ/-A;OE8D=[C ?IZ"Q5FIMP-!U6:Y_JNVF MK27U5:R*=1D<14/:&JC7%L34YO2![U1FY',/U7TT5RVO_E$CL4^#T! <;S;> MM?DF-ML,U3^UQ$P?O#D2ZY-2I7$'[QR*(D^2A"0YD)3D .(0:FLJ 1@E29P( M**/$*O]D<+:YF4]["9W#M,Y :L8EWH :F4=ZTE'\=(:8>(_YNO,7*\5 M!799[8&XL(&'O+;(;?P;NTX6U2+*LRC#3"KC)14 L@0#FD%U'J-<8)I1CIE5 MA(?AO'.CD5H^+TUO3Q V=J[ZQFUD5C'/HFV=J7LM)NML>PF^<3O:GLPZATZV MEZ P[&![\7'7,GR-YU7-TWA;M4]VS415?1&54,-]5^>[M^*'6*[K$]X"R3AE M&$N0018#&'.B* H*D,@PS1'#40";X26V(QAC7U*;XF!__WQ&85_WR_VAI[T_/J/4R?WP MN<\X1V]I [7Z3%YT[(QZ]=5/RJW@O3/;.;\*$VF84*&.4Q'# ")! 44T! @G MDM$DPD2$EK%<+G+,[:5OA0Y,DLJ\KH<914R \LALTFD0M"K4QL@9U,?W?MV( MI;^X,"#OQ3"(S]]F<>=:PM^?2\7+\(\564/PHFZJ81OY-*AR#/8@%@B#G >9@!GD+U)TGS*+5J M3^A'K+E16=U<#5"MA^X]LQ/7+<_:T]*9,=ST"S(R"=8:@%J%H W!".[+4GU$ M-!M+*_)=?7O5JN6QG*57/'V5NO0CU+1E,+T">5(BT^_H#J78=1/&ZD&V-2/K M4=5&\+DL5JQX7M:!$NM5M5X6O*D9K_[&7O;'.!E"$48T 32G$8!4(%VIG0(1 M)FDD&(:IS(PKM=\FR]S8N-9&!P/U]:G-R[U&=:Q07R>+,N4WKMPP+T^\'B.3 ML=-2!'\V"AG5Y?*^/!9%YJ=;IHEJT/>N0M2BD.;TK',PGIL%D>LRV'P7=4OF M>MV>CY?U^6!9V<&R=D]K"XFL7GQ5J?>S"H-%[&^<8KH:]WZP."B![VE(QU,, M*74>1_59E/46O0M'BT/!,R@1R'4+*BATK#&#,2 H9PBG-*:Y51^J2Q/-;6_K MY-3%[IO^EI:%6"XB:GA<\(#3R'O.#B(E8].Q1P1 M*P[ N_7D'"5X'72]-,6\CU MBK(G!5NO?=ZQ"F33&5=?P_VG;KZP2%FNC( H CP4$$ &&< 9PX!)@6-];B;8 MBA".)Y@;$;0-FBLMX%WP_X3_'D;!,RF;5A3_$<#T+@Q#_?^N*3;9;KZO2QTL M=Q=$Z9VRF>[B-*UM>/7/-$[NDOV'BZK27M.Z$M.^[W! :B/_K6!UW84@">\" M_35MP[ZZGT;U3^.[0(WTW,3'+BU3G4Z6UXR3;EFTD;FH:ZC=K%JY75+<$TV>##\I+UY2[I@(+W[.P0&J8UZ:"!AU((O:+V&:A'F>0P3B" KM MULR5^20SD.BW5T2Q+K]M[-8\-\/]:2@M'UUD #;R+M\(R]OUM M@\CG#A&73M)GH;'P[-T*T43^NB^B=!MVOP@PXDU\NAZL4.W &J1BPZ&F(V<[W0[H MVO)1KUVN]P5*OJIO7!U<^B#?%RNR8@59?EY711,IN-$EBNE2/5AM%HDR9I41 MBP%/=#8<"SE 3(2 AIB0A*H3/LP]=,9VD6UNEO'E[M#]DCUU.=A&0^V,V.D8 M=$H&?^[5#+2>EGY1GZMO=L1^I34=>6,:8SG?K13?-ZWL/9[T1\!_W#;C3I+- MH37Y+9 :MC._:8J;6A+6\]VO^$?UA5N>MLM+DXQ'B.0@@5R9_#R, :6ZKQC" M(8T1Q"R3=G>51O/.[P*SEM>I$^$5A V=Q+Y1&]MSW):JJP6N_46UR!,U*#2# MR6^?PBMSOD:[0C,8+G0M-'S8L4Q#;?&V,RUBCFGM"\E1G &82PQ(QB* A829 M")7YF20V[4\/1KR.7Z9ULX6S9J!$NMA^7;/0RX MV=ON#<:1W_Y6SNZLM1.U2XGUV,+/"!)/_# \UZ1\8:3V,7^8/>3@9_B[T'=> M@M\KFYU\VW= J6?2Q;=W>1Z,R33-, 0\3$)U[L@(0%1P0/,T%8R3.$1&F3-V MT\Z-83K! Q"TLOR!7A#6L[;X0U9(,."?/1IO-)6&MXX):P?_IV$W)WX_4'V6Q+ M]>>C+GFUSVO.DP2&$&'M4Z8 TI@"%*KSH(@Y29)<,$JM/ \6<\^-_+^R[X)O MEW62 G^K!4Q M2ON_R4HU!' $F_7:S*]FP1I",F3/F@[A1G6_;RO=/J9ZLWZB:E*]K;Y9U\4) MU"ZK,] +WGJ"=G(L&$$DA;$ ,B,2P##) (IS @C*&,EI"C$B-I3G(,/F$A&91X#IG(XB4F& M !$< 1AE&&!&&,@2'F98(DYQVJ[7NQ6?T6IUTHQ^UWQQQ81.E6S6JA%I_-4R M,R1&QG]D@Z*3/NB)?Q?T7IPWA\NPT\&?(7$#@)X,"A<))C4L;H#HV,"X92C7 M&A//S\LZ3H LWZ@=\OUR_?/#JFXC7->^Z6X8TE 0@G,,$JG]]XQ&@*18,:1, M0YQ++%)J95P8SCLW@Z(O=L!W]:.JO8&A] B*O2*6]6I,EP,F84I$JC/\=3<< M%$- =%$\FBN30UE^"266J5\C+,A$ 17])=&2!UKTH"?[.$M@M@&- .O(F\YU M/$R(F:S3EQEQ J*TZ(C=H_??AEW%(%L$2(J>)1 B"%(>I)K;IG-TK[1+%MF%W8\>%>QGL>WO_B99PFEO!6]= MO7&"@+V"/L)-HKM,KW;'>#.,0[>/MP]NQ_I<%(MWZB"R>7E?+$7Y1DWW;5WJ M.\><0740 '&J*]&), 4XS!#(9):D<9K07!K5;K@P_MR8N!$QJ&4,.B'-J/02 M@L.DZ &7D>G-#A)C8KJB^!F*J03[]V_K'_^?>K)A%_67/:E<&F\2>KBB3/>B M7_N8XPF_XX;:0;'@!**02 PHSB( \Y0#S*@^R(M09D3]&D=6!_F#X>?VPNYW MUL;;9ELE\A [PR.?,R)CG^R,P; _O9W5V=JD95]LPX0PD MC$0BA9&(4J/FR.XBS.[%)TM2ZC 'G3+RDWS3^KD&^;2(6\3$C8[\1/%QM1Z!4B1H-=FE2.UT:6IP!DW# MH+XZGF+E;H)R,&[.;>3I8NANTOP@GNZVD28+.-GGFBY"PI,L81F(>

UZ6]L^*V9>/*XH\CF(-4 M-^.$<9(#*E()$H0E"3G%2<;LO$B3+=PTOJ7Y+IW9462RY1C9M' .A.@76WC5 MH(A36%\O/*(GR]P#)4YA\Q R<690^]O0-BOR?5$QLM1I,^]6_*W:KA=A"K,T MXSE@N8Z4B+,$(!+%()-)0G*<,!8:]1 =FF1V6UQ+A(V@@98T>*?+XAO7.AB$ M]/H=J0^@1N8P)XRL[DNO@>!T:7IQT,EN3J^IU;\^O?I9-^M8MYK6B2QO!=7] MB]^0YT(G^&M/S -=%M]J?JD^K%H+O95BGVRQ0$F8QBP+ 9,X!!!C"0@+(Q!G M(I(I%R1)\C>O8CV2]YC^+I>Y-\&&U45]<[==NRE3LNWGNL\W"*&%0)!% .=%5 MIU@(B$PC0)4AEC,*$:96_=SMII^;E=9)7[_5>_FMJJ,Z+H09CXX'[\BL.8QL MT<^^6(W^;0=4)R .6F(XC:*&\5]$C_O=ZV(/Y?KE?HKJYV+ ME2;<[VIZH0BV_YFN.>W^?8,1RQ'**CZ$ MFAL=?A&Z9OSRI6U$%NR%#PXUM&-&+^MGQI=3K\K(+-I;@*^ZZ1XI>17\[9EW ME?\:A8)B=;A4K4HC4:M/C#T1KA>1)J5AGR >D[/7L1U#K-H*"P_RG91-ST=E M :^?Q"/Y]45]>Q73*)R*95%;Q\>5*FB*9 0)B"+)E(V:4D!ER$!*XS!E21Q& MT*Z9[PW"S(VB^Z4K=MH$C3IU"5"M4'"HD66$URU+9\;24RW(V.$=#FLQ:HT+ M'[CZBE"[191IX]D\@'82_>9C3#?F_=NJ5(-_6^G.OFJVMJALM1"4AQ!+""*2 MUAW2FB!Y= CE.<*T!C@&4( M :2, $(R#C+.DDSPB! A;(-X_%(3.X#;FA(^H37;KSV -?)6?/":ZZWW M]VNON?7F>@4$3_OFI5DFW1*OJ'J\VUW[N-M&MMLP[YM.]9N7^U]%M8@03@6. MU#[&->/&E !U6," A%0PD2J>"*VR-:<.@ M%=>RF\H0R&;,X NZD?GA$+4O-6J?KZ-FWRS% Y?/5*&IIJV-8J!TB<=44R> MN?4*\G.YYENVZ57\:)(7)2:0I7D$$B0$@#QG *.0 G4>%AF),ZV4D;5%K)CO=EJ5VZVL'[ M^\O^(VU;F?N?I.1-6_L/JVI3UFFWU8,.(W[\3E8/SW5\XE_5$)OJP^IS?;EX MU+^@_J4.&G]/BO(_=:UH93MQDL9B&.0X3Q*S<";/1 M;&ZD64O8,B-?+Y>DK/1!KV%)2Y*<#"B!J6[X*3;3/V1.E\GT%@%_SE8 M1][>RIW;^ONRIF>CU[16^VS4OG0ZF)V SI5(BXWX6/P0)]&Y]T\Z,_M_2%,' MKRZCH)/"WJO/+E"6A3'%'/ 8Q0 F"0(H0BE@,8T8XEDDF6V'( *WP>0.2_DIZ MN@@Q=0W/&X Z4[3SEM%NO0SN,A?V,8L222EIPD&(XP3 6#" 8)B!D"09$7%" MPMR*]@;FFANW]>\M.V%=;WM/@;6]Y[T)K@EO>'>Y3=/$U'ER_>YEQ_Q=Y/[L-U4.@VC6'U;9#2%$>$$X%P[GW4;78Q8# C5AI,DA(96 M[3^NS#B^SW,K>/O?MMKB.BKW2=VY-VW/O<,[",>*';G^W5;W3/ MJ&YRI7ON,3>B>=L.KB-G:BM(_>6-^G>Q>4/*\D6N2WW"K!9"NZK#/ 6$14A' MNU" 6)8 G1*#4IQ$-($VA&,X[]R(1\=VL;Z =M1BBK89Q8R X2(?TUDG)2%+*([)R/9QAXK+#\]U?;#5MX_KJNJ/ M^G5+_UL=SA_7ZG!6-#$[BR@1(F9$@BBG$8 PS@%!(0"^N)RBA[Q-RN>+(+;H,UDZT&G*Y4LHN>!Q62G0:X MO<_9KH)DZPVIWFZ;*SOUU5O$+"010@B$4IFM$$4"8*S^0R*620[C!-FUWS:= M>&X[@_H6YN[=Q08A-O89> =N?"]!OT=8KWRMVCZI"#Z3@G=> 37I.'V_3+ : MH;77X+2OUKW+!(RA!EU&S[L6"-KHMHZ?R_6/@@O^^\O?*NUXR \,GUI<.M.L9][X/ZF)0^*U5^"O3UU?QUFAP(] MMHAY*\-C//'$Q79L 3DMJ6,]PFV.RK4<\).^WVZVI3CC+3VJQL(HC'"68W48 M3ZDRP#()$(4$< X)CW-(*;-*D/,IW-R,M+Z#KPU1D&=#%*J[H%'Q($*AZROC MYCWULMIV[M:IUW!"_^Q@A,GP\DWBTO4)O6P"WUN M1N]HTZT6CS#D:=U_2)U18)YG@#(J :=$Z0,I86DT>BG>1H&A*0DOPLZ^8-6 8\71&[ ^;HELIQ]VJLB-VA.[HLJ",8:V:@>"*:*Y--RBMFBA_3B.%3KK752G5\(ANA^.FK M^*9]19HH:Q*JQV8::Y<<5.4-L" M:I>0-*,*+_B,S!([&>L&LJ 5,_BS$=3C+>E5,+P53KLTS\15TZZH>UHR[=H# M#B&?']7Y[4$V<:3O"6N.:.L?8D56FT]B\U$TFN;YT44CYUVP$IM@V8H:U$==BZ!#*_"'&6542$=F M&"VVOLAK(]$[R?6]4@>S=JMWX@=?QH39(K9S++@GBNWT"[M=>*<+=(/AG58# M3A?>Z:+G07BGTP"N^4C/I6!-9PKU]Z6H:V"L>-^SM6 1Y4)R#!#1V8\RDH#& MC($<,R83Q..4<;MDI.N3SHW]^S+7EV>D)ZQM5I(!YF:VI&\D1R;]OKAWP4[@ M&L][$SP=4I', ?*6AV0PY<1)2.8@G&8@63SK&&*^+5=%[4Y?\??%+_VWJCU1 M01)RK.W.)$H$@$E. $X% E+] @N<4(RLSJ:7IYH;WSQ(63 1R$[@^AT1_]P6 MST]#=S2V )O1C!_81B:7]P=0=6*.<&:]CH:O,/'+$TT;&'Y5X9-0\.M/N*0J MUN]$?^QWW0O1?ITYB3+=X@H0DD .0DU7Q 0HHPR3+(41T;]0LRF^[^1,PR! M-CB8>H5O[%OQ!KE#"MF)>YU#G+ZK%@F%/J&'4:UX(&ZKA>!ALE MJIVI=AE5,TO-"U8CD^T)3%K*$>RTJUAX,M,NSS.IE795W6,C[?H#CEDM:FNI M"Z@^R"8EL"#+S^LF%N*>5IN2L,TB"XG@62Z!(&FJF"+& %-) &4\S%$89IS; MM7TVF'1N?+&3N9Z\K'$D. <2@ 8QG,:12R M#)L?$H\&GQO%-.(%2CZ+L\LQ8 :'O1M@&)D2]@BX'...H; XM-T R41'-(,O MA]W9ZX+*@R>MXV>F.U==D/;@%'7I,][RN?15NLXHZ\6+6F[1=H/.Z,T\EU?2 MN(*T[/WPZ%'V;3?5\]_^ M%U*Z_D=]^[9YL3U$G$#*D@3&-(Y!%"4*4JS0I"Q1_U1'.<1D*D(B%TW#>F73 ME9LI@#V>;D2Z(DM=WN9F%%&8Q$A_,4/&!(!Q"@$B*0,,1S%.PD3DJ6A1?+?B MTV'8339_!$V/KK=@,O+>UPAT%]QO-F5!MYLZ)VNSU@E"7D/P+X/@[2AZ,L'$ M!\]+"IX>,R]^TF[3JU#^KX6NG^YPM&HQPR3(!$B020ZEI3 MA": D2R#)$I#@HV:#%^>8FX'S ,I@UI,9:TI00U/60-@#K_F?B :^35W0,?X M%;\.P- KKI[NO=[J7_M7>V#@25[MZXIUK[;!)]WLR;^M2L'6WU:ZB^W 75L =TXVJW-N ;**=55DQ8QE@CRD 2J5,ES'(**!$1B+B D(0TS6.K M:$_SJ>=&F>8%SMH:9K8>0O-%,3QLC0+UV-Y"?RC?T/'+%##O#<"N3OQ*_()^"F\HD<%HN^2*J35GH'KGU_57KAL8Q1"1/.$BB M""I+B1)%+,IPRA.*PP2I(ZA=\^:SL\R-3_9"-DX..T8Y#Z09A]P,S\BLT4.F M%G"$8,I!"#PQP_DY)N6"036/W_[A#]]Z7+K:G[ZZU*"^,=R1S"E21R809B(' M$*$(T(R%0#":4A216 JK,&QODLV-5_K'@%IL=>K4N0E]Y8*^=KJ\?_^#K89! MK>*M![);E]WVO#;A8DYXG&N6YW?3=?S=81UO./)YPMS[B?!6N5[IP.@)SLOG M25\3^&O!58BJUUEG%S$FA)"(,0EHRI1=&.L#9Z33IW,24\Q8*C.KMK'F4\^- MU ]:2ED>/BT -V/;<6 /X8C-NBY, M_.KMNH8!,6G8=66$VQGL2_'M^^9!_JT2;2P@VSYMET09T0?U3V*<)CR*4I#3 M- %0_XW B(,L%FF:4)$1)%V9S$R$>3*:;B-5:OF5E0.VE0B66J. U)>;[C1G MN"KV=.[>+3;Z/>7>OCF]IXQ+F(6YLK&2S)%>A$%)&52GX)AA"#77EY' MI\WQ7',CN(/K^]J+25_:%^M6E\H)S-9.DEO F]+M88?;+2Z,2XCX=TJGC_K12BURN%D2C-PP0"0D@.(%3;!LXI R&C$%,4TKJ8 MHV')YL&IYK95-,(&]_]&GI[_XTO7MW,GM$4IXV&$A\G&+VYC7UH-0^92!GH8 M.XNBT-XPG*A$M.O7SZYNM!$J@U6DAT>8KJ:TD28'%:;-GO!6;WH?SO6!JVD* M69!=K$.=Q:[$4 S?2P=0OU/?-/Y6-*U"U*&B]\N%B!*9A-'_3]Z;-L>M8VF# M?X41;\0[OA&):BX@"51_DF7?&L>X+(>M6Q4]_I"!56)W*E.=BVS5Q/SW 4 R MD[DQ 29(\?;T0T#.8@%@#H4N]A.!*$6"IVF*$('3N7C0 M0;3W[G(7_5EN-=AP.=B.[.]OP-7&FDV_V<[<;O(9/7:\W>QT)/WX=H+FDT9< M;-!TN%86JETN)\([OX+*:UTGMWHEM!#;9XM7PH<4>D^]U)]\NF^#WUIRO:<. ML)!I[ZOECF'#I%C^@\PVXN]JM;%9FH_CU\6L8*_E?^_%K_5[A>5_37F$8B(C M#J3(=:9$E@+"\@PD,%1]DA$.L9,HBG7+8ULS:,,#8_E^&:1/\]5ZN2E3WTV- MW+WKFAHVCC'#UEUD]]'H!?B>N;^!961"%-=!1VE+J1FT>;8Z*PV60TF;?1^;=Y)]T@_&_CM",LSJ$-LP)8) M#?=[Z0S>8_\<29VY;P:)IM(B.?E@F^8WX,>"Y@\44Q;2X-2BX7+AY1B%MO97 ML92Z$H/R8!>E^/'7L]"2[??%DPZ@)2^14T'&L$\TZ"VK>@=,X(533< MZR;OX:FS[2:7PW=ASZ0W8.]U*#7A$VQOM2F\P,0N?0!Y7O_#Z]*XG&.6^ M1*7B>;M8K5=?Q'I*D<*+RASD!$H D50S0!C&@*$PDTG,$I]"M*(\Z^YQ!CI?Q)R&@3/8T1I[L(L%?^G.>77A=I/:$_PO/*P1>%/4';Y_FDCT4H6VJ5A ^B_//3 MW$30/"YFZADK'=&[?OVVF,U^7RQUN< I%23#&8F!2&@.( L9P!G.@/>1=&L"WK^5,J<6A]:>:P+-"?4Q#H]YNVGP[OENUI0(QI'41J!A# , M8!+G /$D R1/!88R@@0ZA1?W9.?XJ/5@U^_M)L?-WAQ^DMRQC_ZS#ET!-"NYP>* NK4GW^B2""; MKAP^'.@(];&$!.T,^W.%!1T!ZCTTZ+@%][#P#Y5"7EFA7IE0+/COZM]6TS1' M-,T9!SE#(8!$D3W",0)8H 33.,YSNTV6UE;&1MFUH4%I:5":&AA;[0/"SX/: M3J'>H.K[#*X+2DZAX!=1Z!0(?OZI@X6!7W2L&01^^>*.,N1J?BI$)8<^?S * MM=N*ME_)JQ$_^K 17\2O]?U/,7L1?U_,UX^K*8]%C#(A09(3-?=#B ,4)@2D M:2H%YU!@[A3TW=60L=&&>LN@H[IUURZPFX0- 6S/)%.Z, FV3I0"V'M5M=>+ M@(K@*RG4HOT_!%D&=_/SQ5_<9;&O!-&74'97,X:5SKX2K",Q[6N?Y[O^]A\K M(3>SSX444R033GB> H9##J#Z"T"12($41,8B4VMB[%C5QZ99E[$Y3"6 TK9@ MIHSS53^[@;(=T_E&KF=6:ZV4/0DJ1#^W(>JQ-/8Q1+W7PVXT.9(BV,<@V%>^ M/G%O-]ZYF:\+7LPV:]7(=\$V2[,/6$9;"E[6L7EZWI1*YG?R(UGJ)>-*S0F- MSL3[U],/,/)LH5#+M3#* GUV<5V7#F2CNN98COVF3.M#H"F)S;NT])!27P R ^Y?X@F^UW%ZX71 M[VIT35D41CA)A6)_F0&8,PQ0G$D@"&)Y)G*<4+>R8HX&C(WL9K9BO2@%F"$62)#$%E",)($8Q0)2IOQ(J)[IS!@(C(5!-04(;I9+=4E5UD/74":K1Q,2,U]Y MW-%LA\83'9UI9%"::7?TD#XN7-V-%O;G?%573A,AD91I"E*>80"AA("D20(R M&D&<*U=3[I2"<[*5L9'"[X35L<(Z=ECN_KH4,RU:X\8.IY&U(X>K\>J9&X[6 M@]XYH!4!3Q1PNHU!&:#5S4,":+_8Y[2@P?/O7W>75)^!&YT)4\] MP(>Q<5?YL2XG-(V*F<&SLM7'I*;?%^*:&=-HNGG Z5C3_^:<+*"OPT(S@>9KV[OD:9(W2&_V.H/LUX,13$\'Z2*[N>\P MIER5DZ./D#[^4I^ .9G=;E;KQ9/Z&KQ__9M8/"S)\V/!;G3:J9&!W)6(A#06 M,4\X8*&, >0\ BB#.: Q(SFBN132:?I]A2VC^]"Q1\$W,U.MLW(KT&]N4#L6 M;#W3;+CS+3#.=AT.'[4PMAXLC2P5*MP([UC\.RH["I(>B:H)AK!C](\CWQSUG5/+'+\_$&Y MX:Q[AR/^_(4=P[472U$\S&\7F_EZ^5J]C20+,R:UK'4N$("Y3DXFA +$4*(F M22A)\L2IQ/F)1L8VFBL;2U7$S?IQL5236L>@[%-8VHWL:Q'J>7"?!*>'4=X& M@Z_ ZE--#!M(W>+D4>!TV[6=M<+4_.#S8K4J8^_FZV*^T:FQSU5 P^J]D*K9 M^L2TV@3='J":V\O_JM=!1_*MET094,S)\M5DT^I3*_58A8DRXZ&^T>BX)RD6 MF0PI8%(DBEG"5,L>,) @1B"+69SDT$5<\BV=<6*P 90H2S?*%<)BZ[^S0MG; MO1QV5/EGZ?*>*;GJ[7<:B-_*3M]A$>S "*A!8Q<=4^$Q:<3+F$=-JC\#@TIY M]KQ#87NU[WH%8^A.?V)N;^?*T,IP;]YI)V3FWMXF=_V(6S63TLOSVP47TXQF MA"1,@CP.(QU@3@#*80CB1$"<,R@()+:2$%V(/K/;/ MQ340]+U4MO/>2>_AE*N=)![V'C28JL,I\YM"#B=_W[6&YPWGJCM77QI'[QZ'K5=H>I0P;,-B2L*>)Y\[,#U.]M<.R[?V7IUM^7O M87[9[C@IQ93C# H0\80"F& &,,UC$*)$BE10"9'3KM?9ED9' I6A@9HIE:$) M;HO&\Y#:K>B\ -7WZ*\Q^EIC%/SHY6#M(AB>%BOGVQET)7'1W<-I_N4;NO'" M'_/E5F54S?_?B[F0Q7KU3?"-T8I3/ZTV,QT:J)<7G\GS2MS)F^?G6<'TN=KW M-5EOUNJ?/A=/19G+NIH2Q&F&0@$0THP"U7](&*: BI"AE(L4,5B7A[RW)Y8> M3+4::?OU)>\'8"9CNXY#6)4VZQ]G.ZO=:*J/'K8CN+?JL&&HL>F=.2&H_=-B MGY6'P=;#;<+G/^H54C_VPT/*D4Z3(7DTP&<@CK0::BQ 0*# (<182P9,LC)VRP%I; M&]L,L]I9WEH;U.8&/TJ#W0NIM$#M&:U M7$^_BP=-7+L(<#*K)L=1B*(TYA%(6:[6(5&2 )*C'"ANB1(I0DJA59AV:RMC MXY2FA8Y+CG8TVQG#&T8]\X0;/-;$8.5^&QVH!S2H0/UM1P/MSQYD\%NY5P]Y MNXO=!OK\18BI"04O56T^;)9E%91BP4M=FYT*CHY2N9-&]48Y=;M8K5=3J$L: M9FH)0>,X!9"&,4 B34$.44XE(1C:E32\THZQD469PE!4)@9RL2PK>U<.V-'& MM7W33BP#(MXS]91@5XI=I1M5-91*LVO2U/HJ@P^#.QG4_@3&H6'ZA%?+@5*# M: 1]LV?0G[:/K+\GGI MOSCZ8>9S$L5):#XIUSY^D(^.)PSJSY*OQW74;&=L MJ1K]!RFWSFXWRZ5ZFZ=,4I$S@@$/XQS F(7J"R5#$+(T%YS05"9.I79/-S.V MSTYE9?!2F>FHC7X:2KL5[?4 ]?R5J+&I+9P$E8T>Q/&V>JNRX) MU&(2:@A*JACK+$" \BH!()4]B(2CFJ>UJ M=._)8QO=E7'V:\Y]G"ZO,SM[W_/0K>SRF"QXUMLKEI+[SQML^7C2C>:2\?0% M7>52F"A>].'WZH:NUDO"UM.(IH)DC(,LC F .,T @5#JO6:<9"3*48[=9%". MVAC;2&R8&/RHC72N"7P,I=VG]DJ >AZLCMAT4 TYZ[TW-9#C%@96^3CKXK%Z MQ_E+.TJ-+A_(O/A7^:E6,_;%K.#F+^_)JEC=R:_J9:G7B[54\@>Q8LO"*#7= MS+GZWNM<8[T(4#>S0JQVT;R4QHCG) $"LPC 4$* J>1 *G7\AZLS31;EM5\[N.6;O]=KL=L8VF,WNFR*:?DV#/TTE@?-5= MVO1VLNO@AL/F'=BY'-0^]Q16/DCW^!*-[=768<5GAX#]2,1VD$8[BN%6XG)W MTNPL+04_7QMP]?[U[^0_%\O;&5DU^$BF,.1A%((X-]JV:O5(PI2 G.4TPAQ& MB5MMDNM-&MNWIJG@5_L45(4S9R<+9QH!.>-98%QS%+2]OE/M/C+#=E7?1Q\M MO72ZO.EA+_6J\.9,94TA,$GT[H*. M6P,PYB$@(J2 AWFB?A<*G#IM,3BT/39>=AS<'4JDNG2,'>7V!'?/W.H5:8_U MHL]BUGO9Z..61U(]^BPD]D6DSS_BNN)YMXLG6LSK>;2>#JMI\U[QMX8\]NJ; M_NE.WFW6.C%@98Y/_\_BX7$*>9;%@N8@SV"B)JPL 9@E!)"$TI3$/(?,J1B# M7_/&1I(ZP13+N34KT^07V7,D^SZUTW)ZHT[GNY*WB MGM]GBY^[$QX:0QIQF0 1)AF F9K$4IE $*4\DCE)(Y):2039-#8V5MZE'ZH! MK:T-C+F=3]!:@;;<#/ $7]_+_.[(N:_9+2#QM1IO:VK8=;:%TTD=@YT MGE&Y=8X=8?0&><]\XA5M9\KIA)HG1G)K>U#"Z@3+(9]U>TB'O+K/:E&J)H=+ MP8MU5;;X]7;Q(N9DOJZB,G\O?@E^^TB6#T+_1J?O?M,+U:FD808SF0.6Q6K. MQR*LYGPH H)$&>94R$18S?FN-61L)%C' DMM;\",P0&K+ [,(M\AD^N:'FJG MOR%Q[YD)M1Q[8:9>%&8+F3;* DVJ*>QOJ.2G75_V$W8 M^T"YYR^4/X [%!5T0\M;K4'+9@@&QG%E0L?[NQ%857EZ]4W,C KQXI[\ MTDT^+F9LZA9B3T-1!/S[/%JU!7K1>!]F"=4C)5S^O:W2HEDLL122F MC,LX2YDBVRS, $Q1KG.]%0%'5/ D9Q02I[+0S8>/;:[8D.%T#=ML(&9'3UUQ MZ)ER*@AJ>1B3/O(:_*C^["50_102WL(I&X\>.%[RV*GC@,@3UW35))5BN31* MZN5FZIWZFB^G&+,D8B@"$I$<0!ES@%&< ,%3#L-8T% X+0)/-S.V86R,!W5M8%G_V9@X"=I1ZJ >V@:"-]'0DXT,K!7:YNBQ1&CKU=U& M^^>"4+WG5#3D"]0"2'V/(ZS&MHBU+F@*" HC$(4RR<)40LR1NW_ZK@.S]\Z_0VQ=SG 3& M2/^?_[,X>)X!'+?S)I. L^Z>FP>"FXX.]?_UCI]*JR MF6+^<,/6Q8OAJ&G.((U2JE;RL8YDC=6*@*8Y!8E(N Z&AUBBZ5J/-SL.L6_: MB52V!O0W(+2^J4Y-"IXKV_6>Z+N-WDPKYK\%LO8@(%L7W%C%H5?L:*8?K'OF M'0VS"9C_VH3YCQKFK?'!S668G0G)'3%/#.70\*"4Y0[((8=U>$*'P*W#%=-V MAHY#%D>82$!9I.NJ9&H.A!5_29P(G".69]PJ?:>UE;'-?[9+][5:NA-MZ5\= M@GG.8MG..MX0&FI?PP(_:XB*4S_834CZ0[=GSF@%=B^RO)?#CFZX>0M<<6I\X/"5+L < M![%T>HJ_6#Q#H&9A5TNXIRR+:"QS$$*4 HAHJB8P<0@0"R&1)"?4K7"L5:MC MH[,_YK28S=27>KG33+T^T.X8;%OR\@QA[YQU.L3.V#P)J) +15@WL]GBY[;D M314P_EDYU(/:OA."/8;=';?YYC%W9V&P";@[?W-7S? U*>:":U$6Q82K2HX^ M8UDF(.(@YE1+,.88$(DB-=?*L-"9S1@Y'1:=;F9L)%1;&=1FNHJ&G\32CG*N M1ZAGCCD"QZ/BOQT(WA3$3S8RL(AXFZ/'.N*M5U^G@=4H %3'ANIP7J&_%F5- MD#HE[^.O9\'69AGX0? -6YO4O"K-NZ)G,MKI7#<W#)*B], $Q.S^" MTA'_TE9>\?6L;.7'MC<1MO(*ZSE=*[^-7!_P,^>FWIN. 59<]E$9MWZ=)A'A M/$LR@""% .8Y!42G24@F$82"BPA'+F=[EQH&28P:\2_Z+V=5*&3\-NQK4]0>R;0SP=(?FQ'[:I(HC8H>@@K.MGE_'XC,Z,K$,4ORR*(-KU$0"09&F<2@ R3(MYY3G@$22@1@)@G$6$D2< MEHHG6QG;#,X869XHN99R.0FB'3]<#4W/I%"B4LW&VHURO-KV*;052PJ2[9R&*. )8H!U (-8F0DH)432=XF$A$ M2.JFW':R'9A@!-V-6\*Z8!WPQFY'E*GA6+[JQ^#>WX7\:6+OA?S58/0__ M[<;0UQJ<,LF;^1O_K1!X&O^GVQAT_+>Z>3C^VR_N^*DO"Y7-'SX+M9SY5CP\ MKN_D'ZM2B&E*%]1RU/ Y!;$=E.64R(H 4E$,P!C M*@!)2 1HE,2QA# 4V$FS]WQ38R.(DZ58.TKQM@!LQPM^8.N9'CHBYJ[@?1$, M7VK>YQL:5MG[HL-'*M^7[^B02?%ISI9Z0O)!E']^.E>8I=Y8?IUF(N5(+4P M8I*JF442 DQ9IM9_3"T&D<1);)]CX=[^V$BE42F)-0UV2,'HT GM'#, M#T3 M3VU\\*XV_SF.XBMV3<='CM<7DYW MG_Z6D17JS5'CE_4*W4G[Y=DOM+IL8MY)7 J99S(.$J WM0"4']$ M*!,A2&D,8XE9[GA0>+G)L7TMM,5ZK65L[J@G:P&TW134+WQ]KU3=D'.OJV4- MAJ_J6I<;'+;&EC4 1Y6V[._L6)1&/4)G*=S-/Q2KYT49:74GRQ//:(IISFF2 MY0"E1&KEDPQ@KFM*B10RD:,T(JB6?;4CEO8&K4;%OJYKS[2B[0W4]Y<;:\G, M2+L^+Q?/8KE^-=$Y.J;IN57WLPOR=CSC J.'E M7D/&"A9?16/:&QNV2HR5XT=E8>SNZIBG5\9,_+Y8BN)A?D]^Z4#-^4J\%W,A MB_4TI2&3A&&@ZSSK\TX,<*2#'ZA0%$.RF(?8[2#N0HOC.XJK+'5,R;N JQV! M>,2J9P:I+ TJ4TWP>&5L\*XR]WR\B'N.G1TPOK+K+K0V;%Z=G>M'&766MW78 M2_O;Q[LJWXO ."8418#IM#F(H*X&+U,0Y7',)<]3RJWR>?' 0?@[O+&6]MGCML'W5"8*!=(4LDW+9ZCAQNW<'973W_[:JL;M3?3)C =FNF8JU&2>-*48G,OE8SH8^_UHK'=#K)YV*UGD*: MLC"/]$H(<@ )9P#I$.U8()F%:90G&+EILOLP:VP45GE5!\ML'=NFPT^"O=K> M6_>"VK_@Q\[#0+OHN)GCJ;OMYE'#=V+/G.RY_S[.%7V6NZ)>Q>M]HNY-]MZ+ M40,+YOL$\EAJW^O3.VMU?IJSQ9/0*]V;%U+,=##(_>+6E.EIYO-\*&:;M>!3 ME*429C$%(M9I?5*M45'$.4!IF% 44Y:Y$;VS!6/C="TI61@/ I/0%_U[P$M+ MG04Z';O"CH1[!;AGOM78EL;7VV1;!W31I]*%H.G#)/AP ?PNLIW= /2GWNG8 M_M BGMW@.:'EV?%!'1;/-U\_W>XJ%555C1KEJKX)-B.K52&+,J%Z59]OJI6\ M5DI6OU\\S TA3U/$,1%I!AB%*8 BRP")< B2* Q93I(HB9CU\MNC86-CRD/3 M]0RISH]^!?7OM'SZ3[+DIA!D!I M;Z.IC^>[?;"Y**8?YVOU(;CA7+W^JUOUX]WR?O%3?7NSE&500* 6)1+ 7"2 M\#0&,DO31.])I7EN\^UM:6-LG]'2S*"R>O M52>$K+G) H,3,_^58']Y6+S\F[J[G/2K'W9S_;9G#D(E%D[5K&!S:<>0OBH[ MZ$Y^%P\EMSPOECJ(\-->#+^\?ZU^N=.'3B+U2L0Q 3B6H9J DQC@A N0 M8A%%.1*$9J%3G%\W.\9&%,UDJ\K68.M)T'!EHJM@5%/6!2R:&% M^[DB1[_M.%_4>\*ZBJ#@T313EU"!4A"R%*F5((8 0\9!BBA%>2AE2E*G26#C MX6/CN3(I85M]4N_!D)TFJ*->R1Z*EA.SCMCT/=LRL)1V>9PQG7#6US2H^>AA MYS8GG#J:L)RZIMM(+0]V[LDOL?I*"CY-8RDHDAD@-*0 9C0%F.<8",)2'N>2 M<.%46>G@^6,;KZ;DX+,RS S5ZK1XK:UU&ZJ',-J-UBO Z7L"4R)A3 NT;?Y& M[1FG/0W$;Y*PBR.(Z:6"1"KZ0=1JP;"U()!9)C'!,89CYPTB7P9 M-K9YRY&\WQM$+'OK=#NV?(NN[)E4O?=B/W'+OI'O10GRSQ*[[!O,=GW)-XM? MWNVIGZB-LGK_VOC;&3F2W9D4DSG,PB0%*-45Z!"- 4ZE (QGE#,:DRQQ6I-Z MM&ULWX7FL=;MHXX$606W9+E\U23S#S+;F-]\7*V+)SWG/BO@T_6P\?K.=CV M'+0+!SR4/%66:J7/(O?*5)T58!KFI-(;^-Y/+Z^W[(U.-+U!>OZ4TU\3[N%B M'ZJ#)Z,,8QHK#UNGG.8\RG$"X@0R1?*2 T04R4N1RC05B$%HE2K=ULC8V+JV M,]@96@4AV(>+G06TG4A]P=0S(W9 R"E<[!($G>+%SCYTL("Q2VXU(\8N7MM1 MJJDJ=%?7P=O)EM[P_]RLRKKKTQAB'&(9 Q1CM>B/$PI(Q!%(0AH1Q',JJ),Z MN56K8Z.!AFF.HDQ6&$-,($&*6=.0";W]&P*4Q!'(4Z98-B0HHM11%9'=Y+!>(?*ED6;4YK%B6 M"PQ'FEE.-U]71?IV\42+>9ERL-5"5R23,!C'().)#@*)$X YUL(X"0E1"F6$ MG8B^K;&Q\?MV*=N:8S;IUK+[3S_1IOE;O@JF*;(3]ZG!9F0@B*0,\Y!F D8" M2H*!R''.,Z[)Q"I'B6M.H'DB6KLVAR480B ),L B1+&4 A8BS,: BS MT$T@^6*;+B-A&(GDVL#@N;30.;[P LAV$S.OP/5,L*<*S"BRV +Y]0*074() M[<#Q%TIXH;VA0PGMW#\12FAY8TTM*P$NR773Z27[>XI<,* MKI)SO]6$M%0SQZT..XLA3'3* TL U&%D6,U% (S3F* P0Y1:A16WM#$VPG"J MTM"&G<7:[7I$>A[\=16&K85=LK//X..PBKL>IZ$6[D9[V;?R?++) IS=(DH8P!SB(.(,Q30,(( DPP M@DS]CF-<1PK=QMIM770?;,,2Z ML]$4CM=6FM!C8Z>_.=5%*#S-J,ZW,^A\ZJ*[A[.IRS=T%?;[NJ&S@OT^6Y#U M-$%9GDB> L4.4BN,A[D+&!WD^DXX?8507_-I TOTG7#D6)SOU$77)ME\$R]BOA'O7_]. M_G.QO-VLUFJ2MER]?]U*657J52N3%[!+MX AXWD4,R"P0 "2G ":A2E(21JE M'$&(&>^66]/5I+$103,IH_))IV$8KX*M6_J?=OIQM6==TV@Z=Z?=S&+83NJ9 MFZ[IGX'29*Y%V7MV3&>#WB@IYEH S^?"7/WD#IM4)X*H*BWF?PG^B:O&"EF0 M;5R#2R3]6U<53%.*08)R!E*:Y7L.% *>I M4/^)&((13Z,PLM[JZM/2L?'\M^-S:8?-H5[[U&(+;BP]U3/9GPH)G00[3X.F MJW4T5^VL"3-HN!M4_JH'F+Z_D^"/E;A4WGG@OG?87AS+.S#0)N4(W@6W3+]Z(LBB[XG523&K%^7/ [ MO7]__TCFWXF:P9@ DE#$H5K9I4 ?F@.8PPP0%J< "1X3+B0.L=56SG5FC&T* M4'M1D\5Z$5 1U)[H!89>6!AG@KO=H8CVIUI)..9R=.P]NU5>_WW2\\>^S^YP MCQ>Z"DU?043=C!@VLN@JH(["C:Y[6C=2_;K4P:CKUZ_J=5PK%O^H^/S95->I M\ZPD3W@NHASP/(P Y$+Q)^842")RRD(ID70J;'&QQ;%196WP)# FF^G4UNC. MN6V7@;>C/J]P]LQR5R/I3&76Z'ABK.*H]'JU31W.^'NFKL]J)O_7@-1&FY@5OMC0M=S, E(%L[H& M45[;G"70L0;]:Q& 2#+*4CKO2,:?L;$9J$KYTE;.THNI5P] MH#548.0A:KXJJEZ H+T\ZKF;!ZQU>L'^_<*EER[N,%H_%W-1!SW]3IC1/-V6 M*J]S5C[-WR^6R\7/8OYP2U0/JVNF:KT618D(08H9!% F N ,"T"27.!,2 YS MJY7<55:,;76WM7F7Q%G, UJ;';#*;@>BZ-Q!%G0[!.P]T[%V81J'G0 MMBL^-;IBZTIP.V!7.'#Z$%TR$.?WUS5NWXAK(6W]AG1^^'#?F&O]W_L&7?VP M;DO\#X*J+Y^N2:=?W%J9NNRE(M>X]XOM+C#U^7B MI>""OW_]PVCB;/7_;W2YGO+DN5Z3,1+E$"81"&$8 \A#!$B:Z9K<"',>AS ) MG?*G^S!R;,34\%$?0"YK+VN)$U,P;F'^9F1SGBM7]=EDH][IUL^_NI%:+^^! M'1F^=>_VO0&RW[%;!P/E85WDZIUV\C?]:R/^\[71M^^TK^H%^"W857'9^=O+ MN4V?'>*)SWLQ<=#O0)\@'WX_>FW+]]'WG)<58X21$SH(8VILR'[0-9]966!, MW:2^ALMU\:]RR(//1CN* Q=/ZFMW)TV1"BF6=U(KFM\M MOXOE2\'$A\43*>93F*5)G*="K6KR4*UO$ -4ESN@.2,QX3*AT"F9T:K5L2U8 M2J/UAF5MMOY9&ZX0#RK3@Q^E\8[Q67;=8$?]WL'MF<(]X>JN'.R"DR_E8*LV MAU4.=H'A2#G8Z69OY0\Z)PE4N3\IE2'-A1%@47PF& $H#BF(.4\83EE,DW"Z M7JS)S([/_)OH1'Y;0WLC?HJY'$-M3W.RF6ILSK-&%YPCF6ZK,1 MI@!"E &4D0A$69Y$$4*)3)P*9;R-&V.;7&O#@I>ZCJYZ\GI9,+T>KQ197XPO MCK(?;_."V'V=QM_M/7_!C'=5H9 F!$$# WT>T+RNPB$P0$R"$HJ@@44S7:V" M8Q*4@.@0DA*226#>-@.(1U62-^U07THF;^/$L.HG;]I11XHI;VM-Y\.,EV*E M&OE]L?Q097C4:N53FJ09YU0 &>?J XDA!S02"0ASD:9Q0BA.$\<4OK.-C>TS MMK751_)+*\HX1[F,$ 4DEC& 8:RF(6&FTY)8FG B(8>Q6SD(7S@/4PEB.*2M M#UR\H-?WX7Q=]T'-W47QHN?KDV824%V!)WBG!9R6*S([+WO?Y=#C(D;^SBS. M-S7TD<-%IT^<&%R^IVO\$S>UJ,GL*RG4U^&6/!?JRS#%B$@44PG2C(1:WBH" M-%%K&\4Q"2.QR"7/W$*83K8S-L+>F1D\*SN!FB2RTE+7<*+3L-I&!%T-5N]! M/5NSM%\^M@T415M2%.N->@/_ M*?2IIN WZFM"'L3?U,/7'\A:[-;+.80R5Y,6D$E! 90\ H0D".19'L8AQQFW MJR$Q+K?&1G25[55%&[Z8SFD - EJ MB((*H\" %&B4_F0[,EWZ??0[-$Y._0_9L>G2D8A# $"";J(QTB!C SL4"8JD\V)AE/7$[,+[0WSN-O M7AF]34\@OP):&NR:4=6.MMUWS2.&/7]P:DOK\']EZVZCH3+7XSZ#)3#>4JW: M6QLXV\K*]>.$*[O;.BXT-G0E_GNC*.[CB_K/O7K*S:]B-4T99R1+)"!A#@'$ M5%>S%2&0,(011#&A$7.:^9]N9VQ3\9V9@;$ST(8&/[2ICF&#YX"UG!=?#U?? M$]4N2+G/$]MQ\#5Q.]/*L#.I=E>/IC87+O>CT:_5B HU5YJO;ZN"=^:?ZV1Q M77FI#"!Y_29,.+3.Z?F[^I6:&.EYTYW-HYI2^3VP".ZP3>?;X, M[30XLB[NF4I/!PSN? WVG)WLE#=,^;GZ%:@\#NYU7N?A*V"QAA_\%;A.Y?^- M7H6!]%>^Z:R259FG^R@"8M+K=4=NM8G>J2GAAFDK#!7HJ]CNC6%-3!H\P3=+ M'="OKWXVL0>VS.&KB.DP/>E:$<"G"6]:$Z '+"]5!>BC26_9"'LFU9D0:N0T MXEZ5H5HXD4^E@%F,9 Z2,-2)NBC3.;H2T B%21I3&'(G?>OKS!G;%*3Q.1)D M.0>+S;K!*^^,5H".75_I\N:.1Q97=IS=DFJX[GBKZ4*#\1O.3/;2"6I_>LTC MZ(!K?SD#+L:\=7Y !^ L<@&Z/+7#\K&L\?E=C_\[J5I0;%&5BY49@A$&8U82#D5"%FO_,XV,S;&K"K'&DN#VE2'Z?=Y/"T63UY0ZIG( M3@(4_"CM=!'D/8^4PQK#"V(#+0_<7BVW&?I%'%HGU^?O'FY>?-&#O2GMY:N[ MS4:;\@';*?"4A5'.HB@'DG *($48((*Q0I)1S@4+$;4J5=G:RMB8L);YF&DK M'>-_3\,89PBG#,< BYPK&$,(D)ZKIY0G89*I[TU.W$*LKP9RJ-AJLRVPR\.UFU%=#UO/W94]=9C<-]J!-:X6 IRGMZ38&G:FVNGDX 6V_N&/% MO_KL\^M"1\ ]3SL=]A,@M+*X$?U9R\USR]!XJL.WKEFAJUT=\'9HUIV MEZ[OFN4F=$Y %0IQ,R_KX96YZW5Y(65VZ!8F&)25%CM5_79!WXY./&/:]X*U@K..C])HEJ&U MI<4]E&ER ,A;>M;E%@?.TK*&X#A9R_Y6-R+BHIA^J!;[:L;S??VT_KA<+I:W M"_54+QOY@YX =!5GBWLX^_M'LF7B<@ Q^:.L]3'#<8#I!/RO! M_O*P>/DW]:"2>=0/.\*Q?/P@7./F:DTSCG=UWDMVS#58 M^MNPZ63%T%LZUT!U8M/GJL>--$MVI]$RY7E$L\EDIB8TMT;?2^'9>/K4?_AZ:L-@7#_D0IJ<>= M]V?).VU8_C\KN?2X2P;/(#UA0D?UF$91Z$-AFIVBT)2A&,8\24!N-#)1'@(D M(0(LE3A+PSAE*)^6L<%JB;E M*9_K?WA5$Q9'T1F[WD <5 M??5%;<"0/2'T?G7/?6#W;?>/:L^?Y9-R8ELOC#1;0US,HU20$U"^E(/L&AU6 M2,@)B"-=(;>[NWTS=%%-75-3%W7\.UEOEB:"Y)MX+C]DJSOY=5G,6?%,9I_F M7\2O]?U/,7L1?U_,UX^K*9.$1E3Q5H;S",",9("BA (12PS#&.8.\4R767- M"/>9H!M=7=<9=BPV&,0]D]MA-=C*E]=J7^EN[G%7R0MFGGCN.EL&I3\OL!VR MHI^'NA_U?9RO30+30Z$K#L[77]2[.14X)[F@D9I*,S5YRPD!*!4AP)#",..I M>HESV\.]4PV,C=)*&X.=D8&VTO[<[B2(ET_JKH6F9RIR1,7I]*W-]4[G;2KU)HR,(*04SB<.\F&W6Q8L( MYHLY* M$G*@-G-O-"K5$Z;P)[Z%>[F=.PO=4S9S6<"4IORMW95=#T1^>$ M?Z@[W)_=Q&WYZC:STA+F_&,QK#1HZ6M,3@"?B.GT]>;"PB)^+*>((,T0S M1=II"F"8,T A)EK?-E'O=YPXQHMWLF)LM*U>\[3WD @%?F\!$6Z0CC@UC$(0FZU-O* M")2OIBF!<9CF L@H@6J]&BKRBW@(!"-8(,CBG%JM5YU;'AOAE7FSA;)\NQ5. M&N9>$9)@W1>6 05](-QW.( !MS0Z**W>%OWE\'3._K5'WF&1[!O/(=;"1E'MPU9;4?%_B7!E M>5-"Q_/RU@4MGZM8JW:'7ZRZP'%R3>KT )\Z8Z=$T)KKW=M'_>.G^8W1\KN3 M9V[9IDQ'TYAD.-;9S&F:8@!ER@#.8PARG(>$OWW1] J$@WDE)()J%B*H9 M.B4\ C!6'RXD.0%2).J3EB12$*O (*=6Q_;9V1H>-"W7@?!;V]U37B]C?_D\ MO1=$>V9Y"S"#'U[5/3HA=54.[.56!D^%M7;\5$:L_.C4\JTQQC;II 7::&CN[W//BM M/'<:V"?\[#1TF\\9;'">,+XY_$[]NOO'_FL=^J\KFDT32+(PB]4W75(((&4$ M$"$3D*2(JO_3RGM6QZ=G6QC;H-L*+Y16!LI,4Q31_G]55_9_2<._D4]Z="IK^?I"[NJ92V8$'SUNS+ILUYEJ(6"2?V80@8% M8FHL9SQ4 SH1"2!4C6^91SC*:$RHQ&X:66=:&MO OGEX6)I$YX"523!$_=VL MJ5REL,Y!:[=AXP6PGH=Z;6.@7^G 6&DV2HR=/J6N+D#A3>#J7#L#RUI=3(*Y<.2;JSOKJL"#7KK@#>,1C#^3H-%! MY=65+('RRA3/VOG5>["",\+]QC#8FS.&T 9G\"PC'MR?VXV)OPGM?S$KS*;M MG?PF7L1\(S3A?QS@IM22B:!67""D40$I"''BG]Q A",,4A( M1&,UDR.Q)"[\V\V,\;%NTPL]CBL_RFE,[8D.^W8AZ0GJNUHQ* $>QU0A[1ZY=.NK[_Q3U$\/*KGWKR()7D0'XJ5 M2:3_IMI2#,^4 =,DXPQ+@0$AN0!0$@'4:YWHT#*<)TQ1J)!="W-<;GYLY.FK M8H<%\'8G>"PI]&4QK^) IRE$/$ED!E(8JH6X3"# ,B0 ,8I2*1'F-*HU"N^O MK#&T:]9JL.V+"]X/1V$>RN$T$'8GJZZ O6V)'+7VW9K;<[F<8USZ+)S3:.WM M2^@* M<@(H3@G(!,#=,G&O[ 6!\TS*_6C_U4_>F(H.<(3-O6 MWR22TA&:!5"+5._ MJU97\O7^47P3RB[UZW\6Z\?'Q8P7\P=3CVM;YMP\Y$@[-)IF1*(LCU,@29(" MJ/X'(!0C$-&$A0DE+./889HVO M M2BR,P.2R0B/XN8,C6&L\U*\,(.8._4! C?H%:X#B5*YVR+>M_8,PTI=GJ +$ MC1>FUD$Q+\Q]XX7YV'QAOC=>F!J!H %!69(O^+9[8;XW7I@]>>QHM*^,4]7D MD;XZ@U5B'N*N&\%*+.7+Q MZ_\2KU.2Y'D>2@F@S/3<*2$ 01H#)%.L5J9/'SBP.*+9QPZ5E\\=V'WX@1, M,\7I>@J5(,XTQ#S-HY #'"8,P!Q% $! )+C*T/TKPAU_])VGG9O]4D,/8.HNZWATS_0GYE M;_^^SCI69:W[BJ?>B[F0.LE&1K!$$NWTH%G M6NJP+]LSE92&ZEW4N@:]LT#524CC+,($$PDP%URM!84.J;AZZ92)]40O>%=9>5[/L8MZ M5QL._K2Z3K8RM#)7FZLG=+A:+^^SOMT_EXKA[Z1<36%(=$2G6D:*2%?G2(B: MQ0D)UT^85:+@=5'Y/MFJR]9Y P_E>)05[ZZK^] 3] MF_S68H*]=8*%DF!_;?=8C6NG93A[U3FY^E_+ZZ8P84(F4H*,"RU&%'- .0]! MR%@H(@Q)@IS.B:ZT9VR?HEVMIJ*RLZZXU0AD\U/QX-J>M-YS&*I_^M^;Z%YY MJ^EA4+M8W3]PU:W+8 ]9/?23+N2*C MU5>QK(_R"S9E*D87\QF9%G^JW'!<6;FW#MN.P%]8#[4JOY,ZEAMOT["+R&?!,:' M0;+&6M'K/VWL=/-CR1MK!<9H*G'*42Q&FF M#Z&H!#@E"<@A0C+)L0A3UU"BX.J9EPZ2 M\(VA8"&!,K6N&DJDZC+%6VSSM"E7\,UZDOUDZ)\!K(?L_,.6WBPS_XS+;5GY MYV[ID(7J<^/NZU(\DX)7)_"K*>$X1(IP0!@*!F"F?B(XQ@!%L:*G#.51;J41 MU[>A8V.QRKPZT,:2P7KOSG;Z&U,G] M*\(6F%Y5RR#"7[:A$VRQTBJ!CV0=/"\7+^KB0"O++9[4*HJ6048K4^=MH]4X M]5Q9?-$Q7+.UEIQ\P?:K7$:1Z&.4LE!Q%*U+HB8@A03/5.; XSDG#$,JL* M6Q=;&MOWN#14\\>B-C585;:ZK2[.@VNWMO "6<]?QQU:6RNW:JO^%@T7D?"T M9#C?SJ +AHON'BX7+M_04;B?S'0&MM%2_2+6?Q>ZF2F+1(1@3@$,80Y@##&@ M/!0 (2019 PES&G+X60K8Z.%6D]8S0+8XQ-9_I>CJOY)).UXX&I\>N: &IKW M-33!C])&CZW&W$E_6L%T_/2_&H)AC%BRB/ M=G0PL=&BOR>_ONI]H<5\_W#X*S'RE123A.6< 1J)!$"!,H#3, <$,AQE693@ M)'/AABOM&1N+E#7?6=.?.MGFW4RYY'@"4% ]4L.H)I@,)$NS9'4WWH M" :7$D/'-W=CJ(__O2G6KS=TM5X2MIXF@D)"(0>(Z2*/.9& )@D#*X4=K/_^+%Q3FE=\*.VSS$B[P [._[HCDC/1&$/AC,9G/;9TZ@_>/B@P_NT M8X?C^,Q5'==U]<[0J3H2WX2.U:M_>2^63]&4AK%,$(5 XHSHN!*F%G(L @G. M:!1%68JYT^S"U8"Q#?K=]F:7BC7.\%NNS'H$M>^EV!;/K)S;)3Y\1?3L;#[I^X+U?GE$?E3J6- 5JOB M85X>T.M_U^NU,I9O=ZK^KG:]8X2R[Q?"CIU'T,T]D_A56ML MP]B^(WNE7%GEA*FA$;#*#==:NN[]8D?Y/:,]T$&N ?IV#^C: ZUL6_D0U$[H MPQ*?%70[0^BM?*Z[!0/7SNT,T7'AW.Z/OJ[\/5SL#705"S[QB MZ;^3>OY)7SNIYN\_:3"U_),.-%7R3U_@79%:37.V>]$H3WB,U,HV)E$"8 13 M@!.&0,YQR*A$:4R<%KIVS8YMN%9"RS,CM%SLA);+5>E?O>E4-Y&WFU[XQ[/G MD7])LUI'6_1Q=. &5/\2ULU&QR)D?0((!SGK4W=WR$B[^54\_4TLU/NS+LCL M\^?;*C*2APEC.=:%.; $*:Q7A!% #.(\TQDB(56<61MC8R-=[29P<[.2: L M=<@V.@=E.[7X JCO*<0);"Z'F3J\;_;I5![ &BH5RN6%\LZE:[M-R-0ZJI3I-44PY&+YDRQYF;HV)1)SGHD09&DJ <0A!3CB M%&2($";CG)+$:EUDT=;8*%"+^+!2OI@UC'6;35G X6D*U=;2H/,F"YKR9<_V'#@IY(3.=VW.S MK@OHF-"N*4T)ES%,@- Z:5#*'*BE7 K2)*2I5*22,:>,/:M6QT8@VEISFL3T M#V)GMQN%V"%N1R;><>R95K80FA\:)D]T=O.V:),QVQ_'.*'DB6WLVAR4=YQ@ M.&0@MYN[<5%5[6YUOZ@.T>JC-U$&QAL;JN.U:2I2E@N9 1FF.8 ASP%64QE M\QPBF-$,1ZE;A0R7YJW&U*#E,E=DZS*0R+]A9OLW[,3U4F^^/W;J YHGDG)H>E.NZ@')( M>9V>T4,([8=B9>IS?%,L\E6H=U:M-7*"4*+E:M7B30"8$09H&H6F!$:<*08, M.?860GO"@+'-S7H,H3T%OQV=]0EJSY1V.82VMC_0#DR"RH6!@FA;P!LBB/94 M\^,)HFT!QRF(MNTY7<6X%1>(U?JKFJ;H6,<0YV%(8@Y2738;IB("F&0<8(1X MCD,HF-MNU,'SQT92^U.THC+657-['T([)KH"F)Z)IK8LT*8U(X!NR7.Q)K,R MU+.Z:-)0@KEAZ^+%Q-3YU.$^"9,W^>W]IP^LNGW2M6.Q[=.7==Q<,GM6OQ.F MHQ]K,>C@7\EELW?D'M>\=FB^?7+9X?=WB6-@>?V_!TWZ>Q1\C7]HQ% MB\/NRMA#<+09XW#K]4KX%EFT(D\X2[(4Y(1! )',U+(EH8#D@L28AT@B)S4J MM^;'1E![>OE7*.5[2U_N#\Z>J>E 3W_@U.5NL/6@JC^VM.5NP+1I[_>>LMQL MK$Y!>_VBW"W+8GY?D[6IRW8GRRL+,ONZ*,^"/OY::VDJ.E,WKM93CD0.3<)MO[I4Z&MAT'M M8O!CYV2@O704@?'7[^Y4.UAO#LO"'CKRXWSS5"6J^PU&]XM]#U1^G5UOQO)> MX&S[ /AIH-NWP1CPN)CQ3T^Z&(%IFAH4#5O=Z+<-6CM"]018SQ2YPZII9@_ZS!9P>&*MMI8& MY2$+EP^9Q>:6;ESQ04BAV$GGYS:4#*9QGD ":0SRE.8 ,@X!(3D%62XCF&*! M8A[6 5CWBS69V;'%Z=8ZQ%OMVNQO#.C('EX9'*S)KV!6<[H;9YR!F.8HI2*! M($2Q %"2$& B.&!I&D-+LMMOVO#?JT.+7^KWRY;^F$I*(A7$&*,X8@#DC@&0)!B(B)*8R210U M6VV?;8]M7P1*_W; MY[9#3E]5[GSBW9J)ZJ6AX=)6?>*RE^/J]<'=%C '.^UU1:L/Q6RC_M64TE[= M;=:KM7KCBOG#-$M%$LJ8@S#EL5K9, PP3QE(PRB6293%-$ZGZEET83OQ=K3 M94 W[>AQJEE:&KPKYL'*F.N8+>+:!RC.40P1!TAH 2<$,2!,1H G+(91)%"" MD^G:?EG98P^L!UAHUOC_K(\#274<6'9&L-B9/EP?V2VC>D2^YXG(T=GKKB)A M:7;0L'L25![Y6WAU1,[3BLRU]4&7:AVA.5S#=7U,QW#8Q6K]H5@*ME9LL5A. M4Y9GC# .N>RZ MVH5/Q5K/6*/[8AFY9W&Y! M9\6#63BZYM<=H&1NZWU5YGFOUS?@<^>R^_53W^313 "D- 144JP^R1F**8D2@KCU=JE%@V,;V=LY M+CB=V>FP=68#M\5NIF<0AUXC[*'G7,C+&DB'+4;/@ ZT@W@]L&X;@PXHM>[[ MV3QGN&T]!Z_V=NU<[KM2\N#CKV?,Z)+:-(@H8RKU5^WF?,>(LC/=H(=M_C']*TCP9O& M!U5!,M_RF)U0ZS.&^VS;;Q^G?0D6JUCLBP_Q)&UW]C!TFM)$1BS!@*6AEN@E M"< P57.@E& N8 ICPJ\4MCO;> H\MT: P'YDP)6J=><[PH[7 M/(/[=HIU!SG1D_U@FQ[UZBX"UI=:W?F&WU:K[B(@%Y7J+C^A&XW=<&YR4Q"(2",J)_B.$4PB;($)2X+M];6QK9XVQEK MI(S IWDM8>1&4.T0VW&2-^!ZIJ%#S(HM9CVDD5B!XHEJVML:E%VLW#XD%+N; MW(NT?:CV#F_F\PV9?1//B^5Z*D66"HDXP#0. 8SR!) ,Y2#*),M(3J,(4]M: M;:<:&!M3U#8&I9%!::5]Z;:3(+83@P]H>N8"1U2<"KJUN=ZIKMO)!PY6WJW- MG6:5M];KKLX%*VLUJ1_J?ZMV@KZ)E5B^B)6:=MPPME0MKVYFL\5/O=;Z?;'\ ML-C0M=S,U.],D>XI3L(LDX2"6$H"8*)K"R2(@#Q/XYCBB*DWIV.2DR<3QT8@ M6UN-CB2OK U(96[G%"E?/6HW27G;?NJ;S9JI6<:]B?EQ^^^5A[JBN?'1K+8J M)R=![9&N=RZ*%QT,K?YQK]LK_;O/BY5' FX_BMADG%"813%($-(BS#$$M"$9R"-699+3M(4.4GN=(!IB"]9=X L5\+. M;O>]Y&WWV'U5N^>@K^5K^=!AUZE[CAPM2/=_VR$8[/:FVD*)TH@QK6,5R30# M$,<9(&$<@Q 3GH24I1&QBKK>>^K8!M;MS>=/O]]]^_+IQB'N: M1^]CJ['C/ M0VOGE?^P$3=2#?K_$&3Y>_&B!8U9)#%B0&8Q M!S!,(H!CF@.6A0ASB"(IKI?3.]?ZV)CJ_E$L!=$6>HA1. NYW6RA-R![9K[S M,0KK14!%55O!@!QH\P-M?\]!"I=@ZS-(X6S;;Q^D< D6JR"%BP]QWYF_7;R( MY2X$DX82I6D"PD2H11J1$2"21@"A#"N&HA%.K$[RCIX\-O8QQCE':1\#=GG[ MO3,,?<^:;!%PVG$_Z6VGK?;])PVVQW[2@>;F^ND+NDT?OF_H2OSW1DLAO)AS M_)V:3YC)3&KQ+YXE^FR, *) (+G41QGJ M4;N9@!><>AZY1Q %/VPT;YP_[Q>Q\/0I/]_.H)_MB^X>?J(OW]!1HW5!YJLO MB[58W2\)%S=S;G+C=D<"JP];=9W=^YUA%.(($2!SC!1MY!A0E&5 )DQ(0F,9 MY4Z:@9VL&!N;O"]F,RV:,>?!'W-:_J7A@:/ :Z=^L>.=WM'NF9.,_5HD>ZUE M"(T/!O4R8[;A1K#SHR?:N@I*7X*RG6P85FKV&IB.1&BO>EC7F,3_W*S6=?SC MZ< EH^1!U1**WRZ>]-F7V7W[)LKBU^*[6+X43!>Y+!9<&;MXF)NGF*+F4XIE MFJ1J"81(% '($@D4CPI ,&$(<0*%A&YAC?T:/#;R_;Y6G0R,,P%K>.,:%]ES M-UL>*(VH\_H^JOKZZ792*AV!]Z;WJGV'X&:Y5!>*4H3QTYPM324:$Y6P6*V# MAD\^PS>' =Y;!&C/Y@X<1#H,^,=QJ .UV_'3\[18KHM_F0:W%1OF#WH0K*8R M#2D),PXDTQ(Q+ D!%1$#<9H(QHD@E+I]-EH:&QOE-VW5ITY\*O;]8]@.Z#ANY3#=UM*W3NI&J!B2]";&MJ6#*SQG]\^73_\4/P_?[F_N/WZP?LL8\MF^G5Q>6H MK/ZR&Y"-1PTR[(Y-KP?7B=]T^P[7NHWO-ZMB+E9:C:#,@^-3CJ,LYC(!E,8Z MV@>'@.10+=XH"B/U$>8T=\I).]_4V(;<3JR4;FT-2&6LV]>W!5^[;Z\?U'H> MLCO =F;6V;$>55TO8^'IB]O2T*#?V\L.'WYM+>ZX0L:Q4:UC5WEM&B.1\Y12 M-3_70G \2P%*+VE\/YP M2Z&QZ_7^=7=)M2EV\Y,L39[]^O73?+5>FB#/E3'Q_I',[YZ-;NH_Q$K-@S_- MR^V( Y6UOZGGKS^H&?+OI%B6FY(2P227F .)4 B@D)EBI0R#A,1Y%JJI#7;3 MF1V-9V,CP=)\HYW/%[,96:Z"9S7,C8Z^HXS^:#"VC748B[TC(OGFKG<3E>;6 M=T!?3^^.:VPF08E.T("G.@5=*X"""J%)4+UXZKTK43I1\MT@%6BH HU58,#R M&-\QMO[W%4\R&K^&C5\9C=OGXF5&9V#7&LIJ92*V0HAG0W2G(0Y1B'$"2,SU MTH)+0#A+0 ZSD!*42:A##VA;T[[,(LQM4WBHR6S8[<'EF-S".:S4[WM^-H+Z)%S'?B&_B MB11SU8ZB1;E8/NF#I+MM*8=IFD*)!,- ,+6Z@!F$@-),UQQ.XBCC3*(XT0]VE.4=W9[YJK)7ZUS4R#9,#G8V M3[QKISI!Y8FO[-H;/2G!3_,\XCPG"1 RQP#JG[ .GM<.M'8L!D]6C_G^] MJ?U"9GHL?1.K];)@:\'U+V[F?/\?&E>6&]QUYL4'4?ZI_C[;<#./8X]Z,UV7 MZ_HHI6#KJ20$1K$( 45ZEP=#H>9:G ,4$IRE4&8L)BY+JF'-']MZ[8M8!T6= M]_*.5P[\ID_QF'+5I#R:'\3.:<=BQ\.^'G:D.]Y.[YF_M2N30/\W:'ADQ%LK M9X/R$MWQ!_^X?T>)PBYIZET-Q&\FDZK$(JC!*&L=EG!X+ [])MWHJ_;TL,8/ M6]KZ33KFJ'+VVUC1,?1;K+4%7Y>+EX(+_OY5K0Y4\]L,C1NV+EY,=-A6JR?G M$H8BA A(@&,H?HIRBE ,&(9S),T)$Z:*NXFC&U>;VA*SA8_5X%^*1L[$&1K MNV,IR@[]8O<-ZA?MGK\C>MY@P*[-US%$[[0':NKP6[!U(MAYT4MUR^X@^HI- M=S=@V)CUS@ =Q;)W?U(W1BRC9'1HS6*N&/G#0A_=3&5,LQ#2%'"1:S4I2@&. M80IH&D4,4QKAR"D/YF0K8^.U*@1O:V7PH[334N:M'5$[NKH:IYX9R1TB9[)I MA< 3GYQN8U#*:'7SD!7:+_8H0GM;)6#D..-8Q@Q$B&( (R$ T@7:LI!APD/& M<.2M4NZM0\[&\(5Q*Y,]J,W>.B6W7 W56VO)WOI.<;%!I$^9V-NW2'.Q<=I* M!/;PG@Z:^.:!:LP]J17=AZKLK5Z9W>LM_MV.? RC)(&) %('8<",(5VR(P=1 MS*2@H201LDJ-S4.@O.6X+>32T^0 M]LPQ;0@&/XS9@!F1I8!WYTTJ9=7%P,HPPK6-?QU MP>M@J>'?S+E.@MZ&W>@K9/5-,#>N?!4.<$.VM:R Y:.&*SK@YMM>28+_K[FK M^W435^+O^U?P=KM2?048?_"R4MO=7O6JVA[U]JT/D;_HR3:!(R!M\]]?FX1\ MG4!L8CA(NVV48L_,C_!C/&//. X=F/ VA3BT@(_Z%JW^NRF7E5P*\WO<-\$@ MB.O_F 89=I=S* *4E-VIMKX(F*22B=DMW]\F9']TV[#//3-[_A5?#/B<:. M&>\;0%MFN_W!-W:F^X![E#1![YT7#7N3MS52WA5KKMTT\R2_ M*_)J*1L'KLB_E"RO]FT?]^6T&KELJLMIYV*1LA!%$$&0Q5 _ MKT1E@,8L!DCJSY1#%2=.K7@]ZC:WI_W,CJ ^&F*<;%&LU_K;RA2^=7,7?-Y- M.]?BA>[1R$S46A6NTQ@B[F[#?E+_ICD.OZ!4R#!4"T$>^"PW\_\&>2 M7JJQ=Y?)/1VZ.X<,I0=>'\MD?-2D]:%6ZVH1"19F.!* (QAI:L#ZDXR%J3C+ M%4404>1TU+M#SMQ\M5T)Y8.>P5>C:="HZK@3H M86Y:X&Z[1&6( 4@/HH1<' M;]1P7VNPU!<=1^JKMCQ_.C83XR^S\K/'>LB+S3/3A1_G70J._OK3 (-4_O"C?9 MD[Y!!L%R^5X9-HE[%^&_\OJX,^5P>,ZD'#;5 D_$DW4OMC'OM)FQU?4#S[D:;?-Z%R'[O*R^?]'S[+=0IPQEB&040,RE MR0\2P&&6 IF%/(XE9:%R.HG3(VMNI'"F:F!T#8RR W>H]X%LY[-X@FYD;AB, MFOL9R=MX^#K0V"-IVM.'MTU^=E308LC0S>R_E'PHET)I&4V>=+]A)J,X2G#3 MB%,RD*21!#S&(:!4"IK +(J)4XZR2]#<"*/1$VSR91T\&6T#L5?7\6!Y)[!V M/.$#KI%)8H=4HV/0*CG"UJ-;2'C;N=XA9N)=Z_W&/M^Q?N-ZGWFOA])L5ZVW M#_IG4+_)F^3;DPF@+5A(]8@4 HX(! DB"6"0QD"E24JU\Z&P\I(+Z]1@?OFQ M/]53J<1R7\TTEZ:BZ>T*6%[NQCVYM/L0?NG\6JN]_F3T;W _6#!VWNTF=*/F MXKJESR _=Q,:NYS=[6D&[*8TQ*D787J6LTT&?[$R_[2I_RYRX70XCN,=UHE.X_B UVWSK!-2O3MJ M[6::;INMDV5G>V_=1GH*>+W=OE6Y>%RS\ON;7\M*KV C%2(> <$$ 0D4$*2$ M0@ 315B8L10EZJZHUX7 &1+V91#GH&_PU6A\;_3K$O&!(; [<)P^#F8-X?VA ML Y'R(U9L&V]4"QY((F@E "&%ZO:N(J6K% M09@(C,,L0IPX'=N[+F9NA'),4Y?' K75H *U';C:$@CEFU1D?_ MW8VO8^"YL_&%D!?I:GS=T*Z.QAU7WQ<-^Y"+8JW.EZ0+&2*J_V> T"@#B6(I M8"G3_D;$(T43G#*$#P5?[.N^]LD<$.SZ,EES#=D&9VKVZ]#B>#LLX'45<+?H MUF#\7CJ4]9^RJ#SRA0T>GN-35T6]2#"JS^BNR%/OF$%AIO5Z63>O2I;+PP)) MZ&F/1:\_%ZO5^Z(T31@74&$4(D( 5C$&249#0*'F&91)122-0Z2L=B@.DCXW MU^-$_R:H>V;!69%W8T2PM\*EHHGS_;&*38V'^N@KG]D![A2]&@_XR0)9?F^ M:U!K&( WXEN.DTX9ZAIF[T74:^ DP]S2A[*0&U%_R)M.<>;7^/%P4";$4&98 M"I.NH"9=@0"E, 8DHB$.0\DE$RX+U!Y9?OK!?JFKK;"QTQ%70.T2#?$$X5 M 6)EN36IPQ]LM3'MB=NZPIRMFC+!U:-2=2!-(5#]+\6A3WQE>N9MFK2"N0U/ M;-MD:O5*PGP^W)[*'#O3/+P]?-O]=]L+\8,^[FL'Q_52NY: M&*GUTZK8*CW,[,S<-:\/ZB*H5/EC*?37I1)J^4/M+]?JKU\;"?L&;*HY$/>O M*M!K'/%HOFE.E[>6'F=__^'=F[U^3=,_L]M]R3<[<[4\;L@'NJ2R^E6Q=_3MH6@+IX?JMLE)Z^6NF$?L3D4T&<=[SL)P3@,'A]ZN;T1^*%9+L3TI@ X9@3Q* (\%!DG" M8I!2& %*!.08(PJYTT816\&S>Z/N];;]0CA^DZS[>H+]L% ^^ M[O\>I=VQ*VK^0GEV8J>.ZSF!<27(YS9^&%LUI'. MC#$>CK;&L9>CA_MD1WW3HC\R*3;&!.?P[\P)7AF#?G\=F':0VHLS>VS&Z/+H M#TY/;.E!H4EYU!^ EPSK<>9AW&NB-I^R=WHYM:P7*HJQ()*!"&$%$IH2P+)( MFFX?$N,$Q8P[L>CIY'/CPY-J1^V"U8T-SY"SX[6A>(S,4!_U@@\T79B:8*EF MHIV*_ACHFN&>N.1LZDE9X9I1E\_WU6L&GB?:5+5FAO*SB5J9L,+C\JG:UVS@ M*DZD]H! %%/]N,8QU^Y/BD&68981F< XXDY'B;IES>TY;E7=1?-:71T/#O5 MBPF/,\8)P)@(O4).*6!AK ""&$8T9$C1R*T,IB=PIREZ.3:\=L3I";*1>?2 MU9F:(Y0#8Q6W8K2-K_L ZI'?__BM_4;_P?62[X_?_@]02P,$% @ T'E76-1[ M59>TK $+\' !4 !N=F5E+3(P,C,Q,C,P7W!R92YX;6S27'S!?C&?3?_L3^S/]TR\PC;,TGG[] MMS_]]N4=L7_Z[__^W_[;O_X_A/S/5Y\__/)F%J\N8;K\Y?4<_!+2+[^/E]]^ M67Z#7_X^F_]C_,/_\FGBEWDVOR3DW[L_>SW[?CT??_VV_(53+F\^=O/;^;_0 M;&W67I LA2/2)4LL2$^RS\"RHDE,J<6("HT0JFHD-5!/\(^TL M$]* Z1XZ&4__\2_E/\$OX!=D;[KHOOVW/WU;+K__RZ^__O[[[W_^(\PG?Y[- MO_[**16_WGSZ3^N/__'H\[^+[M/,.?=K]]O;CR[&3WT0'\M^_9]_^W 1O\&E M)^/I8NFGL;Q@,?Z71??##[/HEYW4GZ7KEZV?*-^1FX^1\B/".!'LSW\LTI_^ M_;_]\LM*'//9!#Y#_J7\^]OG]_=>.?VA_AQGE[^6W_WZ>H980"J[OUI>?X=_ M^]-B?/E] C<_^S:'_&]_FOZ \C8N&!>TO.O_7?WAKW>O_#Z'!>*D8_$#_F#] M]^4M+WH]_+&$:8(5-S1VHE] _//7V8]?\<&_%@F4 M+SI1=&)X]+J52 ZC^V:M?<'/CH+DS"6JB&(\$)FR)TXC[0X2=TE0Q;0^BNS- MM]VG>E.59_/XRVR>8([&XN9U?AX?J?4^3->?^/6[G^.#2/PVGJ2;O\[SV64- M72UG%22W4@N2^Z=?D.L,\SFD#RNM;&6NXVR))A2Z3];0^-ET>N4GG^'[;+X< M96,]M8$3IK1">V5&;*4R.(0H*+1#)Q)C'"F34HD6!-O!)1AIIRU-4J(_+'"S,Y")YVC@(E"7#>,)E*T C)U$[(43VSI.ZLFY"=A\ M\7^\3RB^<1ZODE1K2YBT=3*7 #J%2"1';BSEF4!@:!IS=@Y$!?U>4'&M M0Z6&;)L R5E*J(+%^I\/XRFPD;:94<\4FL6$3%A@R(3*!?B@LM<<-](* 'GB MU?NEK&CKZ#A6J(TB@X^L@""-4B@69XAD7I# /"#QD- M9S/K"+4E9+S&+\_G7V:_3U$HS@FI$M'>.2)5+&9/>)(3_I?ASJDYK8>+NQ?O MAXJ&,YPU!-H2)CJOZ7S^:3[[,9Y&&(F0#'->DY@XQMQ&,!*$3.@TI<"$T$%8 M50\8#]Z^'SH:SGE6$VU+$/DT6RS]Y/\??^^\ZL",D3P'PJ7DY> 8O6KTIPGG M)D&P,0M:<4>Y]^[]X-%P_K.26(?.BQ<>YN [NBUD!UPD0CT'(H/EQ ICB U9 M.QJB8FG[[-IC?).20TL! HX4F@"T2C)U8F M($(Q1]$UDE(>E]Y\^,;]5-]P?O,H$0ZL_@N(5W.$+N/ARW@Y@1$WP#G'J)EI M3XG,$:T5AM'X54K2"9^5D$>I_^$;]U-_PXG-HT0XL/J_S'VI3+NXO@RSR4A9 M522@B(E1XTXE,4(V"&-0PCEKO(GL.(M_[W7[*;[A3.7APFMDT;_](W[STZ_0 MI>)!,\:\3D2)B&$.I$0"*$M,-M0;#R)%5F7A;[YU/PPTG((\6I1-A -_A\GD M/Z88[%Z 7^ ^EMXO%E>XD46T5AZ"(Y2SB'Z,XR0P&HB/CD;#F4[\.$SL?/U^ M)5/-9R!K"+<)E/SG;'*%"IAW1[GSQ4AKZVAVBDB.OJVT,I 072+HW8)CV=*H MH (Z'KQV/U0TGWT\1IA-H&%=\;,JZ"C;("KA:C'R5@=4(BWGN()(;QEQH9SR M>RTT$]F%([>176_?#QO-YR KB+8)B+R?XM-0'.,?\,8O_9JM$?>*98^N<>:" M$RD4AD<^44(5C8(91K6HD8A\^NW[0:3Y1&0%T38!D<[ZO?9+^#J;7R/YT5N! M5J\(!^,EKXFSKI2%H7DT#I)6-_+[^]GEU^]]/KD:+<0="1L"#*^4JYJV9+O8^!8"6/E(8:51!/OGP_ M7#29B^[OW0T?#V'JQO%R^G<]G\]>*8220%@[8P! ZYSGV_[33L!Y:&,YZ5Q=S$CG/Q#2:3&WL(#)(2 MY5Z"3QAB&8W4!R=)XIXZP*U45JG'W'SG?J!H. 5ZI!B; ,&GJS 9QW>3F5^. MLO,>P#OBT3LBTMI(G(J61">H#UHD?J2A>/3*_>X#-I_H/%2(32 H7M9*LUG M\1\7WU!LB_.K9>DQ4$YX1MD;:T+"_8^F(A=.B2]1MK6,.YJT\_JX0]'G:=@/ M(\VG/:N)N1&'8W%W40'2J^O/A1*81O@"?RQ?X8?_,4HJ"0W(A7$.5X)TE@1; M;KP8A:)*3G)]W*'JWJ3L!Z&&LZ/]"+T-\X-LS?WD_33!'_\!UZ,D9$Y6&V)$ M2>1A/(9N5,R$@3)2)>VIJF)Q[K]V/X0TGQP]1IB-V)6[B]3O\">+D3%&.^44 M ::1!72PB%5,$R5RH-GKI%RL%+W<>_%^B&@X.UI#H$UA8M5T8<5$3)Y);=#" MI8#!%B^7ZSURDKA#WRLGG8]L5[#UU?OAHN%L:1VA#HR,,^0@=5R4T-N!%< 5 M([R[J%!LG:4RD^BSP9]D&^UQ-N+>Z_9#0,-YT<.%5TWK__KK(^%]P!\L M2^&]GY8^<=UC[I.Z7\NQ1\\XMOO8;J*.;$16Z!\]?,,M*#+5GM&0<EM!/>!5!9/2>/G6\X:MFN\JWOQO/+]VEDG1'&*DH"LQ*-3J(%>1[I MM1:X839I?MRRW7S=,)W(ZBGKW@H^6(Y#V^T5X5VQ8!9(LTB.6- >MQM:3N>4 M(BQ+XX%:#O*X*JJ-EPW3A*Q7Y;]8AFVH_L.Z6>5(&.#9,470KXA$NNP)1BJ1 M"%#>0I9)P7'I@0[AK\\_7IQ_>/_F[,O;-Z_./IQ]?/WV MXJ]OWWZY.&0SW_ZPHWN*[D?FD=O[U8)\]?[[J+MJ6;RT\_QN//73.$9O?;9J M)G4+()TX6OIRL0Z]."(M>G VBD!BMD)8H9SSNPZ LU^$3LOKEZY6$DR6BYN? MW"VIE]!UJ)VX>,M$2H)%ZR/NAX*B4^0Q. (A"<.@*:.@ M(-!=AUF'8^8!(<-"YQC-/@F28\3< %9>^\6WLVDJ_[S]/U?C'WY2LNIGR]=^ M/K\>3[_^IY]O9M!/(W\?+;Z^O%LO9)9AHCH+N9J&2X/)!X'[,GB5F?);5"PJXTW]&.^#"MI'O9K;ZYFJ83MA]6KVF<-" T3Q'>?ARY_4IOD?9JVP\8.#N M<(5+P1()4F3"96:.Q^!EWC6YY1!0[R1HF)[<_>&QGO0;@-)[5,7TZQBCGY6@ MT$U]^T><7)52T[_,9NGW\60RT@"99B8(2,O*G6I!G!>"J!"M!<^2M+7S8_O0 M-4P3[_Z 55T7#>#KENX@?>3H91"3*!3G@Q,7I2'<:>VM,\:FVAAZ$4ZJWQWI M#R<'R;0!+&Q$*Q]GT[CV2J-"I]0P3@QWI0V@*1=B.%G<#F%G1/W(.'-<02/ 1Y4!-()YJ2T0T661=ZMAW73D[/# < MJ(UWWR'ABP3:0"SX8>S#>#)>CF&!OGMW,^;;;(+"7Y1H8'E]=VK%>+F@;V81/HO1\,]Z*B!BS0!E\/UR&:RL0\<,)C M"1L-#\09K8G5'I003DM;^X1F.S7#'OCUH_WM$#M&%0V ZN;PZ9._+B=/MYV) M8M*T=$?W#$J3LZB(8UD0S:R+020,)ZOG/Y^DI!DP':7G+2=^1PB]#>C,K_"M MCV0TTDJ9)+@@&)&7:SZP] %43? (:> M.J6\X>IZQ --3"=%-,\H(J7*P.)8^BU&RZWTFL?:/M1.@H8](^X)2_54T "> MNE#SB65A4#K"EWZ=KDP[ENA4>H]?V0C6.)&5@=HEIUM(&?8HN"<,U1![ ^BY M:<3V>G89,#0I2BFK8SS]BLS@5XMQ@OFZ_'J]0&Z/-*W/3AI'(K.E@P;5Q'E< M+#F&&+P'+UUM#_QP:H<]7>X)@R=27@,P_3";?OT"\\LW$)9=)>+W<4EOE$.@ M\S 9?^V8O%V#H())VD?"*"_3-PU&/$I84BH494R""58]-GP)@<.>$O<$QOY4 MU +^'AMZI[W.A@))EJ&U-XD31QTE(2EODLD@5>VCW@.WUM[.=_M"TG'";B!E M>H!AWC@F$(YFR50B096;WCI)8K,"XFU4R: 44O6$^U$$-Q-O]I?].IU"&S!V M#UW;#4YXX(IY+0E$RLKX44F"R)XHSF+R %G+75U_:@05+\3=*6+3_G!7214- M@&H_]V DRW*0*")NRQWY4!KT4:!$8S">*,V>F]J5\OM1UDP0VV.*O[Z*&@#> MF_5K2TNV2_CB_]A<3H 2"U(8E3)A.J+$&-,D<.D("*>DIUKGZI?(GB&IF5BU M/ZC55$H#&-N@?L0TFMZ0&/%"!B2=>XQL#"X/B(8*R:T7/9Z"-Q-:GN0D\D7" M;B N*,U%Q\NN0V0QL#<>9"RLB!0]0V:(*M.9)<4XQSF?B0CH(Z8HXN[VWX=E M_K>2TTQ@V1^.:BFC ?NS0T+H'2J=C",FET#<)DL"ZR:YX69M0#&Q:]'4NK.]XZ*JZ+L\>)>X&$+/1.WM%?T8S:AD VDV&9A1BN?7F#-'>9BLH MSZYZCO0A#4-7_O6"E:,$W0!0SE+JBA_]Y),?8Q"P#C5'+D@&&C1QC*-,8@1B MLY!$9&L,0Q]/5&^3M(6487-+/<&FAMA;0,_=Q<(N/U:&>LSA&TP7XQ^PBB@_ MS!8ECCS/&%J. MU=0 "C_#TH^GD-[Z^10#A\6]ZZYY',5L]3-6QVJ2>L559& _!Z+*B10_HAQ5R:2E@BG=$DX%HA4BOAI,L01.US MP<=4#)M@Z@D^1PJ[@GE$'KJI!VY,<[XC+N]MZA9?4B X=<&3S/ MT33LW=!3YRJ/5TLUF)V@(^RG3@??8#F.?K*XS\&1_6$?/+JW;K&[6#AE[UA! M64J<48(@Y @1B38)@B:>V^2E$D&+VD'T*7K'WL]WH+#/Y]UK4Q?1?H)Y-WYK MY"5%TZT#\<;G&^; 957]8L5^E V=A*J,G-WIJ"KJ:<"KNL_5 M:L#;V=7RVVP^_B]((Y,YAKN6DZ13Z0Y7-GV1$W'1.8;!,* T>P7;0XJ&SEZ= M%&1'J:-1<+U?+*Z0$TFML;YTC/=*H@\1) K)E"LFU#K*=;"QM@W?3LW0N:T! M0'6 &AH%U.8X2F>RR=8ZDF7IN,M<)CYY7"Z.6R$C^H^Q=KKT&9*&3F0- *U# M%=( OC:.$;9N\(JY !KE$XQ &\Q+LXK,&+'< *=.:)GKMZY]EJRADU@]XZRV M8MK"VJ-]/DC!(XU C"U!<$@H)0V<4&V"E,"HS+4[V.X@9^@,U^FP=90B6L34 M>IL'+J(LC95LBI[(S#CQ5EHBP+(094K1U-X7MY R;!G5Z;%T@ ):Q-'FGIYH MUDI80;A6R MD01SWBOAHN3#*A2AJ7R8\>LQZ;R54IT?4H:IH?'S6Q1?\[]_> M?OQR57-9.K! M+%9*KJZ.F&\1>PM/BFZ3TMPB=M!3EXRCSP36$\@TL2AL3KJV1[N%E../H'_ M] K>X3)]JJ4%OG75P+3TG"O*/5Q3 I$+\BA]\W&P^"D#+U;) 0LBA MC 3RQ#$(I<43XR%KEWQ]'^P>"<,:I'JZ?>1N'2[H 7'236LMM)_GBZM0[E]? M3=!)7%[ _,#0]H5"&(TF@PHV45VI%LA1,Q4L>\VPL0#Y\\ M[&%*/R@X2GH-;!]/264DC=\D1OJX@V)I8?33'4W0,>T+2 MVT9RM,@;J*'[RWRV6'R:S_)X.1(VN6 M$*FB(#*K3(+7AB#JI8XR03:U:RTW M7C_L\49O(#E4P U@XU8:ZP%P&[-Z,[ 4+$5'2?!RYJ>)+86BW$7TGT1BKOKM M@JW$#+L9]1'5U)'[T.Y(YUR?3=-GZ$K2U[S<#ICITIVO/$;]Y8X$_FHU&8OY M(*&2GJ?G50)#;@^?X$I"FY2 MAJRER_%T7(2V'/^ -;8L^0-&P8 M51=G?6BA 5#=G[IVPP0RP'WDB7 M9=G!,1Z,NC1+UMEHX:A6M8LEGR1DV$VO M'P =+_$&8+-KZJ-."GRRB21J/)$T16*UIH1[8#$X+FGUDH]CQW;V%I3U Z%: MTF\ 2(\$- ++14Q,DN221@.* 8@K(^.E8@H#$0!9O5G.(R*&#=)ZMCL'2;J! M..WN7O'-2=MX>H7\K!F;31>O(,_F\'Z*\(3%K/[_M2@:+MW^@4%&7 MXZF?7[_'P*9KP5@.\&83I.'KS1]V7T^=.@IXF5=D\&(R.TCO@>$FQIQ0:E919-0%)TW81S)7G] MLHI[) QKD/O!X^$R?CE$W HB4_A:XN,3F^,7KYF1HR(P+0U1+J)@A6,D!(I! ME/))*$DYB.&L[8O9&;;J>%ACVJ_NF["5:Q;7"_D53*$DP9-.6BD,_+ECL4P" M10Y*06-(226:T-O*M>?O;B%EV$+E_N!WG,R;L*'H&]PMI9%+6;@L/!%0[D12 M"L0:4RX;18]P@8MOZX#Z <+M\&+,M-PYN;:T&W$N$ZEA$06'G(QRN_&,>13.SW8OK:< M?>_WOOU,#?T9]JB^I-S =O6 JX]7EP'FY_D17RNK*I*(N*HBR5I#:?:@B:.E M12[5P"-W"7FO;(Q>1. PVUMO\)B=2E=-[(!;V%O;Y,>B]%R"9$H24?*Z71,Y MKQ4CGHD(*B6?>.WSSA>2.,R..3 J@C>P^O=V MM\G!!.^<)C25#IH>RN4/*0BZ%<$%E4VBM3%Z/-7[6=&?ZJK@B579P,9^/P43 M(C,QY$Q 2G1HT8DE-AI#@H)4XB'\=>THXN4IKOXJ'T^L_9W9L)>HHH%LV#;9 MO9O-T?Y/5]-DX_67N9\N4%"KRICNN\E*O^E_7RVZD4"WDBY5,_B+Y7(^#E=+ M'R;P9;;J##I2*JF8F":IM.&1'K<'1Y4EU%,1J(F66SB1O>R%P8$K,X==!^U" MJ0%[_81<;MOX:YFM]\D1X40YHXZ.^%R2628)A[Z3YZIV@X$=Y Q<'#HLAFNI MJ?'&TYN-1E[_]>SC7]Y>O/]X\>7\]7_\]?S#F[>?+][^C]_>?_E?][DYKH_* MKM?TU4-E;];J-Z?>T1W=J: P,-)$28'XY#X6'$FB 8Q.@E-A>^Q.O>^HN2.X M_U(,]4B6BVW@H(RZ+8E;IP@N2TU"9D$$[02+M:W:?0J::3=="0N/1S <+.\& M-L1;ZE<2*89W-H4R6?*/\6*46NJ1!=)(:RR$#(&'WM MI,R3A#2"F>,5_?!4[6BI-P"=C:YY?X.2V1Q9HY%&'PC5F>&JDI;X*'%I44TA MEJL K/;AQR,B!CZ_/UZQVWL3'B#E!F"R9?[?FADMHH@1!.'&(C/)HFB<,1AN M9$V93YKGZF/R=A$T\!%^=?C4DWX+4'I^N-^:L<"R4S8P8@3R)(/D)%@3RCQM M3K-FP50?/+4W<<-F!WJ 6"]::0!N#^?[K;DPW&3+J2>)Z7(Y7TK<\X4@AL>@ M37#*I]I]X9ZF9-BK4/6!5$'>#:#FUFO\@+QTUPE&D*GSAE.BE (B&4W$&9=) M] HB=0*DEI41\YB*1J;Z5(R_#A-P Q!YF'=]/WVS>:_^WGID.\\ MY1'M9M"AS.O#195R60$I:P5&@ZW=/^.%)#82J!V(B,>7.'I33P/HV]GM/"87 M#<6X@EJ1B.1:DA"B(8*YH"G-3E:??'=TX_D^ZRSZ \)+>M"_1"L'(^Q[=R:$ M:VF^K+01/AH\:B4'89DFDH(OT[8MKDK+B0Y4*8W$6ED[KW3@!-@^NS"?#%-' M:J 9)-T=:R^^S+9$M-VB"0\[:7T&9'LQ7L*ZH>SJW/,SQ-G7:?>4;KS12&41 MG;9E9$090:-,(NC'.I)B8-0H7'75YTWUS=/@7?E.AO*FT-' _MY)>C43Y\W5 M'+>/%5NK7>4S+);S<5RNI\F=%>EWQ_.HB0SCY15^9N2H$M%[1K3.&8,XI=%( MI)(68LY(RI(.]8]7CR1Z\+X@I[7J)]-ONX#N%N=>_()@H4P1(RJ7NM@RQ\Y&OOWR#;IO"7Y?1+44%**.N<<6ZIRA^].DNHI3KF#/Z M>B:C+F313Y#!EY;'P+5(D.Q^[>=/2?7@+4EZ!W[;0#BV^\27GV^AL!%37AJ% M ;435&)4A/]Q2ADBC3=:!IMT9,VM%#9X^Y1_OJ7R,B@,OU;V\@G/XBK,*=V/ M1DEQ)X4W!*+ W;*PYA4ME]K 2RZ98>Q$OM!CX@9O\S*TTW.DOH;V;G:Y(VM9<%/IR&P3O&G,:< MGDA)[<:-JT7V$7[O?K48A01"*H9< 2VW;H/ 0-AZDK554E"GDJS=UG<_RH;O M#]&&/3Q,5>T"L%MJ=TRE",K9+ DN($70+WQ.V' MPG^*X[I^%-8 $G=:]Q5'U*)7&[D@(N"*DM8P8H,KE1M,!^X35]6OWS]/U7[8 M^Z-\#&)\M]X&=Z)CKCJC](/?/ M?(YUH((:0-Q>%Z]WW,>WVG$;943^N"32.$>2?)^:/VG M.*8ZI7(;P/+]CBQ:"Q5"C(2:8O"5E<0)Q0G35"<:-3>\]M2M YKC_-2G0L<+ MOHF.8#O+&%UT(5GMB05?A@0I2KR6H=0=1$-#=A)J1[K'%Y?^U (^_4W=9/;[W42XF"UZ M/!#*^%J-6Q?&C#Y'3W))43 .5M+>FI<\04\%AZ@\\]-\]F.W ML^O.XG+\8[P<;\S$B](I@VN"&%]NU\J(X4LTN+HH2%Q?J0S^J.\UO9#*1F[N M'(N@)]RH/M75G(?.HS5H?#.Q2D0B.=/$ =?$!I18P%]R6;LM8$/M*_O6]DX? M_26B;\)'OY=G+M7NTSB>P#VFOLQ>*D\&VC$5(HFX-#&^+5>4M%;$2.VC J+ M!?(0QM..A=4PX*\H:?QJ@:*_"2!:8 9YL]=8^)V)MV!N(S2V+%@'5P#K[ MBQ]/BS+.IV_&B^^S5>WX>3Y;+&"Y0&ZRF%SJ*ZHOB;&5G=5&D\(ZR:Y?)MO'EF0F<9D""2?B$Q.$!O+25@$ MRB!3[53M@L.]B1OV8E]S(.U'J0T8SS?KU]Y.C4>!31/^^QI_.$9/G^N8I&&> M*%^FK#K&2E]%##A#<#[E[%CUN>O/T33L';WFL%E5A0U #$IY^ M7=W_0A=$ :.*,)0)Q@"XLJPTOA,9"LM"<+7[>^^B9]@+>\U!L9KJ&H#AXT*6 M6ZFM+T+1'T2"(*45'I<0E*67L_WX>NUKILUL'$ ML] [4D&#!CS=&<5CEDI^H4BJM+UXC4L?%_G\'4K\MVD83R:0[EA=C!RN]\B# M)"*5X$XRATZ),L1PGK4WWB:S7WN@H\AHK1MG5>R=6$OM]"-YS/.G.7SWXW3C M+Z^/U-!7[J*[5<)A9"0*T4='8N)E[F!VN+5X1? [4[:5'$'U;A_WH;2U[IHG MLIC5E=A$TFC[SO#)7Z^V!:%UC)27217($M.4..$XH4F(G#,%$6HGBYXEJK6& MER?>M ]1S:#5=UOV N1G?H5DK$\ QEW^H%M.'V;3KVB1+S=^-=*""L4@$BX% MRE)J1YS.Z(KS++CF-"80!^[9+R*DM?:4I]BU^]-4B[A\[J1JQ .W(GA!I(NX M\&@IJ0J)$5^&M%L3H@[[%2*]_-VM]8@\E<]831]-QLM/><5W[#FAK**0B$D* M10DFDR"-+8$:TX$6UZ+VW<$7DMA:.\83;_!C!2 MBG-&(Q"03J'\O"9!N%*7"B%CM$2MK'TDLS]UPT;)I[\4U(?2#H?C#-=9GW!\ MCY[*8HL@I9 V0*E=8A0]DN('^QP#<3+$:)-*4?;0,.*%5#8R$>]$5Q]KJ:L! M^XBQ_TV7M-BU>;XISH-5*Y;"_OHW:60R ^F9(IFITM 91!D?B7%99!1T],P^ M[.U]?*'["^AK\N)D-:P\+&OO2W%-Y!%1BA$@+4HJ_\)/X#SC3])5$2&L39-I3O']ZX^CF64C^*:H-QXR1$@CUI;DE)D"OU@%FCM>M8,S4'C>Z/W7#GK"<&) ] M*:W=\.6V0.X)07)!&49A0"(O.X!E@$O.X@Y@I**:)L_\B6"Y@\IA[>6IPY=: MZFIAP]YP0>Z.CJ;=@)NN:GA$8\Y:&T5LE*5&TZ('XA,G6FHG!% -T?7H)CY) M5).!2C54[/ 2CU=18YB[&>IQ;Y[22"2=6 J,)%]RI$X#<=DQP@.G(9?11ZIZ MG/P<44U&)J? W/$J:@!SG^'[VLL]ST\O(D:9-B IL<+YTG\P$Y=LN?OHG$TLARMHD+ M4?O"]E9BF@PP3@*U@U72#L36$?R[V?RYTHPG)#IRTJ/@)$;Q:-+1?4!).J8T MX9P%B2Z%L[IVA'$4P<,6?)UZ)SZ9:IN#,Z[*V[D,=X/?K+=:4[ $&W@B;P4D,0K'K:>@<]P]9_#0/&XQ731&[PCILW$);WF:&E3W12CB0(B4A5 MQ@NR*(AV3DK.O'+5KY?N(&?8'_ICK*W/'M/ MT6%VI4&+,,1%9W 3L,D$16U4M2],[4_=L/?S3XS1GI36P/G)VYPA+L_SVS]B MU\WJ,Z+]O&N.6?Z_G%/^\)/5\D0YCB.NA:Z.8YKN_V#CD^^G<7)5ENZJZY"? M_&4^N_J.?X'?Q\[EOH*TKIPK0[!M!H][#B-9JU+@'A3Q7">2N0@\"8$*JNU_ M#L_UL-F!WLYWAA?LB^#40![U*-FLANH]+I5>2VQ3"RO-C#!,!9$])R%0-$^I M&"HK)$G1Z!B3X5[7WE-.R^&PN8S>%E;#,&E@%SM*.B-OH_.9X*)3!?-H#;I)(S)0V9@RSS [LI M)1)=3<@675H/8*M/W.L=M[TE71K%[4N4V,I\OJOOWR>=*/WD1I3OIWDVOUPI M\[9BC2HI@DLD:DE+=[Q G"VAD!8^!\X]3[6/0?8D;=@$2V]([$,Q#;C([Z?X M+%Q G_PX820^"H*FQ"@0&DR9MALB\48X HE;KVP*_.&4C IW,^^1,/!$R;P(RMQT["P^OGT_&JY'E(T$C0$RT$1SLK0 M *D]P4#'D)3!< HI9/^@=G-++Y:]7C=P)7 _>I[U*O1VC-?Y_!.&INMONKM' MJZ;_ZWY:B[/%XNH2$ALE7(JXW"1QD5FTS0%M<^EBQ)RD("0UUE3O+/ R$@>N M#NX5AZ?06@.@O"UIZ6@'X70.@1C*:,DH1N),C 1= 8E>A;;&UVZHLOG^@0M_ M3P*G@^4]]#YX]NG]Z[M#_G5!P,:DG<\0)WZQ&.=Q7!WRW*2RNR*^1?G][.NT M6S,CA4XJLIT)U[@)2O" 7D;Q-R!&D7)*7,>]=LN*1 U<"MS_GCJ4 ALP M1]THR?,P&7^]9;!T*DHC+K-362L"MK2#\2(12T$2--[2!Q/0F:B?I-U)TL#5 MOBV[\M/+&ZJJ'S7W]]I)$/^(/N5]UORE]]AOQ+^?>WS^_O M/7_Z0_TYSBY73SZ??_73]:P2/TT?_?)J#K-\TPYFHPCF'@^+\>7W"3P'P_T? M_NL=Z0^96K_C$;1JL %_+&&:T,P>.:MGU0H9 ?1I-AG'S4HVG7U2'JV5#A+# M (P)$)I9$2_0;($,BH7:!5/;J3EZJ-N&E,LZP<>G[AMT)<:+TL#E3G4WHG\# MBS@??[^9 /Z(MB^H@U>3LI(RI6"%MP1,I*5I@B(NLTSPQ[B6/$5OHG:Y2Z\, M#3P4O@XF'XV :P8"#1K3BZO+2S^_GN6+,7K(Q8%&S_H1NX=8TCV??*P9/82! M_FTH6&4"C9P(7E(II=>)S\P19A&K*F7%9.UT1'\V=*=D[U9",HGZ( 6ASN-* MT,&28"@E2DME!=4\56^6MQ]ES5JUEZ#D43:FOE(:-$]EFLUT.;E>I9TV&)W/ MIOAE7$U*/L0\[?GD8\W3(0ST;YXD"S25,>R>&4UD#A@+@.+$BB@T+7UDH?8L ML?[,TT?X?9M<<>]>3=%>W [_Z#XSQH@,,;*Q3C#@RD8'2JC2&(_)$$C@*A'A M&; D/96IML&N07>SINTE"'M\'>;$"FW0\)7S0N1L@5%@E_D\Q,0]>L:QQFPW M497,ULU+/JU?<@LI0X,V"C%$N<:MC)O2JRYX(D3 H(!I\+9VO=\V6HZ^%O7@ MN7>P];3TFU>:1%ZZB&MN2!#,$\X-:+")2E;[&NE68H8U+E5P\.@"417!-V@O MNLQ>N=.*;RCUO\OK@V*VQT\Y.CY[AK!:5J-[]%TQ$%?*:NE(I-:5#FN46.>1 M6\D,9%ZN:=4NR+M/097#[7MB^SA;0KF3-IDMKC:!R[QU&:%;$B*!R$0Y\9HS MPEC0U@A=VBYUA+ M\\2SG\)UM. E I@("<6?3@I]>2J(\DHP0YV4U;VO_2@;UL940\I#B].#6EHT M-]W,8C]-3TUW/L3L['K>T>9G;V(KF:&-Y]_E#*D6Y9HYB;)T"&/<$V\,;FH! M(]KH8S"Y?MO+1V0<:W0^S/QT4;;0Q9>Y3[=3@#?>]!38LXE@$F1B/6[CDN-2 MNJ0<-T,U+!;TQ3F,+R$)NT[5'' MFJ.]2*QDB;9.F+A%6!;='6A*E"F]7K,.Q+GH"-6*&@%O^\."'?I !M5 MI%$1P55&SUEFXJF,I0E_@,"54+JV,_$B H\U7GN];..\A*;LK07D/\12AHCK M+TE!G,<(QD*BD=;.F+V,PF$-6'_8>FC,>M1;@^;L+,;Y%5*Q,7[X "OVQ%.. M-5[/$5;+L;JYA-55F0<:X_6Q[6+]2MNWG!/Q$]F.%2*$90B1G@,'[1%;/.N5[$%B"R7 L!^:A5> M2NK +E8E)#VT1Z?06X.&J0MXUSS[QS7UAUBIYQYYK,EZ$2_S*@"=:I,@I8L/U,:>@+_M5FEL_A7.N$DC@B4#VI@S6<<3+0$F*.6H* M"=$O*G.YA91V[<]+D/#0_M20>X/V9)+"#P^/5X.?FY> M<7WW@L6(.0K!"T88>$:D+=NJ%:6/3M">)652KLWZ=FJ&M3C]8>9Q"KR*/AHT M0]T5UH.\F?5?'FMDGB*@DDU9/?JN;JS,'@-J":7!XB8$BH1@,#)/3J;LI#.J M^NG1/0J.M@IEV#VL+P9.OZX>OI$)T"&#SI)XD0K <;MUC)<6I3XFE8.-H78" M>C=%PUJ'([3_:/G7$WP#+056W*SN)<-#7E*B6M"2=[>E7Z@6F@2D@:0LO!)9 MH]-5?Y%LIV?8-CW5(51!Z WN(1O[L'^P#Q_FSFY_W/$N[9ZD#N+62ID<]8J7 MO R&231P-"G4H,=B>-1<9:=JI[I.ZM;N];*[96&8C$)03J@K(^F#HB0D9H@1 M7 O.C=.Z=O[S913^3.[O2[#UJ-U)?WIKT)QUM;Z/AV8=8,FV/*E*2?TS!%:R M7W?J[:9)W[YL/4VK&_+67:0(&YV9-O+.8*CRS!&CO2[#4B+Q+&?">%)19\ZT MJ[V"CZ/XZ"3AOF_?[&2UX0E$G5+T)A"C?/$$,B4V)"""21F]S-'JVM=_CB1Y M6!MX0GP^RDN>4-4-6LFW: !GUP"O8 IYO"RE-X>8R*<><_0UQ>=(J^?^H38G]^^;JV&)UT%;DT*'N6@&<;/4OI G)&>9&%9H-IF[JL/!SZ0UL&= MO5ZP]JB4[A2:;-"<;727/\2,;?[YL>9K*RF5S-;M\Y^ CA/1:T^!@)&ED[K$ M34DE3A@X+QEZ[DS7/EW804ZU,0U/1BG966$!-WN7$D8IW!)/!<9'3B4?N9.^ M^KW)7?0,:UYJ86+KT(9C-="@R?@,WV?S93GSOH"O1_2A>?24XWO.[":LDAU9 M/WSUMM+L\@8PE@8/W"@"WD4BHP9B'8^$RPS4Z&!8JMT5;QLM1U_#?O#P*RNC09MR<146 M\'^N\"EO?QQJ41X]X_@6>[N(JF5-'KSD+D;/C/)<^N/:,$N<]9% Y-Q% MT-Y5[[&YC9;C)]O=?^Y&]Q$ J6A(A*8DR]%2+F.](Q$I"&E=!A%K5]]O)6;H MZ6,5+.Y94J,7'+A&2(J8 MDD_:6E&[Q*)^W[RNC?@3O6\QYK]KI-;U%[]KE=N]^_INV4B=,V7*$:%"*;XL M<]>"R\2'J+2,7JB'56A;.KX?1T>[[>]> )1[[=U/J)<&2E'>H0?G)ZOYX2-! M03/O%4DR )%/S2*CHN<+(K&AC)LSV9.7,Z": 2\T]''Z&MWN]V+L&'G-O4$J/HJ:0%G MLVEIX[RZ__!YO/C':Z1AO"Q?C:2S-BLTJ#EI123EAECN2^-(+4!YQIFO';KM M(&?8Z4M]8:J2^!M TCL_GO^GGUS!W\"7S%5):*T6Q\,E(HP#@!B(4U(3688# M>2H!I48SE++B^NWT]R9NV"E+??E*O:BF '_J]@*=_-E<)*1Y!:B8O*"/1!?2(4*#@9J?:Q=JWERRC<"W[N)X-?CTIJ M ()GZ0<:]/$"I=85@#YD)W 7I"KNJ>GFF,E$?&0,N6-1*R^MB+7/BI\A:;\4 M*OW)4%93#PW ZK:,YB$?%-7-:#(DR"0P^LG(![6LE/I)*T$"M;7+2K?1LA^0 M?I9D?%7)-X"@'3-UGHYQ8O*<,9$)*(9Q-9.4>&%D"71<*,EB16NW-7DIC?LA M[F=+V?>JJ9_V"/O+P2W!7_3\TQQ?/\7,"6920O0N@R%@4B8R%8AH! M$P01B MR-O<_M"W[I#T(GZ#=#6![=3.@3Y<*50MR*+DXM>[3)PSGG#/-6Z+RAM3 MN_ZOS]%/=]#_#'&&#NM_07J?4$/HN4):Y80[L2-<<1UL-'S%WUU=/EH2S&>7 M2P=J']%CD$)*8IU0!(/C$*(7CE8OCZS,0L/#I%Z"O>TV[O2*;B#Y\80)0:?T MW6Q^Z=]/<_FG_&BS.L4+6SKYT5Q&1"A=AJ:#)0*EG )SU+&^EOF>) Y;K-@; M3OM45(M[\(Z!8D?LQ<\_M<]):#WNS4]-MBH]][S)AD15\K"68X#J2XA(DZ92 MN!2@]C3&'N:AW1GHFW;K73/O;O06&N15WSCT3>]>O6&,6?(^*W1$F2S.;Q3$ M,<6(=@),EMS*ZFVRCB"WO=EH+T'0]HVU7[TUL(F>32:SWTOW0C3'J_J[TA47 M%N?3)[A%>.5G;9#U/5?-3_%Z E;VK(0_3 M28/&:,= O,,-TO,/[7&.7X^&Z643UW0T6DLGB%(FE8(>21Q83R3Z44*'H%AU M(W72:7YWCN;-:S>B8$B*2LJ(3;@@9%:.N)@RT3$XJ;)ARM2^.+F#G)]I3M]+ M4+/=]3].(PVX]G>LH$,X7L*'\0]X>JG?L:BTY?B_@?!4:H,9*XT3-"@>KKZ[_YO\W1CL3O]CLLQ^SD28Z@GNG M+6,Y+2Y0E+ #I?"%^#M5NP+F>*J'O78\!(1/HM^&$#W;M6C?72V+A"]+RZO_ MZM3^]H_2"?1AJ8RF5EF% D\^E2Y],:#GS1+A2L@ S+O$^\)V#?J'O0M]>I2? M7.<-AD./YX@>'@5M?5;].B4"03>%$5FNW#KE& $ME(I*1/1<^CS?V$E= MNS,W7X*7G<<:];33H UZ9F;NX09IOP?W//)W(%/%9;8,PP="HPL%$Y[X5$8M M"AID[$; _)2FJHRB?3_%IUX]F.5 &94*&!#J%3+L@R]=1ST!ZJG*VFH#_65@ MME'5KFEZ"3ZVFZ8JVF@H##C/?_/H]W5&]CQ_F$V_?H'Y9>'R8>6I*E>Q#2-! ME-M%UBKB&(WH]OD0G 3&JU+^[Y?%4S?:KZXWOMJGJ M;N4$%2FU@3CARD$BYR247+H&S@%$R%"]9UM%\@>?%=,3*K<;Q--JO$%;N9[I M>K!IO/?W=89J]VCX'DSD8(U@F+):)0RYRXCE^Q3$XM%R:(%SM$+W.:.UU MS]U)J8ZZ^ :P[#+*W<7=(O#S?#OT^;::#S:$NU&9P $IM+C3RUAF0+MR+TA2 M8K@$[:-SP.QS$*A%3%-SMU\"C0>=D$^KE0$C@8[?CH'B1W8WSA9=->EGOWR8 M\^7)*I5RP&B&>R(%&NZ =I/D1!,8S;1)^W7>WN]]30W@/AA+/E'@0CK <)7><@+:)R)A2V6(9B3&&D"@#C)?WQ\[+ M7C[L,695(/4H]0;2$1V+I6G2PSM?V8CD-2<4REV;%,*J>[C(P5,!%B34CEZV MD#+L66$%*-44=1.(62P ;O?DCJN; X/K=:;D^N'1I;'">![+T:4H8LO$&P6$ MNM(]%40TU4?='T#FL-V4JR*M7Q4U@,)-/_ YUJ3T7EE71A]X1R0#3JS%6!-4 M]MY)H=!?K(R^%Y W;'?EBJCK2R4-AO\72V2BF_2].:GWB*Y5NYYW=)>JO8FM ME"XX&8Q]N7!\_I.+,[A[-Z*XIS4"ULL$ZHC/Z:#+P MDL;7EH!EC)?)B5"]=W^/D[OO4%^P/IN6Y72>;U^X+H=3>;%P?W :=.ZQ2["^>0;>%4 M$Z\])]PYS:4*N?X9].'4#IO"[A^IO6JOP;#D,WR?S9>%I0OXNBI'/3@ZV?JL M8X.4_8BL%*NL7[%Z9SFIOP$8LQ%4J&R$;4#E6VT M5$S3/'C#QFG@J^OU+S?FQSG@/%N!E"9T(8P%XCE'L$>3@F(Z1.C/]7L1J<-& M)U4PM".ATIO2&MA)-^8LO<45/9_ZR@F>).> 4O""]FA.#Z5ZV%BE9\MZ$E4V M!=ZWT^5X>?WW<8*-763W,OXTGZ6KV&4;+F#^8QQAXPZ32M:@UVL(#V7\A56H M!R,"B5IIXZ(RR?9W8E.9F6&#G9ZA/J3B&PR$]AN ]-'/2R'*#W@#2S^>]#C7 MZ=&;3C/A:3>#_<]ZRCZ:D%@FE.F(X;3WB")7[E9HIER0R=C:5P3KSWIZO-C6 M*^=AK>4H.]=$DOFZX>3.[]./I*":PVC-#5- 8KDG/T.-U MI6F@D49X8+YZ9^SG:!KZ]F)-!#P+KR/4T0"\+OP$%FMO\R,L_P:7 >8C*:*. M46G"T)H3R;,E060@0DDN-:7)UI\(\!0AK0'I&%T_W B/%GP#Z/DROD0'X3Q_ MF?OI BE8M3(]GZ^CDFZU472XE<( R617ZG*%)QXP5%+",$JIPW"E]L3R/<@: M..?7ZQ986ROM VV]'A6S.LG "&>.$^EI=U;-B9 T"Z]T,*EVSF,OPH8U8]7A M\#*X':";%@"W9@;??/X#YL@CK$UT3"Y$:]!GR!)%9:@@GHF$*S-&+SD-0&M? M_=A*3-/ .D3Q#Z%510MMP>EL^6DVGJ+%W^#&9N63RXRDI'';I[CM>ZT]<2Q0 MZ4SR$&NW_]I-T;#;XTF!=:P^&D#7$Q'/%_S3SK+GP#(:=DYBLHS(0('X2 ,) M@=L@?#*F^E'L#G(&/K0Z=>;A("VT"*C"R'K9,6EM<$D1"654LN*&V(#+S@K! M$RX/ [RV/[^#G-8BQ -5_AR4#I1_ U"ZJS5XQ-3:V&IG>$J.$0$>C:U AARG ME@B=0.4HF):HQ6!VJ_EF?NF@!7#/T"J>7JYY@W>'$8AMGTBM)F6:$ M)HQK),L474>N2%0F:J^85KFVV=J?NF'=K=[@UH]V&L#=S5G\-G8"2T*!0G:Z M-)Y'#R*@1TD,2M%*PX6I/L?\&9*&=;SZ0EA-/0P(J\5\.;I ;70=@>Z,M)]T MCD307@<,;HFV@%**-A*;@T._0H<2XT0M]DHXX%LV@(3?W8%H)P$#5]_TXK/7 MD_C0L%D5)VVR<'V/UFPNJJ(L&D77#RWJ=0$Y*AIQ)\":C\RY19-0:DI@) MQO"@W'X[S1'(ND_1L-%[3=T_ ZLC%#'T9O3I*DS&\6R:_L>57XR_=]\A8_@7 M-R%ARDY#$"3A4B-2B(#6-P(&!Z"SD#DZ2O?:I)Y[4UMH.4:EL[[DVX ->FRE M/XRG\!X=O<4H2Z^LR8XPHS#,,]J38"DMESZDIU(;XVJ?<>P@9]CN>_WN:[6T MT "@WE]^]^-Y<1Y7$UBZ08JK]AU_A4EZ-YO_MH!1 *M9<2 U@"F7-HNUMIYH MX9W/96B\3)6AM1=A \]FJ@6#6=\Z:0!HW4RUCHD[]EY_\_.OL!CITB3!&T>" M*ET+C"\!*7Z5HLLN:R6YK6VY=I S\-"EGD!52_X-0.E1GO,3S,L/_%=@(R\X MIUDSPJW/I?F\)#ZY2!3C1GFI%8/:A4F[Z!DVX]P7F*IIH $T;5PRO#F@^?MX M^>TFJ?[VCSBY2N7"(ZX=_+_2AV4$FH90ZFV41HE)AFO%F:2(,")$&=$A5;5! M=@"9PZ:L^\)>W_H:.B1\AK_U2CO/?YG/%C>E\XL1!Y:<]I0(7V:V/VP2JS;23J2&!FS?4YS==AA?,_7YM@/5*%E. ?%"A KK M@0I.I$0$BPIL2D&;VF' RR@<-NCL<;?M2TL-8/ L_8#Y*"T=D<)8$6M*$E',NJ3.6U[[,]YB*O;!D?C8L'2GMG[95PMO%3LIIFBT<*:+^NS$D@=$#CT!B M+*W# !BQ$=$*"-,H M6*URZ1/%$WAD["GR9%+1MB7B4JI74JQDA)CEZ73O.X MVKEGQ&$@92-:=Y?[:QZ[F[9F>S.\!"D[>S/44DP#^^Q6;C:JM7V.:/.9Q#A) M>8R33"3>E9TAV0P!$@^T=O/7/AX2DDI(%D* M]&0@ 0D!/!%)2@5!">YK.WI[D#7XJ4)=*.P+M0/U,G2^Y#RC0P/OKN;3\;)T M8-[@Z*:"B89 RZNYC_@NIN>#9-'"T*+K&R2&$[;8,LU(B#6A4PPG@X>)<-![I>3W?F: MP4^8^K,Y]<0[<'WZ9S_]NMJYF;!&9@Q%J*- 9&(:C2223WD"YS4/QLE]K,LS M]>BW+VRHPTMMW_EPP;: AAL00[)=;Z.4RZST'!B2C3$K4]Z!M2SA%EH+#T-7 MJ1^HK(?J/D!R RO\;^/I^/+J.K#2#U'9K(;\AE:\_V.#< _*&2XUX=FB@PS>$FEV^? M4_SF2X>Q_]44?[#\&@@PMFYY=R>+(2%+$"8S7'2\1NM<9=^-3 MH>V.K$9S)@LVU]YFO/4/5GN_]R4:2$#1LIH M*8O#Q#,GWJ"EI$SSJ&7 >'DOA[.)<]-;J9;40GD^S+L2B6F$\S 9?^TT64H; MRBSOFQ9J%_C31<:WWU[_T(ESZB+&';X4R40HG?-8P#5N&>X?($'7/NFJ0WFS M9ZXO0=F6FLY3*K6!/?MHKB^6?KY\XY>KH%HX9)_11%1(F4CO.+&TM&46,@F! MWK=./14E5^)@6&@/@<':R^!P0 R=2?\;^#(_M;A&R/5XECH.;#+) G4$="S# M E&.5B,'R8--U'DEN'C.6=C^^&%SHP/BK9+$F\/,[7D#=5+E1%SH;@NC:VUC M!I*94HI+J[V5AZ%FR/J 6DK;B8$#)#@T"E:$GT]O:>$<7T.B!R'MI_\]+Z(6J:59)9&_K^\OML3;MBP@4>%:$07)G#E,KI M(K+B-%@5E30/LQH[]7W[X&%VAS[U?9C,_AD3#.Y0 M2COF9++9U1ZV58OVGSR./"&Z:P/AG^\X9/2 MY,OO0VF6\2UT9(21(M%PQ,]B1D M%HLER$I3%7/U&6+;:*EWT>X,L9C&DZLBU;M6C[ZRYO;"P;9<%&@89*0;CK5EEE&AI:1' QM5NW[0,_1-' -0"O@ MV0O4!VJR 61^!MP:QR5E6X?)'/?)$(CDPC//.96F MMF?V)"$M8O!073\*98\5? /H.7*5;B0%O&31!4X,-QKC<9:(%8H1[KQ0WF:( MJG;3IUJTMW+YZ6??[P\#P\^_",XN2_X"0Q-F8NDY+FVYK83KG5B#D8KBUC&I MA%>^]M"T*H2W:*+[QEQ=X!\ @ 93DC=2=),-:22*40*1EIO*UL8FKGV[I"@X]7 MES O'[C+Z_B@P =/ '#%2(LNF8VXF+-5+$?/*+#]2O@>/;K11-9+5'FO2.,X MV36PVWZ$Y?LI+D#X,%LLSG[@*BJ.RY<9FMC+4IN*OO2WV035LNB6W"A:GHI3 M33(SZ$>7!C8>(DK*@U(\YIQ8[7L)+R1QP)JO(]$P.YUJ?BKDK8W\2'DI+(V" M*)'*[<&(J[3,I38R1AX@Q"1J=YYZ,9$#5J -A;Y#U#-T0>(;F,XNQ]-[TDHT MJR2=(3II6!78>9H#.J[2"Z%-UESOM>L]\?!AH]KZ^]ZQ\FO _OP=QE^_(6[/ M?N"J^0JX>@+,SW,GH,7YU7*Q1/\2I;8RKA+ 21$= 5IF,H9D25!,D1@T&,5L ML%#;V7L1@0/N>D=C878JQ32 .K2IJR)A/UE;THZML^5R/@X8TW8V]B;$@?3) M7YY]:7R5R24;2CMDP371%BGA"^6!N? M)U;ASP+:TO$>5R5^:G+]?K&X*C]=?6ZD>+**@R(*<&7*8,LX6FE(SLY2Q%K( M#Z^$G0:QVTD>IFI[.+A64EX#6-VR>ZR=U$>;R,@8%X1C*%5ARTQ!(8C/4A"A M6'#&@!)0>P3L"TD<9B30*;?V*LHY''LS7!K]U)5N1$FK::G'--#8^K"CZT#W M([-6/K5[PRVP M75UE4\4 M:RRO6C2N:VLR-U%&GX&56@G#/(+GJ8#E(:&RT@;6NB+D>:I&AE4;]=\'55M= MC)THO5K&OF;G7:'/DU=V75M54N'">0=9U9G?= MCI3RJ!5QX[ALW7.QE9B1:\J& 5);%72 I?6M?BVHMS>51-DX8UU@$-:+\U*D M$!"Y@(1T\?.HM,L[#=O> T>/$M)+76);%^AXF7< G#7U-6N%^=7EXJJ/=3J_ M3B?\B7^M_]-R@H$)[C0'DYBL,SL9'0>E@!==5#)!T7]O[0+M1-FX]UP#"-QW M@=KKXV"4D7&,\U8X6S-PQ=C[Q33AYCUUXNC:%E(FP,1(6C6B#:9HX Z#,^1. M.M4ZB;&5F'$-U0!H:B+U'LS4S9-0K5]%<@&NE'+S+O3;CX>O1G^%15[_\B]< MKFZ.$I_P*(50:$"G8$%9'2!HQT 9%\CN.Y6:;V%K2?^X4W$& ND8NNT U^\7 M\X28E[4R>_UV5,='E#MU0A,IN79<(5!0K>MXB BNT!\C)[^%!5>9:@S69XD: MYU5E. 2VU4*'%?&_72Y)4,OEB_3?E]/E>A#%LL64B)U^[K%/+/L3W^BU9?-A M D*L#WD5W[/\8KG$U1U:;K+RR7$?$P4/W!#N5(P.?.89(AJKF0X25>M.Q?TH M;#A9HOYP@O7KZ6RZPKHY.[\AM MBJE338M4%'IE"4PE9XH(BJ76,T:>):H/8W>4ZG> T^%Z&/LIZ5]3\DHOWLS6 M(^;6D^_GMC=!;/>7,[?:D_I!RA MU?E0(AX;+W1\OOX#Y\MOQ$FX>/OVY:AC:0,4[@O3QI0B MTTXPV?*!<1-H Z*CA4#'!L6[U1=6"&S*K.=1*9L193/+T^_33";PXL>;KV0!Z>_# MQ6.Q]X9/S5!Z KWPPA"?@D%T=9Y="""MX^:KAH'@2?77 4Y? M85R]F5&X>[G._Z[7@+@4$L8():W7 T0&GF$=6(%>1$^6-[6.V1Y2T-ZV\?J^$G( M'"CPL9VH?\[2_.*BFM=P,?V?^JPZ_SI=+N>+'W_.5YO],EHY[9E)P.D(T6;!*TD13&:I,&F=]ZU' M*3U'T[B!P,E@UU0U'4"M^A1+8FI]/4CC@O*2/#%D@<0A'7FW/(+(Y,A@8%GR MUI;M[O?'O5E/!J=X!7!Y)J%PU9Y*HD!2VNBJV?+?83 +X5[BXK-*;?I[5 M.4_*Q, +DATFUT-9;<&5PJ$H17XQ4V2-6[MVQU$\;NKLY)?I"=3: 8@WLP-N M3?=&T)-4*%P3)+\L-<7WL01P6'3-"F8>M9.I>4OY=FIV I\^>_ U4D<'P-K# M)_WY>%W7J+^8YT^W //-":,F'*I-H0/Y.T#5G M#]VQ%-XMUJ\G ?TDA+?3$*<7Q/S$N"2--@9T$!*4BPF<]9(NBRAE5"9Q/]3U MOP>9.V'7_J+8;:? /C%ZQ\/Y@#7+FE_.Z3A.K C"!:^(%4=AFU2R=I0%$)Y; M[TWRR;0>Z,KT?-ZV]+P! M#HW$,5POQ/*F^MQ+:0T&!TF$VB)OR$O5LM1AVK8$&TK& MU@^F3]'3KL_AB1-_]9X@4BXE>DN17NT?)Y<<8@X,A%8<;0S.-%] OCMU?91J M'HV8[?T*3=73T75]OPY:Z6R-E!DH&JS2DN04NQ@@^<@Q1)^#*/^[FA/::G[' M3H1]U- IFGZN.V/<\&P% Q,E15R210C)$5="9%E$B;KY_,XS[4382_5[=R+L MHX>QZU^>+9./7,>8HX<@5*RYT *^6 ^UV% 7'QCJW6I?SKT382^M[M6)L(^( MQ\;+UL)YD[TTR@$OAGA@6"!8KB%+%:.N[=;,[@23,^U$.!@=+00Z-BBVE,Y' MIF3DG*QL$G5@-M<4B\M6QFBL=+N9CO/L1#@8$@W$V8&_[%",.<4 MA%A?WW@=AI02@V1B5L9(A:9U5O57[40X!((GU5\'.'TB]KA;<'C5P5J,C]A[D-=+[\*@T=Q0ZNH;B;>,W5T2GG+VM6Z? MIX(D1H97^WZXM=G4]M926E?-[4GBN#[]8%#9'9)'ZZT#6+Z\7*[F7W&Q?K"H M=O[+]-ORIFZ_\)+)2RV&6U!%"')'% .9F>;*:\M"ZX3I$^1T"[?C87!_6&DC MG70 KT^+D+&*94._YQ3Q"\#"%OW\Q5G5?-.U/LTC'N3GA)( M1TF_ _1L#L+;Z7*U80&%]!0T%ZBURZ!$=.!"]H &B9_@>&2MRWX?(6/<\'0, M8W2H#CJ T2=,7V;SB_GG'^NQE ]$=CU%'+'XVG%!0G*@DHO@LI"@O7(^,&&9 M;OUPLQ-AXX:A)S57S?74 ?C6^9XMK'C-O(B, R8103F6P*$2$&3*MB!=Y:)U MV>03Y(Q;P7M*H+7220?PVJW.*2O-DPK G2:>BF;@.4= IGU.)@2O6N/LG)I3 MQTII'*:@#D#W2+G(!TSSS[/: OXFD_"G91IN^-P40KUXK!#J95A^H?]0*XZ_ MAXO:K3;Q,9-,/0=7FS.45A:\)4=#RB!<(>>#HISA2Y0:7Y5%E.!(''6O#EI9BE'A!&W= MS?GJ-C3O\*"T@,;8;\LM!?*AKMQ]5_ZYO/['$ZN<82EH*&AKH" S^$R^HE-< M6E_'CN"]:V3+"_605':;2#@.\7UI]Q>[%=XOYM]PL?KQ_B*0 ;BZ++_51O^) M,W32BY'UH4.2JD@>='L*D-Y3/%24DJ'UW/:3,-9M#J2_>Z$-.'ZEB^'] K^% M:?[][[JOAB[(E)00AF7(1BE0H>YT-[J S+(D--(;N=OXY0&)[#87T]FU<(QN M?[%;89W4^G,^2W<=PTD1WA@,'*S5 A0:#EY9 UX&+]%8YK+L^$9XE*EQ^[7/ MZC8X'A2_V"FY55EM%"A.9I3@*68"%'7-Q*?P]UV96"-BJ?TG6M8A?S8)<-)IX,)G MNB&==5T?BL>YVNT%COWG@+3!Q;%GY5.7/M.?N)H8P1E33$ .Z\=((>LLB(7=CL)_7J,/T?B(OM(ZM;9MGEM]55]/#:OG]T0[@C[/"[U\XDV1 M4A0'6&(=W!8X1.0>1(C M2HXZQ*(D!.<\**,B.!L\H'*(1M>EAJW[JP9B93=TG]\;:$\(.)-IDQ]P>4D0 MG)=WWZZ/_K(J+,Q^_/2O%\VG3.[_X2&F2Q[)_DFF2AI5)(D3XOI%,3@.+BL. MVBJME.$V-1_K,>14R4=^]OO%_'6=\71GU-,'_(ZSR]OM5OAQ.DMX1W.OPHK^ MN+H,%^0F>9O1TLT4:V$"_?Y3^+L.D-E!&AJ3Y)8Y2+SN<3-T208?''A,2:"0 M0DKYG'$^#:E]S"%K!O .]7LF#L=&0C70K[MV@N_.PMH<#,0S0\)NZK'WZ">=9/4#C :-@; M-5U?2A-=>';T/X6@=&U0M(GB$/+^32BUGS59F8=*5#Q!5G?^0BL<[3 U]B@5 M=90G>XPEBC*O[HBW=8=@82(GF3E8X33=3*J^CRBZ QB)KS"DJ'.HC,.SQ'5W MH8^!P,/5U2<.-WS]'A:SZ>SS\CTN/GXAA?P6EM,T,=SGF$P MI[UE;R!D*0" M$:2+ACD5& X/QR=I[&.VZ3BH;*>\\P+GJ^G%)?E2$Y8D,X&\8^54=9;K_$PC M,G!>=_Q*'MPI;NIGJ.QC\FE? #U$@3U&.].+B_5*FG_.XOJW=UJ'/UY^_1H6 M/^;EJ7]T3,S3ZMM'1SZ#"*%1_'/G,S<8QZC(2PP1G.:^%NUR\"ZQ:A=]259H M'UK[6(^0<:RY?)'2_')VMUO]:@LUER)$D2,P452U^K5IRR6PTH0<@T&!K6WB M%E+&C5B.U?Q]Z]9"WAWF:JA8$Y@55H'\>[KZLAFG MN79GU^9XPQ1YJBP72LD&)NQ[F"7 RSCOR) M4%I/Y=V!K'$G$)P,>@?JH=F5>YJTQXNTFGZ?KGY,9ZLO>'/$RD.'=J#4Q][? M'S+]<9PPADR!!*69YA9*K+&#=08\2@7,"ZY0\'AGFWO'*9"=XJ4/\XL+$OE? M89$GQ*[-=>*L,8F#,NO%8*@A*+2<U&V;AP&Q@>!X%Q+UT=C,!O MN)C.\\=56*R:X/#]8OY]NB2U/<+;Q$G&0PF!@OI:+Z&UK*,=(Z2LN#6)L9A: M.WY/T3-NVNZTF&NFEX.1]AT7<7Y2:_?OQ72%[TI93HR0A)(Z;Z>O1_AVFO2Z"X!T-O'3:&U8T:)O)H?',0@BV+C67 M5BH9T>G6<_P:7L:#I0=[!.->NCKR,OY]E@>)ES=39,.= ;(S7&UV9LS+M]M_ M@)M_<$1\?-3WCHV'VS';*/[=.L/W)KY1T6A4QH#FIM M'#GY>\9!CH4<0&LQ MY=:#GI\EZNB=TC<+6;9^ZFH=2T%M'68+3-7SA9E#]"%!3MY:F8P1N?7#VZZT MC1N:M,7-@YW10^BG@W!X*S>__?A$/V*]059ZGY*3'K)%!RH["U'%",)K84LJ M0C0?K+X#6>.B;1@\/(Q%FBJG9[Q5AC:[W5-PIG+#JV^B(BODI2228"K9.B-< M:5XFN@-9G5JW0Z&P*]0.U$L'4'M]N9A-5Y<+)'9>3_^NO]OLN;-.)^6%!:UU M+;6FXQD\.<-,8M$F^-!^4,1V:CH%UJ&*O[\"KHT6.L#3R_G7;Y?TXVXD=,U& M+LX4BFZ@&.]!2>4@6IZA1&YXJ3/%7?OR@4=)&3=/-S226LA_U*31OWV)8XI?Y17[SE>+P[UAYV9A/\BR#DJ'4T;TUVT>0]USXVM$FB]/9 MTJ7?V.X\0.TPU/8-M;:%G-9V\/EKW-MQ=S>*X4_SW"HF#-+WI MA_LZ7ZRF_[/^(TD\VNA* 9*OJ N*'3A.1AVURRJ@\19/EPYLQE:G4<&!2-P5 MZ"/!XGQ/RH["\(P[712"D864Q:R%&,A19@:C"C&4&%,?9Z3AZ3A]I#/JZ1@ M"ET\$A\JCD*'9,)FDR$Z"C"S5S%F!8.B7XJT61AB*%EH_J@S/5:=1WKAG M9"!0=%CUO>5A]\^PJ'.LOF/[!^L'/WJ@M^FG63C9,[106 @"Y&#PR$!)BOMB ME!*R*IJB2V]L;)WW&_P9FL+;L%X(L1Z[^VG^&[Z:+K_-EYC?E=]^_(&K+_.K MM8J?OH39QW"!5T&/R13R<.8@RU"#GE3K2I*K.U*0SK841N;&HCB,TDZ]ZH,P M==\DGD!W'?C)5]./1> M9T6E,JY?SY4WB6/!4-&8/HH[-)[(% MQ#H@(J.6QGMCHF#/N6)/_/PN47&(]N9M1=F#>=G7.-\&3<[RG#*74-D"5?UTHT+^_;^:V$'WSCXY(7!ST MG6.S&,1 H*DI.)0G##P2F;5L$-%+K6P[Y^XX.7<$E#J.X?7U.(88K62B2$A:9U ^)T*] M8I"4DIX%J9UIW8;V"!E]A)D'*G8+3 Z57B_0E+/%Z<@_Q M\R+_U^5RM8ZG)^1I2<^C 1%8 >6\ ^]10TP\^I**P]AZ_-=.A(WKXPZ%JW:Z MZ A@)""4O[2+3326Y//+VVJ(/?Y\GWS2Q^/'=B=>W^;O%].T'AY_5?"V(>OWO[]AJJ8O M_/T*\V5:K^9!'<61659ZGUDW-3!OH(%]LC M-F:?1>D<.WJ/14,(@,$2Z<+P*]<*IZX*"A9B=)[DFSS,;ZKQW&X<.#\AF M.ND(7T]'13;7*8XA@E4A@0HV0H@9@5L*E02W FWK\M[7[-5V:26"A""86<\-"M9HIU/S):U/4M1'E#H\W!KJI>$\ MIQ,7OKZ>SJ8KO" '_Z&X!ZZ%W>'3)RF/W5<$HP0]U@OI(F'<1NO)ZB4+!,*Z M'=TD:92*0K5VXT>JF+U2Q]O'U''UU.L*67]C!/B")(HD:C\._8[L@'%,HF@_ M;V1WZLXI7-D'4]OK:IOJJP-?\0E^?OOQ1_BO^>+E15A>U0=F)5/V@D%(L:XS MM1D"SQXRA5E!2\65:5UXNP=YO93AMD7(_1FP ZFK;R3>,O9G^+H90IC0IE"+ M7B1#7I^@+7B6&4039)&"^1Q;3YK9D\1Q$3D85':'Y-%ZZP"6FTVF'_#JE6?Y M9?IMTRN;#>.>!0="!&+%TN7B+$L0=9!&DQA-;OU2\@0YW<+M>!CW3?S6)DV^!!V"J.J#HRG@HU,DFQ!TX!RE;3Y(_2$9XV;RQC!( MA^J@"R#].:^#)K[A"E]\7N#/@YFK"+"0;*2M1A43..=KG5;*/##EO6Q=S;2= MFG$S=J>$52.-C-VS\0J_X\7\6RU625]F\XOYYQ^;AB)')X')3"8V:5 D(O!! M)+"BN&PT_8J[=5QM_<2X%26G $M#$8\(E.5B-?E KK:OY.%9U$R#Z%./%*< MR ^H'22NHX]"!FYVFH)!/_6.K:$_W=J9GS[82Y?'(+F#PT7; QXV]DX5IC(Q M'DW4M2L>P2F?Z7BDF)*46HF=:?,]S,J_^FC(RO]$)7-6\AO;,6'O^\0 MGJ351? ,@M>19M(F\IRMKB$8?5A%I^5.;\3/*?[N1\>Y 9HI_F#Y=9!A>^+2 M>WO;RB93,IY<(8VJU)4S$ISG"D(@2=E@8XJM5_3L0M?(+<.C/SH<%/QQ+Q,*AU%^4XA9"*;*VC2-W=$&DT/H=:W\JNWV3. $06RBNB^K0 MI\4X,5FF-3_DHU*\JPW=%DDFL!IE,()QQ!.^Z1-%W3YAG !T^RJDV>:6(>#U MSR66RXNWTX(3KW(IR!"D+;&N;:I;)CT9]6),E#[(P$]G[6[IZM:^#>W1':B: MZ^)<0JF6V0G#MAAYHTU%MI,A-<.DM2L-8J4-P@F0-E0"HFE$M""Z8: MB^+7+$W>!U-'E";OHZ^^ YD'!8S)HHU:1TC%TLUD4X98K 9O&/K(0M#-]Q7] MBJ7)>R'DB-+D?=35-Q(??<;WUJ()$LDQ.B1)";#UD^)6)N^CMPY@^509; SD1[/ 7F='RJD B?J$I:4LY:N"-9\(.(O4YJ\ M%PSV*$W>1R<=P.M!:6Q.2N<@ FCZQT"_9U!?)<%%CC9+8W)H/8KDO N3CP'2 M4=+O #V/E<06QPOGO #3DF!/T3S$6L["K6(^H\686P<,9U^6W,(8':J##F#T M1 ELT-PIFS7HI,DS,*Y*QGO09&29R)K;U#I9_*L4)1\#JD8:&;7D_9F:6<^E M]Z4P8-&0>+"ZF\XC_9')P)3D^GZ.Y]#7[4X,$6'KG)V=!Q:PS&8^CM-D(\$#WWI^^<2I7GNI+R]>7J45SO 4M$OD9 93 MWTF" N]9!J:TCZZP8%/K2/*DKW!/U0+=45H=BCE;XI^D@T]_X<5W_&,^6WU9 M3C1+&;DJ@%F2C)!\<*^3A!2$,AA=E+MURS0JZ'J>XG-ZK=L'>_O4>#76:P<. MS'[<_E\,BT]_S2=9\$P.8 05:Y5E\8P"C4#&.G,GM,W*FE-6(VXE])Q&HYX. MLX=H\3RA2MC#20Z9JQ@LH%KWVM2I_TYG2!(M_17/GK>>M' @J>E"\5DK/:2[K:>&Z MMQ[/$ZWT;RM)8%K_>%PL;R!DB*S M(H+*H!/]HJ2KCUT\0'0VDV$I(F#KQ\(GR#G6Z+S[AG5QUNSS6PQDQZ[%^^-J M2]YJ4E0J(KD 0M:, $\<@@X(Q5<_5D>%S5,Z3U,T;KZQ%2[NFYB&6NC@(KL^ MJ_\*5XN@-ER0"$Q1OH8ZTA(7M3E1V%"Y8 FY> M-WC- DF(?FJ]V:]_]RG\CNZ=V M_MJXN;?64!E&R/U8G-_)1YG_0/P-9UBFJQMNL@HY6Q8 LR?OS\8,3J-=GP&E MN,.H6C\Z/DW1N#FR@2U0"RUT8HEN[N7K^++.%*$P@@4&66L-JC &@6."'**0 MQ7*M4MK'^CSXPK@)J2$MSG'"[,#*O%M]P<7#0.3&2V,N94M22:YZ:8%;NFF5 M!:^YRY[%6H34VE=^DJ)QW+[GJ I&Q]0K2 R]T"4K95J77#Q"1K\9I'T0<-^6 M'2OO#J["GUFXZB$O3- 5KL"X7$L[O &'Q%!!%GC.H5C9.M?ZD(IQ 7.T8I\$ MRMY2[@XG=[J=Z*XW13%;V]9RG7)5AU!)#U+(A$;2[V/K%<7;:.D),_OK^$G( M'"CPL2/ZCSB;SAN0UOGUS<*?H"0%!A&L7MIC@V*?\[2_**V3RS"Q?1_,+\GT4V7R_GB1W42-XO% M4"CN99T@*SPH[2)XQ^M(D\(8RAC2_;^"QR]?&?9MH#Y3F$AX;,A]7\_3_ MKKVXS:8>HW,NT4 NRH)2*"%PNHZE,8JC3KG@;EW'#W_VN.\/ ]B-XZ37G??Q M]J;),%NNB/L M3^ZCIAV$++GX%&RY&.2KOFFM2VD]&1"6ONKA\F[.]B\#(O% MC^GL\XNO\\O9:N*5SM$$XB768;VEYBP5"V!*T@*]YA9;EQX^14]/SLJ!"G\2 M1$=(OP,DO9[.PBSASY4BDQR+$E&4.F/-@<*PWAED(:/,(@?D3 W0SO*0D)Z, M3QOL'"_O#D#SZOJSU\R\G"^OBAM%3H)QLFXPXN2[^Y2U899GT=[R M/$I*3YY.*Z-SO,R[F/W_=C[[_ D77ZN07LSRR_!M6E\NZH&XDS=_,TL7EYG, MZO4CRA]A=;E8OZI,T.40#$M0BDWU.:6 ]\F B[5&%K-B]TMVCD;9L32/6Z$Q M!!Q/JL4.5@KLQN_FQ4]QKM!25":#(7O.78 04P$=A+0E%&YLZTSS7@2.6Q8R M'AX/T4\72[EW8V^26;"\NA % _%ER(^HV^K!,BLS:QTV[D;9N,4CXP%N M+XUTN2$Q1L&-2%QQ"!IUAMD8WD#VF$+%+(.H2 L755 M\8 %&W>MXZVD/^"W\&,]*?1=>;^8SM+T6[AX,WLPW\:Q(B4G:UP4ER0+0;*H M2TM#SMQARK[XUNF'HPCNMPAD'U0]=<,-J\,.4AI[,;L9;N,MW>S1%2"W$8E' M\B4C4C1C+,?H)(\\R#%QVL6$HB[@>8C&SA*5ZQDVGMC4P3&(JLBZ5R"!3U&! M5)*58HQ%U[KX[S!*^VV(.BTR]];:.6)S/;!&&C0I< '">@,J8XV\LP4D6V Q&% =*5U\V M&21?MH[E*$QK'-+/Z[?SJI4MVDO"9]@B$Q:U5_$[#M@,<_\30R>]GF3I!/D2 MU0K19MSZ3)VYPH:,EG?,>#*^C4Q.%T2$X#SY( MSK)* GUIS.%9-;CL@X!=&ESVD7<'-]0C9?F!U1%@((SKU( M5ELEAJT:[+/!92_%/M_@LH^4N\/)G;+;G*UT=6Q9,71J5#(2Z )7$% *;2U7 MY//_;VUPV4O'NS:X["/PL>.H)UHRF/&6),50A3N9&W)$,]Z M,^?9X+*7 G=L<-E'FN.#(LWI(OYPQJ24N\/)YO!X(YU4"!A8';8S[&!WC M^B''ZO9)J!P@Z [ \G8ZPW?EBI-KL\A]-MFJ>B>FZJJ+ +%DNBRUE"XX0T:W M>:WM RIZ LHAFKV?FSU.S!T Y0-^GU]\KY7GCSG=7!B-DFY1;8VFJS0B7:7, M0L1HZ#HU)936!49/$C3NG=0?KW\^MM\L9C_58]'^$;_ M9?5C@M$5G3WY\D:22344X<4Z*E<4(W2.,7G5>MCC/O3UE(XY$!!/7'!-M=,! M\MXOY@DQ+U^3)"N?RPVC$YU11>\+:*S#5(3@X#)6L1E35$2+OOF;V39B>@K# MVF"JC=S'SN(\=C)>? _3BVK8W\S2HG:XO)D]/"4I)86F;L4I6&L!1#TE10 / M@2GM&/?W-QYMJZKL'C$'4Z171@KN[R.2GH1"C! ,^.I&5-@LAMA&+I M[W7PY"PVKUR]\_T^^W1;771[2;!U7R($H5!#):#4$J0]KP!7\Z_XRS, M5G_BZBU^QT7XC!^J]B:1>:V*"* "J_O /$*0C*)FKVI2G@EU?P/]'K?>MJ_V MV4W;]*9K(O">D?3'=%:CC=?3OS&__!(6G['^EUL^+_*%3LU M&JT,D=OGE= H %TM6;"Q0)0Q >?<%2Z<-]CZG>4I>G;+8[)SPE$S\7< I76/ MP D2J2?^/T\Y<5YA=7#MK=H'-B!#H1M0$=@@(530&7& ,GO!#$7,AEB*G] M3Y"T&X;.*M/=4@G-,-6NFZM.B2$;2C^%?K>-THR[@LK7W)O0@\ M*MRZ\Z6P]4L?YA<7K^>+O\(B3YSE-@M;P&*T9'*# Q]\ 6E*=JR$F-QN.:-] MOSQRE=)@D/DI1!M4'1W<@+]=+NOCXI+XC.3NK;0+0S$^KP8-!^FV=K/^X"HO5\5FHW;E\ MD?/T:DC;?/$B_??E='GUQXD0Q1AR0R%XBH*5M1R\\ Q$T3*L%WD8NY.A/)Z6 M<G[*'R'CQ/(YP_H'K'N6\J?Y!_R# M_A,IIHKA77D=IHM_A8M+G+"4$X]TMEFP-7/@$((JALY[8C*SC-[NUN\W+)WC MU'1TB_?!57VF+G+ (NG.\O7BY>1G)>;C( M^VCP2!?Y]UF;71@'L+D98:\E2A:= "Z\)FZ=A"@,!YZLD)Q2F+- \(%:/3,0OU@L OWM6@TOO]3?OIE=K7Q[5YZ3$)_$%#Q3G$/2=<6E M-QI\;0B(=0&$LT:XYOW,)V)MY-;%P7/*/2.EP[>S]0*4)@,/M_RD8]_*=B&P MT1O9U:=NY]6A82F(7%,&ME9C4/S$?0#%DXS)%Y9\ZROO9PJ.2B;\>5F;=]^5 MW__[:KE\,YNNIN&BCG:=2(%ZG2BP1"RHP!&\ MB B2YV*8'S\O'R M&_D'U2:&B]_"1:V/_?@%'Z0?&& MD^B2Y%9*2%E7.RD]^&0-2(,A2&F4RNT'8VRC9F27^%A%;P?.,5+OPKOYV5E[ M\#S-?=&ZT*E"AQD40[*:.0I ;[AEQCLTK5'T-$7=(.DHS3_I,1^EA%'+#Q_S MWQYPP[B1B5L/DL@&%90%SXDY;GEAGABRI?7@WJ?H&?DZ&P90S11P+)P^#7'5 MW58>W/H!@84Z4P]\E9A2A4,,"H%YQTH1VLG[_G/+V^XA0=V@JO6%=Z3L._"9 MMAC;.^4L#+W6013@TM6:K%HOX+.';)%%\C-3=*VK-IXEJIM[[U@ [';U':B- M?F^_.PRI.LK*>@NFOMVH)"0$1W_TF"C2%=8:UWJ"]#,D=6.M&H.KI2;&OPF? M3GC<%D2+8H-W#B%*,O=DWTEVPC+@ DT26C"5[J4)]LTE[5>7?JK'UD-R 4/( M]&BD-$LB/9%'_4AJVO1[7$V/"1?OYU?M?+_7=\;E-%[0H5F2(VH]S\DI<,$P M4,@=ZMHP475Z-?;KIET',7OPG5E$:X2"+ /Q M[3% 7$\\X<6G3*:>I'+2%$9C! \V/;8A@D=19@<@?BH.WX/KD@.&NOY)LKJ4 MA9,+[.HH2HKB0HJ)?A]:+_AM0_FX$VL',L$G4F0'\'TV.-N#=6T98UAWG5IO MZIBQ0AY44:"C3R%96U0X42;Y$/+''8D[O"4>7*4=H/F9:'"?6TCZ6'34D*0D M!6 1X&H/GT7DJ:"DH*!UB5DSXL>=S#NT21Y+T!^#H^"29^M*ZY*4_:D<>?[O:3(!+31T!DT"ZS_7-IDP MR[75L_97KM>.M.L,>.X3K=L!]F)IF!X [X6+R#*0ST:&BED%T<1 Z+3&:\'1 MY.;+=-OU*-Z;2?L!ZR;3C:FN@KU]!'661\4*R"")3RXX>$\G0F))W*=L8]YM M=M'.G^RJ&6 ?-?]T^PTCX0ZNO)^O]6?9Y).B2TK:&$!A=15\CMP%WBT.J$#+W.IZ]T08@@""BO. MQF ];SYE>3\*1QRB>1I #JBPL>/->^S<]4]N1,=L2#FMAW^J.E_#* @AZ]KT MFHKR0=&5<\BM^MC'NJH^;W6?'BW5#HS6DT;Y+H/O<9%J\47B,6&6#E#F=6!" MG,:2P4>ABBT\>6QMMO:EL9^;]'B$['.''JNN#N#XA$E^C#MCA2PE$7^ M-.2T@UT9'";+X72.SC,)LNY96Y<2.A0"/-FV:"TJQ-;/Z&TG'3PCRAM&-5 C+<%RX,OADFK1>OWJ1U)ZRH=L@\>[ANM(53184/89@PZA=!U ME+]RP!@2'Y[5Z 4EH$U%A,?B##D.-JK617E/$C1N6'D*5+73Q]@IB?NM M_>\B>1 SS&]FO_^=UH,W7\\7:S[?Q8OIY[4(;XV^$,@-#P9XJKL<>.84PD@$ M1.YX]D)DIY_SK(XGHZLTQB'WX(DUT8%!N\?LH[QNJ:Z:2,6B)19)('RPH_O^%L MB1.KN W:<,@R&U")S*H+=;5#D>B$39HW[RIY@IRN.DY;(>D8D7> GEO#:C#% M$*4#5VS=4B,3A.PY&$;BT)'82JWOK?WNJU-UK+\L)8U89Y>J(MQPH MAE 9?/86B,N Z[JTT/ZJ.XS6<8$X''H>W)LG4.490?;_8EA\^FL^0:G)YT@. M&)?$7B"')";!() P@T*>K6D^N&\_$L=--70'T$,4=VZX)*#AA L;+<\92LR) M8F-&O'ECP3LF4T(AN&S?$[4GD>.F+OK$YM[*.S-TOIY?+B;9!NZ0G"6++@+) MT4.PR E2)&*/C)<&S>EWG"1FF61!0C2<@5(Q0HQ& M@,>@IP*&-E METDI18R^?17P 82..SNK.Y >KL0S0NHD4K!7AX9 *>2RJ%R[$$V18&6VR6+A MZ-KGR':C;=P16-WA<2]5];!0Z"F^_CG+UYTVF'__.]$_O=I1F^3AEP? M"!1:00%>;;M)2AM9:H+NI(FD;82..]6J#W V4>+X8ZZ?%NJ/B43#D%L.J-:; M=%D KS'7?7"IZ!A9R:V;6XZIDQQLLM7)0-="$1W_("9,@E"I(HIB';8?I_IQD**[O,E&REN#, YB:Y;[0/R=8.,X,D0Y$#.*X+ M"#K/2AH=$A]RKVVWKS&=P/ 0-9T+^M;I>_3*9Y8RY%PKE())X-$Q($\6DPS% M>G.2'7']O;GTA,"]574F&%RGZ1/SW@>OH(1:IF\#G2W-&1BK@\L&/1L%@N._ MK'2$P+T5=2X K"E..D#:47Q.87J=$^LDN=8V(J3(;!2H4:?6E1&[TC;N^TE/ M -Q746< P)\3[2G9X$I 8,A2=7 9."$L\))30"6Y1WYB%';T2M()% ]7V1G@ M<6)9'2WE#"@9Z9 58\#KK$'HB,&P(I(Z-03'?0OI!'5[*::#%Y!'^=F:-/>9 M9^TD!UWWFJC"-42=!'"5198I9S/H9/O.7SS&A& 3E?7SSO$HCQ/E318.)>AD M$"C$LN!M9, ].171!:'X25;,C/O&,2;,]E)!P]%=H[8X3>X9[,&:G"9\C#:G M^^S=-#K]GP/$^W$U3__O-_I.?CG_6GLCU^3_&1;UM>S[,1LI=OS)QPKP$ 8: MM8;5P9X7\^7E M^5NQ__@.L-)K7!F] Z+<2+FUMM\FQ$_[AO4"3'[8-KD M*.KO(#A\?Q'(('W%%W]/EQ//7A\T-4-6\IMQ$5OURL)A^JI5P#7S"-GJ .J%F$NH09 M?&VQ3<(RQ"B#83L5WM!/O6, Z$^WA_^G#XX\9W;4.^1PR?< EVN4H_:11)2[4W2#F0* M=?ZK44",1\C&6Q$3A62Y]2CNYDQT;M<;H[#5(6@"B7,^$^M?_D67X'3V^3TN MIO/,)ZKXD"19HJQJY1 3""%H 88+\@VYS*ZT?@AJ2?_(*>4S/0G' J�_#B M8OUOR)5[5 B;>>TR5_%:#L4&"TIA I=T ,T<>7M%%M%\]]1NE(VDU:>8SKH*.5@:X?*7BJ!9T% M7 U/2,0AH4W9Q-85_VTH']E#'Q?2(RB_ \@?+/2K1_0W,PK(+]=!T[O5%UQ\ M^A)F[[ZMU]K=_L]^*GV>Y@DWCGEN23=<\GI1U0[PNG)=E< QHU>F&X_E<#;' M[3(\5\?F1+#JX.3M9&_^G,^^DY>'5P[?\E/M)KK[WVO5YI_SU?_%U0=,\\^S M=314K&?>QP EUSV[PGD(=25NLD8Y)Q7;\9&_]?US"#/C-DB>PY4T.$1^Y;-R M%3N]GB^N_ZK^.S[)J%BH&\HE(]]5*6>@3H*@7T(6/EM1M#^7 _0HA^,V@/ZJ MI^IX,'5PU(:[N?^UEN>;V968UA)]'::+?X6+2XH4@S8%HX54&]64KBM",''( M*$EN)NC@6O>KCL/IN(VOOZQ;V Q<'2ZX?KS1[=Y;Z)6=:MZU]^17ANG@VYVQ M/KKYLE0IB3J?-H@Z1T![B*ED4.@*6JL9UZU-UZ_2S2<+77^YKKAW*H+*48'7 M%+P9;M'Y9,G"-'_*^T\WWYZ8':Z;;Q_U=^ :_5QXY917)"QRZ;PAP1E?9_B' M#)F9G(0P+,K6M6S[5UB>03_?7B!XLL)R'XUT *=!JJMXDEX:'4'SFGZN]^8Q+L&)=7_.:'\VJ7*3!/TPO[AX/5_4_]&$%587 M4'KP+-.=:)2M;=>EEM[95(=X(W93?GD0AYW?"(WQ>[(,W=%@^M]QU*YJ7"<) MI>).*@BZFD ,#(*J.TI"'1%(H7J4K=?\G8RY,SU@)T#XZ0_C 7 [^!Q^6^?F M/Z["8M7Y:?P'_8C5) M%/NKH?^5SN(Q<#LR4OQ]=MQ97 ][O"V"V"*9^.-!G<03DED](IE_X_3SEUHJ M^AT7X3.N_?E79$EN"M#N:/FNPI57&2V)4ILZ4KFN7W)).K)LUI(@,01S[PEL MRZC.?GD\T_#RN%QJYSK9"W>_=(2YNR0G3*-3=.B@U.G"BFM-9CI:T(IQQUWD MV;;NJ>F![W%2M;_4 3K]3=T6S?_KTKW/BX\B$4GH?EYJ/C'/"AI ZTCW3@MP-B,4 MH;5PT7NM6KW23_RT8]NB=R6T M4?OS3ZB:Y0^XFB[6N+KM,;WI&XV%&9%D L7)*U1*6W#1K46CBW!*>]-Z\/0> MY!U[;[PB<<_J,9NM%M-X6;]8A7^MCT7]X +KWX;%C[O_Z'J!MT1M8A(D'"TM M*,LR^+J5+'A3L!3.(K9N:3J.XG$+<8?"W7W[>4*M=C@\XLV,?HN?PM^XO/GM M]:S":_MRA!'<_8 MJ._]X''M3BME_O3<>XSH.HB8KLE_C23Z?UQWA9)'TD7M37Y+?T/'F'+("\Q M"CI825,XD4R=VAD<9,%X]*)>JZU39#L1-N+KU@"H:JB$GK!%037%J[.'#"7F M#9T'#D+3+\J%#,Y@ :ZEH@,38RRM4R[/D#3BX\@05JJ%X'M"TA97T'_M MMFW#LS+92I,+*(^1?B&&0K 9T&))J'/*NG5HN!ME(SK/QZG^86JGM1XZ0M=/ M[MM6WJ+UCI4$C-4MQQO[$U8.S\F*YQ-5F MQ="/-F]DNW^GX7/9@C)+_3[EK:/>A_-#APE MS!$]GT>96+[%0#_W=F?9)">KF Y$?M84)?A@(&AM0"LG98K92_&L<=GM4QV$ M^\?I\BET'"?8CASD&X;H-R_IS]/5R[!8_"A7)83+B9!TF'AA=(1@XO*2)>$C&6HP*T-!QWD#0:'[8GT>Q[H_D :7GS')7'^ M(J7%9;A8UD76?X59PM?SQ:OY95R5RPOZ;[7R;SE1WDF3C08CZ Y1TA8(3@BP M5N2"Z%$W'SG7GHL.LAFG1OF0>NX1Z6]F[Q?SA,ME99Q(^T*,O\+O>#'_5NMI M)Y9I+(D\<6?*.HG$R"<7 :S/(K(L'*K!+?4S-([8-G(:E+;448\87/>63 (K M.N62 =-I?WCVBYA^+^7(Y"2(E M[;,"7J6C= E OD>!:- S5C#;H(9&S9J2#8;HT&T-2H8U^W"8[X^U!;:]^5?RXW3!FGM#+*0T!1/3V=P6F5 M(4OG"[<\RV@.-5J/?*^/Y%P;) TEYF.Q\VE@:T:APS=(*>/]-8IX+6_]+N"THTC>_>I M+B6&)! !40JZX"/Q%3%E,()E67A04;4>G/84/7UDH88!T]'R/_J2;%8)]OCY MF*"327'G +43Y"U*5IOT:Z^D&T##58&&Q MH!_U'1L5?=W_<2UKNYXD]00E7 YE$#YI8-R3\KW5$%Q=SN&EES)D$U+KFO ! M2KB>0;A! K779'.M3J"* M"J9Z%&_$]($L5ITG,YU=3F>?WU%HL%;5D/'(*J%W/N%SZ5%?O/U&TGJYOA< M'YP)L\7PPBE0P+H?3U L$EG,Y$>2@RFMY(FW3J$?1NFXV]Q.#+Z66NL7FS=" M?8^S<%%]A:NG R3EKM;U/I@GPB4=)5*([%FNH^P9>$XN!)I@1%1)4VQR&H#N M0NZX>\Y.C-+F^NL JM?^P^SSV_ER^5.1\*<0+W#B.-G_Y"+D+.O0#.=KGH7^ M:!!+<(DKWKH"ZQF2QBF0&1IR+?70 :QN&[8N5U_FBYH2_'NZG,2"QL40R'HS MDA!G"KR@("DZ2=YI,+[PU@'$XY2,&Y V5?:VIL?#)=\E?E[-OX;I;&(28A+$ M!X]1@HZ63I,81>GX6.@<(O0/P$-5T(4_3RUHD MO?CQ!Z[W?RHIO&,L 4/+0$E/A\HG#BHHR;S$0L%SZV388X3T!IM#='P_$7:T MP#M S?7PBGL\"&9B\*6689 E#H6.D^%82S,$^II34:8Q:!ZCHY/<5DO,'"WN M#B#STTR=_^]R,5WF::I:N6;'>":M2@HL%Y)B .L[;SLUO09J!RI^ M9V#MI84.\/1HH_GU(@KMM,PU>XN>^UJK8\!S$T&+NI.'F'3WZX:/!M03Y/1J MIMH@JI4>QIY"LE5.'R_C?V%:?9K__O>WZ=73YR2[[+6*]:Q<+:FB>%=%3U>\ M2,QYDYFX-SY[2V'Z/E\=UY4:"D?#"K];5/TY7SW*6RRI9*4 (]::5:G "70@ MM!$FFF!)OL$W'.W MXBGV'6%(TK$,(2%Y5$F11Y710F)*BU)L"7:PQX?V)7^W]4 _"7>+!EYL%K74 M:/F2?O*/G^J))L)I%G2PX%R15WT>Y'^Z.L!>,;3*13Y86KT% YTD58]$W=:$ M_,EUW$%$L87YQ^=8UW)NK+>XP^ON7V*N1B,EEF<@"9'!*SY,)$%*W$?9.KYQ^#>)-Q+^K]8+X2 M\$S'S8N4Z+@)XW5]=8DUVVD0H MPK.Z&*?N"90!2@Q%U+8;JP?+'1RPJJ'YI*^3P>D(N?>]JN&>/6Z\H.&YG]XP MQ[<7(Z=8QF!C3H4)H&NMSK+F$F(,ABXT'I5)SAIY!LL8-C_ZGCDM6UH1?O\[ M75SFZ>SS52BS?(\+DOZ,_J(FS\/7Z6S]SS_@ZG(Q6WZ87UR\OLJR3Y@N//#H M0,5HZ1>*O(/*#%!D+@+#$IHOG1F:IWZ3?_M@\[Y)[ H)'5S-V_H6F;0QH(N M(19B(PEPH3#($6WMQ!&AM)[!>4R_Z& X[ LO.S:=[J.\@S'X#1?3>5V N%@- MW-ZWJ!L]ZJ#DRXOZQ/F:E'2].?C]FH8[@=ARXFL8%HT#+C4GU]@KH)"LCB.1 M0L4L6+G_N#Q@I]\^E(^;QSY'G \)C7Y-\^-UQV$+WN(GU7^K"'Y4Z(Q!VX&&6=L&\@BCI0AJ+@5(Q,(ISH MHCB&C7$? L[QH)P,-/U,D=TBB5>XC\E0EDO&,0$:;:JAB.!$C."-1L^2$*[Y MF.P6=(_[8G&.!V0X6'0Q@'1;T,2+<]JH.@L1*6BJQ1-.^UPE2=>C,O]_>U?6 MW$9NA-_S7SK!?;RD:NWR.EOEV)NU-WE4H7'(3%FBE[1?+IILS3XN3) YYZ["KV4,$;K5YO7W;Y]LK#W?(@MR&F1$Z9,Z]!%G,@SF9/KV10$HHB MBM,AM=ZL>*'!33O31O$=9$Z[@5RIY]?SQ>5M"*6:6S VNAK'1@C" M(Z"F?R*A12P3T>>Z)/.N>DW*G2-4WN&6BZ^M_-N+L[.PJI[XQ\5YH)"A=J26 MY>KLV"T78U_5WI&-&.+DWLU)E9'L#Q<\@M+60["UYXCHJ6V2%$^UWO8YE7>[ M&6G^DC_G\XM)FFO?G$ @QXJGTX V8Q.<[WZ=+(7ONX)J;OR-B= J>1*<:0J MQ5*JE\C7!=.(P))G7(O@$0_JAZ!7?$$X^K8GV]UO[ZL$.@7FRZ8 =$>A[8$L M*%Q&*RD$T)[F6Q89G$BJ7I"@K$W*"7Y09C*81',>K=8*TWLI,D+!'03G7V47 MV\-UDO&8A J@9"D4?89 >B%;;5/T&$11S+7>='6'*#U19@S&=YT,8PBD+Y13+ E7 FN(+1M%[[N%.8>5*[ MR;C31ND=L&>SA["*_^QBO3C/Z_5N,FQLLC18.X[K!0>J-DE@ HH'!6#RF)U/ M3O+6MYO<*U!?;3$3QC[MX>F!:Y>R[Z9?E%&C0R@LU240&\ 'RR':K%/B/N?F M7;+7!)@Y(6L'[$W*C-;RW%N!?WK]X]:(AJ11,++%2A=>2T,J1\W;\-8)UG(+Z\=-7BX7;..[=I3UFD*K37?(B;>:*=0UC]>4[@7-ZCW;-*V-D+$$D2CO:UXI&"QF%W'* M-+3YJGHP+88=T/1RWUH]A6\WRILW"C[+9;G*7VS]?/$[:8)@7IR'U1\;);\F MU5?]+#]L]+^]"^E$%5[J60*09"WT M[VP:.KBIVYJLMI(Q2\%=UK4")R+XVIXB++(HM2N,MVY(G*JMZ6U\G]/%AWR5 M]6WJ7!4E]G8@?-@4)!(3@4G?RZ]N3 MI*4454[Z0#HP@73 T0,Z'2FW2-'D^Q;JUCG^]73Y^6_;)UY28_MESXS]^V:D M01O0ED=I<.XRTK5+"A=YUX1E,@\L&@>FWLBD"DT$U$:#*-)B0IFB.NQ4Y]N? M/U\[4EO06ZFP@QS]_HX(+)Q(:WB]Y)1\J!8>@K0:E#7:U-NZB/#?3R?2# %) M>YAZX-SU2F^BT;,2(0M+9E-R!]XG#MIGJZ1.T=ZT.=]/1](@8._O2!J@Y;F= MT[[AQDFF-$:DC#&1U"Q+"!$1=,C!60S*\,/\49\=24,PN;TC:8B"YH9UWW"C M*!P*#,GGLGK@4> &4-D,&:4L&8U5-R^??E(=26-A':>@N6'=-]Q$KSVWEH-- M]:9K8RV$$!+(&% Q+$I*?1"L?78DC85UG((Z\-,#HYQ]*8-R'RE]DJ!X)&<5 M/()C&4':E#1IB\Q2ZPKB6%EG9MA\$>6C@-L/B0,4@I/< MT@6:N8&IUAKXIDYV&,*@1B<[#(%LYK+4/\-_EZN]EZA+'$+(+',R$+.H7?J. M@2\RUJ,PN/*6 ID2&M2COG[SW.YS>JR7S10_,VU>AS,*D:^-89N4:2W0AGJ( M,DTPT@=%P$A)&C ?G<4D%0G;@#UW"C!?&>M81)>MU3OW.L3/%_AA$2GR_-=% M6"\^;KZ]S9'^8IM]H\DLVUR+,HI^B*S!JR)!*&690&>,CP_%2@>]:3Y2-$)R M.95:9^?(:O&9C.EU^9T*K&1*HJ.@_(!39H)*D5W-(AG'R:;B8=LC;WGX? 7/ M*9API/(Z6 RXO]K"C+%6<0::R5RK+1Q\8DB:X9%[;E-T^/U4.Q\Q0FD/3P]< MN[9ZS*)1):$!] 7)(P?*"QB-@.:;=%[2;]Q!8>ZW6.4)YI&53A-/Y"T5K6"&BB!BV2X$H78Y4]R -U6>48IA%+$3K+&.C)'U-#PE@<(> M40]QC46U+@Y]#^E38/*Y1 ,GUCEJP"A[K)3 MAF(IE[*')++V+'(MXD3G^O52N50^>E0I0I%%@"J.'$AMY&>.-(":T^]:;S/_ MIBJ70QC4J'(Y!+(._/!MAOM96"_6;\K/JT6LRJS+&3:2J4:*>C7W%$*SDBBF M805$)J&"W'B;9DZQX#N+(5^<%-P?L2=!PM]+/N(Q!1\ 2 ^5RV0+: M(@$Q44['$F.N]75ZA\HV+Q6GX,5@ZHT :>Y%D.=+\A5Y<887JW6=G+M![O:^ M62F2T)Q31!P-*(\,G T(LE[YK;FPK!RVXO7 BWIGSQAHEQ/IN0.#]>/B]YRJ M:JX&LAV')-O.?4K D\F@D&7PQ2;0+$BAQCL482?E3GNC(W1ZBIH; WE_$':#EN2.B?8TRE8(<26J&2%)G M[@&Y+^!MHL0YR"PP'!3[]%G$'8+)[47<(0J:&]9]C=(*I8U@)*MR1&N?R!)Z MR\CK1FE+L&@/A+7/(NY86,=21K)516]=B? MP _;@=QG$7I02F!3:4XSM4YSHT(EO MNHA[5-PX(80=,'1, 1"9E\F)! 6]I<2,!_#:(CA5HK(NFG#8^7]_%G%'TJ9! M$7<(AAT6<=]>X#K_=D%/>?&YSOHCJK5W/>K8LNQ!(K:JO]YXUW[?G\02HR-_ M&>M1IZZNR?AZU&DQF,GY)L9:3]6[9#G:EUY_[J5E)[HRPU0$;7*H%RP:",@M MY7@4\DD94?#6M83;Y)C9UK1 _RN_=ZRZ.W!NNQ6!'^)O%XOU8H/'YD8]IR03 MF,%Y(^K-(93N.6X@HZDGV=3(M'4I] Y1NB+."(R7[17>*6_JQU7.VU3&^\@W M>XO(=E,>@FGC/B4DC4XZ:62\>0+8) RZ)M2\7&H"_0%T&H_#W&D^J>/L95ZN M/Q(FX<.K5\^W.2T9X8!ULYI0I*9ZVS"X>A,QIY@PB. T#_ZA(.:^%_3'BR,P M7#96: ?6YJ85IC^[K/-C\%I(FBJ..U#"(R")#UY9+:-)@O/F):/;19EY;;"U MEVJA\#YYLYU1W#ATW$N0B*%V!#OP5BC PE+&))Q3S7?UW25,7Q'.**@?IL\( MO?='H*WU)-MI*&DPX)$G4"PH\,P70.EXXC[I("8V.SVXK48@WT^=$1KOCS;[ M-2SE8U">(1C$>N0"*<45&I9PT0FC3%:N^>KU';+,7/:8V&.-4WD'U-D%@\^7 M9[@XW^!15^L7:7O=X;M5.%]?2L9/0BC&"E=H;/5:A6%,8.J#5+>GM"_KTZ8_=/:P_K=<7 M.;U9U?^K'_AW^'!1+\Y"K6]G;#N"F6]C?3PW_B@03U\J MWOZB_L"PSG__R_\!4$L#!!0 ( -%Y5U@I$?*832, !S4 7 ;G9E M92TR,#(S,3(S,'AE>#$P,BYH=&WM7>F3$T>6_[Y_1:T=ZX&(HH?F,!@\CI#5 M C0#W:PD[/6GC90J):4I56GJ4%O^Z^<=>5:5U T&I.Y@PC&TI#I>9KY\[_?. M_'%9K=*??EQ*D?ST7S_^][U[T5D^JU?%>;03_7JDJE3^9Y_SX=_[\X]_I)3].\V3[TX^) MVD0J^</+H!RFGI[-'#V;S^Z=/I_+)HT?3_S_]!FZ% MR_F>LMJF\A_?K%1V;RGQ_<\>/UI7SR]54BV?G=Z__S_?!-=5\H_JGDC5(GM& MU,*O\SRK@(H"GLI_MAZ^XR;S\RQ/\^+9M_?I?\_QEWMSL5+I]MG?)FHER^A< M7D:C?"6RO\6ER,I[I2S4G"\LU9\2R 2*Z>,E#^$)/"=5F31#.GV XQC\L513 M546G]T\>M&C=.8Y]HYG!/K +%F:3T4*2Y;-3J([U5)&9B"?B2)ZXC-5P8S,KD'C=]\^ M??#@_O-#$=7:N414/U^M1;8]PIDZ_=PSM9>$N]%2E-&B$!GJE2J/D)_>BJ)2 M,P435D696,$/*HN.C]'.HGTXQ\C65:%FN%8QE4^>_^Y*=Y+W]>] M>;V]R:O'JWF$TW7H#0J;\G*I9DO8@:IL%<'9K9 M@,-$58G9$OA+9%'O4A1)-,NS4@$. IL#9.QX*0IX95E/?Y>SRN@,P%8KN#>C MJQ-5*;@G*F45S?.B6AH%XF]UNIAXVB[(232!B_BEJ)>F4F96.:WKHJSQ=G@C MWEHN19KB@_$?H&@-U. MUZ(,QH&_M? 4F$X/H\&_:U5M\0N@26U (:8P%[2] M-$/C%WJ][L;TI'61;U1IGLT;%N8)Z)OEQ3HOR&Y;RD("P=,MT#N'O^$%)]'/ MVZ@$J(FSVYRBN*F.O_OV\=/GT1UQ-Q*S]UE^FKE2IQ MALWBEMX)TISNA,KFG*S*T>(R&/Z=?NXZ=] M\Z;YW9NZ.S-X*_Y#,^'D^'%^3CJG9]%??AC,GK7QV\^;G&NL'>?/#B8O7MZ-YEJ2Q!_H"H*"Y5*4%,P3Q9O0?R3*QI*'^BK4EB ME)7X4H"$0P&SD@(5("7+N^"$7]9-ATS^S\X1O;O ]]714WJ M_+B@_6'YOR_66KNBID<7>XDJO!+>)B!0B# )?MC(3"$&C/(LW7J8-LL!!LSG M!#WL9[6X<]6?6'B!H %,**RR5 :;=44R8XHH >4"R4CW1#9=3B(<,P$ M1E10;(\H8:L:.8EL(KES+HL0' ?;@RW@V87;-0(A,*WWFA:B3 M.M53LA()"M%H"E;T7(#M"I1F+,/QX8)T8QE[AAK^U!A#)=[+S#ZM-2)-AOQ# M%C/%0E2!?9JH<@9+CG/;M'C;DVQ7SRTH?I1L]]WAWRJPL"UM.!G[F*SYSC4Z M'VBFT>. ZNSNYUH+GN.+^1P8NFA"1U%7R[Q OPW9TK!*L#H2KIE[!C'Q*;D: MM,.(G4E;6 &8\B*.*+H<1_D4]C^--\8IE*GQ79!?1Y7:?U&NT3,V52F^%MX" ME]HK@+B<-:R>*/-Z X9):Y.^@Q_-H- U(];H-D&'@1U2DV3:$3MI]DF^=>KP MX0U3AY-7@ZCW:V]T]E43?CI-^/ X_0*L<5'*#=$IF7%TDAWFAS5-+EB,GH% ML@'3EG=9BU0Q(TQM,;X17!KDP\@ 3C2<[*'[NXDU1)35JRF(-Q<^ -P.=H.^ M>Y*#@1>=-ZX!<0_"T'E9S=7*FUOR&-/5NT8#ZG-65U+KWQ3T3MO?V1#1,5X< M1VINS(LFU(DI-D(N"E*I8W1TX]3.BWP5]270,"?S*@+$L(W K,F+$IYRA^1X M(C0Y;E*T*WL*^OO]7:/S"(M9+1%2 ?0IML!:6UKLD>:) MPV[H28/9M1%M&18X>@7PDL&-&<):#\''?8@F0&F5\RT"CQ38%F,IE?B#0,02+@ABV@C;:#0[+O80HW@OYD+#.WH,JB MRK4 8 CSMH&M6R+6 U%"O@#4NI) [[RN:A!A]B+V*=@K$/6YZ2."C93+R0@B MI#V5F9RKZ@2E!(Z[K 3C6+T[Y2(W<^,+"F\:4W&Y2R[-:[#4RF5CM/[6ARF< M";@"J E'_''#L.@ZVHBTEL0NVJ\B^*T@Q/1OP>JQR$^ZXVNW3Q ]/$9!]#.M MX4R!FKRXS,!<6JJUTY3???OXA^>!WAEYL=7C$E1H_N F8=OF3UF&BA4V /)L MFJLKG3!LUUO>C2_'TR7-X)FCWIKG[T%[5R Z:4E$7*&U7("_:LN OST8,E(&E>=FDBRQ$)BRV87DC"8Q/QB.$9A+G9EKD[Z5. M!3!Y1^WT 8Q@SV9YG:'*2=F?H5G2W60M7D'*B7,^2#2A #1+:%,ELCQ*\VR! MIKT#E]XXK"\;'M>$19XT!CWC;00S=).U8G0()Q_(PB4W8J9CQ\R@ X#5GQ7K ML7^+C;<#UQ=EQP-NGX1\=(P2LFUQX2HA"Z:*OB>.?BTN#R\.NPT8QYL>^\\: M])-]YO"%AATKRO6!I\TE(HD4S+.*+#T" ?#Z#)%(MQ>IM/DVB'-:M.QD4#VJ M1X]AV"2)T._!LF C=U9_3/.JRE?/[KM;Q!2D&QAHK5NNJ*?@_U\6SF6UD/>F MA13O[XDY;.QG(KT4V_*;#RI2^:@:CB_E#^MF* W.G%-7$5.IPK'995ZGG,57 MJ8ILX6BC\C2((7I,M9N)'*\@/Y7.NXS<+:@RX1RPOM8!!L^G&'ME MJQR_TO3EH,^QYLD@XM]A4&6B6&,'OF1G]R3HRVA:X19NI'(!R SU82E3#2(R MB1@#S2Z-EV&2YG4:['XD*MAQL(&4U!YM"^7Y.A #>J P)+.+]9CG0J5H[\"; MB!]X:^LGB]+E$-/WM":P_7RGN8L\DT>=,B]Y^G"B/]P18XC'9=,\T (2ONE) MV6FPGTAM=QL:7Z4A$(XQ F:FG1^AAR#((#6 O:HC'[AK>+DDX7S'0E>8$&A!Z0N M #(PVO9#E03#K1\U?+"SC,!<<69SG]7.8$,6']A4(-7P)G:O-')9R%+1OUBA M8E*Z@Y#@+D^,3L"N8.)U@C,_33E'3HSI.:1(8:0H@TE,^V_9\WR 5$N86-31 M'']&],-!Q^>_1:-!K_^_[X9C2N6-1L.7 MKR9?9=.GDTV/CSE$"*+*;-^1)/')UE TPD<7%9@XV/2_C M&K,W. /$"_D9W&R26#:<>@+"$*M7&DC0XF@C&TV:C.22$L9FHF1,EN7Z@XY& MY.RMRNLJFHFZE)2R@14=+4_.KM;)B[E4U8Y@.MA?0 +0$2V"=G M&/E2T]KEXO<2G&7R01VX0F:M/4SY;%87A;1NH)WFB0!EP2-#Z9UX0S,:FKQI MK*+*I@]L+1395#J_!%WCY$RSJ@T]*;) 1U>0!BSLA.DDS4C[ZK0ZUX4\$9>! MH.>I\6*PZ1)9SH!6-NI,/.P'UC,F3S:3EY1*I!V3-$;T?>"U^'CG;VQ1'&A. M]NF@NH5UR1,UX\BYF;J2)P+>S\-O1K*;[CP[Y>L\5;-M4(/?2KNP4G?J0$I+ MO=I'YW[TMB'BG===K5: J #_I-MFIM4>VTT->JQ%1>F&]Q M4LQW^ S]?8,\<\5UC^&M.ANO1=4M=$3KBOF0CX/;9F4>9,'+A MLL%ASXPD8$%*$,%X2*@P::4"G7GX"&D+XL:&=[WJAU#LQ"@W=0X\0V#0%&"? M$:[&T3?D)^DUKQQCG] V^P3O2X)YTZ4Q >(@7=/12@G;(.#,-\.P3:EGS8!6 MAK0^W1RX?OC=.CUUNM<98R5083T%E1U M>U !F@,F+2D'R6SCZ=%P T4W M17$;HCLP/K@:#.T'X$+1CJD: *>,-XN@!C4NRHM,;H%786)GE>M&XY%Y+"X0 MXI-C<'8@0Z#U&-AE396D ^7LYN3>#/R=YV8,S#\#^3Z/;HN:&($$+Z5GZ[P! M$>Y*2E+N\R@/"/:JS2U*2(F M,]8-QU\83E9)MZYC4BJYQC*SO4::Q=!<7L2)_QFW\A+D$2%KLJ#YXX0@>$4- MVY#F@-_$^ZABCSUL[MNGLH_2F3@ 20&&0KDTXL'D%Q^3V=.=$M[,@V_*UVLF MQ._/_?PY&%W&,)U,;,E=KFNN&-:+5V\T4"F+_TT;1@[VNB[)$GRH85E^.=%9>V_V4KB2DH#PFTE6NC MM[L[H"I=5 0T^BHPV.7!%J^&11AD\:@HF_1 SFP^,BN W@.>1@ M]D,AGK GN%W(E< N&M9VS<0'F,77B<[H4C##?1CLT!DT.NC0 M$=G0#G//14Z0-,P4F$I1:,B]!NO>15TT=KEUR/$HO>IGC&ZVG@:!I?:+O0Z. M(34',M=@NS25U6W M#]")EMCON# =K"J-CNN&\[J[AFW+ #PY(8% M ":]_XO>]":3P>C(2@X^?*D_JECE\(?E/#DY/3Z6 <80?WR>US^XUNN_D(+J M?OFOKJ7(9Y%/I_>?'HS=[HB[QPA9CJM![S"+7LH,RTL/BY1ZC4R8H!L4&B_: MK:L=YM9#R[FT.J^E#,O^=F3%7*?I@]=JAWU6:[$M\C2U_G)M$ZZPXP+:F5ON MTK,#,;A,<^>8XR+'!/MN55Z_+H1_L8[7K,J@?Y"IS23/2% 3'$?8VY"I,[7! MV#'H3J/-1C[C($M9%X(:0_KC=/T*VUT3POFSO8=T6CHW,.X\4T+W[+PB0]Y_ MM3T) 8&KJ4VPWM)]@#&V10:I6)>ZZ1&7*O 9/9:R3N =T_D/-+DJM7>[7I/< M(RE?9, A-+NV )@+')(&J=HAY3-:4&'<9552K6^6^[TC?1^N [&<>E< <9@T MYUL/R*T>0I7&M]XH!W2N+^!@E3+I89.I:W.$5Z+,/*J<1_AS-]XXJ(:9?M4P M5U+IA0%P\PH0DV^+?"9E\H7J1(ZQ,_UX3T>1L$"^D<9AG9630B1F"^K;WY+; MDL3S&BW2JBM5HRF2,/#I*Y;.#>ZB5GLDA.(61$7BQK+&A4YJZB_IR:%FI@%% MMDC5HM?8N'0ZY&?#X8%0P/1'HB8$F_;#@>?8.XIA(A,;5NZ\A))*XH0.-70_ M)&Z02/%OQ]9-JEA2KC63D]"'*4X[O -8>ZV3M\,SE*@N&U\7YC:3V_D7W=&/ M>H=>5:M]ZT3N[.[-$'N>944>[B/H.;L#;B#/Z);54\!EF 9#01^OY39!C:M[ MAB ;<\B$$BUT,YN_(%*FV^ GOVWM)7P)N+>Q/RS.UE)D!RI',MOBQ9$D.7S8 MVM=7$\ --V5B ]D7& M2TWM?_S'8*; K7.7/KUA[M+!BQ>#_@3;M/1?]N^5NLH4M"\[G7?5007Y"CV2*/:_G;HP7.<.:;H4MN+.NO"QKQATV M&H6)AS471X=U8%W(DW2%KK;P-KQ+N; G7;@@MH5-_)O@GX <18F6J%M IE'T MB"ZPEWM#I9=3_D"[.LS/YHB]%WEGFE"[,!X[0*5YLT_GCB6W!Z[.,6'!JDK7 M,+G=>GW?>93VJ,EF(@L.F!*<2)$T'\E4[*R^VT%[V,GXCJDCHRF,J?0EUCP9 MYA38; +"UP!$IR9VJ#G4J[\47C,&P4K/2]S0&XMX"=,^$]WNOI/HZ%*X)(4K M>SSO;W5DIFS_-%EO7CA3>F';S^P@N;.#HU\\:O<81Q<;1YAZ.G%?QWY2P]QH MM:/Q!Q]@D-WMOAY/>ZXB/!7TW M&AQ7 /)F:V_/E<*^7BT0^,@G S[WY)TU>N)H'VV8W,7RC 69KB] 5>OE((0B MI.D_,+*W6A9YO5A&*UDL,(T=[\I3E6@["X1KL1"9^E-__IK#>N0YK"AX/92' M*VC/5'7?I.@L,HTT8]UNU67(\><2-$&%EV^P?5/X)?USKUZ;O_+Y'/^$^:2_ M?!5M#R^)O8:N[CM$90HF0A0?G+Y(QUV&&\4TM"'E_U=2/YT+SLOLY$WW1=M* M8*8CM5-W)4D:"6LL\P*M\#=LA?]BCF9H)*S&?D=4PACXB3TB](WK?N( JCG M#E^BG0QXYWN%$^J_HMR1$]L%&4FTY85V9JP+7KA$I38;4V8PGPNYZC86FIB_ M@?&[<'@ TNA,U<*@(*L"L5(1=C<&T,?*X1/3,:-W MXUJ>!%:&B=T]/GGH0?%KI?L&.;Y-'U6[72B!:%-^NB?-M@N\LA68N<3;*5C% MU%V4,@>-PTPM%%?;63)L$1V?+S@O6)4+?1/B[3JM;&@>+2J7F]T:@YDL=]) M7M.QM@F6J6GZ,RFH3I"<>GK_G41C*C'LVJU[CLCDB#\=#.F?+GG-,Q@/WNKJ M@(C_]/X-@_S4(W0<]> _P/87_7^]NGA]-AC%T=EP-.A/+N"OP9NWKR]^&PPB MM @NSL?O7D]ZYU_[BG[N]B0VD<(XJU"E>P!D7_YUI^_%)4GX/HP=!T?<04>& MKG#UW=\6$W!MFY:-6.W6TH"Y]JA0>9M-3$J:98/A77?IQ A/&(;H@J*KKBU; MV"3%*C<]8^Z8+W)Z(?\G/'95AFX5^M(;/8IH/@0A]OP67>6+/Z"(_8!C"YM1 M''N@(-<\4[]^YYP$(C\E]Q JT>B2Z6=*'5?0<+^6<:!7["35XU M^O]S\;YV,Q'9UVQBLR>]?!= .(F&[<.%%!T8-.!SHSM.0?++]PDGS=YG^25U M3N5RH'B_1XK@?*F+/L'Z+5 S9OJ@:B[CMZZMJ:PN,7-H9X^L=GGK[L:QWAN4 MA8N".VCX#=44,S@("%<-@,J:W(Y+';/M[)C.KF#=K:@Q;>1_,,ON.]=I=^B> M1;M#HFQA 1GP FEB@&!&N^9B_/"]J5@O =ZL:3O9HH1=DV6[*'WF@O=#0HK3 M&P8I7@]>#L[/CJQ"X>8#!/_T$S][>)T*V "H)%#4%1)WGBMVOZJUXT>>T^/G MHW).#\H55]->NL[78=E]N\]*V(M-9S^W/#>V\9I^:E=W&&,.7X<.(]) .X+= M;\S[EI+Q7 \S42#@T=')#BVO-=9)%+W+Z!!,IU6">JU@7&;=:!7)UFRV!^#S M8'3#1LYO"7P+E(1,V=6Q]EWHF.!WWSY^^ORC-L)1G!6SI[3[_G,\ 7T\Z+\; M#2?#P3@:#=Z.!N/!^61P%OW\6S1Y-1Q'_<%H,GPQ[/8 M7,#EX\EHV,=#$L;PF D&.R:O,,S1@_]>C@8#C(%$/P\FOPX&Y_IQ%Z.W%Z,> M':S0.S^+D(+1X.5P/!F,X*W&; (;":\&S#.\<1//#%\#40.:&'OAT-S_O#M[W7;IUA]?"&:9LWPW%_\/IU[WQP\0XAQL4OPS%"F*\JYM.I&&"* MHVP)._';7Q11#\1>LCI\6U@_:L3'J5J7#<8@D4J7-)@7+1WH[%@^;]ZXWT!3 MYY>81A!S0#O3CL(JG 9AIH'>31+7A;W1ZYQP)D(8 +]&=#B@\GI9J7 O67W[ MZ80'!X>X4NG4MK-L"NY;Y$ _5^BX(T;90VZ?Z,5Z]YR1Z&4P:CI!BZ)3\Z/+ MYK_F[QRO"#O*%IGG<*<&%(WCE74FQJ$EF06#YL@LC8ZZ\W(#4&P"%Z%E0&C1 M.+CI&+54RDZW\W5Y;FSWF0VJU=3*GFG-*:%*#+3;11L%#[F(R_: M1DZCG EA=>+.1 MTJ[C7B3RDKHP+KK.\_347)*_,\_2SL+*/:-.'6\Y5+&N)E!%KX.OX7<^>@8N?-GGM*9#J M?,,=V77&,1FO#9-,V[B^LJ@FG='6(O,O7F&,>;+^)F#O] M%'F&+83-@NK(JKRW$BI%6Q%V?.DZ(-F,EZXC&_:UH,IU"HGIQZ[G_MW)^"1Z MFY=5=#&?ZP,.3! 9+J0$?<[:B#FO=P$R0.J5T7%/B:<9J#0VYS!CU;K@!%HZ M>TNW,();T#XFV#[+ 3^2U-+/YNX=^,(%9[#/L6O5&@_N4A@4;OIM8F2#-Q6-[+[T)A%"UXCITO37LU+8*#\A81:[EHL M#*28GREGP8KPN+6]XE9"I8ELP;Z&/=ENR&ZDVX);!*;-0_O"LFQ=VQ.; ..^ M3KJ>L,7G4ES'>.*NT<'(V!TL";@[6OA$3WV5$7ZCA?2./G4ZL[/K+(T][V@) ML':#(I.E"5./]<@DOU2VR=.-SI/40$XZ YYJQ,-31D*)UQ)SNE1A)07#UBY- M=GT^XB"I!VE$! S[GCPR7L468EUI70=#3%S$SY@PRS=]V)#CUFOILX$M&R6, M%LX+7T7L'?2NW*';IP2F-Z0O4E_' ("9CE,(^R99,^VY)1N6U'-4)#;C&BT4 MC.UWIBR8 (B-&7>QK-\I(O%MB6N(Q>9# ME$YZUH@;A7"NX^J4*/KIV'V)ZI M):&Y:2NX@)3(&?UI8;=^X:F=$@RI#:U%='HSGGT)7C@6B*#,LHIK]L M^QUW@SSEZ5:?L]!D:#-_/#6)"['B 0D;A29::+L&6R!N&)54$1S2<>B=X62^ MX*8;5KV-:_3Z2/+!>E:0<>;8 A_3M(I$0%9A--/QNO%JN0JFCJAARX[HJ-'I M"O$9]_(*I28WZ!)499 VVZ4_RK.D!<0=HKLJS=)5Q2'49!^[J.(CCT19-9CJ4_;V=4<[18*HB?'*(AZ+K/GM3CXH:#="4*<:^10N8GU MD]2I=,4P&#G8WAP?4)O23S-CK"U9X;F*I?'8Q M-E%!I4]B2R='V29)N(0<_/48.[F/75%D@CCZ"F'U@%&I7G=<9&X,!EMJ8 MFQ)2NUO%>?)A/\7,=O#@ZBK=REI7CAL-W-*LN3YVF70>]@9QN0&[.V <1]+< MWZ=YLH5_EM4J_>D_4$L#!!0 ( -%Y5U@_6'1D)B0 %_Q 7 ;G9E M92TR,#(S,3(S,'AE>#$P,RYH=&WM75ESV\:R?K^_ C>IFR-703J6EWC+294B M*RG736R7I>0\WAH"0W)B$. 9 )*97W][F14+I3BQ"5K*0RR26&;KGNZOO^[Y M;MFLBN^_6TJ1?_]?W_WWX6'RLLK:E2R;)--2-#)/VEJ5B^3?N:S?)X>'YJK3 M:KW1:K%LD@?W'SQ*_EWI]^I2\.^-:@KYO7W.=__DS]_]DU[RW:S*-]]_EZO+ M1.7_^DH=/WV:/9O/Q>,GSYX^.I9/9X\>/I0/GL+_\Z>S_,FC_SO^"FZ%R_F> MNMD4\E]?K51YN)3X_N>/'ZV;%U/W&1_SJJBTL^_OD__O?W_QP\G.:O'I]>C3Y!K\[ M.[]X]^KTXNQEG=V]LO9ZXO)=^#@=54>GJW61;61 M,GFIM,R:2M^[^3H;[M/O;=VH^>8%?:7*'+KX_.&WZT\O0H_&UU51S40!ZZK, MCI*#9BF3;[Y^^N#!_1>V/Y^H8?3$YZJ!@R;K3*L"_G396]3WXM55/O7*RT%*2/7>WZFZVZMR(37"L=KWD8)V)IA'9$E:9*).3*Z'S M)*O*6L&^#U["J+Y-ZG;V.]@8=C\!RV<%SRKI[EPU"IZ1U+))YI5NEG9S"14 M74PKW4W047(!%W$C<,^:25FZC6O=ZKK%V^&->&N]%$6!#\9_M*S7T!J\Y48M M@W[A;SU[ IR?A\G9?UK5;/ +:).ZA,VR@+&Y$[>;B1L.U@2':<>2EM)Z6^OJ M4M5V!;*R%UK"*LXJO:XT^>=+J24LZ]D&5O4<_H9E>)0D/VR2&BQR%,JN)*5= MB^Z;KQ\_?9$KF3KIO+MW)6S>5$QRQG0OZP0SE+I-K$BR[P()="3+1-33=M6Y M-Y-PUMMUA2ISD_RG!'WWS M]?&W]U_T__]YYGFH53PV(&\5;VC/:4KQJJ^^?RE!(HT*0/D\A3\:W=)VN+L6 M?_7]1Z\A1/+_CC7TY,'. ,?CH^-=#OW8 @Z6RK14Z=%.<;A?RT+6L&.!]M-7 MJI:PL<$X.9,:MD"QIJ[\@4 H;;WL12X%>'FH,U=2H(D- EBCMZ#9;X7Q*5X_M/=R8KX&_L2.%^"8;U2W6I8 IS0A\N18$;^>= MO?/ MQ"8A343.YC*8L",(509.I>HB1^?&O7QX]/"CA344LOV5UMF=M'Z\M-Y)YKAD MXF8X(I*55@OT.HO-(*SKO67KWHYJQ6'I=@](R?,%0\!L\#,)"@-%$&Z8ZVJ5 M--!ON@/_'5(0SW:O'G9J]SZ8HMW[&5VBO3)\3\7:^XU$SZH1[FE$8/T2T(S( M*_QP*4N%N')2E2"*/II25DTBYG/"J;PUW$>%&$+>>#R;<: XEG/V@2"HJZ4L M Y,[!G6I($ M]6B(:SBZ ME*)V0EU$,+634V%R+-F\+,R@KD:,V3F8"3"*AFB4TM>3- !\N:).M4Q\< MX(9T>M&(]ZC>S>-Z?3+MD!^DSA2K8S3>M2M\DD%#=K\VW>6A_NV=;J*#QWN^IGV54?3C-$X?BZY*[OUCUZP_KW M)6@R1R7ND6:,+A89V?5IET864W>&K)&+"IS%Y'6[FH$.M!W?SH&+WL( !4?W M:Z]9X;8 M*3MQV,4R9D )8IO"ND\@M4I/I0X/Y?HZ,&W.0Y 8*R@4YB!#.<" M?<%!6L\ 2P^>)9.#XWO,K,&>$L2SSYY!>8K$;H#:ST#4W> M._9;\]U*Y$5']HPG;IQJ,C=68%FR66.[L#9="$T^L#,*E1&QJQ$?: TOJX(M M-44@Q3V4)N'Y-5XJK*-AL4E+%;,KFCACF#"')A[(<5.8]3_WMZ46'*A!6(W' M,',G7G;M"!/[BI&(^PEI"'\F!$[ MUUIC%?D]9%G/9"GGJCE"\<7!J!M!=BLU$RZ2B\J.C1MLL-J#82S$U9ANG+?@ MG=7+3G>-7K.>5R;@"FA-W.6/ZX8SII-+4;22UHA!9 S0#%:F^2VF^_V9.;S= MFNOA%*V'4=Q_$H8$[:..,VN7+Z@G4C2X_G/;?ECNJ(_ -_1+<@&+6Z/\C\D9 MB+T+;]"N+)+2F15!X/,*'KTM1A+C$M0FE"8D!AN3)F\SDH4#Q5_E58'HJUA5 MK1>2N$=KH7)T=CO;/UH8#'/@X! A49F'^K:/"H@9YD>/81[654T=?*YE(9!_ M/YH-/*N:IEH]O^]O$;.Z*MJF?\LU^;7\_Z6V3UZ+A3R<:2G>'XHY#.)S45S! M],:OORYI^?JAWX/]_!LI^&O6' ,K MH/O;@G:5N68("^1D3$*\N.FJM1$ 6K%2$'## L;K]R@YQU<%XC.ZY'2>B M%JL1SJ^/P>!=0V-MMEEZ!,QSB8 88G5-\&0,9HHZ,&JZF(O-+Y,;GEZ:6JMK M^OO@?B,GC_8,.?E-NJ2KSYC3>NL!E$?3!%!>@ST-2L8LBMW:/2:4&\(2H*HM M#/'HZ$%J](U!3[H[0P0?6#675:"ML'MPN;D[ACVZ6,31#33NP$/_1@69_(B. M3:O!WF ?(XPXQ*9.U(8YF%75E0D+O+D"W5TOU3HYY9RELTO"D)S)=\Y.4R>V MC7_;7]@HA.W.IHU%N/Z8?V5&@JDOE$/%3U-UX(A>+25YU]!1W/MI>PW?LN7Y MQ+>92?0R>6M"RXDC X-=OE4Z9I)\FI,LDX7T@4Z[ _U*02T[60H3?LI&5\4N ME=!1\LH$$R^- S_00 [/!5&I?EZCRU&RRQ_#5;C4;5P3M9=6&(*LO+>'P ;8 M:>UJ%46%AQH KQG%M<6?V5?C*]/DK6U0TWY>)K6F MG M;5DRD[#1C-*"R20MZ7AWH>%&FW^+A 5F/02!+,;,4T?P6\29W5_'^K.C;V)U;5.A/LX,F&ZL M3U+!(9*!F %H^-0 #LX(LN!#P&A)8\/M8+=KD?B*OT:;R01HWO=2GW[9["4-_FV,3C:1K-8_X;5N [1:C< M>JEU"G]B'L2L;3R![L2%^7<,3Q$45N?3="Y_A]L$7!GM1L.I3.@!?!9+LD2#@_=S]$0S=[:\^\%(5*MNDW=!R8\JZ#I Y MY(5%VL%WMWVGKF M-^WYZ(Y?N>5!2.6@JY.HU0J,"V@9[,P=%'Q;E(!JS3#BX3 @!LS=;N@W0;IZ MVR[)E@B2,P/,YKHF.!X,04;P!,."D9P8X>"CJ-]A=R/O<4R6[+2FL1Q5X7I/ M[?]X@=>\5 _=)\ M^&^GZ<._PA)@QLHYCXV0W5IBY]NHIG83__;H83K@ Q._::BJKS'N M$@_FLW MX"&10!IL%(9VYD+0(:MCA/B9=$?3DJY4EW(5V@C&40P)L!R_I\1AVG6@!QK& M=2ZMO<64/ZNFPVMAH^3]T=/:AK)Z:1#MAR+SIU)FEJ5PWX/I2FQTX1D-V:;@=(U"\C?Y)*> M.%!$D>CAB'B'9 N>:K#R;.MO,#6>ET2K56KO#&&Q]H&.X[ Q>NN8O&EXB_-\ M8 UZUSQXP.U6;9,DP;[S^UN-FZ&+07C91.>E;];L7J\MAINJ@J9V8: 1AG8G MU38P%S*_.[/48T3 \]B-'4! &SYL+I&Q7J0P'L0U9'(=M+Q$ROMP=J+'?)!0 MWVNRL3B,M>-S4A4W/>IMH,:NJK;@*MN,-"&]755%5%DAZ,B6A@>8%/0A *:P M1_"!H:C&EO;DA,]X6$A54V^DK:%+V;Q$O*PWH'Q6/#5>'_K.-UC; 4:@0"65 M<_EN50J?3!JJ3QC4:H8E*;@""UM[U+Y*HTN>;RS=_W?H5)T;RR[*B_4!JAPC M5MT4;KY'F$AB-CP8I'E;1--D[&J+@I1>X3.6+<,3(59P=YR]N0D M'E,<_9->GDM_6[]C8$^<@>W66NSLH;09T>U9"ZBM8)KJ^<;4C85^D,W!&?H8 MO#6:RHL FHEKA*^U(J6"GB!!?YGL*]:RFR 4ZQ:.!@896RX545CT$#J$.T(W M"1Q5)CI^D?/&OF@LV+?;.GDT1>OD1\^OGXK5$2,C!F (B _)OWW6Y[Y OGNNDYY,%.$%)XF3ZW:KC$XZ\:LH MHQ[CK1_ <&],WJ]@X,9>#"8/1Z/J>#<RTVNBJXF%H0 M:*>L/XQ/;SBAN@0.\]^?08(0Z?%VX.<(2# >MZD@76Y.%+... MBX-59[AUUM/!Y.Z##L!4$>JGRKK5@FKVA/WTE63Z:$<\?M:CL%PQKE(W>!9) M8)A==I)UK'^US<6-\7":ZVI^-+!UF=2[H!,,B15@B_?3U&'25,$++DZ!O_$@ M!.X$3XL:Q*5NLQ7V9)KP]PG5*;<&R[D L7VKJTS*?,?VV/D6H";V)3KXL(#5!LUCC8>8OR" H!^J3J9;^R'&/$ MI'Z1.,5RO!E"?CL4&=P>+)1-_MIE_^$P[\Q#*C9N8T&M: NEU@0$"R[0,/*0 MM--$ EW\TNJV:F[CE+30.!>CQK770]$PX\&$).("#3-)>MR"X /HWZVOS?!D MFK!T8&T3FVZ2SI\KJ6<*R\W:AI-\D.\8%)FC8C#7PRJX?)D@M*ZTPVG_@BK! M>@P2JR\XFRR0#4^-;/Q)%J0S1NRR?J0]P-T#0ACGLYNWN-HJKA'9>KV_<;)5W*H=RC ML$".*0?K1)=\1JX4U3:!LMI"8CY^>'2,9]Q%]7A):;;ZDHIYT1%WH%!;^MOQ M#\C)7K*^F?;]M7#DT7_/- M$?X=6?RF=].MT"%%Z6?2ER0P[>L:P[3,S:RYOM1,H>N2NJEF@EGZ2"2)R]68 MX">/(T@-K%U/[VZ&\Y*9M Y/@3&?8WJ&LXZ".I&]LI?;#JATA[L.5<.,:\0= M6+(V=3=R#XY-W(W&L0![^ M:H6N%H_1/%J4:4==.Z$>DFA_DVF..W@@NS'^,?-5*H9WC;8(U*ZSH-V C@"?_7:4J#L-2;C? ME^%!V[4OOT-+_-F>6>)!EB+)-4\F06"G)M_NW.;;[8MION>6^'F7*6^@,PYF M6TG>EH%ID=8N!\P5;)X]619_)5O70\9!Z@7/Z>=+=KW'&QPQM?&H M"'@'#(CQ#(R!U]_Y^Y&W-"0[V1)!QKZG;P)MYXQL>T *OJ3L5G4?W&S+_)NO M'SUY8?9NXZ'X \7-V21]-R0BM-/18=H>^,5IG?A-HQ!["PWY>#%%A!R;L"Q< M3N_'*HDCF^8;'ESS1:5QW]$U)T[7_#OR[#OY]-?4430Y.==FV0\=6,'G*06% M9&>B5L0]]B5S@C,Z72L)XA]4;>GVQX]8KPYO# MD-RH%N^ VMYR&!?35\+*V")^?WS64^>HI]OLOAS?WS/_Y9V!"-%P./=F#E9D M@4\ZF+W 2!T\]7'AV%'9U-R J-1K9C2V+.!*@-3YFT1D//R M3G9DYZY[E'<4Z-#8.B4VB:\VE,?5AIQ]8X;3GTO"3B!:&=Q[50^4O P"TJC: M>4Q=K.?F1Q2]ZF=I*LJ\= +8Y^R0)!-JQN"SR-Z7U17LG O)&0UA.P:*W)'W M4LNUT,0GO-*H_TMS\B,?L>3J$<]D(-R]JUH:,,. MJ]8HG@Y8Z[B8%1'N<$NB@UN6AEHQ6#B9X7M/60^'C7 !"^F'L15RR$T1E7'F M@COH%X%N&D,\:5!L?!H(/WPKE? GV,37M) <(CHV6+9% 0/V5F^RQWNVR?XL M%ZAX]F7+_-)"\R'K"3>^D$B^+@0(5L$3!+H>);K,+'5Z-+MT/+DTK+9!V^VSON+ 51U6!!DO"W_4JX= ZBZUM: ,%[Z'@8'*7ZT;JKI%+^]R%<,* M;]Z<$%W%'U[@G#JD7'MZH>X.G1D3#/Y@.W'4/['HJ).*[@, M6T8_0G.8(BHO4?NB5L&%(\LZ!!V(&\]H.R66DVM3^\#KEH(&T3O"W)CPEBC_ MW];3].>;@[NU:!5CC8U#><;YG_Y8[T55F7/#"?(2EY5B,[DMY_!!NR,9B38 MNKO$8P##\Z(Q4F.,X!)-POO/7OA, :KVWQUS$SU'?GA$>Z>O0F*B'TZ?QBP6?[&6$%730N]07*TI4+;++PM)^E4 MOGK1EEA/B'22VC"5.4GY^2HDB+48?S4GA24*0[]Q.LLZL-@Y8PJMI"A-&AQ^ MO$!4N]586-5KG@';;S3B_!GYEEL7:=3 H#-38%N&Q\HJ1++H2%0T&YJCY,=6HUY?59HK2@R1@;LPD&N.DV%I9/CC M6]++4!@7CI%1" 61FA[+R9B >(O"2N_-1'2D%9V)'LC[,#5L74^G(CZDI6$N MK9+&TI.3$!TW07.EP9O,A:-=UA1,7^)QTPAVN;.K/G(%V7IL4H#7( VU\KIG MY5+ NP.KA8M0#;[@*#G!.G\4!S.)V[12J;H4)SPQ(3,D$ILSB-S>$H*^0W/F M HVPB-L5RI?D2EXV^#UVX[@OLL9@?+DX+.2@)3G;,C#>OFE'WP MG@_)GLR10SD=54(N M/K*IZ((076$ 92"=?5#$0IY<-2ZGL!$C]AQ<'?4Q$F5ERE3;@Y%=0;'1+%97 M4+=32W=+E317RV!SO=@[*AMOL5PVUJ!)XZE1?1#<%'/1,-*BYM&@= 5,W]4K M,OSC3E&/F.* (> YK%MD=]+YTB'=T]5@=.!X(=0J*!?'A5#H,JKV5I@1H!"# M^. K'2)#KA0%!@I2#A_*&@^)J.H&OIC+D&D7ED?25 NM 6-Z"; MS2-F\,L[NWYZ=HZQ[U813[*(W$EN0]*H9M>2!BK!FE[X2UWIZ=05L,>$VGJ; ML/10#'1;D$=J5SB&YY5>!?8Z+LM7*!9(EWN'7D;K@_&&T;(@'+FZ;@E'?&-_ M"IMM8EY);J.+;06U%ZT+'JEB,N\9NQ4YT]Q[F.U0&:B/E<&H Z/:KL?V@!^8 M8\BGM5*A(H$+Q)22DO(]/?:.+CMQNJQP\H[K$*:4#O"Y@ITX$']<@8+%WWNH M$B6(>3%](-0P:GCI%QN\C(\*ZQ4C':)EF9(VQ+M=D%$HW*J7KB*!K8J##0LJ M'&]KU^YM_UV&=1_N65CW%S $95&(4E9MC56T3*S^+J2[(YOEX33C5!=A/$4G MSI?V9YEO)X ^';+>!XN&E%7O]%W7 M4&H1]H$8P3[W"ZFSQDZ)L\!ND.34,7QN4JK"QE:VMQ-WGK"V?.@C]NMF+RIH M/Y=5\^'YP*+RM:H*M:)3]IHJC1V9A$C![OU!@M- D-#%$'SNN>D53 828^&= MN]^H=JMG)HG6OB:XAKCAG1,5XIK4.U$W;\/(P;::I_8$!R\'G1/)4E>@(*#4 ME,8L&\BV=-?TS@2)H5N"*BP_F8JH%$K:0[ZQ6*%/QTT="3\-JAZFR9I<$+BN MS-K5C(K,$JL>O+52U4MFCV_,<9C5X+$ZUFPW050G*VA)+-!IAMV#FK MM$5(^(2/.9UE:XW>D/'/ :%MM6?B89,?I,[0EL4#I5IM2\<,M;10<\FE'$#VMB(]M3 M(W"+(]>0BY[R+CTW+5>^Y?9\"@H911>)Z/! SL@$>>BQ,&A1M3D-U/7J%N[IT?;>Q M=#EH2 IP&:\C646]!"BGW>DXN=2(((4< GHI??9=2,,^W'99>3Q%67EI*U/# M GM998'ZY+,+=KP)G!#&SW)E[? UTHZ9$?%M5/.6HK*Y*E?E2XX9])P]70A7H+H)^J/W9 M!\Z3G_UVG&_M>C\Z/D;54WR1N*0(9Y17 AE;6Q3#L*;[IC M+C$^RFDZ\ $;2^\P* *;[P0#8/KJHJ28-3G4E)B856#'DHXSS^8:[?C"!==] MH7 DF)_(7TKM.$@7>S&Q=('%0,R0F6O-Z$"0RO\;MV_GX:!GEHN[CYY#.O-; ;1 ++[#W!+T$Q,30_I<,).!R.!XRJ MQB2D_[DNI[W7TF=K&UPJ8;V) MJCTU,#ZLO&FJV="EZC$8\ MM.YOH..Z#XGU.Z4+XD8WBX-!ILU]HL]B=#5Y%E]5[&5)-,J\CMDA)N*#&5S6?D^W* MGG:>%_I9G9.= ]G3MDBT7[D':MY3!&ZA@.2.O.->5/YAQB[O?--=T';\>&AR M'_M$BB<3JF(?,1*!M..\4<7)N#U'R8]X&*\W+O"/O^/,!@ZGZ2]/TT7Y2 MN.GN,=#T[12!)C0 %YIT1A\]W]D.O=UI$0%_ JGB"ZY/[*G@+6(QDG#4X#8+ ML;CJ3?:X"5(898-'3WG)L%B3+T\U$%/L ;(#!9B& H 6(EZACN4J\$QE-=G( M;)W3GX1WF0YQG@TS\5R[P+.*6EVG$>2<=GEW:4!%)5K_JNH''#^J9YPD%W4- MMH,(@<.>8EJI:(8ZRYJJ6YQE^W*(5H.96SZ(AD=K]#0NAR-J">JR'#WXY#/@ MXW>DV.EJ[2=3U-HGGL3QL[C:M;X>9CDQOKB=L#HDI7 MSIEIA>8<5E,%U)HP/=,$O5V[P5&=:,^FZ"_7&R_*/TM-GL;^],]9E6_@GV6S M*K[_?U!+ P04 " #1>5=8QX41<+ * !A40$ %P &YV964M,C R,S$R M,S!X97@R,3$N:'1M[9W;4AL[%H;OYRDTI"8;JFQCFT,2(%093(!@"(/)3LW< M3,G="UM%6_*6U ;GZ4=JVV!S,)T0(&S]N2#0!_7J5?J_7CHM;71L-]GI2E2K+ MT6J9KU*\VB):X>^6EY?*[_Y7F7.WNLN']Q@[2.CC7%?(8H?\\]>65WIV_4+$ MMK-6*9?_-3=UG:5+6^2):,NUS%IW]DQ)ZZS0KM3AK[<*O^>F\>E()4JOO2EG M_];]F>(9[XIDL/;'J>B284=TP4Y4E\L_"H9+4S2DQ=GP0B.^DS/369S]>3%\ MA7>NG$1(&K]2I>K?8^>R(UK".;A2JDS;.LOBR+F<] N9W-AOGK(OGUCSZU9S MO[Y?.]G?:>9Q\XL:_>73;V_BT9\K;+?Q9:O6*+#]H^W2O09WN6X[:5C56_.R MN,M^RUL)C:]O*1V3+KKW2'C/T-KXE_58F%["!VM"9M9D-ZV/2F\I:U4W>T"? MM!413T8/R9XW/#V2Y(R5/VI.V'LBQF[G*O8Q:R*#:N9J\BFQ^7'N:6Y\0T]'L?N2[96[5VR MREWBN%F;AQ7Y^26??<6.>)>8.F/-M&5$++@>7(E^Y(<9KUCV+SB7Z]+7X8VF M=:$(4YHIVR'-/J=:F%A$5BCIG;0O(Z5[2O/A 9U/VXDI5P9^N*;?DHEXR954O2=WT/+=#G*QQ9Y*O+&FX)54^K75Y6>]='==>CD_U2GA M%TY.\,Y]M6@W42V>H [-]-)=@!F;,;KV?>:.7\;I$"[]^=#OMX/Q4^CG%4ED MVQEPIK04/%@7/"U+7Y *% Z,/2V5;2I(GE MTC[),/XKTL\A-X9'G=20M298+P"G(T=\5L8=9 TRK@#V]LW2^W56,T9%@ELR M@"O@BK[0!SS@BOE,VM!+ST$%35_<$2=;M8)G9M;AY8K\C]+GQ1W9=A>Z&E)@ M-1UUA*7(1R$-+F,3\1Y-'&7N&&NFND\#I,W_"8V*&B)''M M)?^YOFXMC51T\T, 4^KS&!@% M1H%18'0F1K=J=S*4S=>,X NL(;K"4APT3/>4\\R!^Q&L!\!33+T"4\'47SF; M(.)IL&\/GH*GX&GN^(M+R:\PZDP.7#18S ^ J :'Y@B+Y(FBK5$04N%Z 3 MZ 0ZGPN=BUF"V\W;"77'?O4UI*>,\ DEUS0EW(H^W9MV>I0AMWQ]"V\9E:3V M]BWW)J2>_-G1UZ_0IF)+$S\O\C-72==X: M3_CW"JJV5'2>S>/93K@^9]O7J7*#_:)BB3IB*\16:);F'E=-8DUMRBAZD";) MW:,F_NPN.9O:P@2\\A!-5^ 5> 5>2'4FZ3?+[)%4;I_5@18-I/. G^ E^ M/H*?86=40O,>_ 0_P<\?4,MQPJ7T@:=OQ-?).(L"EP[2*(&DDXD_Z@=95@[W M_W67%]@*MCY$$:V5O'L9>:A2\L4\=+ 2K M$O2( ICCT<5F+6?4N0IHA@S-Z7%YI(5# B, ]9[I&H/+ CLEK?DI11VTZ4'7 M!VK,WO[D(L>K+5F]CD:32RD.5D^^F#W>[9F.P @4\.K$ J*"J+,KR6F''$4O M?7C*=K5*>X&+YIBD-(.DSS&)% A%'RGP^<".6:YA/[UG5H$U2L?A*@93\$%/ MT!/TS%5!=DEAPI/SPQ=-[8#7Q *8 ": F:>"?-L[YI$X$U'@0JDEW)PCP@0P M 4P \X$(T]EN!4^87TKO; Y]$!XKE !/K% "0/-&6J15\9"L%M$50;-$3L'* M9E_&@F/Z$OAY@Y^3)CS=0T%L$#N'/J_"WJ%&P]V']YLPD9)&H'<5O![R^M\I MES;MLN:D0(!4('6VA":F\;,L!&3'6O2Y)3;>JRA4767>"/;M@5?@%7A]5,VY M4678MFM>![PS;^"O#Z"B?^'O>.G?A=:'%/M4*E&'??IOX,G^TA87!?:UMA.L M"P!KS$1X!FS^AKLD80*=W-MDYB/E6"]'M] M#*9SBR 40RB&4.RJW7S53D%YN3#EB\]GGLY#V% M):( *\ *L#ZTOCX>2%=R%/@ %'+;@YP@)\B9/]'P3O-FXM"@!8/$H8 GX EX MYFNB\C:Q$Y)TDCP#3LGE$D' 4V@4U@ M,T^[U5WA#OK>4';(>ST_Y:D6_96*X2K-+.]HN/(9@S3<9'X@*4@*DN9JU%^* M[E064$2@B$#!37 3W'QH/E-;\UY'1%-+[L?[S(>>3;F6\!;O8E0)( 5( =*9 MB4N:NZSI4RHY?&++)<2?P":P"6SF4\KUGG4@Z+ACV#V'QRI8!X"@("@(^AB" MLJ\'P:<>^7H0[*L#H H /HH@!Z$2X_/W-D>[-N#G6 GV/DH=NY;9QIGIJ1+ M2;CZ\5X8!/OVP"@P"HP^"J.[W=9>L++9)>W* #_!3_ 3_/PI?G[2?ITG:]9. M&L&J9^B#8%\?% 5%GX&BV+$-.[:]JGW%8"QV;'O2V&NK]&? 'UNR'=()E[$) MUP>(O!!YH?V:;Q7.F)][*O$VFP+Z_M#W!W:"G6#G[ IR(NBW2 M;*E<8-5R=:G$V'&J3&BJX.BC=K:3=,2&SLGF[K:G-+66/&K +E28QD\IFUUIAG8<99W[?29]+ MW;_&U?,'C&<&^')(QN-?!\2UN[N?/:8U<,>$89I< ]:6[A^Y7FRI>.#^Z]AN MLOE_4$L#!!0 ( -%Y5UB6C]DXV0( , ( 7 ;G9E92TR,#(S,3(S M,'AE>#(S,2YH=&W55MMRVC 0?>]7;&%*7C#X IA;F$D)9)@F) .D>>S(]AHT MM25&$B3TZ[NV(?=,VY=FX@>-Y=VS>XZDU;J_,FDRZ*^018-/_<^6!:V]AG*]4WRY,N#:;@-NI/K)MZRP&VX2'!SB].O% MO%_/D_0#&>T&_8AO@4?')1XS[(1NN]F.6=BP?;L3=5K,C['A!S:VW,8/IT10 MKLG1'$2+O! T'$S2I6RT[)[?S_VZUG,5Z3_=SW^JWI&=RL><-I^K^8\ MY7K/N"!&.ZX&+]2\#^GAY70^FB[@<@R3Z>GH:D0#36>CL\E\,9J-3N'J^NOY M9 @GP^'E]70QF9[!>#*[>(/^^TA[_7S=((12Z*QPC02S0N BE&HM%3-<"@AV MH#!&A2+,3###)==F;YP;JO2\Z*=2U\#SO$JY[=J=GNNX3J,#3$391\OUG;;O M 2'&4J4PM[S<](=8%H$Z+:_Z+&[3?O&E4RW2>%[+]:N/TKH=VWY(NX>T0<8@ M-XJ$D4RC(H'J4J6&8L MV'J-3&5OM!%FQ36<"+$AEUGN[>HK2V^V8 #:8Q,N_8# MA 5:)AOS$O(FCR=C\0=1S_]&5X,S$Q+FAT;>U:;6\;N1'^WE_!VFC.!B19 MJQ>_R(X!UW8.Q@&Y(@B:CP5W.6L1YB[W2*YD]==W9KAZL24GY!3V1L#SH8N)SKN3B*SQ='/,A%:M7L\D+IB=#J M_9X^&ZCC[C!7R6 @!R?=X2FQA5Q2/?7R8&7B_5^BR M/08:?S3H=4Z&53B?:A7&HZ3;_=L>BUY>Y+8,.)[#_O%K5+.N3+I[U!=L-4IZ MJ"G 8VA+H^_+$4]Q+ZJ:BV?66#?:[_*_EK[MP>D\"GK];T ;<1!^G,8IG* >HTN83PEGCY.X?1SK5 ?13SK)TQEL MMOWXJ>D9^A[<#[$]FJ$@LTX&;7W[Z?/=A[OKJ\]WOW[<9EH4 MDN\^B\'&"-RUQ(W.'L!Y6XHOC(66R, %G<]$&,LPM_\[&<<:1SI@0+,MS'VW M/SP]W]:EYY54"A=VVT >1OT%>#2&J@RC=G+ZP]R>=+ZS7[\R^E.W)-W.D-QP M)\9R L+!1,,4*3&,M1=795E+(SY!95T0B) /UA4BZ;9_$;EU* ,BUSY#D1E( M)P =J\0-9%"DX-[M)\?=\WZW1?S9%S87'_\Y%#\;FTK3$G=EUL%HGKV%:/9V M+II_EQXC@0$K9N*AM%,#ZAY:,:@N1E-9-*&TF 1Q!*E+(X-YEU+X5(E98462>]'4*I/-PAE/8&Y(<;\+AUP6AQ4OLVE%J4;S-9^^V[4.)+ M 6'1C!13J:T=*D!^FFC/K(=24+(>JO.7?+G*N0Z,9)PUN72)E5;#Q]2HD3O1 M%F^-5KR?]G7JM=+2:9J CAF?LT!)FFI/69A7IN>4S1QI/:!!N)/F3I5$@&>U MD43M."TV8IG-L4>L#59+&OR6 @DB^V)_4%NS;7^G89SN#(S/.LFJ[6 MP+P]T6V-:5P'$ZT(JA+WM)(877J$.965A%_IU!Q+B&XM4VUTF%%ZWS0LK2R& M'2,J+HHGHBME*2>.QV9"5>TJ1+3GH]U!BE6$0V-@"%:T8$L'B M.X(75Y:ND+O?"'RSG8'O@H5O)]+43%447,AS+!#U!,/B-Q1ZBUIB"^J-CYMK M/X8K=D3:]+'"3&T=7K9@F^0@%]) Y7/^[1V/2.>%.:] B)Y >QAM-,"?'W%J M9Q"W(,P8RW5,T*Z[J=FX92/P7D&3E,IMEM6.(K^2-S=H+:P/^)Y.4>?'.+_5 MF'91]<$+77*$,!+8,^G&<-PL 1\8T%D"'QQ%NPZC56/I%T4&41]#'A3G!/9' MP][Z%4PW_%=V+ 3#]G6/__KW1"? JHY6EM+MB#R6D7, MDC@HYJ\H =9*R85U$LO)8)U?9%U^@2J+0H< \!5J3BWF=6I7&NUC)0>(JXH/ MMCW]I:)VOAC@MUJC^0S\NLQXOW_X_TW/=TNW5P8+)2S<-(*-]IFT8\TT(#2: ME+G8?$Q!/E .C(439T$N^?C4<7XV\RK -?N$N,O?0#%284DT<*@ U,=PH:/ MB!M\M6(JTN7$F@E0/BKE?7/2[1IVA*(R=@;8.AW;R(?R"7H1;7](LN[L^-W@ M#3J-25%\@-1AKI_%W-+K\Y7.8!OS^6CN(O VK&E-<>V :^,LC*P\C.9?SC'K M5$;.1KID6[C3>:,KM2'8@M2=3RA[8?G17 +SST3&^DN7[ MO?[>O$,#^U%7).S8N;ZOB/:J1Q)>O3>G1?/*T[P)7#GVO7 MT0N4_;'N:5#(2ZS""=/9E9C/])6^B^C[4:OTN;]2=WD]EAH33BG>[?=Q^5Z/ M->3B]A&RFO:8XM=8]+5(]. ?\;@!B6E-X'#=]T>\*C>L^6<_5:FLY\N543Q! MG,#:CU>6@>"5W5UVD2E&HP[K7;[Q>Y?F,_[ZYHA_]?,?4$L#!!0 ( -%Y M5UA0MW6MO0< &4D 7 ;G9E92TR,#(S,3(S,'AE>#,Q,BYH=&WM6FUO M&S<2_GZ_@N?@4AN09+U:MJP8\"7.G5$@+8+@^K'@+F!IR@E17?QO_O=D4'VQ:Y5 $D3J0 M 92HO"XFXA<%_DXTF[74>ULNG)Y,@^BVNWWQBW5W>B9C>]#!P-52S_@T/H]/ M>9!Q8M7B:JST3&CU[DC+SL59>M8>]K*+K'^6R',8)%TUS/I=>7%^WLE^[1QA M5Q2/?7Q8&'AWE.NB.04:?]3OMH:#,ES.M0K34:?=_L<1BUZ-,UL$',]A__@U MJME6)MT$]05;CCI=U!3@/C2ET9-BQ%,\BJJ6XJDUUHW>M/G?);4T,YEKLQC] M\$7GX,4GF(O/-I?%#PTO"]_TX'06!;W^+Z"-. @_SN,4AJC'Z *64^IT:1(W M]U.=Z"!ZG5;WX0QVVW[VT/04UQ[<=[$]FJ$@M4X&;8M152AP)'5T]?[F\Y?; MC[?OK[_<_O1I:UHO;6U_YTK?-L2-FDNGQ+];B&RE?6F#;H@47-#90H2I#$M3 M7\@^UCC2 7V7[F'QVS>#\\M]0,& +J52&,-- UD8]58XT>B5(HR:G?/RY3&^ M>QZ=U@NOZU=&?[@LG79K0,MP*Z9R!L+!3,,@S>[!^?-?TJ/GD"'Y0MQ5]BY 36!1G2JB]Y4%DTH M+.8['$'J0LAB(:HBN IP!I@!.1FBUZ3(\^D6))++.V"@K'1Z?*?0&!S2<";%,4@@U0XS)XH5V%TP=8KY5*=3X2OZ6/>? M@X-:"4T@U]Y@BJ5L/==ABA/T):1L(.DMT32K<)HS[*9$LMA:%#=(HC(H@$"TB!8>SK,]J?13D1D[]TN4.IAH'YS$@22] MC':CE8T-L/FE,5O6OA:\]0\.;U\>..?MF_-N9WCI:T35%0U1A,TRC8_'_H0] M=RND \8(^EPG!CBS 0(S,=I/J0>)YB8\3D+%*2I\I2% M.3(]IVSF2.L!#<)-,W&^ZV@+S_D2W-Z8Q#F9:$52EMX4D1I<>84YE)>$7 MM[M++"&ZM4RTT6%!Z7W7L!19##M&5 R*!Z(;92DGCOMZ0F7E2D2TYW(D3:U3 M; 7J!,HL,HP"&QL@9(BAD2P^([@QC#P7;'PS4R:BJF*G M9 MA@6BGJ%;_(Y";U5+[$&]\7%W[<=PQ8Y(FSY6F(FMPM,6[),GR&.>W"M,NJCY^HDN&$$8">R1=&XZ;)> # SI+X(.C M:-=)M&HJ_:K((.ICR(/BG,#K4?/U0AA]!Z8^/7@DW_C=2_0LF!_X+FSP>G9A M?/JHEE'26+,4D>8F4M>$15A[1NFQ5<*NK)-8Q@;K_"K;\PM4F>_5$PO@Q!^JS2:SP%7%2F?,YS\M=EZL31_;;! MPX)1(]AH?TL[Y50#0J-.U:M-SQSD'>7>6+!Q]N52DT\[EV="SP)+NA M:\SAF4/2:*#3@:D.8<-'TS6^&C$%ZF)FS0PH#Q9R4I^PNYH=(2^-70"VSJ]HV6'&O:CMNCPPB[U?46T6]Z3\.;5/ 7-XV7, MM5(&_O](:\?KY#Y&#G_NN@E? >V/7:$:B!QE)]U%)NB0*FQW^<8/:^K/^#.?4_YYT?\ 4$L# M!!0 ( -%Y5U@405O^X04 "8: 7 ;G9E92TR,#(S,3(S,'AE>#,R M,2YH=&WM66UOVS80_KY?P258FP*6(UEVXK<&\!QG#3;$1>RNVZ>!$D\1$4E4 M22J.]^MWI*3$=N+,Z[8FPQH$AF4>C\^]D@\UC'6:G QCH.SDF^&WCD-.15BD MD&D22J :&"D4SZ[(1P;JFCA.)346^5+RJUB3EMMJDX]"7O,;6HYKKA,XJ?4, M#\OGX:%=9!@(MCP9,GY#.'N[Q[UNK^<%O:X?L&Z[Y;5IQP]]%(3VD=?K4>\W M;P^GHG@Y1^EE F_W4IXY,9CU^^U6\[B3Z\&",QWW/=?];L^*G@PCD6E<3^+\ M\FNIYJ$R*J]0GQ9YWVNA)@VWVJ$)O\KZUL2]4E4M'HI$R/Z^:_\&9L2):,J3 M9?_UG*>@R 4LR*5(:?:ZH6BF' 621Z6@XK\#8L1%[..B-.$8]20\@]HDKV6, MF-S&/.":^*VFMV[!X]B/UJ&'Z'N0SX1]/+F?_A,>S7WHXO)S)G^\M/D5S(:S\U(RW5;NU3!?07SC*%E?1_KXE\WKOVH M<><9"4660:BYR,B"ZYCH&,@HRPJ:D$O(A=1$1.3BYP[Y(1$!31KD/ N;Y,"( MO=KOMEKN8"S2G&9+^^0-WA#4="9D2CS7^9%$0EJ5$5$U2(6S/MH&VB#CF$.$JG$IS6^ 3*.(AR"- M\49/96.C!, 65#+RKHD_,ZYRH7FMX(QG- LY6KI- = P)CB@>81/6MC1 )3U M<\P5N<[$ LV_@@;)"ZD*BFF!8I=% ECIU/':!P$Z61*OP^J':--/=SX:A5:Q MU_/;UK4TM=XO#5EI)64*E+&P_<0*,Y&;#785QYJD*8IZ<2H#FH%RIK<)+.MU M35&@E3%%YW>Z@YWK(Z>,X:;N)!!A86Y6C.-UGZUD#KPWM15??OEUOQPU_;;Q MPQS=7]5J5"3)$FLZS1.3!GEF?[%T8!?\G2W'54T#;,65?" D ^F@80G-%?3K+P.S,21TV>>9 MA6QU &C3Q!LWKABDTT+9LX MU.SA6*?;[+G;A]VFMW7L*;7^[FH/+>02-CI&8>J\W?/WZ@E5MO==XME,J?4] M(=K*;XWP:EQ,K6RZ,>6,)?#ED\_ZY=5^^WB@[.>#@\9=WOVS[JFRT%9=C@:+ MA#-26_H7?5=FWW,5[J:_D!R/8VQLJ!D/[K&C[^VJ*\M MZO_=HAYA,U^[U-.U^YC+;*-ZE )^=F=Z*;<$8FN*(WC 1+H@HDV*B@@:R: M,$#.PZH+!1Q<.I?7Y@01N&N0)-$:[7T.U,#EY*?H^(PI:"/A9XYL#J3,>5%$BAQ_,?:!TMMCN/%2 ZO'4L>^A(2:\]B#UQSWW=^> M*-S[*33 +:#0#Z?\R9N1ZK-\3W-HWP_] 5!+ P04 " #1>5=8*:/GC?,2 M !2=P %@ &YV964M,C R,S$R,S!X97@T,BYH=&WM/6MS&S>2W^]7X.S; M[%X5I8BRK-B2UU6*K"2NNW-9%9);W*1>UT M-1'_R)6[$CL[8=2IFJ+^_*'6U,U6X_M'K@YD_OM&YGQX-]_;^\J(SSJM;OR,+/:F. M"%KX=6PJ#U!8F)7_7)I\Q4/QY\P4QAZ]W*/_'>,O.V-9ZF)^]-=+72HG/JD; M<6Y*6?UUX&3E=IRR>LP#G?X_!6 "Q/3QAK?P \Q3Z$K%+0WW<1]GMU,]TEX< M[.XO@;IR&\LG)>T$#LN;&4P+ZR:;RP [RC[)[AB,7&7&2J]-=517N;(XZL7[ M#V<7I^+R_.33Y??O7RS/_SA^$)?A MVU<'*XEAX?P>[[1HQB/M 3=9Y_P.>JGC7(V5554&:W@C\&CV]XX__?=K^FMX M+&25"S]5\9=34\YD-8^_3N%970EIU4#45:&W24I7Q^!LL( J M%R,X^ZEVXJ2J:EF(IB-^$Q1U^+F')"V^RJ]U[LMW:VR* MPMR@Y@3%F5D]HX,.I[QX)IF<(?T G' HQ$\S:ZZU@T?.\D#>N$0T?%'P$$2!^5I6RL/QI.UC\I[Q!\0!L M7);$P_08?O,[T!^L :N!!(%YM 6R]=HJ/T[-T1QQ,/%WPC#*$10X+M^ M@DZF SF V^I;==9,M;3P0U9=F X%D %D('Y *-"9CJTIA0=F)R3C?TFP+L_U MHY&69/$'H.S,&^M6"ZN-$3S?O1P>[AUO$IS]IFVJ S8)VN=RJOUP_F(*4.I+ M[$Q"&R6T+YA[T#RX-EXEW$5"=BY*Z<$\"%R#0\!0F,%OP",TU917V!4G11'9 MV,KJ2BA4"F >2A*>\"0J/E(8,)"LR3 W/(O:L5_PL(2N##*R*D&>PB=C47B! M#83*4) _!K8HC $VIS&H56$;NKK"-<=U1WD.:/-HG!9:C@I4RQ;&6((H(^ L M .W ":?-^HX?"(],E A=2$)H+ YAF07=0+NNC"X8;1Z02GP9D QF-J#+ <3 MNIJPP)ZNB2(0.0H7 V$/8,\).4!R.@\0*PM15'"#0Y M1MHE!*3/#.Y]Z!()B(Z^NWC"+F,"3=UFZ#G)TL!V'J >GHDYRQ[+HWA1;W=? MKP7"3VID:R 8%L7#0_*9#I[2JR1^!E*XP7^>]&R&KP=OX43>'KQZ4B][A4A/ M1.#6@/IF!M3GQM)]H WU3$3/%PI3?"/W]PYEB)Y;<* \!;I L8$C4L_P[S6\ M%_(G4:,FII*0,S1&9,%FS^(F>J H)6C@PAE0[*#.2C@1,E$*U&VHCY4$_=8$ M=Q9!P),*!LK,@&@" R@Z/VP.S1KWW+%;YF8JT^ G1LLJ>/=9?*#0)?B1X0.L M#WL'C4AA(X?VQPR!])XC5."!WV^CT5\EP/&\)08.5IQMW%F?20@32 ]?UP60 M1(Z_*31EQF-8;>E4< 8V2L/#P6Y)# 6.AJ;FQ4> CF98@(R,33AD,2[4+7CY M!5*/KA#$*H37"/B9<4ZC524SL)^<#B>( 3^V1@.I@@54PU\.$02&1]P3D,0 M+0WLBKDG&S.G& -AP:07Z.]@Y:J".$Z!M1;4^"# M&$!$B @W?:=82GNE/,RD&4UW^?Y-K"EQ">XX^$E2@3.D(#<'^MP5=02\*"L-N1#S&4O< R\#6),=R*"JR+I$<"UX6PHLBZ MPCR18[ (.F- 3Q2I@Z=YIEU&!D@@'7:BJZRH<_7=R]=O'H"CKRO)F/>8%T!YF^V=\_/'XZ"_&X'M$EM#(T72O0D_;[&WP=A+ SBM:&_# M&UOD;3#RP#@$T\VI8(-MD?86LN?U>6W_I9<%OJ_^/4'R]SDGNH<&63W(X!(5>FVDF^ :H?"#U. M!O%5&/($7UJQ0%R85F;A@:UFVU2"2..I%"H@/-/%GS<<>FHD( 49(H)C4*B4 MM[JL2U&H:N*G\5:-;_ H8B"+($VW-+"A-,#A'9.IO$93!A49XE#669.Y915' M#2D@R02R1>=FHS.F'A(Z.[D56PP^/PQV,V6LBHX&XW(V*W2&Z1Y\'X3:,=W:RLB]IP? MEN22JYCP;6RX%=KB=T/Q&PWW/L0V)CQ=J'JZH-35BLSM;F)'O$--B(*O$ >- MS9\*EU!?$J]MV:Y;_AJC6G31/#4W0OL6P. NJYSE%! M&P@G"]5*=NGPRAW]]RU*-QREE*X1PKF4DA^S;9+HY.'N LG_R/X$:<;(M16XF M10:7 I-2QSH3F (+>+UO(MIBGFJ_X-MF%VY+1/ZT$I'*?"5S?%LD\2A5ILIZ MJ2MQ4GF]4S1R:,(0">"IV!PWSN5-U_X<*M&DDUZ1OTDD]%XRN MG\3\,,Q\I85 3!H&$Z;-YHBS\ MN@+[1&<:5_.*0E@&'K:N=;KJ2F.8"^\^?:196'UFP#%'?3):WJV&A+CCT7*KK.M<)VWSJ/]6$NE=KF7ZCZER5 M6'_4)0:D^K$N"B1)II5KF8'E_^2M>OZXR/T:8X=2'>+@ 38H^HWJ6DQ2[-!3 MD,(7'ZM\%X^UV)TZ[VZ)TPC]-*ZS$Y+D+3RF1:<88AX+,%01ZI-O M#X0H0.,IC3$C%VNLT$<-3;4DNL*_U\;6)5UKA 5 #1!A@'U"/8+";*NMOW6D MXU;,/IF8_63$C<4Z2*JGA;4%M1&1'N*7G(W!&E.'4=,G8IC*U5"%WB-/&I.\^ADQ,W>=@ M"G5TG4?4-95HY#1M>_K, M,,-I(Y_A.8S'>S::J'/2@GQ>8D0N]J:FH90?%AI @2WM,2T-;.%@H8'T3LK) M%Z:-1G3THH'@#:F:V)L*U<;20PN@[(J3)5[P!FWAUL-/>N>U; #&,^P4UP9C M&#F:D3PXBKVG['86Y8N?LW:3'C[$$ M9='HM:8&JM$AQ?[JK5-TJRH MX!Q:9B2+=H%[5@G!)(86X>XHZE;V]<-? BN0 0WX )Z=Z&O6RVC:AFVEFKQM M(N(4N,'4@9!2MRJKN4Z([ K'C?:D!;,\Q"8I'[! @05GTIQY"!P .0'.>]L\U3D+A[8 M304O';)P^: K>+)DB@O7FDWGW*\VLMW*X&8@9$S-XJ7L6@[7LS:QQZQ$3D=/]P/_5<"L!Y_\$ M>-VJ^^>I[G\LL/]U-E74"K!S-_CD6IW?2S!"8AZ96'?_#:*3,5+BUFF+R1)+ MW>*;1T)SQR34@AT.ZRJPW.H$*10,JJ*FU'<%+K&/,R56X/4C_("RJBZ\8+L_ MUXXS-!3%3CC3@;)61VRVFTXSQ!%&>&05KU^5G6"6?)JY@3Z%N9WSJW.<'S2) M'/CZ'&X/KFYE.2NXW#)(P[Q6;?FDX1?FC'5>9YJ:9(/K.XD]-]>T="C)S*=M M0_F.9CF)!/T\=+L"*". &DN^%&9,+KYMA/IUX\M\$I=VL"+2%3I5\JWV:E2R M*QDP_K66J:1IN/TIH1+S/9D>QY1,D^3,4 %#O'[B8!GR L"&,>54$:SH_,EG M@UR0D:%HN5&YJP'A51<\O)E*/DZLJ6>[P"&"7@7"\8AOQ6D3V)=WJ\Y[9(W, M@VK#O!1G!+W>97-GOG-1=@:0R&WFZEZ1F$;KAM#L%"\9F)[XM)H] MA>R$=1NL;A,\OQF8/. M!#!U>%^0%+,:."\#ZILJ(/]FSI27*3]%51-.#D1S,;X[JPE79:8AD?%$; M!3E!4X6A44Y'?F-BC8.Y78.?6J5V,#H56U&U[Z*BBP]Z1P1[@+HCVD$P PC4 MJ4KTK]1Y6UP?W(B"QOVB3>*54[!" .%PCG@9L\;.0ZJAZ^]ZW"ICDB.-5*8* MMD&O9DARA0BP,2Q8T:W1"- [U@W-]&\=P%X3#9HH@K(_QGX"WVE^(6*?V)" M[PF2)O/!8&G3!%Z):3180]^UGL==LR?<%##;\)MGEDPP>E'*C,TJ#(]1:AY> MMP*F>^Y)UW_'Z<:E'WS/[[3]GMZE^_]02P,$% @ T7E76.R:KQF># MH4$ !< !N=F5E+3(P,C,Q,C,P>&5X.35<;7,;-P[^?K^"Y\RU M]HSD2'Y-;#-OD0 M6ZM= @2!!P] KJ^F(=Y.S7C\/JB@Y8MJG*NG\?/54Q)R-;)B\>)* MJ!E3XH<]E0U/!L-GX^?\:"!/1N*4\_/Q^9D8C8\%'PW.SGX=[L&C<'M\QH>% MEC_LY%.%RKD287@P'@W_L+=T7Y'WHUP;<\5'V=66W=Q9,!_;O$;_ICGBN]N/C^D\JE9^_DG'VT.3??]SPWON^E M4^-XHU?_E: F:$P?YW$*YS".5D964QH>X3Q>W4_52 7V_/QPN*;KUGFLFXJ[ M"5@KV +&!<&MV66P/-+!]%0^85R''_;,[+1POZJ<3^20#X:'$S7>8]YEV[Z) M(I+:)Z?%_642-[(AV/SB% 3.I LJXSH))?GQZ[1L9V?%_:9%WJ3IUUV(DPT+ M$0TF9&8=#\J:B]((Z?"NO1?7FL]'/+MC'ZQ6V>(A'K4TDP?XH0)I)EPI\FQEIFP_X-7OGCP[.AI<5C/X2MK1B!==2" MM7Z=,&*8\L!47NCDG&A199"40#SU1]R#HV8 7-)X8CO@RID%!K=8]FD/3@L+ M$::X*K<8C7#K<'!3!0)<*IT*"F;PZCZ;LQ MCA B(H!4IGY^>E*9^L8*T7_MN+ECOW"M 5BE\R0T]^B;(G)T-AONC@_WGYP26'^6DU-'!;OL_'3Z\O.D> M/7YSR%BW7/AC%;)@:'!GZ3WFRC=UE/](47[=BO+'=/1#T"QRDAEV'0B@QE9K M.T=TQR^6\WW;$QGX;\(E@9Y6.%EP)]%U>9;9TJ1L[ ,\F-?#[ZL# #F'U-LS MZ1SR;_H"G\WA5J? K>-X,V5+KU&2+T'(6!EN,ORZ'M,SZV#(76,:&_Z?<4=E M8'-;:H%3*'5 L.7-0#D\6T],)6*'DME<@E!$;H>XD1(G(++#.PMXV@I46LMQ M8*5):F^]G)A,8#%;]U8R:3UU \+;'SA7 ;.EQ M>;BWAH\TL7$ 4(^>D=)M#XP]^@T6I8)>6/+<1\BO,;O'QLXBQ"_J%8-%1=B' MQ7H_'JL,?J8L48N?6C8'<"^X(A>80.+ E=^%#HCL<"L?@Q(; A*< :;T,*!9 M1_K/H/F?(P5T+P?@H@(7QCPOUMU.",W0B]\59"MD)4%?' M,^HG,E%*#(^$3@CJ.*Z@E@I0%WQ.1D>'NSA&CA/PV84%70"!GB!5&HB9K,HV M1>1#$E22HKK(L)93RVS#D;.1(V"C*^7W_=Z!4"F*WHM\MU@V6.CIC_SZ\/;P^9"= J/C!_O#X -5H M71_B=0(=TVHVY7S!A$08@66AA(1Y"%F:7%'?6Z8MJN^7D -[63D78(LV=/$ M^:>@P6)/864PY)^%LS.%B@(UZ/.:;!PUA_?D78P.V# M1X*-X6''0.-& @U1N"*/#!-01Z!O%M;+]:07FP U0:3$..6S2 QSR0U<]A#7 M F-(BAZQ)B%H7E4ZM009\5F!LP;OA"M2F>^>G#Z[W.HY!0YD)GUD3N1OEW]F M!P23!-C1+4=HC_B\7=M8!B,5.%AN%*WY3 JZVN3?5Y MCX1A4&[2R$$4"JRWM*:P5H:X9ZS9B.943U&+;RZAB%JF7+5P3WL%H&DF262P M 169@B 8'@,4R&7I=E17?[$8RCH:0W^*;-6+<0".5Z0& [IP OQ>;">T,U;< M,O!5BN@QR9W!G^#4,X!ZS $TVW5?+PL;PPG*!*Y,!?HHH@DH5\--"HAU_I=I M[E0 [H?5$)1O? X9(T4;JH!93I=(&$ ^"<49:!F[%R"0X5RAJ@(MH5S1=I$W M_:UH#UL&T@NN80>%\"*S)M+&&.DC:TJ_))LB7?G,D23*UBX9 P2G%@YFXXGE MFOJ$\9?2.*EYRK<[+ %K)2P5:Z"*#RJ4H46)V'8G^ZL#@.@H *0HZDRL4VL. M2R$HP$OT/ X5N*+4"+F&LM!X)=;JW;PS+ \>MI\7-ZD@I@3BPM9#+G]\G^<1 M?>ZH:]7Z!V>1VC]VI=[>J;%9;$1G,J+N:CN^USA&+U4M"&Q*Q'NJMF".GD1X MYMOE3YV1X$.N0I!RJ8+HQ=XZ;JW ["0'WT[A6!.IG949,2M^)[%?A2TM_-SN M=,6PV,@HFVU4P',OY=U2=_,+VN/L$W8AFLU88YDH"UUU V&P>N"J,FMD5VP4 M@_*T:@=6X7Q^='+,]JM/QX-Z__B6NQ$WTO??WVNYJ*+Z:# XHL;BALW]-@)\ M*Y3SN&O1_P:/D4*A$VK/:+G"=T].GU^RFU05I4AJP_+C@L:GI:XTC\0K@ R, M+H7'2ZQN$RMJ'.O4,W QT42RAIUEOSY_BE*SJ#AN#YF5Q*W7Y5N0L$HS(P(,8F@WQU0KPE$>F M2R!,9P6WQF1SWCM< F\@BGP1#3636\_BIR/A@^81/H*9 Z5=>^0SI]OC_U/7 M0,T$E@&P^JY/2>6"ZSE?^+TO>F7@\R?J'R=!#OQ#[H )7!T\F@:0K05#TB#3>3;R5A MGG0M8;ZM?1-K\P_Q: NZ>G5TRMS#!UP)3WCP^J MI@@=-_*X@[Z0W'ELEV:MK>[-!Z?4>',*HSAYP)&L'4.G??Q-G<_ZK).!:$+M M54.[MW616EOFK>T+I,-L+.$CMDZ;-V4 0QZX"'C& MIEZ(T6*YQ;;S257#\^I"ID5+I[)$Z:)V*HM-[1T-_%;[*XVUNQ*:$[KYU+:C MGA^ <^4#U B,M&G1WL?9?88(,=VWMJJ0P]&#O&K$Q678?0*D[JVU6N*8KK9T MQ)NS5Y\I'I=?QLFXH3-:2T<=P&-5GMZ6:-ZAJ#ZU';IJ>A94N>&SJ9^';MX< MPMA^L.1;21*G74L2[XF68$8H"UK*C_CE(_=8/K4(1X"PJ4&WX7L5]R"7J[9Q M 3%*K6-[/+3B%"!O-=\DS$RL!["JU27G$R?39FZ[_=Z^#A'H(;UJ[MI7L2?8 M]- KG1)ZQ)0VDD:.%240)PFL>[4NK6UNK&9P7/IEI!H>MNE8)! ^+/VJUYU< MLYCK+1/E5TZ'1*Z&'7=Z94J6,$3DLO'(".85@7D#IDPB_(H,LB":%%=CQL$F M&/_+Z6WI=/S2-"C-)$L62Z7L'U^0IC]$,]%R0FDSS6>;KM\*%)UU#8JZ\Y;; MEA=%FG<(>=VFI;<)%6T7;GSE%5TP#H!(16V*G?F^VGNLJ= ^]^W=_G8@U2]: M'7SF6,QVE^Y&8^-I_!,)3^E/,_P/4$L! A0#% @ T'E76 19RK4U50( M*6D= !$ ( ! &YV964M,C R,S$R,S N:'1M4$L! A0# M% @ T'E76)8N;SV!%0 ;/8 !$ ( !9%4" &YV964M M,C R,S$R,S N>'-D4$L! A0#% @ T'E76*=!&*\P+P -^X! !4 M ( !%&L" &YV964M,C R,S$R,S!?8V%L+GAM;%!+ 0(4 Q0 ( M -!Y5UB5UM/=%DT $QR P 5 " 7>: @!N=F5E+3(P,C,Q M,C,P7V1E9BYX;6Q02P$"% ,4 " #0>5=8EA:ZJ/HE 0#B# P %0 M @ ' YP( ;G9E92TR,#(S,3(S,%]L86(N>&UL4$L! A0#% @ MT'E76-1[59>TK $+\' !4 ( ![0T$ &YV964M,C R,S$R M,S!?<')E+GAM;%!+ 0(4 Q0 ( -%Y5U@I$?*832, !S4 7 M " =2Z! !N=F5E+3(P,C,Q,C,P>&5X,3 R+FAT;5!+ 0(4 Q0 ( M -%Y5U@_6'1D)B0 %_Q 7 " 5;>! !N=F5E+3(P,C,Q M,C,P>&5X,3 S+FAT;5!+ 0(4 Q0 ( -%Y5UC'A1%PL H &%1 0 7 M " ;$"!0!N=F5E+3(P,C,Q,C,P>&5X,C$Q+FAT;5!+ 0(4 Q0 M ( -%Y5UB6C]DXV0( , ( 7 " 98-!0!N=F5E+3(P M,C,Q,C,P>&5X,C,Q+FAT;5!+ 0(4 Q0 ( -%Y5UC1NN7?P0< /PC 7 M " :00!0!N=F5E+3(P,C,Q,C,P>&5X,S$Q+FAT;5!+ 0(4 M Q0 ( -%Y5UA0MW6MO0< &4D 7 " 9H8!0!N=F5E M+3(P,C,Q,C,P>&5X,S$R+FAT;5!+ 0(4 Q0 ( -%Y5U@405O^X04 "8: M 7 " 8P@!0!N=F5E+3(P,C,Q,C,P>&5X,S(Q+FAT;5!+ M 0(4 Q0 ( -%Y5U@IH^>-\Q( %)W 6 " :(F!0!N M=F5E+3(P,C,Q,C,P>&5X-#(N:'1M4$L! A0#% @ T7E76.R:KQF># MH4$ !< ( !R3D% &YV964M,C R,S$R,S!X97@Y-S$N:'1M 64$L%!@ / \ ]@, )Q&!0 $! end XML 111 nvee-20231230_htm.xml IDEA: XBRL DOCUMENT 0001532961 2023-01-01 2023-12-30 0001532961 2023-07-01 0001532961 2024-02-16 0001532961 2023-12-30 0001532961 2022-12-31 0001532961 2022-01-02 2022-12-31 0001532961 2021-01-03 2022-01-01 0001532961 us-gaap:CommonStockMember 2021-01-02 0001532961 us-gaap:AdditionalPaidInCapitalMember 2021-01-02 0001532961 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-01-02 0001532961 us-gaap:RetainedEarningsMember 2021-01-02 0001532961 2021-01-02 0001532961 us-gaap:AdditionalPaidInCapitalMember 2021-01-03 2022-01-01 0001532961 us-gaap:CommonStockMember 2021-01-03 2022-01-01 0001532961 us-gaap:RetainedEarningsMember 2021-01-03 2022-01-01 0001532961 us-gaap:CommonStockMember 2022-01-01 0001532961 us-gaap:AdditionalPaidInCapitalMember 2022-01-01 0001532961 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-01 0001532961 us-gaap:RetainedEarningsMember 2022-01-01 0001532961 2022-01-01 0001532961 us-gaap:AdditionalPaidInCapitalMember 2022-01-02 2022-12-31 0001532961 us-gaap:CommonStockMember 2022-01-02 2022-12-31 0001532961 us-gaap:RetainedEarningsMember 2022-01-02 2022-12-31 0001532961 us-gaap:CommonStockMember 2022-12-31 0001532961 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0001532961 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-12-31 0001532961 us-gaap:RetainedEarningsMember 2022-12-31 0001532961 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-12-30 0001532961 us-gaap:CommonStockMember 2023-01-01 2023-12-30 0001532961 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-01-01 2023-12-30 0001532961 us-gaap:RetainedEarningsMember 2023-01-01 2023-12-30 0001532961 us-gaap:CommonStockMember 2023-12-30 0001532961 us-gaap:AdditionalPaidInCapitalMember 2023-12-30 0001532961 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-12-30 0001532961 us-gaap:RetainedEarningsMember 2023-12-30 0001532961 nvee:CAMember us-gaap:SalesRevenueNetMember us-gaap:GeographicConcentrationRiskMember 2023-01-01 2023-12-30 0001532961 nvee:CAMember us-gaap:SalesRevenueNetMember us-gaap:GeographicConcentrationRiskMember 2022-01-02 2022-12-31 0001532961 nvee:CAMember us-gaap:SalesRevenueNetMember us-gaap:GeographicConcentrationRiskMember 2021-01-03 2022-01-01 0001532961 us-gaap:SalesRevenueNetMember us-gaap:GovernmentContractsConcentrationRiskMember nvee:PublicAndQuasipublicSectorMember 2023-01-01 2023-12-30 0001532961 us-gaap:SalesRevenueNetMember us-gaap:GovernmentContractsConcentrationRiskMember nvee:PublicAndQuasipublicSectorMember 2022-01-02 2022-12-31 0001532961 us-gaap:SalesRevenueNetMember us-gaap:GovernmentContractsConcentrationRiskMember nvee:PublicAndQuasipublicSectorMember 2021-01-03 2022-01-01 0001532961 nvee:OfficeFurnitureAndEquipmentMember 2023-12-30 0001532961 us-gaap:ComputerEquipmentMember 2023-12-30 0001532961 srt:MinimumMember nvee:SurveyAndFieldEquipmentMember 2023-12-30 0001532961 srt:MaximumMember nvee:SurveyAndFieldEquipmentMember 2023-12-30 0001532961 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember us-gaap:TransferredOverTimeMember 2023-01-01 2023-12-30 0001532961 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember us-gaap:TransferredOverTimeMember 2022-01-02 2022-12-31 0001532961 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember us-gaap:TransferredOverTimeMember 2021-01-03 2022-01-01 0001532961 us-gaap:TransferredAtPointInTimeMember 2023-01-01 2023-12-30 0001532961 us-gaap:TransferredAtPointInTimeMember 2022-01-02 2022-12-31 0001532961 us-gaap:TransferredAtPointInTimeMember 2021-01-03 2022-01-01 0001532961 2023-12-31 2023-12-30 0001532961 2023-12-31 nvee:PeriodOneMember 2023-12-30 0001532961 2023-12-31 nvee:PeriodTwoMember 2023-12-30 0001532961 us-gaap:RestrictedStockMember 2023-01-01 2023-12-30 0001532961 us-gaap:RestrictedStockMember 2022-01-02 2022-12-31 0001532961 us-gaap:RestrictedStockMember 2021-01-03 2022-01-01 0001532961 nvee:PublicStockOfferingMember 2021-03-10 2021-03-10 0001532961 nvee:PublicStockOfferingMember 2021-03-10 0001532961 us-gaap:OverAllotmentOptionMember 2021-03-10 2021-03-10 0001532961 nvee:PublicStockOfferingMember 2021-03-15 2021-03-15 0001532961 us-gaap:OverAllotmentOptionMember 2021-04-13 2021-04-13 0001532961 nvee:VisualInformationSolutionsMember 2023-01-01 2023-12-30 0001532961 nvee:AximGeospatialLLCMember 2023-01-01 2023-12-30 0001532961 nvee:AximGeospatialLLCMember 2023-02-22 2023-02-22 0001532961 nvee:AximGeospatialLLCMember nvee:UncollateralizedPromissoryNoteMember 2023-02-22 0001532961 nvee:AximGeospatialLLCMember 2023-02-22 0001532961 nvee:OtherAcquisitionMember 2023-01-01 2023-12-30 0001532961 nvee:OtherAcquisitionMember 2023-12-30 0001532961 nvee:OtherAcquisitionMember 2022-01-02 2022-12-31 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember 2022-01-02 2022-12-31 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember nvee:UncollateralizedPromissoryNoteMember 2022-12-31 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember 2022-12-31 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember 2021-01-03 2022-01-01 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember nvee:UncollateralizedPromissoryNoteMember 2022-01-01 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember 2022-01-01 0001532961 nvee:VisualInformationSolutionsMember 2023-12-30 0001532961 nvee:AximGeospatialLLCMember 2023-12-30 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember 2023-12-30 0001532961 nvee:VisualInformationSolutionsMember us-gaap:CustomerRelationshipsMember 2023-12-30 0001532961 nvee:AximGeospatialLLCMember us-gaap:CustomerRelationshipsMember 2023-12-30 0001532961 nvee:OtherAcquisitionMember us-gaap:CustomerRelationshipsMember 2023-12-30 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:CustomerRelationshipsMember 2023-12-30 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:CustomerRelationshipsMember 2022-12-31 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:CustomerRelationshipsMember 2022-01-01 0001532961 nvee:VisualInformationSolutionsMember us-gaap:TradeNamesMember 2023-12-30 0001532961 nvee:AximGeospatialLLCMember us-gaap:TradeNamesMember 2023-12-30 0001532961 nvee:OtherAcquisitionMember us-gaap:TradeNamesMember 2023-12-30 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:TradeNamesMember 2023-12-30 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:TradeNamesMember 2022-12-31 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:TradeNamesMember 2022-01-01 0001532961 nvee:VisualInformationSolutionsMember us-gaap:CustomerListsMember 2023-12-30 0001532961 nvee:AximGeospatialLLCMember us-gaap:CustomerListsMember 2023-12-30 0001532961 nvee:OtherAcquisitionMember us-gaap:CustomerListsMember 2023-12-30 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:CustomerListsMember 2023-12-30 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:CustomerListsMember 2022-12-31 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:CustomerListsMember 2022-01-01 0001532961 nvee:VisualInformationSolutionsMember us-gaap:TechnologyBasedIntangibleAssetsMember 2023-12-30 0001532961 nvee:AximGeospatialLLCMember us-gaap:TechnologyBasedIntangibleAssetsMember 2023-12-30 0001532961 nvee:OtherAcquisitionMember us-gaap:TechnologyBasedIntangibleAssetsMember 2023-12-30 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:TechnologyBasedIntangibleAssetsMember 2023-12-30 0001532961 us-gaap:TechnologyBasedIntangibleAssetsMember 2022-12-31 0001532961 us-gaap:TechnologyBasedIntangibleAssetsMember 2022-01-01 0001532961 nvee:VisualInformationSolutionsMember us-gaap:OtherIntangibleAssetsMember 2023-12-30 0001532961 nvee:AximGeospatialLLCMember us-gaap:OtherIntangibleAssetsMember 2023-12-30 0001532961 nvee:OtherAcquisitionMember us-gaap:OtherIntangibleAssetsMember 2023-12-30 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:OtherIntangibleAssetsMember 2023-12-30 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:OtherIntangibleAssetsMember 2022-12-31 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:OtherIntangibleAssetsMember 2022-01-01 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember 2023-01-01 2023-12-30 0001532961 us-gaap:FurnitureAndFixturesMember 2023-12-30 0001532961 us-gaap:FurnitureAndFixturesMember 2022-12-31 0001532961 us-gaap:ComputerEquipmentMember 2022-12-31 0001532961 nvee:SurveyAndFieldEquipmentMember 2023-12-30 0001532961 nvee:SurveyAndFieldEquipmentMember 2022-12-31 0001532961 us-gaap:LeaseholdImprovementsMember 2023-12-30 0001532961 us-gaap:LeaseholdImprovementsMember 2022-12-31 0001532961 2019-12-29 2021-01-02 0001532961 nvee:OtherDirectCostsMember 2023-01-01 2023-12-30 0001532961 nvee:OtherDirectCostsMember 2022-01-02 2022-12-31 0001532961 nvee:OtherDirectCostsMember 2019-12-29 2021-01-02 0001532961 nvee:INFMember 2022-12-31 0001532961 nvee:INFMember 2023-01-01 2023-12-30 0001532961 nvee:INFMember 2023-12-30 0001532961 nvee:BTSMember 2022-12-31 0001532961 nvee:BTSMember 2023-01-01 2023-12-30 0001532961 nvee:BTSMember 2023-12-30 0001532961 nvee:GEOMember 2022-12-31 0001532961 nvee:GEOMember 2023-01-01 2023-12-30 0001532961 nvee:GEOMember 2023-12-30 0001532961 nvee:INFMember 2022-01-01 0001532961 nvee:INFMember 2022-01-02 2022-12-31 0001532961 nvee:BTSMember 2022-01-01 0001532961 nvee:BTSMember 2022-01-02 2022-12-31 0001532961 nvee:GEOMember 2022-01-01 0001532961 nvee:GEOMember 2022-01-02 2022-12-31 0001532961 us-gaap:CustomerRelationshipsMember 2023-12-30 0001532961 us-gaap:CustomerRelationshipsMember 2022-12-31 0001532961 us-gaap:TradeNamesMember 2023-12-30 0001532961 us-gaap:TradeNamesMember 2022-12-31 0001532961 us-gaap:CustomerListsMember 2023-12-30 0001532961 us-gaap:CustomerListsMember 2022-12-31 0001532961 us-gaap:NoncompeteAgreementsMember 2023-12-30 0001532961 us-gaap:NoncompeteAgreementsMember 2022-12-31 0001532961 nvee:DevelopedTechnologyMember 2023-12-30 0001532961 nvee:DevelopedTechnologyMember 2022-12-31 0001532961 srt:MinimumMember us-gaap:CustomerRelationshipsMember 2023-12-30 0001532961 srt:MaximumMember us-gaap:CustomerRelationshipsMember 2023-12-30 0001532961 srt:MinimumMember us-gaap:TradeNamesMember 2023-12-30 0001532961 srt:MaximumMember us-gaap:TradeNamesMember 2023-12-30 0001532961 srt:MinimumMember us-gaap:CustomerListsMember 2023-12-30 0001532961 srt:MaximumMember us-gaap:CustomerListsMember 2023-12-30 0001532961 srt:MinimumMember us-gaap:NoncompeteAgreementsMember 2023-12-30 0001532961 srt:MaximumMember us-gaap:NoncompeteAgreementsMember 2023-12-30 0001532961 srt:MinimumMember nvee:DevelopedTechnologyMember 2023-12-30 0001532961 srt:MaximumMember nvee:DevelopedTechnologyMember 2023-12-30 0001532961 us-gaap:CustomerRelationshipsMember 2023-01-01 2023-12-30 0001532961 us-gaap:CustomerRelationshipsMember 2022-01-02 2022-12-31 0001532961 us-gaap:CustomerRelationshipsMember 2021-01-03 2022-01-01 0001532961 us-gaap:TradeNamesMember 2023-01-01 2023-12-30 0001532961 us-gaap:TradeNamesMember 2022-01-02 2022-12-31 0001532961 us-gaap:TradeNamesMember 2021-01-03 2022-01-01 0001532961 us-gaap:CustomerListsMember 2023-01-01 2023-12-30 0001532961 us-gaap:CustomerListsMember 2022-01-02 2022-12-31 0001532961 us-gaap:CustomerListsMember 2021-01-03 2022-01-01 0001532961 us-gaap:NoncompeteAgreementsMember 2023-01-01 2023-12-30 0001532961 us-gaap:NoncompeteAgreementsMember 2022-01-02 2022-12-31 0001532961 us-gaap:NoncompeteAgreementsMember 2021-01-03 2022-01-01 0001532961 nvee:DevelopedTechnologyMember 2023-01-01 2023-12-30 0001532961 nvee:SeniorCreditFacilityMember 2023-12-30 0001532961 nvee:SeniorCreditFacilityMember 2022-12-31 0001532961 nvee:UncollateralizedPromissoryNoteMember 2023-12-30 0001532961 nvee:UncollateralizedPromissoryNoteMember 2022-12-31 0001532961 nvee:StockPayableMember 2023-12-30 0001532961 nvee:StockPayableMember 2022-12-31 0001532961 us-gaap:LineOfCreditMember nvee:SeniorCreditFacilityMember 2016-12-07 0001532961 us-gaap:RevolvingCreditFacilityMember nvee:SeniorCreditFacilityMember 2016-12-07 0001532961 us-gaap:RevolvingCreditFacilityMember nvee:SecondARCreditAgreementMember 2021-08-13 0001532961 us-gaap:RevolvingCreditFacilityMember nvee:SecondARCreditAgreementMember 2021-08-13 2021-08-13 0001532961 us-gaap:RevolvingCreditFacilityMember nvee:SecondARCreditAgreementMember 2023-12-30 0001532961 us-gaap:RevolvingCreditFacilityMember nvee:SecondARCreditAgreementMember 2022-12-31 0001532961 us-gaap:RevolvingCreditFacilityMember nvee:SecondARCreditAgreementMember 2023-01-01 2023-12-30 0001532961 nvee:SecondARCreditAgreementMember 2023-12-30 0001532961 nvee:ARCreditAgreementMember 2023-12-30 0001532961 nvee:ARCreditAgreementMember 2023-01-01 2023-12-30 0001532961 nvee:ARCreditAgreementMember 2022-01-02 2022-12-31 0001532961 nvee:ARCreditAgreementMember 2021-01-03 2022-01-01 0001532961 nvee:EquityPlan2011Member 2023-12-30 0001532961 srt:MinimumMember us-gaap:RestrictedStockMember nvee:EquityPlan2011Member 2023-01-01 2023-12-30 0001532961 srt:MaximumMember us-gaap:RestrictedStockMember nvee:EquityPlan2011Member 2023-01-01 2023-12-30 0001532961 us-gaap:RestrictedStockMember 2021-01-02 0001532961 us-gaap:RestrictedStockMember 2021-01-03 2022-01-01 0001532961 us-gaap:RestrictedStockMember 2022-01-01 0001532961 us-gaap:RestrictedStockMember 2022-01-02 2022-12-31 0001532961 us-gaap:RestrictedStockMember 2022-12-31 0001532961 us-gaap:RestrictedStockMember 2023-01-01 2023-12-30 0001532961 us-gaap:RestrictedStockMember 2023-12-30 0001532961 us-gaap:DomesticCountryMember 2023-12-30 0001532961 us-gaap:ForeignCountryMember 2023-12-30 0001532961 us-gaap:StateAndLocalJurisdictionMember 2023-12-30 0001532961 us-gaap:OperatingSegmentsMember nvee:INFMember 2023-01-01 2023-12-30 0001532961 us-gaap:OperatingSegmentsMember nvee:INFMember 2022-01-02 2022-12-31 0001532961 us-gaap:OperatingSegmentsMember nvee:INFMember 2021-01-03 2022-01-01 0001532961 us-gaap:OperatingSegmentsMember nvee:BTSMember 2023-01-01 2023-12-30 0001532961 us-gaap:OperatingSegmentsMember nvee:BTSMember 2022-01-02 2022-12-31 0001532961 us-gaap:OperatingSegmentsMember nvee:BTSMember 2021-01-03 2022-01-01 0001532961 us-gaap:OperatingSegmentsMember nvee:GEOMember 2023-01-01 2023-12-30 0001532961 us-gaap:OperatingSegmentsMember nvee:GEOMember 2022-01-02 2022-12-31 0001532961 us-gaap:OperatingSegmentsMember nvee:GEOMember 2021-01-03 2022-01-01 0001532961 us-gaap:OperatingSegmentsMember 2023-01-01 2023-12-30 0001532961 us-gaap:OperatingSegmentsMember 2022-01-02 2022-12-31 0001532961 us-gaap:OperatingSegmentsMember 2021-01-03 2022-01-01 0001532961 us-gaap:CorporateNonSegmentMember 2023-01-01 2023-12-30 0001532961 us-gaap:CorporateNonSegmentMember 2022-01-02 2022-12-31 0001532961 us-gaap:CorporateNonSegmentMember 2021-01-03 2022-01-01 0001532961 us-gaap:OperatingSegmentsMember nvee:INFMember 2023-12-30 0001532961 us-gaap:OperatingSegmentsMember nvee:INFMember 2022-12-31 0001532961 us-gaap:OperatingSegmentsMember nvee:BTSMember 2023-12-30 0001532961 us-gaap:OperatingSegmentsMember nvee:BTSMember 2022-12-31 0001532961 us-gaap:OperatingSegmentsMember nvee:GEOMember 2023-12-30 0001532961 us-gaap:OperatingSegmentsMember nvee:GEOMember 2022-12-31 0001532961 us-gaap:CorporateNonSegmentMember 2023-12-30 0001532961 us-gaap:CorporateNonSegmentMember 2022-12-31 0001532961 country:US nvee:INFMember 2023-01-01 2023-12-30 0001532961 country:US nvee:BTSMember 2023-01-01 2023-12-30 0001532961 country:US nvee:GEOMember 2023-01-01 2023-12-30 0001532961 country:US 2023-01-01 2023-12-30 0001532961 nvee:ForeignCountriesMember nvee:INFMember 2023-01-01 2023-12-30 0001532961 nvee:ForeignCountriesMember nvee:BTSMember 2023-01-01 2023-12-30 0001532961 nvee:ForeignCountriesMember nvee:GEOMember 2023-01-01 2023-12-30 0001532961 nvee:ForeignCountriesMember 2023-01-01 2023-12-30 0001532961 country:US nvee:INFMember 2022-01-02 2022-12-31 0001532961 country:US nvee:BTSMember 2022-01-02 2022-12-31 0001532961 country:US nvee:GEOMember 2022-01-02 2022-12-31 0001532961 country:US 2022-01-02 2022-12-31 0001532961 nvee:ForeignCountriesMember nvee:INFMember 2022-01-02 2022-12-31 0001532961 nvee:ForeignCountriesMember nvee:BTSMember 2022-01-02 2022-12-31 0001532961 nvee:ForeignCountriesMember nvee:GEOMember 2022-01-02 2022-12-31 0001532961 nvee:ForeignCountriesMember 2022-01-02 2022-12-31 0001532961 country:US nvee:INFMember 2021-01-03 2022-01-01 0001532961 country:US nvee:BTSMember 2021-01-03 2022-01-01 0001532961 country:US nvee:GEOMember 2021-01-03 2022-01-01 0001532961 country:US 2021-01-03 2022-01-01 0001532961 nvee:ForeignCountriesMember nvee:INFMember 2021-01-03 2022-01-01 0001532961 nvee:ForeignCountriesMember nvee:BTSMember 2021-01-03 2022-01-01 0001532961 nvee:ForeignCountriesMember nvee:GEOMember 2021-01-03 2022-01-01 0001532961 nvee:ForeignCountriesMember 2021-01-03 2022-01-01 0001532961 nvee:INFMember 2021-01-03 2022-01-01 0001532961 nvee:BTSMember 2021-01-03 2022-01-01 0001532961 nvee:GEOMember 2021-01-03 2022-01-01 0001532961 nvee:PublicAndQuasipublicSectorMember nvee:INFMember 2023-01-01 2023-12-30 0001532961 nvee:PublicAndQuasipublicSectorMember nvee:BTSMember 2023-01-01 2023-12-30 0001532961 nvee:PublicAndQuasipublicSectorMember nvee:GEOMember 2023-01-01 2023-12-30 0001532961 nvee:PublicAndQuasipublicSectorMember 2023-01-01 2023-12-30 0001532961 nvee:PrivateSectorMember nvee:INFMember 2023-01-01 2023-12-30 0001532961 nvee:PrivateSectorMember nvee:BTSMember 2023-01-01 2023-12-30 0001532961 nvee:PrivateSectorMember nvee:GEOMember 2023-01-01 2023-12-30 0001532961 nvee:PrivateSectorMember 2023-01-01 2023-12-30 0001532961 nvee:PublicAndQuasipublicSectorMember nvee:INFMember 2022-01-02 2022-12-31 0001532961 nvee:PublicAndQuasipublicSectorMember nvee:BTSMember 2022-01-02 2022-12-31 0001532961 nvee:PublicAndQuasipublicSectorMember nvee:GEOMember 2022-01-02 2022-12-31 0001532961 nvee:PublicAndQuasipublicSectorMember 2022-01-02 2022-12-31 0001532961 nvee:PrivateSectorMember nvee:INFMember 2022-01-02 2022-12-31 0001532961 nvee:PrivateSectorMember nvee:BTSMember 2022-01-02 2022-12-31 0001532961 nvee:PrivateSectorMember nvee:GEOMember 2022-01-02 2022-12-31 0001532961 nvee:PrivateSectorMember 2022-01-02 2022-12-31 0001532961 nvee:PublicAndQuasipublicSectorMember nvee:INFMember 2021-01-03 2022-01-01 0001532961 nvee:PublicAndQuasipublicSectorMember nvee:BTSMember 2021-01-03 2022-01-01 0001532961 nvee:PublicAndQuasipublicSectorMember nvee:GEOMember 2021-01-03 2022-01-01 0001532961 nvee:PublicAndQuasipublicSectorMember 2021-01-03 2022-01-01 0001532961 nvee:PrivateSectorMember nvee:INFMember 2021-01-03 2022-01-01 0001532961 nvee:PrivateSectorMember nvee:BTSMember 2021-01-03 2022-01-01 0001532961 nvee:PrivateSectorMember nvee:GEOMember 2021-01-03 2022-01-01 0001532961 nvee:PrivateSectorMember 2021-01-03 2022-01-01 0001532961 nvee:CostreimbursableContractsMember nvee:INFMember 2023-01-01 2023-12-30 0001532961 nvee:CostreimbursableContractsMember nvee:BTSMember 2023-01-01 2023-12-30 0001532961 nvee:CostreimbursableContractsMember nvee:GEOMember 2023-01-01 2023-12-30 0001532961 nvee:CostreimbursableContractsMember 2023-01-01 2023-12-30 0001532961 us-gaap:FixedPriceContractMember nvee:INFMember 2023-01-01 2023-12-30 0001532961 us-gaap:FixedPriceContractMember nvee:BTSMember 2023-01-01 2023-12-30 0001532961 us-gaap:FixedPriceContractMember nvee:GEOMember 2023-01-01 2023-12-30 0001532961 us-gaap:FixedPriceContractMember 2023-01-01 2023-12-30 0001532961 nvee:CostreimbursableContractsMember nvee:INFMember 2022-01-02 2022-12-31 0001532961 nvee:CostreimbursableContractsMember nvee:BTSMember 2022-01-02 2022-12-31 0001532961 nvee:CostreimbursableContractsMember nvee:GEOMember 2022-01-02 2022-12-31 0001532961 nvee:CostreimbursableContractsMember 2022-01-02 2022-12-31 0001532961 us-gaap:FixedPriceContractMember nvee:INFMember 2022-01-02 2022-12-31 0001532961 us-gaap:FixedPriceContractMember nvee:BTSMember 2022-01-02 2022-12-31 0001532961 us-gaap:FixedPriceContractMember nvee:GEOMember 2022-01-02 2022-12-31 0001532961 us-gaap:FixedPriceContractMember 2022-01-02 2022-12-31 0001532961 nvee:CostreimbursableContractsMember nvee:INFMember 2021-01-03 2022-01-01 0001532961 nvee:CostreimbursableContractsMember nvee:BTSMember 2021-01-03 2022-01-01 0001532961 nvee:CostreimbursableContractsMember nvee:GEOMember 2021-01-03 2022-01-01 0001532961 nvee:CostreimbursableContractsMember 2021-01-03 2022-01-01 0001532961 us-gaap:FixedPriceContractMember nvee:INFMember 2021-01-03 2022-01-01 0001532961 us-gaap:FixedPriceContractMember nvee:BTSMember 2021-01-03 2022-01-01 0001532961 us-gaap:FixedPriceContractMember nvee:GEOMember 2021-01-03 2022-01-01 0001532961 us-gaap:FixedPriceContractMember 2021-01-03 2022-01-01 0001532961 nvee:AximGeospatialLLCMember us-gaap:SubsequentEventMember 2024-01-19 2024-01-19 0001532961 nvee:AximGeospatialLLCMember us-gaap:SubsequentEventMember 2024-01-19 iso4217:USD shares iso4217:USD shares pure nvee:acquisition nvee:lease nvee:renewal_option nvee:segment 0001532961 2023 FY false http://fasb.org/us-gaap/2023#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization http://fasb.org/us-gaap/2023#PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization http://fasb.org/us-gaap/2023#AccruedLiabilitiesCurrent http://fasb.org/us-gaap/2023#AccruedLiabilitiesCurrent http://fasb.org/us-gaap/2023#LongTermDebtAndCapitalLeaseObligationsCurrent http://fasb.org/us-gaap/2023#LongTermDebtAndCapitalLeaseObligationsCurrent http://fasb.org/us-gaap/2023#OtherLiabilitiesNoncurrent http://fasb.org/us-gaap/2023#OtherLiabilitiesNoncurrent http://fasb.org/us-gaap/2023#LongTermDebtAndCapitalLeaseObligations http://fasb.org/us-gaap/2023#LongTermDebtAndCapitalLeaseObligations P2Y 10-K true 2023-12-30 --12-30 false 001-35849 NV5 Global, Inc. DE 45-3458017 200 South Park Road, Suite 350, Hollywood, FL 33021 954 495-2112 Common Stock, $0.01 par value NVEE NASDAQ Yes No Yes Yes Large Accelerated Filer false false true false false 1500000000 15916943 <div style="margin-top:3pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9.5pt;font-weight:400;line-height:120%">Portions of the 2024 definitive Proxy Statement are incorporated by reference into Part III of this Form 10-K.</span></div> 34 Deloitte & Touche LLP Miami, Florida 44824000 38541000 152593000 145637000 113271000 92862000 18376000 13636000 329064000 290676000 50268000 41640000 36836000 39314000 226702000 160431000 524573000 400957000 3149000 2705000 1170592000 935723000 54865000 57771000 47423000 44313000 41679000 31183000 2263000 1597000 3922000 10854000 9267000 15176000 159419000 160894000 143000 4481000 26930000 29542000 205468000 39673000 2837000 6893000 394797000 241483000 0.01 0.01 5000000 5000000 0 0 0 0 0 0 0.01 0.01 45000000 45000000 15895255 15895255 15523300 15523300 159000 155000 508256000 471300000 -18000 0 267398000 222785000 775795000 694240000 1170592000 935723000 861739000 786778000 706706000 215608000 186806000 175047000 150681000 153641000 124998000 65088000 60357000 47347000 431377000 400804000 347392000 430362000 385974000 359314000 226137000 193488000 176838000 67668000 66114000 53986000 22891000 21252000 20193000 52486000 38938000 39953000 369182000 319792000 290970000 61180000 66182000 68344000 12970000 3808000 6239000 48210000 62374000 62105000 3597000 12401000 14958000 44613000 49973000 47147000 2.96 3.39 3.34 2.88 3.27 3.22 15086040 14753738 14135333 15474326 15260186 14656381 44613000 49973000 47147000 -18000 0 0 44595000 49973000 47147000 13270131 133000 268271000 0 125665000 394069000 16301000 16301000 226736 2000 -2000 0 580 52000 52000 60680 5203000 5203000 1854838 19000 161824000 161843000 2200 209000 209000 47147000 47147000 15414005 154000 451754000 0 172812000 624720000 18195000 18195000 96776 1000 -1000 0 12519 1352000 1352000 49973000 49973000 15523300 155000 471300000 0 222785000 694240000 20193000 20193000 244332 3000 -3000 0 730 81000 81000 125497 1000 14850000 14851000 1697000 1697000 2856 300000 300000 -18000 -18000 44613000 44613000 15895255 159000 508256000 -18000 267398000 775795000 44613000 49973000 47147000 58020000 44063000 44971000 13562000 12813000 10191000 1261000 -60000 1243000 22379000 19326000 16301000 -9280000 2972000 2333000 694000 328000 1102000 -125000 0 0 -25709000 -18492000 -7007000 758000 724000 1210000 -7584000 -10212000 -2677000 15666000 3303000 12573000 2292000 1125000 4792000 -8470000 -1673000 8181000 -19848000 -19901000 -12507000 -1307000 -800000 0 -3243000 -296000 4005000 664000 -125000 1164000 62207000 93980000 101442000 189345000 5908000 67995000 720000 87000 1639000 17166000 15689000 13903000 -205791000 -21510000 -80259000 188000000 0 138750000 0 0 172500000 26000000 65000000 323832000 11071000 15445000 12516000 993000 1464000 1329000 0 0 10657000 0 0 976000 81000 0 52000 149855000 -81909000 -38112000 12000 0 0 6283000 -9439000 -16929000 38541000 47980000 64909000 44824000 38541000 47980000 12542000 4220000 5909000 30326000 29639000 26270000 610000 6299000 5133000 6333000 2039000 21837000 14851000 1352000 5203000 1697000 0 0 2289000 2490000 376000 300000 0 209000 Organization and Nature of Business Operations<div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Business</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">NV5 Global, Inc. and its subsidiaries (collectively, the “Company” or “NV5 Global”) is a provider of technology, conformity assessment, consulting solutions, and software applications to public and private sector clients in the infrastructure, utility services, construction, real estate, environmental, and geospatial markets, operating nationwide and abroad. The Company’s clients include the U.S. Federal, state and local governments, and the private sector. NV5 Global provides a wide range of services, including, but not limited to:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:0.1%"></td><td style="width:1.703%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:45.166%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.703%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:48.828%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Utility services</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Commissioning</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">LNG services</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Building program management</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Engineering</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Environmental health &amp; safety</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Civil program management</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Real estate transaction services</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Surveying</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Energy efficiency &amp; clean energy services</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Construction quality assurance</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Mission critical services</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Code compliance consulting</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3D geospatial data modeling</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forensic services</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Environmental &amp; natural resources</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Litigation support</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Robotic survey solutions</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ecological studies</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Geospatial data applications &amp; software</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">●</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">MEP &amp; technology design</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div> Summary of Significant Accounting Policies<div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Basis of Presentation and Principles of Consolidation</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The consolidated financial statements of the Company are presented in U.S. dollars in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) and have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”). The consolidated financial statements include the accounts of the Company and its subsidiaries. All intercompany transactions and balances have been eliminated in consolidation. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Fiscal Year</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company reports its financial results on a 52/53-week fiscal year ending on the Saturday closest to December 31st (whether or not in the following calendar year), with interim calendar quarters ending on the Saturday closest to the end of such calendar quarter (whether or not in the following calendar quarter). As a result, fiscal 2023, 2022, and 2021 included 52 weeks.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Use of Estimates</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts in the consolidated financial statements and accompanying notes. These estimates and assumptions are based on management’s most recent assessment of underlying facts and circumstances using the most recent information available. Actual results could differ significantly from these estimates and assumptions, and the differences could be material.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Estimates and assumptions are evaluated periodically and adjusted when necessary. The more significant estimates affecting amounts reported in the consolidated financial statements include the following:</span></div><div style="margin-top:12pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Fair value estimates used in accounting for business combinations including the valuation of identifiable intangible assets and contingent consideration,</span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Fair value estimates in determining the fair value of our reporting units for goodwill impairment assessment,</span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Revenue recognition over time, and</span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Allowances for uncollectible accounts.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Cash and Cash Equivalents</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Cash and cash equivalents include cash on deposit with financial institutions and investments in high quality overnight money market funds, all of which have maturities of three months or less when purchased. From time to time the Company may be exposed to credit risk with its bank deposits in excess of the Federal Deposit Insurance Corporation insurance limits and with uninsured money market investments. Management believes cash and cash equivalent balances are not exposed to significant credit risk due to the financial position of the depository institutions in which those deposits are held.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Concentration of Credit Risk</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Trade receivable balances carried by the Company are comprised of accounts from a diverse client base across a broad range of industries and are not collateralized. The Company did not have any clients representing more than 10% of our gross revenues during 2023, 2022, or 2021; however, 26%, 28% and 26% of the Company’s gross revenues for fiscal years 2023, 2022, and 2021, respectively, are from California-based projects. During fiscal years 2023, 2022, and 2021 approximately 68%, 64% and 65%, respectively, of our gross revenues were attributable to the public and quasi-public sector. Management continually evaluates the creditworthiness of these and future clients and provides for bad debt reserves as necessary.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Fair Value of Financial Instruments</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Fair value is defined as the amount that would be received for selling an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date and is measured using inputs in one of the following three categories:</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Level 1</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> measurements are based on unadjusted quoted prices in active markets for identical assets or liabilities that we have the ability to access. Valuation of these items does not entail a significant amount of judgment. </span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Level 2</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> measurements are based on quoted prices for similar assets or liabilities in active markets, quoted prices for identical or similar assets or liabilities in markets that are not active or market data other than quoted prices that are observable for the assets or liabilities.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Level 3</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> measurements are based on unobservable data that are supported by little or no market activity and are significant to the fair value of the assets or liabilities.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company considers cash and cash equivalents, accounts receivable, accounts payable, income taxes payable, accrued liabilities, and debt obligations to meet the definition of financial instruments. As of December 30, 2023, and December 31, 2022, the carrying amount of cash and cash equivalents, accounts receivable, accounts payable, income taxes payable, and accrued liabilities approximate their fair value due to the relatively short period of time between their origination and their expected realization or payment. The carrying amounts of debt obligations approximate their fair values as the terms are comparable to terms currently offered by local lending institutions for arrangements with similar terms to industry peers with comparable credit characteristics.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Fair Value of Acquisitions</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company applies the provisions of the Financial Accounting Standards Board (“FASB”) Accounting Standards Codification (“ASC”) 805, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Business Combinations</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, in the accounting for its acquisitions, which requires recognition of the assets acquired and the liabilities assumed at their acquisition date fair values, separately from goodwill. Goodwill as of the acquisition date is measured as the excess of consideration transferred and the net of the acquisition date fair values of the tangible and identifiable intangible assets acquired and liabilities assumed. The allocation of the purchase price to identifiable intangible assets is based on valuations performed to determine the fair values of such assets as of the acquisition dates. Generally, the Company engages a third-party independent valuation specialist to assist in management’s determination of fair values of tangible and intangible assets acquired and liabilities assumed. The fair values of earn-out arrangements are included </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">as part of the purchase price of the acquired companies on their respective acquisition dates. The Company estimates the fair value of contingent earn-out payments as part of the initial purchase price and records the estimated fair value of contingent consideration as a liability on the consolidated balance sheet. Changes in the estimated fair value of contingent earn-out payments are included in General and Administrative expenses on the Consolidated Statements of Net Income and Comprehensive Income.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Several factors are considered when determining contingent consideration liabilities as part of the purchase price, including whether: (i) the valuation of the acquisitions is not supported solely by the initial consideration paid, and the contingent earn-out formula is a critical and material component of the valuation approach to determining the purchase price; and (ii) the former owners of the acquired companies that remain as key employees receive compensation other than contingent earn-out payments at a reasonable level compared with the compensation of other key employees. The contingent earn-out payments are not affected by employment termination.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company reviews and re-assesses the estimated fair value of contingent consideration liabilities on a quarterly basis, and the updated fair value could differ from the initial estimates. The Company measures contingent consideration recognized in connection with business combinations at fair value on a recurring basis using significant unobservable inputs classified as Level 3 inputs. The Company generally uses a Monte Carlo simulation-based option pricing model, based on key inputs requiring significant judgments and estimates to be made by the Company, including projections of future earnings over the earn-out period. Significant increases or decreases to these inputs could result in a significantly higher or lower liability with a higher liability capped by the contractual maximum of the contingent consideration liabilities. Ultimately, the liability will be equivalent to the amount paid, and the difference between the fair value estimate as of the acquisition date and amount paid will be recorded in earnings. See Note 12, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Contingent Consideration</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, for additional information regarding contingent consideration. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Property and Equipment</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment is stated at cost. Property and equipment acquired in a business combination is stated at fair value at the acquisition date. The Company capitalizes the cost of improvements to property and equipment that increase the value or extend the useful lives of the assets. Normal repair and maintenance costs are expensed as incurred. Depreciation and amortization is computed on a straight-line basis over the following estimated useful lives of the assets. Leasehold improvements are amortized on a straight-line basis over the lesser of their estimated useful lives or the remaining terms of the related lease agreement.</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:45.312%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:51.756%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Asset</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Depreciation Period (in years)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:justify;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Office furniture and equipment</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Computer equipment</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Survey and field equipment</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 - 15</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lesser of the estimated useful lives or remaining term of the lease</span></td></tr></table></div><div style="margin-top:7pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment balances are periodically reviewed by management for impairment whenever events or changes in circumstances indicate that the carrying value of the asset may not be recoverable. If an indicator of impairment exists, the Company compares the estimated future cash flows of the asset, on an undiscounted basis, to the carrying value of the asset. If the undiscounted cash flows exceed the carrying value, no impairment is indicated. If the undiscounted cash flows do not exceed the carrying value, then impairment is measured as the difference between fair value and carrying value, with fair value typically based on a discounted cash flow model. During fiscal years 2023, 2022 and 2021, no impairment charge relating to property and equipment was recognized.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Goodwill and Intangible Assets</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill is the excess of consideration paid for an acquired entity over the amounts assigned to assets acquired, including other identifiable intangible assets and liabilities assumed in a business combination. To determine the amount of goodwill resulting from a business combination, the Company performs an assessment to determine the acquisition date fair value of the acquired company’s tangible and identifiable intangible assets and liabilities.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company evaluates goodwill annually for impairment on August 1, or whenever events or changes in circumstances indicate the asset may be impaired, using the quantitative method. An entity has the option to first assess </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">qualitative factors to determine whether the existence of events or circumstances leads to a determination that it is more likely than not that the fair value of a reporting unit is less than its carrying amount. These qualitative factors include macroeconomic and industry conditions, cost factors, overall financial performance, and other relevant entity-specific events. If the entity determines that this threshold is met, then the Company applies a one-step quantitative test and records the amount of goodwill impairment as the excess of a reporting unit's carrying amount over its fair value, not to exceed the total amount of goodwill allocated to the reporting unit. The Company determines fair value through multiple valuation techniques, and weights the results accordingly. Subjective and complex judgments are required in assessing whether an event of impairment of goodwill has occurred, including assumptions and estimates used to determine the fair value of its reporting units. The Company conducts its annual impairment tests on the goodwill using the quantitative method of evaluating goodwill. </span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Identifiable intangible assets primarily include customer backlog, customer relationships, trade names, non-compete agreements, and developed technology. Amortizable intangible assets are amortized on a straight-line basis over their estimated useful lives and reviewed for impairment whenever events or changes in circumstances indicate that the assets may be impaired. If an indicator of impairment exists, the Company compares the estimated future cash flows of the asset, on an undiscounted basis, to the carrying value of the asset. If the undiscounted cash flows exceed the carrying value, no impairment is indicated. If the undiscounted cash flows do not exceed the carrying value, then impairment, if any, is measured as the difference between fair value and carrying value, with fair value typically based on a discounted cash flow model. </span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During fiscal years 2023, 2022 and 2021, no impairment charge relating to goodwill and intangible assets was recognized. See Note 9, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Goodwill and Intangible Assets</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, for further information on goodwill and identified intangibles.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Revenue Recognition</span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company utilizes the contract method under ASC Topic 606, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Revenue from Contracts with Customers</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (“Topic 606”), which allows companies to account for contracts on a contract-by-contract basis. For the Company's time and materials contracts, it applies the as-invoiced practical expedient, which permits us to recognize revenue as the right to invoice for services performed.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">To determine the proper revenue recognition method, the Company evaluates whether two or more contracts should be combined and accounted for as one single contract and whether the combined or single contract should be accounted for as more than one performance obligation. The majority of the Company's contracts have a single performance obligation as the promise to transfer the individual goods or services is not separately identifiable from other promises in the contracts and, therefore, is not distinct. </span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s performance obligations are satisfied as work progresses or at a point in time. Revenue on the Company's cost-reimbursable contracts is recognized over time using direct costs incurred or direct costs incurred to date as compared to the estimated total direct costs for performance obligations because it depicts the transfer of control to the customer. Contract costs include labor, sub-consultant services, and other direct costs. Gross revenues from services transferred to customers over time accounted for 90%, 88%, and 90% of the Company’s revenues during fiscal years 2023, 2022, and 2021, respectively.</span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gross revenues recognized under lump-sum contracts were $427,462, $343,538, and $309,624 during the fiscal years 2023, 2022, and 2021, respectively. </span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gross revenues from services transferred to customers at a point in time is recognized when the customer obtains control of the asset, which is generally upon delivery and acceptance by the customer of the reports and/or analysis performed. Gross revenue from services transferred to customers at a point in time accounted for 10%, 12%, and 10% of the Company’s revenues during fiscal years 2023, 2022, and 2021, respectively. </span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 30, 2023, the Company had $849,515 of remaining performance obligations, of which $673,235 is expected to be recognized over the next 12 months and the majority of the balance over the next 24 months. Contracts for which work authorizations have been received are included in performance obligations. Performance obligations include only those amounts that have been funded and authorized and does not reflect the full amounts the Company may receive over the term of such contracts. In the case of non-government contracts and project awards, performance obligations include future revenue at contract or customary rates, excluding contract renewals or extensions that are at the discretion of the client. For contracts with a not-to-exceed maximum amount, the Company includes revenue from such contracts in performance obligations to the extent of the remaining estimated amount.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contract modifications are common in the performance of our contracts. Contracts modified typically result from changes in scope, specifications, design, performance, sites, or period of completion. In most cases, contract modifications are for services that are not distinct, and, therefore, are accounted for as part of the existing contract.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contract estimates are based on various assumptions to project the outcome of future events. These assumptions are dependent upon the accuracy of a variety of estimates, including engineering progress, achievement of milestones, labor productivity, and cost estimates. Due to uncertainties inherent in the estimation process, it is possible that actual completion costs may vary from estimates. If estimated total costs on contracts indicate a loss or reduction to the percentage of total contract revenues recognized to date, these losses or reductions are recognized in the period in which the revisions are known. The effect of revisions to revenues, estimated costs to complete contracts, including penalties, incentive awards, change orders, claims, and anticipated losses are recorded on the cumulative catch-up basis in the period in which the revisions are identified and the loss can be reasonably estimated. Such revisions could occur in any reporting period and the effects on the results of operations for that reporting period may be material depending on the size of the project or the adjustment. During fiscal years 2023, 2022, and 2021 the cumulative catch-up adjustments for contract modifications were not material.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A significant amount of the Company’s revenues are derived under multi-year contracts. The Company enters into contracts with its clients that contain two principal types of pricing provisions: cost-reimbursable and fixed-unit price.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Cost-reimbursable contracts</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> consist of the following:</span></div><div style="margin-top:12pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Time and materials contracts, which are common for smaller scale professional and technical consulting and certification services projects. Under these types of contracts, there is no predetermined fee. Instead, the Company negotiates hourly billing rates and charges the clients based upon actual hours expended on a project. In addition, any direct project expenditures are passed through to the client and are typically reimbursed. These contracts may have an initial not-to-exceed or guaranteed maximum price provision.</span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Cost-plus contracts are the predominant contracting method used by U.S. Federal, state, and local governments. Under these types of contracts, the Company charges clients for its costs, including both direct and indirect costs, plus a negotiated fee. The total estimated cost plus the negotiated fee represents the total contract value.</span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Lump-sum contracts typically require the performance of all of the work under the contract for a specified lump-sum fee, subject to price adjustments if the scope of the project changes or unforeseen conditions arise. Many of the Company’s lump-sum contracts are negotiated and arise in the design of projects with a specified scope and project deliverables. In most cases, we can bill additional fees if the construction schedule is modified and lengthened.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Fixed-unit</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">price contracts</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> typically require the performance of an estimated number of units of work at an agreed price per unit, with the total payment under the contract determined by the actual number of units performed.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Federal Acquisition Regulations (“FAR”), which are applicable to the Company’s federal government contracts and may be incorporated in local and state agency contracts, limit the recovery of certain specified indirect costs on contracts. Cost-plus contracts covered by FAR or certain state and local agencies also may require an audit of actual costs and provide for upward or downward adjustments if actual recoverable costs differ from billed recoverable costs.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Contract Balances</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The timing of revenue recognition, billings, and cash collections results in billed receivables, unbilled receivables (contract assets), and billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities) on the Consolidated Balance Sheets.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Billed receivables, net represents amounts billed to clients that remain uncollected as of the balance sheet date. The amounts are stated at their estimated realizable value. The Company maintains an allowance for doubtful accounts to provide for the estimated amount of receivables that will not be collected. The allowance is estimated based on management’s evaluation of the contracts involved and the financial condition of clients. Factors the Company considers include, but are not limited to:</span></div><div style="margin-top:12pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Client type (governmental or commercial client),</span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Historical performance,</span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Historical collection trends, and </span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">General economic conditions.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Billed receivables are generally collected within less than 12 months. The allowance is increased by the Company’s provision for doubtful accounts which is charged against income. All recoveries on receivables previously charged off are included in income, while direct charge-offs of receivables are deducted from the allowance.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unbilled receivables, net represents recognized amounts pending billing pursuant to contract terms or accounts billed after period end, and are expected to be billed and collected within the next 12 months. Generally, billing occurs subsequent to revenue recognition, resulting in contract assets. Unbilled receivables (contract assets) are generally classified as current.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In certain circumstances, the contract may allow for billing terms that result in the cumulative amounts billed in excess of revenues recognized. “Billings in excess of costs and estimated earnings on uncompleted contracts” represents billings in excess of revenues recognized on these contracts as of the reporting date. This liability is generally classified as current. During fiscal 2023, the Company performed services and recognized $27,479 of revenue related to its contract liabilities that existed as of December 31, 2022.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Advertising</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Advertising costs are charged to expense in the period incurred and amounted to $2,767, $1,977, and $895 during fiscal years 2023, 2022, and 2021, respectively, which are included in General and Administrative Expenses on the accompanying Consolidated Statements of Net Income and Comprehensive Income.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Income Taxes</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company accounts for income taxes in accordance with ASC Topic No. 740 “</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Income Taxes</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">” (“Topic No. 740”). Deferred income taxes reflect the impact of temporary differences between amounts of assets and liabilities for financial reporting purposes and such amounts as measured by tax laws. A valuation allowance against the Company’s deferred tax assets is recorded when it is more likely than not that some portion or all of the deferred tax assets will not be realized. In determining the need for a valuation allowance, management is required to make assumptions and to apply judgment, including forecasting future earnings, taxable income, and the mix of earnings in the jurisdictions in which the Company operates. Management periodically assesses the need for a valuation allowance based on the Company’s current and anticipated results of operations. The need for and the amount of a valuation allowance can change in the near term if operating results and projections change significantly.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recognizes the consolidated financial statement benefit of a tax position only after determining that the relevant tax authority would more likely than not sustain the position following an audit. For tax positions meeting the more likely-than-not threshold, the amount recognized in the consolidated financial statements is the largest benefit that has a greater than 50 percent likelihood of being realized upon ultimate settlement with the relevant tax authority. The Company applies the uncertain tax position guidance to all tax positions for which the statute of limitations remains open. The Company’s policy is to classify interest and penalties as income tax expense.</span></div> <div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Basis of Presentation and Principles of Consolidation</span></div>The consolidated financial statements of the Company are presented in U.S. dollars in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) and have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”). The consolidated financial statements include the accounts of the Company and its subsidiaries. All intercompany transactions and balances have been eliminated in consolidation. <div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Fiscal Year</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company reports its financial results on a 52/53-week fiscal year ending on the Saturday closest to December 31st (whether or not in the following calendar year), with interim calendar quarters ending on the Saturday closest to the end of such calendar quarter (whether or not in the following calendar quarter). As a result, fiscal 2023, 2022, and 2021 included 52 weeks.</span></div> <div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Use of Estimates</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts in the consolidated financial statements and accompanying notes. These estimates and assumptions are based on management’s most recent assessment of underlying facts and circumstances using the most recent information available. Actual results could differ significantly from these estimates and assumptions, and the differences could be material.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Estimates and assumptions are evaluated periodically and adjusted when necessary. The more significant estimates affecting amounts reported in the consolidated financial statements include the following:</span></div><div style="margin-top:12pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Fair value estimates used in accounting for business combinations including the valuation of identifiable intangible assets and contingent consideration,</span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Fair value estimates in determining the fair value of our reporting units for goodwill impairment assessment,</span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Revenue recognition over time, and</span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Allowances for uncollectible accounts.</span></div> <div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Cash and Cash Equivalents</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Cash and cash equivalents include cash on deposit with financial institutions and investments in high quality overnight money market funds, all of which have maturities of three months or less when purchased. From time to time the Company may be exposed to credit risk with its bank deposits in excess of the Federal Deposit Insurance Corporation insurance limits and with uninsured money market investments. Management believes cash and cash equivalent balances are not exposed to significant credit risk due to the financial position of the depository institutions in which those deposits are held.</span></div> <div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Concentration of Credit Risk</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Trade receivable balances carried by the Company are comprised of accounts from a diverse client base across a broad range of industries and are not collateralized. The Company did not have any clients representing more than 10% of our gross revenues during 2023, 2022, or 2021; however, 26%, 28% and 26% of the Company’s gross revenues for fiscal years 2023, 2022, and 2021, respectively, are from California-based projects. During fiscal years 2023, 2022, and 2021 approximately 68%, 64% and 65%, respectively, of our gross revenues were attributable to the public and quasi-public sector. Management continually evaluates the creditworthiness of these and future clients and provides for bad debt reserves as necessary.</span></div> 0.26 0.28 0.26 0.68 0.64 0.65 <div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Fair Value of Financial Instruments</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Fair value is defined as the amount that would be received for selling an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date and is measured using inputs in one of the following three categories:</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Level 1</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> measurements are based on unadjusted quoted prices in active markets for identical assets or liabilities that we have the ability to access. Valuation of these items does not entail a significant amount of judgment. </span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Level 2</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> measurements are based on quoted prices for similar assets or liabilities in active markets, quoted prices for identical or similar assets or liabilities in markets that are not active or market data other than quoted prices that are observable for the assets or liabilities.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Level 3</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> measurements are based on unobservable data that are supported by little or no market activity and are significant to the fair value of the assets or liabilities.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company considers cash and cash equivalents, accounts receivable, accounts payable, income taxes payable, accrued liabilities, and debt obligations to meet the definition of financial instruments. As of December 30, 2023, and December 31, 2022, the carrying amount of cash and cash equivalents, accounts receivable, accounts payable, income taxes payable, and accrued liabilities approximate their fair value due to the relatively short period of time between their origination and their expected realization or payment. The carrying amounts of debt obligations approximate their fair values as the terms are comparable to terms currently offered by local lending institutions for arrangements with similar terms to industry peers with comparable credit characteristics.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Fair Value of Acquisitions</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company applies the provisions of the Financial Accounting Standards Board (“FASB”) Accounting Standards Codification (“ASC”) 805, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Business Combinations</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, in the accounting for its acquisitions, which requires recognition of the assets acquired and the liabilities assumed at their acquisition date fair values, separately from goodwill. Goodwill as of the acquisition date is measured as the excess of consideration transferred and the net of the acquisition date fair values of the tangible and identifiable intangible assets acquired and liabilities assumed. The allocation of the purchase price to identifiable intangible assets is based on valuations performed to determine the fair values of such assets as of the acquisition dates. Generally, the Company engages a third-party independent valuation specialist to assist in management’s determination of fair values of tangible and intangible assets acquired and liabilities assumed. The fair values of earn-out arrangements are included </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">as part of the purchase price of the acquired companies on their respective acquisition dates. The Company estimates the fair value of contingent earn-out payments as part of the initial purchase price and records the estimated fair value of contingent consideration as a liability on the consolidated balance sheet. Changes in the estimated fair value of contingent earn-out payments are included in General and Administrative expenses on the Consolidated Statements of Net Income and Comprehensive Income.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Several factors are considered when determining contingent consideration liabilities as part of the purchase price, including whether: (i) the valuation of the acquisitions is not supported solely by the initial consideration paid, and the contingent earn-out formula is a critical and material component of the valuation approach to determining the purchase price; and (ii) the former owners of the acquired companies that remain as key employees receive compensation other than contingent earn-out payments at a reasonable level compared with the compensation of other key employees. The contingent earn-out payments are not affected by employment termination.</span></div>The Company reviews and re-assesses the estimated fair value of contingent consideration liabilities on a quarterly basis, and the updated fair value could differ from the initial estimates. The Company measures contingent consideration recognized in connection with business combinations at fair value on a recurring basis using significant unobservable inputs classified as Level 3 inputs. The Company generally uses a Monte Carlo simulation-based option pricing model, based on key inputs requiring significant judgments and estimates to be made by the Company, including projections of future earnings over the earn-out period. Significant increases or decreases to these inputs could result in a significantly higher or lower liability with a higher liability capped by the contractual maximum of the contingent consideration liabilities. Ultimately, the liability will be equivalent to the amount paid, and the difference between the fair value estimate as of the acquisition date and amount paid will be recorded in earnings. <div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Property and Equipment</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment is stated at cost. Property and equipment acquired in a business combination is stated at fair value at the acquisition date. The Company capitalizes the cost of improvements to property and equipment that increase the value or extend the useful lives of the assets. Normal repair and maintenance costs are expensed as incurred. Depreciation and amortization is computed on a straight-line basis over the following estimated useful lives of the assets. Leasehold improvements are amortized on a straight-line basis over the lesser of their estimated useful lives or the remaining terms of the related lease agreement.</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:45.312%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:51.756%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Asset</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Depreciation Period (in years)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:justify;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Office furniture and equipment</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Computer equipment</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Survey and field equipment</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 - 15</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lesser of the estimated useful lives or remaining term of the lease</span></td></tr></table></div><div style="margin-top:7pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment balances are periodically reviewed by management for impairment whenever events or changes in circumstances indicate that the carrying value of the asset may not be recoverable. If an indicator of impairment exists, the Company compares the estimated future cash flows of the asset, on an undiscounted basis, to the carrying value of the asset. If the undiscounted cash flows exceed the carrying value, no impairment is indicated. If the undiscounted cash flows do not exceed the carrying value, then impairment is measured as the difference between fair value and carrying value, with fair value typically based on a discounted cash flow model. During fiscal years 2023, 2022 and 2021, no impairment charge relating to property and equipment was recognized.</span></div> <div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:45.312%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:51.756%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Asset</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Depreciation Period (in years)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:justify;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Office furniture and equipment</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Computer equipment</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:justify;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Survey and field equipment</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 - 15</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:justify;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lesser of the estimated useful lives or remaining term of the lease</span></td></tr></table></div> P4Y P3Y P5Y P15Y 0 0 0 <div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Goodwill and Intangible Assets</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill is the excess of consideration paid for an acquired entity over the amounts assigned to assets acquired, including other identifiable intangible assets and liabilities assumed in a business combination. To determine the amount of goodwill resulting from a business combination, the Company performs an assessment to determine the acquisition date fair value of the acquired company’s tangible and identifiable intangible assets and liabilities.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company evaluates goodwill annually for impairment on August 1, or whenever events or changes in circumstances indicate the asset may be impaired, using the quantitative method. An entity has the option to first assess </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">qualitative factors to determine whether the existence of events or circumstances leads to a determination that it is more likely than not that the fair value of a reporting unit is less than its carrying amount. These qualitative factors include macroeconomic and industry conditions, cost factors, overall financial performance, and other relevant entity-specific events. If the entity determines that this threshold is met, then the Company applies a one-step quantitative test and records the amount of goodwill impairment as the excess of a reporting unit's carrying amount over its fair value, not to exceed the total amount of goodwill allocated to the reporting unit. The Company determines fair value through multiple valuation techniques, and weights the results accordingly. Subjective and complex judgments are required in assessing whether an event of impairment of goodwill has occurred, including assumptions and estimates used to determine the fair value of its reporting units. The Company conducts its annual impairment tests on the goodwill using the quantitative method of evaluating goodwill. </span></div>Identifiable intangible assets primarily include customer backlog, customer relationships, trade names, non-compete agreements, and developed technology. Amortizable intangible assets are amortized on a straight-line basis over their estimated useful lives and reviewed for impairment whenever events or changes in circumstances indicate that the assets may be impaired. If an indicator of impairment exists, the Company compares the estimated future cash flows of the asset, on an undiscounted basis, to the carrying value of the asset. If the undiscounted cash flows exceed the carrying value, no impairment is indicated. If the undiscounted cash flows do not exceed the carrying value, then impairment, if any, is measured as the difference between fair value and carrying value, with fair value typically based on a discounted cash flow model. 0 0 0 <div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Revenue Recognition</span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company utilizes the contract method under ASC Topic 606, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Revenue from Contracts with Customers</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (“Topic 606”), which allows companies to account for contracts on a contract-by-contract basis. For the Company's time and materials contracts, it applies the as-invoiced practical expedient, which permits us to recognize revenue as the right to invoice for services performed.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">To determine the proper revenue recognition method, the Company evaluates whether two or more contracts should be combined and accounted for as one single contract and whether the combined or single contract should be accounted for as more than one performance obligation. The majority of the Company's contracts have a single performance obligation as the promise to transfer the individual goods or services is not separately identifiable from other promises in the contracts and, therefore, is not distinct. </span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s performance obligations are satisfied as work progresses or at a point in time. Revenue on the Company's cost-reimbursable contracts is recognized over time using direct costs incurred or direct costs incurred to date as compared to the estimated total direct costs for performance obligations because it depicts the transfer of control to the customer. Contract costs include labor, sub-consultant services, and other direct costs. Gross revenues from services transferred to customers over time accounted for 90%, 88%, and 90% of the Company’s revenues during fiscal years 2023, 2022, and 2021, respectively.</span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gross revenues recognized under lump-sum contracts were $427,462, $343,538, and $309,624 during the fiscal years 2023, 2022, and 2021, respectively. </span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gross revenues from services transferred to customers at a point in time is recognized when the customer obtains control of the asset, which is generally upon delivery and acceptance by the customer of the reports and/or analysis performed. Gross revenue from services transferred to customers at a point in time accounted for 10%, 12%, and 10% of the Company’s revenues during fiscal years 2023, 2022, and 2021, respectively. </span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 30, 2023, the Company had $849,515 of remaining performance obligations, of which $673,235 is expected to be recognized over the next 12 months and the majority of the balance over the next 24 months. Contracts for which work authorizations have been received are included in performance obligations. Performance obligations include only those amounts that have been funded and authorized and does not reflect the full amounts the Company may receive over the term of such contracts. In the case of non-government contracts and project awards, performance obligations include future revenue at contract or customary rates, excluding contract renewals or extensions that are at the discretion of the client. For contracts with a not-to-exceed maximum amount, the Company includes revenue from such contracts in performance obligations to the extent of the remaining estimated amount.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contract modifications are common in the performance of our contracts. Contracts modified typically result from changes in scope, specifications, design, performance, sites, or period of completion. In most cases, contract modifications are for services that are not distinct, and, therefore, are accounted for as part of the existing contract.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contract estimates are based on various assumptions to project the outcome of future events. These assumptions are dependent upon the accuracy of a variety of estimates, including engineering progress, achievement of milestones, labor productivity, and cost estimates. Due to uncertainties inherent in the estimation process, it is possible that actual completion costs may vary from estimates. If estimated total costs on contracts indicate a loss or reduction to the percentage of total contract revenues recognized to date, these losses or reductions are recognized in the period in which the revisions are known. The effect of revisions to revenues, estimated costs to complete contracts, including penalties, incentive awards, change orders, claims, and anticipated losses are recorded on the cumulative catch-up basis in the period in which the revisions are identified and the loss can be reasonably estimated. Such revisions could occur in any reporting period and the effects on the results of operations for that reporting period may be material depending on the size of the project or the adjustment. During fiscal years 2023, 2022, and 2021 the cumulative catch-up adjustments for contract modifications were not material.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A significant amount of the Company’s revenues are derived under multi-year contracts. The Company enters into contracts with its clients that contain two principal types of pricing provisions: cost-reimbursable and fixed-unit price.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Cost-reimbursable contracts</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> consist of the following:</span></div><div style="margin-top:12pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Time and materials contracts, which are common for smaller scale professional and technical consulting and certification services projects. Under these types of contracts, there is no predetermined fee. Instead, the Company negotiates hourly billing rates and charges the clients based upon actual hours expended on a project. In addition, any direct project expenditures are passed through to the client and are typically reimbursed. These contracts may have an initial not-to-exceed or guaranteed maximum price provision.</span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Cost-plus contracts are the predominant contracting method used by U.S. Federal, state, and local governments. Under these types of contracts, the Company charges clients for its costs, including both direct and indirect costs, plus a negotiated fee. The total estimated cost plus the negotiated fee represents the total contract value.</span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Lump-sum contracts typically require the performance of all of the work under the contract for a specified lump-sum fee, subject to price adjustments if the scope of the project changes or unforeseen conditions arise. Many of the Company’s lump-sum contracts are negotiated and arise in the design of projects with a specified scope and project deliverables. In most cases, we can bill additional fees if the construction schedule is modified and lengthened.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Fixed-unit</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">price contracts</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> typically require the performance of an estimated number of units of work at an agreed price per unit, with the total payment under the contract determined by the actual number of units performed.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Federal Acquisition Regulations (“FAR”), which are applicable to the Company’s federal government contracts and may be incorporated in local and state agency contracts, limit the recovery of certain specified indirect costs on contracts. Cost-plus contracts covered by FAR or certain state and local agencies also may require an audit of actual costs and provide for upward or downward adjustments if actual recoverable costs differ from billed recoverable costs.</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Contract Balances</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The timing of revenue recognition, billings, and cash collections results in billed receivables, unbilled receivables (contract assets), and billings in excess of costs and estimated earnings on uncompleted contracts (contract liabilities) on the Consolidated Balance Sheets.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Billed receivables, net represents amounts billed to clients that remain uncollected as of the balance sheet date. The amounts are stated at their estimated realizable value. The Company maintains an allowance for doubtful accounts to provide for the estimated amount of receivables that will not be collected. The allowance is estimated based on management’s evaluation of the contracts involved and the financial condition of clients. Factors the Company considers include, but are not limited to:</span></div><div style="margin-top:12pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Client type (governmental or commercial client),</span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Historical performance,</span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Historical collection trends, and </span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">General economic conditions.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Billed receivables are generally collected within less than 12 months. The allowance is increased by the Company’s provision for doubtful accounts which is charged against income. All recoveries on receivables previously charged off are included in income, while direct charge-offs of receivables are deducted from the allowance.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unbilled receivables, net represents recognized amounts pending billing pursuant to contract terms or accounts billed after period end, and are expected to be billed and collected within the next 12 months. Generally, billing occurs subsequent to revenue recognition, resulting in contract assets. Unbilled receivables (contract assets) are generally classified as current.</span></div>In certain circumstances, the contract may allow for billing terms that result in the cumulative amounts billed in excess of revenues recognized. “Billings in excess of costs and estimated earnings on uncompleted contracts” represents billings in excess of revenues recognized on these contracts as of the reporting date. This liability is generally classified as current. 0.90 0.88 0.90 427462000 343538000 309624000 0.10 0.12 0.10 849515000 673235000 P12M P24M 27479000 <div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Advertising</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Advertising costs are charged to expense in the period incurred and amounted to $2,767, $1,977, and $895 during fiscal years 2023, 2022, and 2021, respectively, which are included in General and Administrative Expenses on the accompanying Consolidated Statements of Net Income and Comprehensive Income.</span></div> 2767000 1977000 895000 <div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Income Taxes</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company accounts for income taxes in accordance with ASC Topic No. 740 “</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Income Taxes</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">” (“Topic No. 740”). Deferred income taxes reflect the impact of temporary differences between amounts of assets and liabilities for financial reporting purposes and such amounts as measured by tax laws. A valuation allowance against the Company’s deferred tax assets is recorded when it is more likely than not that some portion or all of the deferred tax assets will not be realized. In determining the need for a valuation allowance, management is required to make assumptions and to apply judgment, including forecasting future earnings, taxable income, and the mix of earnings in the jurisdictions in which the Company operates. Management periodically assesses the need for a valuation allowance based on the Company’s current and anticipated results of operations. The need for and the amount of a valuation allowance can change in the near term if operating results and projections change significantly.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recognizes the consolidated financial statement benefit of a tax position only after determining that the relevant tax authority would more likely than not sustain the position following an audit. For tax positions meeting the more likely-than-not threshold, the amount recognized in the consolidated financial statements is the largest benefit that has a greater than 50 percent likelihood of being realized upon ultimate settlement with the relevant tax authority. The Company applies the uncertain tax position guidance to all tax positions for which the statute of limitations remains open. The Company’s policy is to classify interest and penalties as income tax expense.</span></div> Recently<span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Issued</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Accounting Pronouncements</span><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Recently Adopted Accounting Pronouncements</span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Accounting Pronouncements Not Yet Adopted </span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Segment Reporting</span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In November 2023, the FASB issued ASU No. 2023-07, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Improvements to Reportable Segment Disclosures</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> ("ASU 2023-07"). This ASU updates reportable segment disclosure requirements by requiring disclosures of significant reportable </span></div><div style="margin-top:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">segment expenses that are regularly provided to the Chief Operating Decision Maker ("CODM") and included within each reported measure of a segment's profit or loss. This ASU also requires disclosure of the title and position of the individual identified as the CODM and an explanation of how the CODM uses the reported measures of the segment's profit or loss in assessing performance and deciding how to allocate resources. This ASU is effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. Adoption of the ASU should be applied retrospectively to all prior periods presented in the financial statements. Early adoption is permitted. The Company is currently evaluating the impact of adopting ASU 2023-07 and expects it to result in additional disclosures when adopted. </span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Income Taxes</span></div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2023, the FASB issued ASU No. 2023-09, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Improvements to Income Tax Disclosures</span> ("ASU 2023-09"). This ASU requires disaggregated information about a reporting entity's effective tax rate reconciliations as well as additional information on income taxes paid. This ASU is effective on a prospective basis for annual periods beginning after December 15, 2024. Early adoption is also permitted for annual financial statements that have not yet been issued or made available for issuance. The Company is currently evaluating the impact of adopting ASU 2023-09 and expects it to result in additional disclosures when adopted. <div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Recently Adopted Accounting Pronouncements</span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Accounting Pronouncements Not Yet Adopted </span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Segment Reporting</span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In November 2023, the FASB issued ASU No. 2023-07, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Improvements to Reportable Segment Disclosures</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> ("ASU 2023-07"). This ASU updates reportable segment disclosure requirements by requiring disclosures of significant reportable </span></div><div style="margin-top:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">segment expenses that are regularly provided to the Chief Operating Decision Maker ("CODM") and included within each reported measure of a segment's profit or loss. This ASU also requires disclosure of the title and position of the individual identified as the CODM and an explanation of how the CODM uses the reported measures of the segment's profit or loss in assessing performance and deciding how to allocate resources. This ASU is effective for annual periods beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024. Adoption of the ASU should be applied retrospectively to all prior periods presented in the financial statements. Early adoption is permitted. The Company is currently evaluating the impact of adopting ASU 2023-07 and expects it to result in additional disclosures when adopted. </span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Income Taxes</span></div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2023, the FASB issued ASU No. 2023-09, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Improvements to Income Tax Disclosures</span> ("ASU 2023-09"). This ASU requires disaggregated information about a reporting entity's effective tax rate reconciliations as well as additional information on income taxes paid. This ASU is effective on a prospective basis for annual periods beginning after December 15, 2024. Early adoption is also permitted for annual financial statements that have not yet been issued or made available for issuance. The Company is currently evaluating the impact of adopting ASU 2023-09 and expects it to result in additional disclosures when adopted. <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Earnings per Share</span><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basic earnings per share is calculated by dividing net income by the weighted average number of common shares outstanding during the period, excluding unvested restricted shares. Diluted earnings per share reflects the potential dilution that could occur if securities or other contracts to issue common stock were exercised or converted into common stock or resulted in the issuance of common stock that then shared in the earnings of the Company. The effect of potentially dilutive securities is not considered during periods of loss or if the effect is anti-dilutive.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The weighted average number of shares outstanding in calculating basic earnings per share during fiscal years 2023, 2022, and 2021 exclude 689,360, 742,671, and 777,683 non-vested restricted shares, respectively. During fiscal 2023, 2022, and 2021 there were 19,290, 25,979, and 7,448 weighted average securities which are not included in the calculation of diluted weighted average shares outstanding because their impact is anti-dilutive or their performance conditions have not been met. </span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table represents a reconciliation of the net income and weighted average shares outstanding for the calculation of basic and diluted earnings per share during fiscal years 2023, 2022 and 2021:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:44.647%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.495%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.495%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.497%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Years Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">January 1, 2022</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Numerator:</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income – basic and diluted</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44,613 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,973 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">47,147 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Denominator:</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic weighted average shares outstanding</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,086,040 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,753,738 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,135,333 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effect of dilutive non-vested restricted shares and units</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">363,759 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">490,981 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">498,116 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effect of issuable shares related to acquisitions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,527 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,467 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,932 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted weighted average shares outstanding</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,474,326 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,260,186 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,656,381 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 689360 742671 777683 19290 25979 7448 <div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table represents a reconciliation of the net income and weighted average shares outstanding for the calculation of basic and diluted earnings per share during fiscal years 2023, 2022 and 2021:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:44.647%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.495%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.495%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.497%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Years Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">January 1, 2022</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Numerator:</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income – basic and diluted</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44,613 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,973 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">47,147 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Denominator:</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic weighted average shares outstanding</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,086,040 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,753,738 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,135,333 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effect of dilutive non-vested restricted shares and units</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">363,759 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">490,981 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">498,116 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effect of issuable shares related to acquisitions</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,527 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,467 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,932 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted weighted average shares outstanding</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,474,326 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,260,186 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,656,381 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 44613000 44613000 49973000 49973000 47147000 47147000 15086040 14753738 14135333 363759 490981 498116 24527 15467 22932 15474326 15260186 14656381 S<span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">tockholders' Equity</span><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Secondary offering</span></div>On March 10, 2021, the Company priced an underwritten public offering of 1,612,903 shares of its common stock (the "Firm Shares") at a price of $93.00 per share. The shares were sold pursuant to an effective registration statement on Form S-3 (Registration No. 333-237167). In addition, the Company also granted the underwriters a 30-day option to purchase 241,935 additional shares (the "Option Shares") of its common stock at the public offering price. On March 15, 2021, the Company closed on the Firm Shares, for which it received net proceeds of approximately $140,693 after deducting the underwriting discount and estimated offering expenses payable by the Company. On April 13, 2021, the underwriters exercised the Option Shares and the Company received net proceeds of $21,150 after deducting the underwriting discount and estimated offering expenses payable by the Company. 1612903 93.00 P30D 241935 140693000 21150000 Business Acquisitions<div style="margin-top:10pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">2023 Acquisitions</span></div><div style="margin-top:10pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On April 6, 2023, the Company acquired all of the outstanding equity interests in the Visual Information Solutions commercial geospatial technology and software business ("VIS") from L3Harris. VIS is a provider of subscription-based software solutions for the analysis and management of software applications and Analytics as a Service (AaaS) solutions. The Company acquired VIS for a cash purchase price of $75,371. The purchase price and other related costs associated with the transaction were financed through the Company's amended and restated credit agreement (the "Second A&amp;R Credit Agreement" or "Senior Credit Facility") with Bank of America, N.A. and other lenders party thereto. See Note 11, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Notes Payable and Other Obligations</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, for further detail on the Second A&amp;R Credit Agreement. In order to determine the fair values of tangible and intangible assets acquired and liabilities assumed, the Company engaged an independent third-party valuation specialist to assist in the determination of fair values. The final determination of the fair value of assets and liabilities will be completed within the one-year measurement period as required by ASC 805. The acquisition will necessitate the use of this measurement period to adequately analyze and assess the factors used in establishing the asset and liability fair values as of the relevant acquisition date, including intangible assets, accounts receivable, and deferred tax liabilities.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On February 22, 2023, the Company acquired all of the outstanding equity interests in Continental Mapping Acquisition Corp. and its subsidiaries, including Axim Geospatial, LLC (collectively "Axim"), a provider of comprehensive geospatial services and solutions addressing critical mission requirements for customers across the defense and intelligence and state and local government sectors. The aggregate purchase price of the acquisition was $139,569, including $119,736 in cash, a $6,333 promissory note, and $13,500 of the Company's common stock. The purchase price and other related costs associated with the transaction were financed through the Second A&amp;R Credit Agreement. In order to determine the fair values of tangible and intangible assets acquired and liabilities assumed, the Company engaged an independent third-party valuation specialist to assist in the determination of fair values. The final determination of the fair value of assets and liabilities will be completed within the one-year measurement period as required by ASC 805. The acquisition will necessitate the use of this measurement period to adequately analyze and assess the factors used in establishing the asset and liability fair values as of the relevant acquisition date, including intangible assets, accounts receivable, and deferred tax liabilities.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company completed five other acquisitions during 2023. The aggregate purchase price for the five acquisitions was $9,477, including $8,000 in cash, $867 of the Company's common stock, and potential earn-outs of up to $640 payable in cash and common stock, which have been recorded at an estimated fair value of $610. A probability-weighted approach was used to determine the fair value of the earn-out, which is a generally accepted valuation technique that embodies all significant assumption types. The final determination of the fair value of assets and liabilities will be completed within the one-year measurement period as required by ASC 805. The five acquisitions will necessitate the use of this measurement period to adequately analyze and assess the factors used in establishing the asset and liability fair values as of the relevant acquisition date, including intangible assets, accounts receivable, and deferred tax liabilities.</span></div><div style="margin-top:10pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">2022 Acquisitions</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company completed five acquisitions during 2022. The aggregate purchase price of all five acquisitions was $14,220, including $5,882 in cash, $1,606 of promissory notes, $433 of the Company's common stock, and potential earn-outs of up to $15,850 payable in cash and stock, which was recorded at an estimated fair value of $6,299. An option-based model </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">was used to determine the fair value of the earn-outs, which is a generally accepted valuation technique that embodies all significant assumption types. In order to determine the fair values of tangible and intangible assets acquired and liabilities assumed, the Company engaged an independent third-party valuation specialist to assist in the determination of fair values. The final determination of the fair value of assets and liabilities was completed within the one-year measurement period as required by ASC 805. Purchase price allocation adjustments recorded during 2023 were immaterial.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">2021 Acquisitions</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company completed eight acquisitions during 2021. The aggregate purchase price of the acquisitions was $100,449, including $69,501 of cash, $19,028 of promissory notes, $6,787 of the Company's common stock, and potential earn-outs of up to $25,700 payable in cash and stock, which were recorded at an estimated fair value of $5,133. An option-based model was used to determine the fair value of the earn-outs, which is a generally accepted valuation technique that embodies all significant assumption types. In order to determine the fair values of tangible and intangible assets acquired and liabilities assumed, the Company engaged an independent third-party valuation specialist to assist in the determination of fair values. The final determination of the fair value of assets and liabilities was completed within the one-year measurement period as required by ASC 805. Purchase price allocation adjustments recorded during 2022 were immaterial. </span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the fair values of the assets acquired and liabilities assumed as of the acquisition dates for acquisitions closed during fiscal years 2023, 2022, and 2021:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:28.225%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.190%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.190%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.190%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.190%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.190%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.195%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">VIS</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Axim</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,027 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,419 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,316 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,762 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,480 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Billed and unbilled receivables, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,042 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,937 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,609 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,588 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,794 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,728 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Right-of-use assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,162 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,643 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">552 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,357 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">632 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,932 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">118 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,870 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,026 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,510 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,741 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,503 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,543 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,063 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">519 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">156 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangible assets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,626 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">53,518 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,526 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91,670 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,606 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,338 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade name</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,025 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,266 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">210 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,501 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">268 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,098 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer backlog</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">894 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,862 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">943 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,699 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">459 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,847 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Developed technology</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,024 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,185 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,209 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">580 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">254 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">860 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">298 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,456 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59,447 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">87,979 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,467 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">154,893 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,567 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,152 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(16,535)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,668)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,297)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(32,500)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,623)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,984)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred tax liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,728)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(12,428)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(496)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(21,652)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,521)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net assets acquired</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,184 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,883 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,674 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100,741 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,944 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,647 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consideration paid (Cash, notes and/or stock)</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,371 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">139,569 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,867 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">223,807 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,921 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">95,316 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contingent earn-out liability (Cash and stock)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">610 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">610 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,299 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,133 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Consideration</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,371 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">139,569 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,477 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">224,417 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,220 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100,449 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Excess consideration over the amounts assigned to the net assets acquired (Goodwill)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,187 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">77,686 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,803 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">123,676 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,276 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">45,802 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:7pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill was recorded based on the amount by which the purchase price exceeded the fair value of the net assets acquired and the amount is attributable to the reputation of the business acquired, the workforce in place and the synergies to be achieved from these acquisitions. See Note 9, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Goodwill and Intangible Assets</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, for further information on fair value adjustments to goodwill and identified intangible assets. </span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The consolidated financial statements of the Company include the results of operations from any business acquired from their respective dates of acquisition. The following table presents the results of operations of businesses acquired from their respective dates of acquisition for fiscal years 2023, 2022, and 2021. </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:50.508%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.543%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.543%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.546%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">96,314 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,211 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,965 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,902 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">985 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,167 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:7pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">General and administrative expense for fiscal years 2023, 2022, and 2021 includes $5,575, $2,639, and $3,274, respectively, of acquisition-related costs pertaining to the Company’s acquisition activities.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the unaudited, pro forma consolidated results of operations (in thousands, except per share amounts) for fiscal years 2023, 2022, and 2021 as if the 2023 acquisitions had occurred at the beginning of fiscal year 2022 and the 2022 acquisitions had occurred at the beginning of fiscal year 2021. The pro forma information provided below is compiled from the pre-acquisition financial information and includes pro forma adjustments for amortization expense, adjustments to certain expenses, and the income tax impact of these adjustments. These unaudited pro forma results are presented for informational purposes only and are not necessarily indicative of what the actual results of operations of the Company would have been if the acquisitions and related financing transactions had occurred on the date assumed, nor are they indicative of future results of operations.</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:50.508%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.543%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.543%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.546%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Years Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">889,233 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">912,127 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">765,632 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,284 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44,323 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,769 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic earnings per share</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.87 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.98 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.50 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted earnings per share</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.80 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.88 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.38 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:7pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Adjustments were made to the pro forma results to adjust amortization of intangible assets to reflect fair value of identified assets acquired, to record the effects of promissory notes issued, and to record the income tax effect of these adjustments.</span></div> 75371000 139569000 119736000 6333000 13500000 5 5 9477000 8000000 867000 640000 610000 5 5 5 14220000 5882000 1606000 433000 15850000 6299000 8 100449000 69501000 19028000 6787000 25700000 5133000 <div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the fair values of the assets acquired and liabilities assumed as of the acquisition dates for acquisitions closed during fiscal years 2023, 2022, and 2021:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:28.225%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.190%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.190%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.190%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.190%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.190%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.195%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">VIS</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Axim</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,027 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,419 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,316 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,762 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,480 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Billed and unbilled receivables, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,042 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,937 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,609 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,588 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,794 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,728 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Right-of-use assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,162 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,643 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">552 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,357 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">632 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,932 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">118 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,870 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,026 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,510 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,741 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,503 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,543 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,063 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">519 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">156 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intangible assets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,626 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">53,518 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,526 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91,670 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,606 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,338 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade name</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,025 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,266 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">210 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,501 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">268 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,098 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer backlog</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">894 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,862 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">943 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,699 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">459 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,847 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Developed technology</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,024 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,185 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,209 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">580 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">254 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">860 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">298 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,456 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59,447 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">87,979 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,467 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">154,893 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,567 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,152 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(16,535)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,668)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,297)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(32,500)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,623)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,984)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred tax liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8,728)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(12,428)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(496)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(21,652)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,521)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net assets acquired</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,184 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,883 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,674 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100,741 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,944 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,647 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Consideration paid (Cash, notes and/or stock)</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,371 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">139,569 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,867 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">223,807 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,921 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">95,316 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contingent earn-out liability (Cash and stock)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">610 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">610 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,299 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,133 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Consideration</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,371 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">139,569 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,477 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">224,417 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,220 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">100,449 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Excess consideration over the amounts assigned to the net assets acquired (Goodwill)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,187 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">77,686 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,803 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">123,676 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,276 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">45,802 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 7027000 5419000 1316000 13762000 0 1480000 5042000 13937000 1609000 20588000 1794000 17728000 2162000 1643000 552000 4357000 632000 2932000 118000 2870000 38000 3026000 1510000 3741000 1503000 1543000 17000 3063000 0 519000 0 156000 2000 158000 0 13000 35626000 53518000 2526000 91670000 3606000 36338000 3025000 2266000 210000 5501000 268000 2098000 894000 3862000 943000 5699000 459000 3847000 4024000 2185000 0 6209000 0 0 26000 580000 254000 860000 298000 4456000 59447000 87979000 7467000 154893000 8567000 73152000 16535000 13668000 2297000 32500000 5623000 13984000 8728000 12428000 496000 21652000 0 4521000 34184000 61883000 4674000 100741000 2944000 54647000 75371000 139569000 8867000 223807000 7921000 95316000 0 0 610000 610000 6299000 5133000 75371000 139569000 9477000 224417000 14220000 100449000 41187000 77686000 4803000 123676000 11276000 45802000 The following table presents the results of operations of businesses acquired from their respective dates of acquisition for fiscal years 2023, 2022, and 2021. <div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:50.508%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.543%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.543%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.546%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">96,314 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,211 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,965 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,902 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">985 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,167 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div>These unaudited pro forma results are presented for informational purposes only and are not necessarily indicative of what the actual results of operations of the Company would have been if the acquisitions and related financing transactions had occurred on the date assumed, nor are they indicative of future results of operations.<div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:50.508%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.543%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.543%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.546%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Years Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">889,233 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">912,127 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">765,632 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,284 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44,323 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,769 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic earnings per share</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.87 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.98 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.50 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted earnings per share</span></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.80 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.88 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.38 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 96314000 5211000 29965000 14902000 985000 5167000 5575000 2639000 3274000 889233000 912127000 765632000 43284000 44323000 49769000 2.87 2.98 3.50 2.80 2.88 3.38 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Billed and Unbilled Receivables</span><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Billed and unbilled receivables were as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Billed receivables</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">155,988 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">149,082 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: allowance for doubtful accounts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,395)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,445)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Billed receivables, net</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">152,593 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">145,637 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unbilled receivables</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,545 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">95,104 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: allowance for doubtful accounts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,274)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,242)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unbilled receivables, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">113,271 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">92,862 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:7pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Activity in the allowance for doubtful accounts was as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of the beginning of the year</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,687 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,952 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provision for doubtful accounts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,261 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(60)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Write-offs of uncollectible accounts</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,279)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,205)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of the end of the year</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,669 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,687 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> <div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Billed and unbilled receivables were as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Billed receivables</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">155,988 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">149,082 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: allowance for doubtful accounts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,395)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,445)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Billed receivables, net</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">152,593 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">145,637 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unbilled receivables</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,545 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">95,104 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: allowance for doubtful accounts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,274)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,242)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unbilled receivables, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">113,271 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">92,862 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 155988000 149082000 3395000 3445000 152593000 145637000 115545000 95104000 2274000 2242000 113271000 92862000 <div style="margin-top:7pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Activity in the allowance for doubtful accounts was as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of the beginning of the year</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,687 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,952 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provision for doubtful accounts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,261 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(60)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Write-offs of uncollectible accounts</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,279)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,205)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of the end of the year</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,669 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,687 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 5687000 7952000 1261000 -60000 1279000 2205000 5669000 5687000 Property and Equipment, net<div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment, net were as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Office furniture and equipment</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,487 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,421 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Computer equipment</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,999 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,816 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Survey and field equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62,553 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,985 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,881 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,546 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">104,920 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85,768 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: accumulated depreciation</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(54,652)</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(44,128)</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">50,268 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,640 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div>Depreciation expense for fiscal year 2023, 2022, and 2021 was $14,343, $11,722, and $11,473, respectively, of which $5,534, $5,125, and $5,018, was included in other direct costs. roperty and equipment, net were as follows:<div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Office furniture and equipment</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,487 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,421 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Computer equipment</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,999 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,816 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Survey and field equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62,553 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,985 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,881 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,546 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">104,920 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85,768 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: accumulated depreciation</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(54,652)</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(44,128)</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment, net</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">50,268 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,640 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 3487000 3421000 31999000 25816000 62553000 49985000 6881000 6546000 104920000 85768000 54652000 44128000 50268000 41640000 14343000 11722000 11473000 5534000 5125000 5018000 Goodwill and Intangible Assets<div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Goodwill </span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The changes in the carrying value by reportable segment for the fiscal years 2023 and 2022 were as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:11.034%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.598%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2023</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Acquisitions</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Adjustments</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Foreign Currency Translation of non-USD functional currency goodwill</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">INF</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,932 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">726 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91,658 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">BTS</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,838 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,077 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,945 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">GEO</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">198,187 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">118,873 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(80)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">316,970 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">400,957 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">123,676 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(63)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">524,573 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">January 1, 2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Acquisitions</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Adjustments</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">INF</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,725 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">120 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">87 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,932 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">BTS</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,005 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,152 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(319)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,838 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">GEO</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">188,186 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,001 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">198,187 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">389,916 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,273 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(232)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">400,957 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:7pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill of $1,755 and $2,891 from acquisitions in 2023 and 2022 is expected to be deductible for income tax purposes. During 2023, the Company recorded goodwill related to acquisitions of $123,676. During 2022, the Company recorded goodwill related to acquisitions of $11,273 and purchase price adjustments of $232 that decreased goodwill for the 2021 acquisitions. </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Intangible assets</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Intangible assets, net, at December 30, 2023 and December 31, 2022 were as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:20.683%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.337%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Net<br/>Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Net<br/>Amount</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Finite-lived intangible assets: </span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">314,662 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(116,086)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">198,576 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">222,998 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(87,054)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">135,944 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade name</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(2)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,384 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(18,327)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,057 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,883 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(15,933)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">950 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer backlog</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(3)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,116 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(32,681)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,435 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,419 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(27,333)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,086 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(4)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,987 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(12,690)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,297 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,110 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(11,298)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,812 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Developed technology</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(5)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,153 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(19,816)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,337 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,944 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(14,305)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,639 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total finite-lived intangible assets</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">426,302 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(199,600)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">226,702 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">316,354 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(155,923)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">160,431 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(1) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortized on a straight-line basis over estimated lives (2 to 17 years)</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(2) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortized on a straight-line basis over their estimated lives (1 to 5 years)</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(3) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortized on a straight-line basis over their estimated lives (1 to 10 years)</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(4) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortized on a straight-line basis over their contractual lives (2 to 5 years)</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(5) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortized on a straight-line basis over their estimated lives (5 to 10 years)</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the weighted average useful lives of definite-lived intangible assets acquired during 2023, 2022, and 2021:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:59.280%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.622%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12.4</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.5</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8.2</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade name</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.6</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.8</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.0</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer backlog</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.3</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.4</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.6</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.6</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.6</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.8</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Developed technology</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.8</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:5pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortization expense for fiscal years 2023, 2022 and 2021 was $43,677, $32,341 and $33,498 respectively.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 30, 2023, the future estimated aggregate amortization related to finite-lived intangible assets for the next five fiscal years and thereafter is as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:85.449%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.621%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,169 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,199 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,837 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,710 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,862 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">65,925 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">226,702 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> <div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The changes in the carrying value by reportable segment for the fiscal years 2023 and 2022 were as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:11.034%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.598%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2023</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Acquisitions</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Adjustments</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Foreign Currency Translation of non-USD functional currency goodwill</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">INF</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,932 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">726 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91,658 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">BTS</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,838 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,077 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,945 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">GEO</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">198,187 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">118,873 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(80)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">316,970 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">400,957 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">123,676 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(63)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">524,573 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">January 1, 2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Acquisitions</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Adjustments</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">INF</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,725 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">120 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">87 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,932 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">BTS</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,005 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,152 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(319)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,838 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">GEO</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">188,186 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,001 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">198,187 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">389,916 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,273 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(232)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">400,957 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 90932000 726000 0 0 91658000 111838000 4077000 13000 -17000 115945000 198187000 118873000 -10000 80000 316970000 400957000 123676000 3000 63000 524573000 90725000 120000 87000 90932000 111005000 1152000 -319000 111838000 188186000 10001000 0 198187000 389916000 11273000 -232000 400957000 1755000 2891000 123676000 11273000 -232000 <div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Intangible assets, net, at December 30, 2023 and December 31, 2022 were as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:20.683%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.326%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.337%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Net<br/>Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Net<br/>Amount</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Finite-lived intangible assets: </span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">314,662 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(116,086)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">198,576 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">222,998 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(87,054)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">135,944 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade name</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(2)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,384 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(18,327)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,057 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,883 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(15,933)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">950 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer backlog</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(3)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,116 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(32,681)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,435 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,419 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(27,333)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,086 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(4)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,987 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(12,690)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,297 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,110 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(11,298)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,812 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Developed technology</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(5)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,153 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(19,816)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,337 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,944 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(14,305)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,639 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total finite-lived intangible assets</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">426,302 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(199,600)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">226,702 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">316,354 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(155,923)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">160,431 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(1) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortized on a straight-line basis over estimated lives (2 to 17 years)</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(2) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortized on a straight-line basis over their estimated lives (1 to 5 years)</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(3) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortized on a straight-line basis over their estimated lives (1 to 10 years)</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(4) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortized on a straight-line basis over their contractual lives (2 to 5 years)</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(5) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortized on a straight-line basis over their estimated lives (5 to 10 years)</span></div> 314662000 116086000 198576000 222998000 87054000 135944000 22384000 18327000 4057000 16883000 15933000 950000 35116000 32681000 2435000 29419000 27333000 2086000 14987000 12690000 2297000 14110000 11298000 2812000 39153000 19816000 19337000 32944000 14305000 18639000 426302000 199600000 226702000 316354000 155923000 160431000 P2Y P17Y P1Y P5Y P1Y P10Y P2Y P5Y P5Y P10Y <div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the weighted average useful lives of definite-lived intangible assets acquired during 2023, 2022, and 2021:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:59.280%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.622%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12.4</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.5</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8.2</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade name</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.6</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.8</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.0</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer backlog</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.3</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.4</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1.6</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.6</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.6</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.8</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Developed technology</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.8</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> P12Y4M24D P7Y6M P8Y2M12D P3Y7M6D P1Y9M18D P2Y P1Y3M18D P1Y4M24D P1Y7M6D P3Y7M6D P3Y7M6D P3Y9M18D P6Y9M18D 43677000 32341000 33498000 <div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 30, 2023, the future estimated aggregate amortization related to finite-lived intangible assets for the next five fiscal years and thereafter is as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:85.449%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.621%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,169 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,199 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,837 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,710 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,862 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">65,925 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">226,702 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 41169000 37199000 34837000 26710000 20862000 65925000 226702000 Accrued Liabilities<div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued liabilities were as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion of lease liability</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,972 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,081 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued vacation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,295 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,467 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payroll and related taxes</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,782 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,616 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Benefits</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,433 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,160 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued operating expenses</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,701 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,540 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,240 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,449 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">47,423 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44,313 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> <div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued liabilities were as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion of lease liability</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,972 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,081 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued vacation</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,295 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,467 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payroll and related taxes</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,782 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,616 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Benefits</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,433 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,160 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued operating expenses</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,701 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,540 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,240 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,449 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">47,423 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44,313 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 13972000 13081000 7295000 12467000 8782000 6616000 5433000 5160000 8701000 4540000 3240000 2449000 47423000 44313000 N<span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">otes Payable</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">and Other Obligations</span><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Notes payable and other obligations were as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Senior credit facility</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">195,750 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,750 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Uncollateralized promissory notes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,303 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,492 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance leases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,408 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,465 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other obligations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,188 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,814 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Debt issuance costs, net of amortization</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,914)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,672)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total notes payable and other obligations</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">214,735 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,849 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion of notes payable and other obligations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,267 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,176 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Notes payable and other obligations, less current portion</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">205,468 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,673 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future contractual maturities of long-term debt as of December 30, 2023 are as follows:</span></div><div style="margin-top:7pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:79.601%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.469%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,267 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,659 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">200,784 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">677 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028 and thereafter</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">262 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">216,649 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Senior Credit Facility</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 13, 2021 (the "Closing Date"), the Company amended and restated its Credit Agreement (the "Second A&amp;R Credit Agreement"), originally dated December 7, 2016 and as amended to the Closing Date, with Bank of America, N.A. ("Bank of America"), as administrative agent, swingline lender and letter of credit issuer, the other lenders party thereto, and certain of the Company's subsidiaries as guarantors. Pursuant to the Second A&amp;R Credit Agreement, the previously drawn term commitments of $150,000 and revolving commitments totaling $215,000 in the aggregate were converted into revolving commitments totaling $400,000 in the aggregate. These revolving commitments are available through August 13, 2026 (the "Maturity Date") and an aggregate amount of approximately $138,750 was drawn under the Second A&amp;R Credit Amendment on the Closing Date to repay previously existing borrowings under the term and revolving facilities prior to such amendment and restatement. Borrowings under the Second A&amp;R Credit Agreement are secured by a first priority lien on substantially all of the assets of the Company. The Second A&amp;R Credit Agreement also includes an accordion feature permitting the Company to request an increase in the revolving facility under the Second A&amp;R Credit Agreement by an additional amount of up to </span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$200,000 in the aggregate. As of December 30, 2023 and December 31, 2022, the outstanding balance on the Second A&amp;R Credit Agreement was $195,750 and $33,750, respectively. </span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Borrowings under the Second A&amp;R Credit Agreement bear interest at variable rates which are, at the Company's option, tied to a Eurocurrency rate equal to either Term SOFR (Secured Overnight Financing Rate) or Daily Simple SOFR, plus in each case an applicable margin, or a base rate denominated in U.S. dollars. Interest rates remain subject to change based on the Company's consolidated leverage ratio. As of December 30, 2023 the Company's interest rate was 6.7%.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Second A&amp;R Credit Agreement contains financial covenants that require NV5 Global to maintain a consolidated net leverage ratio (the ratio of the Company's pro forma consolidated net funded indebtedness to the Company's pro forma consolidated EBITDA for the most recently completed measurement period) of no greater than 4.00 to 1.00. </span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">These financial covenants also require the Company to maintain a consolidated fixed charge coverage ratio of no less than 1.10 to 1.00 as of the end of any measurement period. As of December 30, 2023, the Company was in compliance with the financial covenants.</span></div><div><span><br/></span></div><div style="margin-bottom:8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    The Second A&amp;R Credit Agreement contains covenants that may have the effect of limiting the Company's ability to, among other things, merge with or acquire other entities, enter into a transaction resulting in a Change in Control, create certain new liens, incur certain additional indebtedness, engage in certain transactions with affiliates, or engage in new lines of business, or sell a substantial part of their assets. The Second A&amp;R Credit Agreement also contains customary events of default, including (but not limited to) a default in the payment of principal or, following an applicable grace period, interest, breaches of the Company's covenants or warranties under the Second A&amp;R Credit Agreement, payment default or acceleration of certain indebtedness, certain events of bankruptcy, insolvency or liquidation, certain judgments or uninsured losses, changes in control, and certain liabilities related to ERISA based plans.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Second A&amp;R Credit Agreement limits the payment of cash dividends (together with certain other payments that would constitute a "Restricted Payment" within the meaning of the Second A&amp;R Credit Agreement and generally including dividends, stock repurchases, and certain other payments in respect to warrants, options, and other rights to acquire equity securities), unless the Consolidated Leverage Ratio would be less than 3.25 to 1.00 and available liquidity (defined as unrestricted, domestically held cash plus revolver availability) would be at least $30,000, in each case after giving effect to such payment. </span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total debt issuance costs incurred and capitalized in connection with the issuance of the Second A&amp;R Credit Agreement were $3,702. Total amortization of debt issuance costs was $758, $724, and $1,210 during 2023, 2022, and 2021, respectively. </span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Other Obligations</span></div>The Company has aggregate obligations related to acquisitions of $16,491 and $20,306 as of December 30, 2023 and December 31, 2022, respectively. As of December 30, 2023, the Company's weighted average interest rate on other outstanding obligations was 3.5% <div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Notes payable and other obligations were as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Senior credit facility</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">195,750 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,750 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Uncollateralized promissory notes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,303 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,492 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance leases</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,408 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,465 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other obligations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,188 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,814 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Debt issuance costs, net of amortization</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,914)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,672)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total notes payable and other obligations</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">214,735 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,849 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion of notes payable and other obligations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,267 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,176 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Notes payable and other obligations, less current portion</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">205,468 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,673 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 195750000 33750000 15303000 18492000 4408000 3465000 1188000 1814000 1914000 2672000 214735000 54849000 9267000 15176000 205468000 39673000 <div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future contractual maturities of long-term debt as of December 30, 2023 are as follows:</span></div><div style="margin-top:7pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:79.601%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.469%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,267 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,659 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">200,784 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">677 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028 and thereafter</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">262 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">216,649 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 9267000 5659000 200784000 677000 262000 216649000 150000000 215000000 400000000 138750000 200000000 195750000 33750000 0.067 4.00 1.10 3.25 30000000 3702000 758000 724000 1210000 16491000 20306000 0.035 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Contingent Consideration</span><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the changes in the carrying value of estimated contingent consideration:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contingent consideration, beginning of the year</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,335 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,328 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Additions for acquisitions</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">610 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,299 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reduction of liability for payments made</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,600)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,264)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase (decrease) of liability related to re-measurement of fair value</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(9,280)</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,972 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total contingent consideration, end of the period</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,065 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,335 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion of contingent consideration</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,922 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,854 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contingent consideration, less current portion</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">143 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,481 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:5pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During 2023 the Company recorded earn-out fair value adjustments of $9,280 that decreased the contingent consideration liability of acquisitions. During 2022, the Company recorded earn-out fair value adjustments of $2,972 that increased the contingent consideration liability of acquisitions.</span></div> <div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the changes in the carrying value of estimated contingent consideration:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contingent consideration, beginning of the year</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,335 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,328 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Additions for acquisitions</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">610 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,299 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reduction of liability for payments made</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,600)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,264)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase (decrease) of liability related to re-measurement of fair value</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(9,280)</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,972 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total contingent consideration, end of the period</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,065 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,335 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion of contingent consideration</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,922 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,854 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contingent consideration, less current portion</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">143 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,481 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 15335000 8328000 610000 6299000 2600000 2264000 -9280000 2972000 4065000 15335000 3922000 10854000 143000 4481000 -9280000 2972000 Leases <div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company primarily leases property under operating leases and has six equipment operating leases for aircrafts used by its geospatial operations. The Company's property operating leases consist of various office facilities. The Company uses a portfolio approach to account for such leases due to the similarities in characteristics and applies an incremental borrowing rate based on estimates of rates the Company would pay for senior collateralized loans over a similar term. The Company's office leases with an initial term of 12 months or less are not recorded on the balance sheet. The Company accounts for lease components (e.g. fixed payments including rent, real estate taxes and common area maintenance costs) as a single lease component. Some of the Company's leases include one or more options to renew the lease term at its sole discretion; however, these are not included in the calculation of its lease liability or right-of-use ("ROU") lease asset because they are not reasonably certain of exercise. </span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company also leases vehicles through a fleet leasing program. The payments for the vehicles are based on the terms selected. The Company has determined that it is reasonably certain that the leased vehicles will be held beyond the period in which the entire capitalized value of the vehicle has been paid to the lessor. As such, the capitalized value is the delivered price of the vehicle. The Company's vehicle leases are classified as financing leases.</span></div><div style="text-indent:33.75pt"><span><br/></span></div><div style="text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental balance sheet information related to the Company's operating and finance leases were as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:18.636%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:43.344%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.718%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Leases</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Classification</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Right-of-use lease asset, net </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,836 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,314 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="-sec-ix-hidden:f-891"><span style="-sec-ix-hidden:f-892"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment, net </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></span></span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,389 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,446 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total leased assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,225 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,760 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:f-897"><span style="-sec-ix-hidden:f-898">Accrued liabilities</span></span></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,972)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,081)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:f-901"><span style="-sec-ix-hidden:f-902">Current portion of notes payable and other obligations</span></span></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,220)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,333)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Noncurrent</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:f-905"><span style="-sec-ix-hidden:f-906">Other long-term liabilities</span></span></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(25,754)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(28,452)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:f-909"><span style="-sec-ix-hidden:f-910">Notes payable and other obligations, less current portion</span></span></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,188)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,132)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(44,134)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(44,998)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 30, 2023, operating right of-use lease assets and finance lease assets are recorded net of accumulated amortization of $42,491 and $6,210, respectively. As of December 31, 2022, operating right-of-use lease assets and finance lease assets are recorded net of accumulated amortization of $35,646 and $4,864, respectively. </span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental balance sheet information related to the Company's operating and finance leases were as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.812%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.716%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted - Average</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Remaining</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Lease</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Term (Years)</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.7</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.0</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.0</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.2</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted - Average</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Discount</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Rate</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7%</span></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    </span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental cash flow information related to the Company's operating and finance lease liabilities were as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.514%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.297%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.297%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.302%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 30, 2023</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">January 1, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows from operating leases</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,903 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,739 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,081 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing cash flows from finance leases</span></td><td colspan="3" style="padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,346 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,241 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,274 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Right-of-use assets obtained in exchange for lease obligations</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,084 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,058 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,249 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:5pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the components of lease cost recognized in the consolidated statements of net income and comprehensive income: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.215%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.467%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.297%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.297%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.304%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Lease Cost</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Classification</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 30, 2023</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">January 1, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Facilities and facilities related</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,658 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,724 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,439 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Variable operating lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Facilities and facilities related</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,222</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,806</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,655</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">     Amortization of financing lease assets </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and amortization</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,343</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,239</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,250</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">     Interest on lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">165 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">121 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">154 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,388 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,890 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,498 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 30, 2023, maturities of the Company's lease liabilities under its long-term operating leases and finance leases for the next five fiscal years and thereafter are as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:64.346%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.444%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Operating Leases</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Finance Leases</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,122 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,305 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,751 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,379 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,936 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,206 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,880 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">778 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,599 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">372 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,346 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">106 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,634 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,146 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Interest</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,908)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(738)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Present value of lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,726 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,408 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> Leases <div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company primarily leases property under operating leases and has six equipment operating leases for aircrafts used by its geospatial operations. The Company's property operating leases consist of various office facilities. The Company uses a portfolio approach to account for such leases due to the similarities in characteristics and applies an incremental borrowing rate based on estimates of rates the Company would pay for senior collateralized loans over a similar term. The Company's office leases with an initial term of 12 months or less are not recorded on the balance sheet. The Company accounts for lease components (e.g. fixed payments including rent, real estate taxes and common area maintenance costs) as a single lease component. Some of the Company's leases include one or more options to renew the lease term at its sole discretion; however, these are not included in the calculation of its lease liability or right-of-use ("ROU") lease asset because they are not reasonably certain of exercise. </span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company also leases vehicles through a fleet leasing program. The payments for the vehicles are based on the terms selected. The Company has determined that it is reasonably certain that the leased vehicles will be held beyond the period in which the entire capitalized value of the vehicle has been paid to the lessor. As such, the capitalized value is the delivered price of the vehicle. The Company's vehicle leases are classified as financing leases.</span></div><div style="text-indent:33.75pt"><span><br/></span></div><div style="text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental balance sheet information related to the Company's operating and finance leases were as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:18.636%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:43.344%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.718%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Leases</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Classification</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Right-of-use lease asset, net </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,836 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,314 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="-sec-ix-hidden:f-891"><span style="-sec-ix-hidden:f-892"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment, net </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></span></span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,389 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,446 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total leased assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,225 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,760 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:f-897"><span style="-sec-ix-hidden:f-898">Accrued liabilities</span></span></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,972)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,081)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:f-901"><span style="-sec-ix-hidden:f-902">Current portion of notes payable and other obligations</span></span></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,220)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,333)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Noncurrent</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:f-905"><span style="-sec-ix-hidden:f-906">Other long-term liabilities</span></span></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(25,754)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(28,452)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:f-909"><span style="-sec-ix-hidden:f-910">Notes payable and other obligations, less current portion</span></span></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,188)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,132)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(44,134)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(44,998)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 30, 2023, operating right of-use lease assets and finance lease assets are recorded net of accumulated amortization of $42,491 and $6,210, respectively. As of December 31, 2022, operating right-of-use lease assets and finance lease assets are recorded net of accumulated amortization of $35,646 and $4,864, respectively. </span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental balance sheet information related to the Company's operating and finance leases were as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.812%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.716%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted - Average</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Remaining</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Lease</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Term (Years)</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.7</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.0</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.0</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.2</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted - Average</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Discount</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Rate</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7%</span></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    </span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental cash flow information related to the Company's operating and finance lease liabilities were as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.514%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.297%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.297%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.302%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 30, 2023</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">January 1, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows from operating leases</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,903 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,739 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,081 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing cash flows from finance leases</span></td><td colspan="3" style="padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,346 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,241 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,274 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Right-of-use assets obtained in exchange for lease obligations</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,084 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,058 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,249 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:5pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the components of lease cost recognized in the consolidated statements of net income and comprehensive income: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.215%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.467%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.297%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.297%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.304%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Lease Cost</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Classification</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 30, 2023</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">January 1, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Facilities and facilities related</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,658 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,724 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,439 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Variable operating lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Facilities and facilities related</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,222</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,806</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,655</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">     Amortization of financing lease assets </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and amortization</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,343</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,239</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,250</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">     Interest on lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">165 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">121 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">154 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,388 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,890 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,498 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 30, 2023, maturities of the Company's lease liabilities under its long-term operating leases and finance leases for the next five fiscal years and thereafter are as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:64.346%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.444%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Operating Leases</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Finance Leases</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,122 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,305 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,751 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,379 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,936 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,206 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,880 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">778 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,599 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">372 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,346 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">106 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,634 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,146 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Interest</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,908)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(738)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Present value of lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,726 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,408 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 6 P12M 1 <div style="text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental balance sheet information related to the Company's operating and finance leases were as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:18.636%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:43.344%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.718%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Leases</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Classification</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Right-of-use lease asset, net </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,836 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,314 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="-sec-ix-hidden:f-891"><span style="-sec-ix-hidden:f-892"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment, net </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></span></span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,389 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,446 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total leased assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,225 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,760 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:f-897"><span style="-sec-ix-hidden:f-898">Accrued liabilities</span></span></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,972)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,081)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:f-901"><span style="-sec-ix-hidden:f-902">Current portion of notes payable and other obligations</span></span></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,220)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,333)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Noncurrent</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:f-905"><span style="-sec-ix-hidden:f-906">Other long-term liabilities</span></span></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(25,754)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(28,452)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><span style="-sec-ix-hidden:f-909"><span style="-sec-ix-hidden:f-910">Notes payable and other obligations, less current portion</span></span></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,188)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,132)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(44,134)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(44,998)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span>As of December 30, 2023, operating right of-use lease assets and finance lease assets are recorded net of accumulated amortization of $42,491 and $6,210, respectively. As of December 31, 2022, operating right-of-use lease assets and finance lease assets are recorded net of accumulated amortization of $35,646 and $4,864, respectively. 36836000 39314000 4389000 3446000 41225000 42760000 13972000 13081000 1220000 1333000 25754000 28452000 3188000 2132000 44134000 44998000 42491000 6210000 35646000 4864000 <div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental balance sheet information related to the Company's operating and finance leases were as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.812%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.716%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted - Average</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Remaining</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Lease</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Term (Years)</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3.7</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4.0</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.0</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.2</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted - Average</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Discount</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Rate</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7%</span></td></tr></table></div> P3Y8M12D P4Y P2Y P2Y2M12D 0.04 0.04 0.07 0.07 <div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental cash flow information related to the Company's operating and finance lease liabilities were as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.514%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.297%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.297%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.302%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 30, 2023</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">January 1, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows from operating leases</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,903 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,739 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,081 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Financing cash flows from finance leases</span></td><td colspan="3" style="padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,346 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,241 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,274 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Right-of-use assets obtained in exchange for lease obligations</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating leases</span></td><td colspan="3" style="padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,084 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,058 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,249 </span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 14903000 13739000 14081000 1346000 1241000 1274000 11084000 7058000 9249000 <div style="margin-top:5pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the components of lease cost recognized in the consolidated statements of net income and comprehensive income: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.215%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.467%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.297%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.297%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.304%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Lease Cost</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Classification</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 30, 2023</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2022</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">January 1, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Facilities and facilities related</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,658 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,724 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,439 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Variable operating lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Facilities and facilities related</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,222</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,806</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,655</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finance lease cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">     Amortization of financing lease assets </span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and amortization</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,343</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,239</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,250</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">     Interest on lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">165 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">121 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">154 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,388 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,890 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,498 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 16658000 15724000 15439000 4222000 3806000 1655000 1343000 1239000 1250000 165000 121000 154000 22388000 20890000 18498000 <div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 30, 2023, maturities of the Company's lease liabilities under its long-term operating leases and finance leases for the next five fiscal years and thereafter are as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:64.346%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.444%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Operating Leases</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Finance Leases</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,122 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,305 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,751 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,379 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,936 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,206 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,880 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">778 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,599 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">372 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,346 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">106 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,634 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,146 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Interest</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,908)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(738)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Present value of lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,726 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,408 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> <div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 30, 2023, maturities of the Company's lease liabilities under its long-term operating leases and finance leases for the next five fiscal years and thereafter are as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:64.346%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.444%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Operating Leases</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Finance Leases</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,122 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,305 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,751 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,379 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,936 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,206 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,880 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">778 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,599 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">372 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,346 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">106 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,634 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,146 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: Interest</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,908)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(738)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Present value of lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,726 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,408 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 15122000 1305000 11751000 1379000 7936000 1206000 3880000 778000 1599000 372000 2346000 106000 42634000 5146000 2908000 738000 39726000 4408000 Commitments and Contingencies<div style="margin-top:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Litigation, Claims, and Assessments</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is subject to certain claims and lawsuits typically filed against the engineering, consulting and construction profession, alleging primarily professional errors or omissions. The Company carries professional liability insurance, subject to certain deductibles and policy limits, against such claims. However, in some actions, parties are seeking damages that exceed our insurance coverage or for which we are not insured. While management does not believe that the resolution of these claims will have a material adverse effect, individually or in aggregate, on its financial position, results of operations or cash flows, management acknowledges the uncertainty surrounding the ultimate resolution of these matters.</span></div> Stock-Based Compensation<div style="margin-top:10pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In October 2011, the Company's stockholders approved the NV5 Global, Inc. 2011 Equity Incentive Plan, which was subsequently amended and restated in March 2013 (as amended, the “2011 Equity Plan”). The 2011 Equity Incentive Plan expired pursuant to its terms in March 2023, accordingly no further grants were made following the date of such expiration. Prior to such expiration, the Company's Board adopted the NV5 Global, Inc. 2023 Equity Incentive Plan (the "2023 Equity Plan") to replace the 2011 Equity Plan, subject to stockholder approval. On June 13, 2023, the Company's stockholders approved the 2023 Equity Plan. The 2023 Equity Plan provides directors, executive officers, and other employees of the Company with additional incentives by allowing them to acquire ownership interest in the business and, as a result, encouraging them to contribute to the Company’s success. The Company may provide these incentives through the grant of stock options, stock appreciation rights, restricted stock, restricted stock units, performance shares and units, and other cash-based or stock-based awards. As of December 30, 2023, 2,148,474 shares of common stock are authorized, reserved, and registered for issuance under the 2023 Equity Plan. The restricted shares of common stock granted generally provide for service-based cliff vesting after <span style="-sec-ix-hidden:f-977">two</span> to four years following the grant date.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following summarizes the activity of restricted stock awards during fiscal years 2023, 2022, and 2021:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:58.402%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.783%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.785%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Share Units</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Weighted Average Grant Date Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Unvested shares as of January 2, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">770,183 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">57.20 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">265,644 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91.31 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(257,435)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">65.14 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(33,902)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">58.25 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Unvested shares as of January 1, 2022</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">744,490 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">66.34 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">203,149 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">118.33 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(131,973)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63.72 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(101,873)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">67.08 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Unvested shares as of December 31, 2022</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">713,793 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">81.25 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">288,727 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">106.37 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(285,865)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">48.98 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(39,895)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">97.24 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Unvested shares as of December 30, 2023</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">676,760 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">104.63 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:7pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock-based compensation expense is recognized on a straight-line basis over the vesting period, net of actual forfeitures. Stock-based compensation expense relating to restricted stock awards during fiscal years ended 2023, 2022, and 2021 was $22,379, $19,326, and $16,301, respectively. Stock-based compensation expense during fiscal 2023 and 2022 includes $2,186 and $1,131, respectively, of expense related to the Company's liability-classified awards. The total estimated amount of the liability-classified awards for fiscal 2023 is approximately $7,019. Approximately $34,186 of deferred compensation, which is expected to be recognized over the remaining weighted average vesting period of 1.45 years, is unrecognized as of December 30, 2023. The total fair value of restricted shares vested during fiscal years 2023, 2022, and 2021 was $29,792, $17,137, and $24,823, respectively.</span></div> 2148474 P4Y <div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following summarizes the activity of restricted stock awards during fiscal years 2023, 2022, and 2021:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:58.402%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.783%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.785%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Share Units</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Weighted Average Grant Date Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Unvested shares as of January 2, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">770,183 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">57.20 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">265,644 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91.31 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(257,435)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">65.14 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(33,902)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">58.25 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Unvested shares as of January 1, 2022</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">744,490 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">66.34 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">203,149 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">118.33 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(131,973)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63.72 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(101,873)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">67.08 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Unvested shares as of December 31, 2022</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">713,793 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">81.25 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">288,727 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">106.37 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(285,865)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">48.98 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(39,895)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">97.24 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Unvested shares as of December 30, 2023</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">676,760 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">104.63 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 770183 57.20 265644 91.31 257435 65.14 33902 58.25 744490 66.34 203149 118.33 131973 63.72 101873 67.08 713793 81.25 288727 106.37 285865 48.98 39895 97.24 676760 104.63 22379000 19326000 16301000 2186000 1131000 7019000 34186000 P1Y5M12D 29792000 17137000 24823000 Employee Benefit Plan<div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company sponsors 401(k) plans for which employees meeting certain age and length of service requirements may contribute up to the defined statutory limit. The 401(k) plans allow for the Company to make matching and profit sharing contributions in such amounts as may be determined by the Board of Directors. The Company recognized expenses of $732, $1,648, and $334, respectively, related to the 401(k) plans for fiscal years 2023, 2022, and 2021, respectively.</span></div> 732000 1648000 334000 Income Taxes <div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Income tax expense for years 2023, 2022, and 2021 were as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.806%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.448%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Years Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">January 1, 2022</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current:</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Federal</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,085 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,977 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,251 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,633 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,040 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,353 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,583 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">943 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">400 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total current income tax expense</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,301 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,960 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,004 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred:</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Federal</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(23,235)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(15,401)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,740)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,487)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,161)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,238)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total deferred income tax benefit</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(25,704)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(18,559)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,046)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total income tax expense</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,597 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,401 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,958 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:7pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Temporary differences comprising the net deferred income tax liability shown in the Company’s consolidated balance sheets were as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred tax asset:</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lease liabilities</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,381 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,732 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tax carryforwards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,328 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,863 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,275 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,945 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Allowance for doubtful accounts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,487 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,559 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Capitalized Research and Development Costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,140 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,795 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,998 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,025 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total deferred tax asset</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">70,609 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,919 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred tax liability:</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangibles</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(49,715)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(30,226)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Right-of-use assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(9,746)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10,361)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and amortization</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(11,423)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(9,467)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,562)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(758)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total deferred tax liability</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(73,446)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(50,812)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net deferred tax liability</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,837)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,893)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 30, 2023 and December 31, 2022, the Company had net non-current deferred tax liabilities of $2,837 and $6,893, respectively. No material valuation allowances are recorded against the Company’s deferred income tax assets as of December 30, 2023 and December 31, 2022. Deferred income tax liabilities primarily relate to depreciation and intangible assets, which are partially offset by deferred tax assets related to the capitalization of research and development costs under Section 174 of the Internal Revenue Code, and other deferred tax items. Beginning in 2022, the Tax Cuts and Jobs Act eliminates the option to currently deduct research and development costs in the period incurred and requires taxpayers to capitalize and amortize such costs over five years pursuant to Section 174 of the Internal Revenue Code.</span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 30, 2023, the Company has $2,026 of tax-effected U.S. federal net operating loss carryforwards that will not expire, $82 of foreign net operating loss carryforwards (net of valuation allowance) that will not expire, and $172 of tax-effected state net operating loss carryforwards, of which $123 will begin to expire in the year 2034 and $49 that will not expire. The majority of the net operating loss carryforwards are subject to limitation under the Internal Revenue Code of 1986, as amended ("IRC") Section 382. Additionally, as of December 30, 2023, the Company has $48 of tax-effected state tax credit carryforwards that will expire in the year 2042.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total income tax expense was different than the amount computed by applying the Federal statutory rate as follows:</span></div><div style="margin-top:17pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.806%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.448%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Years Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">January 1, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tax at federal statutory rate</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,124 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,099 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,042 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State taxes, net of Federal benefit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,683 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,853 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,908 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Stock-based compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,190)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,495)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,432)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Federal and state tax credits</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(9,064)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,983)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,242)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Changes in unrecognized tax position</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">652 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(73)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">96 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,392 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,000 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">586 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total income tax expense</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,597 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,401 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,958 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s consolidated effective income tax rate was 7.5%, 19.9%, and 24.1% for fiscal years 2023, 2022, and 2021, respectively.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company and its subsidiaries file income tax returns in the U.S. Federal jurisdiction and various state and foreign jurisdictions. The Company evaluates tax positions for recognition using a more-likely-than-not recognition threshold, and those tax positions eligible for recognition are measured as the largest amount of tax benefit that is greater than 50% likely of being realized upon the effective settlement with a taxing authority that has full knowledge of all relevant information. Fiscal years 2012 through 2014 are considered open tax years in the State of California. Fiscal years 2020 through 2023 are considered open tax years in the U.S. Federal jurisdiction, state jurisdictions, including the State of California, and foreign jurisdictions.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of December 30, 2023 and December 31, 2022, the Company had $1,633 and $966, respectively, of gross unrecognized tax benefits, which if recognized, $1,440 and $847 would affect our effective tax rate. The Company expects to reverse an immaterial amount of unrecognized tax benefits in the next 12 months. A reconciliation of the beginning and ending amount of unrecognized tax benefits were as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.806%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.448%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">January 1, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance, beginning of period</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">966 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,071 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,022 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Additions based on tax positions related to the current year</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">447 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">131 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">124 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Additions for tax positions of prior years</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">297 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lapse of statute of limitations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(77)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(103)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(45)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reductions for positions of prior years</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(139)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(30)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance, end of period</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,633 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">966 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,071 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company records accrued interest and penalties related to unrecognized tax benefits in income tax expense. Accrued interest and penalties related to unrecognized tax benefits in the Consolidated Balance Sheets were $378 and $340 as of December 30, 2023 and December 31, 2022, respectively.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2021, the Organization for Economic Co-operation and Development (“OECD”) released Pillar Two Global Anti-Base Erosion model rules, designed to ensure large corporations are taxed at a minimum rate of 15% in all countries of operation. The United States has not yet enacted legislation implementing the Pillar Two rules, however, they have been enacted or substantively enacted in certain jurisdictions in which the Company operates. We are continuing to assess and </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">monitor the Pillar Two rules, however, we do not expect their impact to be material based on the legislation enacted at this stage.</span></div> <div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Income tax expense for years 2023, 2022, and 2021 were as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.806%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.448%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Years Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">January 1, 2022</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current:</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Federal</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,085 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,977 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,251 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,633 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,040 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,353 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,583 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">943 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">400 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total current income tax expense</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,301 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,960 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,004 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred:</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Federal</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(23,235)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(15,401)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,740)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,487)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,161)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,238)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(68)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total deferred income tax benefit</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(25,704)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(18,559)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,046)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total income tax expense</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,597 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,401 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,958 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 22085000 20977000 14251000 5633000 9040000 7353000 1583000 943000 400000 29301000 30960000 22004000 -23235000 -15401000 -3740000 -2487000 -3161000 -3238000 18000 3000 -68000 -25704000 -18559000 -7046000 3597000 12401000 14958000 <div style="margin-top:7pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Temporary differences comprising the net deferred income tax liability shown in the Company’s consolidated balance sheets were as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred tax asset:</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lease liabilities</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,381 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,732 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tax carryforwards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,328 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,863 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,275 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,945 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Allowance for doubtful accounts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,487 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,559 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Capitalized Research and Development Costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,140 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,795 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,998 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,025 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total deferred tax asset</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">70,609 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,919 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred tax liability:</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Acquired intangibles</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(49,715)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(30,226)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Right-of-use assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(9,746)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10,361)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Depreciation and amortization</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(11,423)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(9,467)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,562)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(758)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total deferred tax liability</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(73,446)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(50,812)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net deferred tax liability</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,837)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,893)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 10381000 10732000 2328000 3863000 11275000 11945000 1487000 1559000 43140000 14795000 1998000 1025000 70609000 43919000 49715000 30226000 9746000 10361000 11423000 9467000 2562000 758000 73446000 50812000 2837000 6893000 2837000 6893000 2026000 82000 172000 123000 49000 48000 <div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total income tax expense was different than the amount computed by applying the Federal statutory rate as follows:</span></div><div style="margin-top:17pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.806%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.448%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Years Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">January 1, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Tax at federal statutory rate</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,124 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,099 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,042 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">State taxes, net of Federal benefit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,683 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,853 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,908 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Stock-based compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,190)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,495)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,432)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Federal and state tax credits</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(9,064)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,983)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,242)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Changes in unrecognized tax position</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">652 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(73)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">96 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,392 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,000 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">586 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total income tax expense</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,597 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,401 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,958 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 10124000 13099000 13042000 2683000 3853000 3908000 -2190000 -1495000 -1432000 9064000 3983000 1242000 652000 -73000 96000 1392000 1000000 586000 3597000 12401000 14958000 0.075 0.199 0.241 1633000 966000 1440000 847000 A reconciliation of the beginning and ending amount of unrecognized tax benefits were as follows: <div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:44.806%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.448%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">January 1, 2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance, beginning of period</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">966 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,071 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,022 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Additions based on tax positions related to the current year</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">447 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">131 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">124 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Additions for tax positions of prior years</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">297 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lapse of statute of limitations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(77)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(103)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(45)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reductions for positions of prior years</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(139)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(30)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance, end of period</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,633 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">966 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,071 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 966000 1071000 1022000 447000 131000 124000 297000 6000 0 77000 103000 45000 0 139000 30000 1633000 966000 1071000 378000 340000 Reportable Segments<div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's Chief Executive Officer, who is the chief operating decision maker ("CODM"), has organized the Company into three operating and reportable segments as follows:</span></div><div style="margin-top:12pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">Infrastructure ("INF"), </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">which includes the Company's engineering, civil program management, utility services, and construction quality assurance practices, </span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">Building, Technology &amp; Sciences ("BTS")</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, which includes the Company's environmental health sciences, clean energy consulting, buildings and program management, and MEP &amp; technology design practices, and</span></div><div style="margin-top:3pt;padding-left:63pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;padding-left:14.5pt">Geospatial Solutions ("GEO")</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, which includes the Company's geospatial solution practices. </span></div><div style="margin-top:10pt;text-indent:33.75pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company evaluates the performance of these reportable segments based on their respective operating income before the effect of amortization expense related to acquisitions and other unallocated corporate expenses. The following tables set forth summarized financial information concerning our reportable segments:</span></div><div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:44.727%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.469%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.469%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.471%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Years Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">January 1, 2022</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Gross revenues</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">INF</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">374,986 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">395,878 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">383,725 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">BTS</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">222,804 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">232,577 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">185,995 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">GEO</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">263,949 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158,323 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,986 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">861,739 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">786,778 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">706,706 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Segment income before taxes</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">INF</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">65,608 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">68,259 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">71,838 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">BTS</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,810 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,810 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,221 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 1.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">GEO</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">51,633 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,640 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,027 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Segment income before taxes</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">156,051 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">154,709 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">140,086 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(107,841)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(92,335)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(77,981)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total income before taxes</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">48,210 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62,374 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62,105 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-style:italic;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Includes amortization of intangibles of $43,677, $32,341, and $33,498 for the fiscal years ended 2023, 2022, and 2021, respectively.</span></div><div style="margin-top:17pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.227%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.300%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Assets</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">INF</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">222,435 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">226,301 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">BTS</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">243,154 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">231,049 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">GEO</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">603,630 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">366,385 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101,373 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,988 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total assets</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,170,592 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">935,723 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-style:italic;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Corporate assets consist of intercompany eliminations and assets not allocated to segments including cash and cash equivalents and certain other assets.</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Substantially all of the Company's assets are located in the United States. </span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company disaggregates its gross revenues from contracts with customers by geographic location, customer-type, and contract-type for each of its reportable segments. Disaggregated revenues include the elimination of inter-segment revenues which has been allocated to each segment. The Company believes this best depicts how the nature, amount, timing, and uncertainty of its revenues and cash flows are affected by economic factors. No sales to an individual customer or country other than the United States accounted for more than 10% of gross revenue for fiscal years 2023, 2022, and 2021. Gross revenue, classified by the major geographic areas in which our customers were located, were as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2023</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">United States</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">374,986 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">184,338 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">248,262 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">807,586 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,466 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,687 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,153 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">374,986 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">222,804 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">263,949 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">861,739 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">United States</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">395,878 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">204,036 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">154,584 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">754,498 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,541 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,739 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,280 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">395,878 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">232,577 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158,323 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">786,778 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">United States</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">383,725 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">167,057 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">134,003 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">684,785 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,938 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,983 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,921 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">383,725 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">185,995 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,986 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">706,706 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gross revenue by customer were as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2023</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Public and quasi-public sector</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">301,427 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,313 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">223,109 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">585,849 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Private sector</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,559 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">161,491 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,840 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">275,890 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">374,986 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">222,804 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">263,949 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">861,739 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Public and quasi-public sector</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">312,817 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,726 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">128,786 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">503,329 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Private sector</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,061 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">170,851 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,537 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">283,449 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">395,878 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">232,577 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158,323 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">786,778 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Public and quasi-public sector</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">304,753 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">66,964 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86,628 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">458,345 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Private sector</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">78,972 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">119,031 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">50,358 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">248,361 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">383,725 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">185,995 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,986 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">706,706 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gross revenues by contract type were as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2023</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost-reimbursable contracts</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">359,423 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">162,721 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">256,069 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">778,213 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fixed-unit price contracts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,563 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60,083 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,880 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,526 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">374,986 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">222,804 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">263,949 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">861,739 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost-reimbursable contracts</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">379,818 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">155,632 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">157,992 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">693,442 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fixed-unit price contracts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,060 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">76,945 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">331 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">93,336 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">395,878 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">232,577 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158,323 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">786,778 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost-reimbursable contracts</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">367,310 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">133,272 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,683 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">637,265 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fixed-unit price contracts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,415 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">52,723 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">303 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">69,441 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">383,725 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">185,995 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,986 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">706,706 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 3 3 The following tables set forth summarized financial information concerning our reportable segments:<div style="margin-top:12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:44.727%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.469%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.469%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.471%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Years Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">January 1, 2022</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Gross revenues</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">INF</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">374,986 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">395,878 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">383,725 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">BTS</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">222,804 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">232,577 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">185,995 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">GEO</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">263,949 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158,323 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,986 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">861,739 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">786,778 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">706,706 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Segment income before taxes</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">INF</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">65,608 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">68,259 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">71,838 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">BTS</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,810 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,810 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,221 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 1.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">GEO</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">51,633 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,640 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,027 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total Segment income before taxes</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">156,051 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">154,709 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">140,086 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(107,841)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(92,335)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(77,981)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total income before taxes</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">48,210 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62,374 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62,105 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-style:italic;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Includes amortization of intangibles of $43,677, $32,341, and $33,498 for the fiscal years ended 2023, 2022, and 2021, respectively.</span></div><div style="margin-top:17pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.227%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.300%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">December 31, 2022</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Assets</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">INF</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">222,435 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">226,301 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">BTS</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">243,154 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">231,049 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">GEO</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">603,630 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">366,385 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101,373 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,988 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total assets</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,170,592 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">935,723 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:7pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-style:italic;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Corporate assets consist of intercompany eliminations and assets not allocated to segments including cash and cash equivalents and certain other assets.</span></div> 374986000 395878000 383725000 222804000 232577000 185995000 263949000 158323000 136986000 861739000 786778000 706706000 65608000 68259000 71838000 38810000 43810000 35221000 51633000 42640000 33027000 156051000 154709000 140086000 -107841000 -92335000 -77981000 48210000 62374000 62105000 43677000 32341000 33498000 222435000 226301000 243154000 231049000 603630000 366385000 101373000 111988000 1170592000 935723000 Gross revenue, classified by the major geographic areas in which our customers were located, were as follows: <div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2023</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">United States</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">374,986 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">184,338 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">248,262 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">807,586 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,466 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,687 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,153 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">374,986 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">222,804 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">263,949 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">861,739 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">United States</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">395,878 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">204,036 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">154,584 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">754,498 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,541 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,739 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,280 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">395,878 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">232,577 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158,323 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">786,778 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">United States</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">383,725 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">167,057 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">134,003 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">684,785 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,938 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,983 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,921 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">383,725 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">185,995 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,986 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">706,706 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 374986000 184338000 248262000 807586000 0 38466000 15687000 54153000 374986000 222804000 263949000 861739000 395878000 204036000 154584000 754498000 0 28541000 3739000 32280000 395878000 232577000 158323000 786778000 383725000 167057000 134003000 684785000 0 18938000 2983000 21921000 383725000 185995000 136986000 706706000 <div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gross revenue by customer were as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2023</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Public and quasi-public sector</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">301,427 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,313 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">223,109 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">585,849 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Private sector</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,559 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">161,491 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,840 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">275,890 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">374,986 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">222,804 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">263,949 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">861,739 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Public and quasi-public sector</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">312,817 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,726 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">128,786 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">503,329 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Private sector</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,061 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">170,851 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,537 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">283,449 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">395,878 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">232,577 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158,323 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">786,778 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Public and quasi-public sector</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">304,753 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">66,964 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86,628 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">458,345 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Private sector</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">78,972 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">119,031 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">50,358 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">248,361 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">383,725 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">185,995 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,986 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">706,706 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 301427000 61313000 223109000 585849000 73559000 161491000 40840000 275890000 374986000 222804000 263949000 861739000 312817000 61726000 128786000 503329000 83061000 170851000 29537000 283449000 395878000 232577000 158323000 786778000 304753000 66964000 86628000 458345000 78972000 119031000 50358000 248361000 383725000 185995000 136986000 706706000 <div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gross revenues by contract type were as follows: </span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2023</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost-reimbursable contracts</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">359,423 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">162,721 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">256,069 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">778,213 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fixed-unit price contracts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,563 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60,083 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,880 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,526 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">374,986 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">222,804 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">263,949 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">861,739 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost-reimbursable contracts</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">379,818 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">155,632 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">157,992 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">693,442 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fixed-unit price contracts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,060 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">76,945 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">331 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">93,336 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">395,878 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">232,577 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158,323 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">786,778 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.946%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.594%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fiscal Year 2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">INF</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">BTS</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">GEO</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost-reimbursable contracts</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">367,310 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">133,272 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,683 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">637,265 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fixed-unit price contracts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,415 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">52,723 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">303 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">69,441 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total gross revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">383,725 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">185,995 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">136,986 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">706,706 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 359423000 162721000 256069000 778213000 15563000 60083000 7880000 83526000 374986000 222804000 263949000 861739000 379818000 155632000 157992000 693442000 16060000 76945000 331000 93336000 395878000 232577000 158323000 786778000 367310000 133272000 136683000 637265000 16415000 52723000 303000 69441000 383725000 185995000 136986000 706706000 Subsequent Events<div style="margin-top:18pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On January 19, 2024, the Company acquired all of the outstanding equity interests in Causseaux, Hewett, &amp; Walpole, LLC, a provider of engineering and infrastructure consulting services in Florida. The aggregate purchase price is up to $59,500, including $45,000 of cash at closing, $2,000 of the Company's common stock, and a potential earn-out of up to $12,500.</span></div> 59500000 45000000 2000000 12500000