0001628280-23-028805.txt : 20230810 0001628280-23-028805.hdr.sgml : 20230810 20230810143624 ACCESSION NUMBER: 0001628280-23-028805 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 78 CONFORMED PERIOD OF REPORT: 20230701 FILED AS OF DATE: 20230810 DATE AS OF CHANGE: 20230810 FILER: COMPANY DATA: COMPANY CONFORMED NAME: NV5 Global, Inc. CENTRAL INDEX KEY: 0001532961 STANDARD INDUSTRIAL CLASSIFICATION: SERVICES-MISCELLANEOUS BUSINESS SERVICES [7380] IRS NUMBER: 453458017 STATE OF INCORPORATION: DE FISCAL YEAR END: 1230 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-35849 FILM NUMBER: 231158656 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-Q 1 nvee-20230701.htm 10-Q nvee-20230701
00015329612023Q2false12/30P2Y00015329612023-01-012023-07-0100015329612023-08-04xbrli:shares00015329612023-07-01iso4217:USD00015329612022-12-31iso4217:USDxbrli:shares00015329612023-04-022023-07-0100015329612022-04-032022-07-0200015329612022-01-022022-07-020001532961us-gaap:CommonStockMember2022-04-020001532961us-gaap:AdditionalPaidInCapitalMember2022-04-020001532961us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-04-020001532961us-gaap:RetainedEarningsMember2022-04-0200015329612022-04-020001532961us-gaap:AdditionalPaidInCapitalMember2022-04-032022-07-020001532961us-gaap:CommonStockMember2022-04-032022-07-020001532961us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-022022-07-020001532961us-gaap:RetainedEarningsMember2022-04-032022-07-020001532961us-gaap:CommonStockMember2022-07-020001532961us-gaap:AdditionalPaidInCapitalMember2022-07-020001532961us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-07-020001532961us-gaap:RetainedEarningsMember2022-07-0200015329612022-07-020001532961us-gaap:CommonStockMember2023-04-010001532961us-gaap:AdditionalPaidInCapitalMember2023-04-010001532961us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-04-010001532961us-gaap:RetainedEarningsMember2023-04-0100015329612023-04-010001532961us-gaap:AdditionalPaidInCapitalMember2023-04-022023-07-010001532961us-gaap:CommonStockMember2023-04-022023-07-010001532961us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-04-022023-07-010001532961us-gaap:RetainedEarningsMember2023-04-022023-07-010001532961us-gaap:CommonStockMember2023-07-010001532961us-gaap:AdditionalPaidInCapitalMember2023-07-010001532961us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-07-010001532961us-gaap:RetainedEarningsMember2023-07-010001532961us-gaap:CommonStockMember2022-01-010001532961us-gaap:AdditionalPaidInCapitalMember2022-01-010001532961us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-010001532961us-gaap:RetainedEarningsMember2022-01-0100015329612022-01-010001532961us-gaap:AdditionalPaidInCapitalMember2022-01-022022-07-020001532961us-gaap:CommonStockMember2022-01-022022-07-020001532961us-gaap:RetainedEarningsMember2022-01-022022-07-020001532961us-gaap:CommonStockMember2022-12-310001532961us-gaap:AdditionalPaidInCapitalMember2022-12-310001532961us-gaap:RetainedEarningsMember2022-12-310001532961us-gaap:AdditionalPaidInCapitalMember2023-01-012023-07-010001532961us-gaap:CommonStockMember2023-01-012023-07-010001532961us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-01-012023-07-010001532961us-gaap:RetainedEarningsMember2023-01-012023-07-0100015329612023-07-012023-07-0100015329612023-07-01nvee:PeriodOneMember2023-07-0100015329612023-07-01nvee:PeriodTwoMember2023-07-010001532961us-gaap:RestrictedStockMember2023-01-012023-07-010001532961us-gaap:RestrictedStockMember2022-01-022022-07-020001532961nvee:VisualInformationSolutionsMember2023-04-062023-04-060001532961nvee:AximGeospatialLLCMember2023-02-222023-02-220001532961nvee:UncollateralizedPromissoryNoteMembernvee:AximGeospatialLLCMember2023-02-220001532961nvee:AximGeospatialLLCMember2023-02-220001532961nvee:OtherAcquisitionMember2023-01-012023-07-01nvee:acquisition0001532961nvee:OtherAcquisitionMember2023-07-010001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2022-01-022022-12-310001532961nvee:UncollateralizedPromissoryNoteMemberus-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2022-12-310001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2022-12-310001532961nvee:VisualInformationSolutionsMember2023-07-010001532961nvee:AximGeospatialLLCMember2023-07-010001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2023-07-010001532961us-gaap:CustomerRelationshipsMembernvee:VisualInformationSolutionsMember2023-07-010001532961us-gaap:CustomerRelationshipsMembernvee:AximGeospatialLLCMember2023-07-010001532961us-gaap:CustomerRelationshipsMembernvee:OtherAcquisitionMember2023-07-010001532961us-gaap:CustomerRelationshipsMemberus-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2023-07-010001532961us-gaap:CustomerRelationshipsMemberus-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2022-12-310001532961us-gaap:TradeNamesMembernvee:VisualInformationSolutionsMember2023-07-010001532961us-gaap:TradeNamesMembernvee:AximGeospatialLLCMember2023-07-010001532961us-gaap:TradeNamesMembernvee:OtherAcquisitionMember2023-07-010001532961us-gaap:TradeNamesMemberus-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2023-07-010001532961us-gaap:TradeNamesMemberus-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2022-12-310001532961us-gaap:CustomerListsMembernvee:VisualInformationSolutionsMember2023-07-010001532961us-gaap:CustomerListsMembernvee:AximGeospatialLLCMember2023-07-010001532961us-gaap:CustomerListsMembernvee:OtherAcquisitionMember2023-07-010001532961us-gaap:CustomerListsMemberus-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2023-07-010001532961us-gaap:CustomerListsMemberus-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2022-12-310001532961us-gaap:TechnologyBasedIntangibleAssetsMembernvee:VisualInformationSolutionsMember2023-07-010001532961us-gaap:TechnologyBasedIntangibleAssetsMembernvee:AximGeospatialLLCMember2023-07-010001532961us-gaap:TechnologyBasedIntangibleAssetsMembernvee:OtherAcquisitionMember2023-07-010001532961us-gaap:TechnologyBasedIntangibleAssetsMemberus-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2023-07-010001532961us-gaap:TechnologyBasedIntangibleAssetsMemberus-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2022-12-310001532961nvee:VisualInformationSolutionsMemberus-gaap:NoncompeteAgreementsMember2023-07-010001532961nvee:AximGeospatialLLCMemberus-gaap:NoncompeteAgreementsMember2023-07-010001532961us-gaap:NoncompeteAgreementsMembernvee:OtherAcquisitionMember2023-07-010001532961us-gaap:NoncompeteAgreementsMemberus-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2023-07-010001532961us-gaap:NoncompeteAgreementsMemberus-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2022-12-310001532961nvee:VisualInformationSolutionsMember2023-01-012023-07-010001532961nvee:AximGeospatialLLCMember2023-01-012023-07-010001532961us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember2023-01-012023-07-010001532961us-gaap:FurnitureAndFixturesMember2023-07-010001532961us-gaap:FurnitureAndFixturesMember2022-12-310001532961us-gaap:ComputerEquipmentMember2023-07-010001532961us-gaap:ComputerEquipmentMember2022-12-310001532961nvee:SurveyAndFieldEquipmentMember2023-07-010001532961nvee:SurveyAndFieldEquipmentMember2022-12-310001532961us-gaap:LeaseholdImprovementsMember2023-07-010001532961us-gaap:LeaseholdImprovementsMember2022-12-310001532961nvee:OtherDirectCostsMember2023-04-022023-07-010001532961nvee:OtherDirectCostsMember2023-01-012023-07-0100015329612022-01-022022-04-020001532961nvee:OtherDirectCostsMember2022-01-022022-04-020001532961nvee:OtherDirectCostsMember2022-01-022022-07-020001532961nvee:INFMember2022-12-310001532961nvee:INFMember2023-01-012023-07-010001532961nvee:INFMember2023-07-010001532961nvee:BTSMember2022-12-310001532961nvee:BTSMember2023-01-012023-07-010001532961nvee:BTSMember2023-07-010001532961nvee:GEOMember2022-12-310001532961nvee:GEOMember2023-01-012023-07-010001532961nvee:GEOMember2023-07-010001532961us-gaap:CustomerRelationshipsMember2023-07-010001532961us-gaap:CustomerRelationshipsMember2022-12-310001532961us-gaap:TradeNamesMember2023-07-010001532961us-gaap:TradeNamesMember2022-12-310001532961us-gaap:CustomerListsMember2023-07-010001532961us-gaap:CustomerListsMember2022-12-310001532961us-gaap:NoncompeteAgreementsMember2023-07-010001532961us-gaap:NoncompeteAgreementsMember2022-12-310001532961nvee:DevelopedTechnologyMember2023-07-010001532961nvee:DevelopedTechnologyMember2022-12-310001532961srt:MinimumMemberus-gaap:CustomerRelationshipsMember2023-04-010001532961us-gaap:CustomerRelationshipsMembersrt:MaximumMember2023-04-010001532961srt:MinimumMemberus-gaap:TradeNamesMember2023-04-010001532961us-gaap:TradeNamesMembersrt:MaximumMember2023-04-010001532961us-gaap:CustomerListsMembersrt:MinimumMember2023-04-010001532961us-gaap:CustomerListsMembersrt:MaximumMember2023-04-010001532961srt:MinimumMemberus-gaap:NoncompeteAgreementsMember2023-04-010001532961us-gaap:NoncompeteAgreementsMembersrt:MaximumMember2023-04-010001532961srt:MinimumMembernvee:DevelopedTechnologyMember2023-04-010001532961nvee:DevelopedTechnologyMembersrt:MaximumMember2023-04-010001532961us-gaap:CustomerRelationshipsMember2023-01-012023-07-010001532961us-gaap:TradeNamesMember2023-01-012023-07-010001532961us-gaap:CustomerListsMember2023-01-012023-07-010001532961us-gaap:NoncompeteAgreementsMember2023-01-012023-07-010001532961nvee:DevelopedTechnologyMember2023-01-012023-07-010001532961nvee:SeniorCreditFacilityMember2023-07-010001532961nvee:SeniorCreditFacilityMember2022-12-310001532961nvee:UncollateralizedPromissoryNoteMember2023-07-010001532961nvee:UncollateralizedPromissoryNoteMember2022-12-310001532961nvee:StockPayableMember2023-07-010001532961nvee:StockPayableMember2022-12-310001532961us-gaap:LineOfCreditMembernvee:SeniorCreditFacilityMember2016-12-070001532961us-gaap:RevolvingCreditFacilityMembernvee:SeniorCreditFacilityMember2016-12-070001532961us-gaap:RevolvingCreditFacilityMembernvee:SecondARCreditAgreementMember2021-08-130001532961us-gaap:RevolvingCreditFacilityMembernvee:SecondARCreditAgreementMember2021-08-132021-08-130001532961us-gaap:RevolvingCreditFacilityMembernvee:SeniorCreditFacilityMember2023-07-010001532961us-gaap:RevolvingCreditFacilityMembernvee:SeniorCreditFacilityMember2022-12-310001532961us-gaap:RevolvingCreditFacilityMembernvee:SecondARCreditAgreementMember2023-01-012023-07-01xbrli:pure0001532961us-gaap:RevolvingCreditFacilityMembernvee:SecondARCreditAgreementMember2023-07-010001532961nvee:SecondARCreditAgreementMember2023-07-010001532961nvee:ARCreditAgreementMember2023-07-010001532961nvee:ARCreditAgreementMember2023-04-022023-07-010001532961nvee:ARCreditAgreementMember2023-01-012023-07-010001532961nvee:ARCreditAgreementMember2022-04-032022-07-020001532961nvee:ARCreditAgreementMember2022-01-022022-07-0200015329612022-01-022022-12-310001532961nvee:EquityPlan2011Member2023-07-010001532961srt:MinimumMemberus-gaap:RestrictedStockMembernvee:EquityPlan2011Member2023-01-012023-07-010001532961srt:MaximumMemberus-gaap:RestrictedStockMembernvee:EquityPlan2011Member2023-01-012023-07-010001532961us-gaap:RestrictedStockMember2022-12-310001532961us-gaap:RestrictedStockMember2023-01-012023-04-010001532961us-gaap:RestrictedStockMember2023-04-010001532961us-gaap:RestrictedStockMember2023-04-022023-07-010001532961us-gaap:RestrictedStockMember2023-01-012023-07-010001532961us-gaap:RestrictedStockMember2022-04-032022-07-020001532961us-gaap:RestrictedStockMember2022-01-022022-07-020001532961nvee:LiabilityBasedAwardsMember2023-04-022023-07-010001532961nvee:LiabilityBasedAwardsMember2023-01-012023-07-010001532961nvee:LiabilityBasedAwardsMember2022-04-032022-07-020001532961nvee:LiabilityBasedAwardsMember2022-01-022022-07-020001532961nvee:LiabilityBasedAwardsMember2023-07-010001532961us-gaap:RestrictedStockMember2023-07-01nvee:segment0001532961nvee:INFMemberus-gaap:OperatingSegmentsMember2023-04-022023-07-010001532961nvee:INFMemberus-gaap:OperatingSegmentsMember2022-04-032022-07-020001532961nvee:INFMemberus-gaap:OperatingSegmentsMember2023-01-012023-07-010001532961nvee:INFMemberus-gaap:OperatingSegmentsMember2022-01-022022-07-020001532961us-gaap:OperatingSegmentsMembernvee:BTSMember2023-04-022023-07-010001532961us-gaap:OperatingSegmentsMembernvee:BTSMember2022-04-032022-07-020001532961us-gaap:OperatingSegmentsMembernvee:BTSMember2023-01-012023-07-010001532961us-gaap:OperatingSegmentsMembernvee:BTSMember2022-01-022022-07-020001532961us-gaap:OperatingSegmentsMembernvee:GEOMember2023-04-022023-07-010001532961us-gaap:OperatingSegmentsMembernvee:GEOMember2022-04-032022-07-020001532961us-gaap:OperatingSegmentsMembernvee:GEOMember2023-01-012023-07-010001532961us-gaap:OperatingSegmentsMembernvee:GEOMember2022-01-022022-07-020001532961us-gaap:OperatingSegmentsMember2023-04-022023-07-010001532961us-gaap:OperatingSegmentsMember2022-04-032022-07-020001532961us-gaap:OperatingSegmentsMember2023-01-012023-07-010001532961us-gaap:OperatingSegmentsMember2022-01-022022-07-020001532961us-gaap:CorporateNonSegmentMember2023-04-022023-07-010001532961us-gaap:CorporateNonSegmentMember2022-04-032022-07-020001532961us-gaap:CorporateNonSegmentMember2023-01-012023-07-010001532961us-gaap:CorporateNonSegmentMember2022-01-022022-07-020001532961nvee:INFMembercountry:US2023-04-022023-07-010001532961nvee:BTSMembercountry:US2023-04-022023-07-010001532961country:USnvee:GEOMember2023-04-022023-07-010001532961country:US2023-04-022023-07-010001532961nvee:INFMembercountry:US2023-01-012023-07-010001532961nvee:BTSMembercountry:US2023-01-012023-07-010001532961country:USnvee:GEOMember2023-01-012023-07-010001532961country:US2023-01-012023-07-010001532961nvee:INFMemberus-gaap:NonUsMember2023-04-022023-07-010001532961nvee:BTSMemberus-gaap:NonUsMember2023-04-022023-07-010001532961nvee:GEOMemberus-gaap:NonUsMember2023-04-022023-07-010001532961us-gaap:NonUsMember2023-04-022023-07-010001532961nvee:INFMemberus-gaap:NonUsMember2023-01-012023-07-010001532961nvee:BTSMemberus-gaap:NonUsMember2023-01-012023-07-010001532961nvee:GEOMemberus-gaap:NonUsMember2023-01-012023-07-010001532961us-gaap:NonUsMember2023-01-012023-07-010001532961nvee:INFMember2023-04-022023-07-010001532961nvee:BTSMember2023-04-022023-07-010001532961nvee:GEOMember2023-04-022023-07-010001532961nvee:INFMembercountry:US2022-04-032022-07-020001532961nvee:BTSMembercountry:US2022-04-032022-07-020001532961country:USnvee:GEOMember2022-04-032022-07-020001532961country:US2022-04-032022-07-020001532961nvee:INFMembercountry:US2022-01-022022-07-020001532961nvee:BTSMembercountry:US2022-01-022022-07-020001532961country:USnvee:GEOMember2022-01-022022-07-020001532961country:US2022-01-022022-07-020001532961nvee:INFMemberus-gaap:NonUsMember2022-04-032022-07-020001532961nvee:BTSMemberus-gaap:NonUsMember2022-04-032022-07-020001532961nvee:GEOMemberus-gaap:NonUsMember2022-04-032022-07-020001532961us-gaap:NonUsMember2022-04-032022-07-020001532961nvee:INFMemberus-gaap:NonUsMember2022-01-022022-07-020001532961nvee:BTSMemberus-gaap:NonUsMember2022-01-022022-07-020001532961nvee:GEOMemberus-gaap:NonUsMember2022-01-022022-07-020001532961us-gaap:NonUsMember2022-01-022022-07-020001532961nvee:INFMember2022-04-032022-07-020001532961nvee:BTSMember2022-04-032022-07-020001532961nvee:GEOMember2022-04-032022-07-020001532961nvee:INFMember2022-01-022022-07-020001532961nvee:BTSMember2022-01-022022-07-020001532961nvee:GEOMember2022-01-022022-07-020001532961nvee:INFMembernvee:PublicAndQuasiPublicSectorMember2023-04-022023-07-010001532961nvee:PublicAndQuasiPublicSectorMembernvee:BTSMember2023-04-022023-07-010001532961nvee:PublicAndQuasiPublicSectorMembernvee:GEOMember2023-04-022023-07-010001532961nvee:PublicAndQuasiPublicSectorMember2023-04-022023-07-010001532961nvee:INFMembernvee:PublicAndQuasiPublicSectorMember2023-01-012023-07-010001532961nvee:PublicAndQuasiPublicSectorMembernvee:BTSMember2023-01-012023-07-010001532961nvee:PublicAndQuasiPublicSectorMembernvee:GEOMember2023-01-012023-07-010001532961nvee:PublicAndQuasiPublicSectorMember2023-01-012023-07-010001532961nvee:INFMembernvee:PrivateSectorMember2023-04-022023-07-010001532961nvee:PrivateSectorMembernvee:BTSMember2023-04-022023-07-010001532961nvee:PrivateSectorMembernvee:GEOMember2023-04-022023-07-010001532961nvee:PrivateSectorMember2023-04-022023-07-010001532961nvee:INFMembernvee:PrivateSectorMember2023-01-012023-07-010001532961nvee:PrivateSectorMembernvee:BTSMember2023-01-012023-07-010001532961nvee:PrivateSectorMembernvee:GEOMember2023-01-012023-07-010001532961nvee:PrivateSectorMember2023-01-012023-07-010001532961nvee:INFMembernvee:PublicAndQuasiPublicSectorMember2022-04-032022-07-020001532961nvee:PublicAndQuasiPublicSectorMembernvee:BTSMember2022-04-032022-07-020001532961nvee:PublicAndQuasiPublicSectorMembernvee:GEOMember2022-04-032022-07-020001532961nvee:PublicAndQuasiPublicSectorMember2022-04-032022-07-020001532961nvee:INFMembernvee:PublicAndQuasiPublicSectorMember2022-01-022022-07-020001532961nvee:PublicAndQuasiPublicSectorMembernvee:BTSMember2022-01-022022-07-020001532961nvee:PublicAndQuasiPublicSectorMembernvee:GEOMember2022-01-022022-07-020001532961nvee:PublicAndQuasiPublicSectorMember2022-01-022022-07-020001532961nvee:INFMembernvee:PrivateSectorMember2022-04-032022-07-020001532961nvee:PrivateSectorMembernvee:BTSMember2022-04-032022-07-020001532961nvee:PrivateSectorMembernvee:GEOMember2022-04-032022-07-020001532961nvee:PrivateSectorMember2022-04-032022-07-020001532961nvee:INFMembernvee:PrivateSectorMember2022-01-022022-07-020001532961nvee:PrivateSectorMembernvee:BTSMember2022-01-022022-07-020001532961nvee:PrivateSectorMembernvee:GEOMember2022-01-022022-07-020001532961nvee:PrivateSectorMember2022-01-022022-07-020001532961nvee:INFMembernvee:CostReimbursableContractsMember2023-04-022023-07-010001532961nvee:BTSMembernvee:CostReimbursableContractsMember2023-04-022023-07-010001532961nvee:CostReimbursableContractsMembernvee:GEOMember2023-04-022023-07-010001532961nvee:CostReimbursableContractsMember2023-04-022023-07-010001532961nvee:INFMembernvee:CostReimbursableContractsMember2023-01-012023-07-010001532961nvee:BTSMembernvee:CostReimbursableContractsMember2023-01-012023-07-010001532961nvee:CostReimbursableContractsMembernvee:GEOMember2023-01-012023-07-010001532961nvee:CostReimbursableContractsMember2023-01-012023-07-010001532961nvee:INFMemberus-gaap:FixedPriceContractMember2023-04-022023-07-010001532961nvee:BTSMemberus-gaap:FixedPriceContractMember2023-04-022023-07-010001532961nvee:GEOMemberus-gaap:FixedPriceContractMember2023-04-022023-07-010001532961us-gaap:FixedPriceContractMember2023-04-022023-07-010001532961nvee:INFMemberus-gaap:FixedPriceContractMember2023-01-012023-07-010001532961nvee:BTSMemberus-gaap:FixedPriceContractMember2023-01-012023-07-010001532961nvee:GEOMemberus-gaap:FixedPriceContractMember2023-01-012023-07-010001532961us-gaap:FixedPriceContractMember2023-01-012023-07-010001532961nvee:INFMembernvee:CostReimbursableContractsMember2022-04-032022-07-020001532961nvee:BTSMembernvee:CostReimbursableContractsMember2022-04-032022-07-020001532961nvee:CostReimbursableContractsMembernvee:GEOMember2022-04-032022-07-020001532961nvee:CostReimbursableContractsMember2022-04-032022-07-020001532961nvee:INFMembernvee:CostReimbursableContractsMember2022-01-022022-07-020001532961nvee:BTSMembernvee:CostReimbursableContractsMember2022-01-022022-07-020001532961nvee:CostReimbursableContractsMembernvee:GEOMember2022-01-022022-07-020001532961nvee:CostReimbursableContractsMember2022-01-022022-07-020001532961nvee:INFMemberus-gaap:FixedPriceContractMember2022-04-032022-07-020001532961nvee:BTSMemberus-gaap:FixedPriceContractMember2022-04-032022-07-020001532961nvee:GEOMemberus-gaap:FixedPriceContractMember2022-04-032022-07-020001532961us-gaap:FixedPriceContractMember2022-04-032022-07-020001532961nvee:INFMemberus-gaap:FixedPriceContractMember2022-01-022022-07-020001532961nvee:BTSMemberus-gaap:FixedPriceContractMember2022-01-022022-07-020001532961nvee:GEOMemberus-gaap:FixedPriceContractMember2022-01-022022-07-020001532961us-gaap:FixedPriceContractMember2022-01-022022-07-020001532961us-gaap:AccumulatedTranslationAdjustmentMember2022-12-310001532961us-gaap:AccumulatedTranslationAdjustmentMember2023-07-01

UNITED STATES
SECURITIES AND EXCHANGE COMMISSION
Washington, D.C. 20549
_______________________________________________________
FORM 10-Q
_______________________________________________________
QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934
For the quarterly period ended July 1, 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,Florida33021
(Address of principal executive offices)(Zip Code)

(954495-2112
(Registrant’s telephone number, including area code)
_______________________________________________________
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
Indicate by check mark whether the registrant: (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.    Yes      No 
Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (§ 232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).    Yes     No 
Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging growth company. See definitions of “large accelerated filer,” “accelerated filer,” “smaller reporting company,” and “emerging growth company” in Rule 12b-2 of the Exchange Act.
Large accelerated filer
Accelerated Filer
Non-accelerated filer
Smaller reporting company
Emerging growth company
If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act.
Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act).   Yes    No
As of August 4, 2023, there were 15,890,254 shares outstanding of the registrant’s common stock, $0.01 par value.




NV5 GLOBAL, INC.
INDEX
Page



PART I – FINANCIAL INFORMATION

ITEM 1.    FINANCIAL STATEMENTS.
NV5 Global, Inc. and Subsidiaries
CONSOLIDATED BALANCE SHEETS
(UNAUDITED)
(in thousands, except share data)
July 1, 2023December 31, 2022
Assets
Current assets:  
Cash and cash equivalents$28,827 $38,541 
Billed receivables, net149,110 145,637 
Unbilled receivables, net107,192 92,862 
Prepaid expenses and other current assets20,501 13,636 
Total current assets305,630 290,676 
Property and equipment, net49,392 41,640 
Right-of-use lease assets, net38,628 39,314 
Intangible assets, net243,579 160,431 
Goodwill526,848 400,957 
Other assets3,751 2,705 
Total assets$1,167,828 $935,723 
Liabilities and Stockholders’ Equity
Current liabilities:
Accounts payable$55,578 $57,771 
Accrued liabilities52,735 44,313 
Billings in excess of costs and estimated earnings on uncompleted contracts37,195 31,183 
Other current liabilities2,072 1,597 
Current portion of contingent consideration4,149 10,854 
Current portion of notes payable and other obligations14,800 15,176 
Total current liabilities166,529 160,894 
Contingent consideration, less current portion1,897 4,481 
Other long-term liabilities28,526 29,542 
Notes payable and other obligations, less current portion209,241 39,673 
Deferred income tax liabilities, net20,487 6,893 
Total liabilities426,680 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,890,908 and 15,523,300 shares issued and outstanding as of July 1, 2023 and December 31, 2022, respectively
159 155 
Additional paid-in capital497,035 471,300 
Accumulated other comprehensive income (loss) (191) 
Retained earnings244,145 222,785 
Total stockholders’ equity741,148 694,240 
Total liabilities and stockholders’ equity$1,167,828 $935,723 
See accompanying notes to consolidated financial statements (unaudited).
1


NV5 Global, Inc. and Subsidiaries
CONSOLIDATED STATEMENTS OF NET INCOME AND COMPREHENSIVE INCOME
(UNAUDITED)
(in thousands, except share data)
Three Months EndedSix Months Ended
July 1, 2023July 2, 2022July 1, 2023July 2, 2022
Gross revenues$222,638 $202,732 $406,955 $392,885 
Direct costs:
Salaries and wages57,079 47,704 105,463 93,681 
Sub-consultant services39,690 40,479 67,304 75,305 
Other direct costs15,569 15,309 27,890 30,833 
Total direct costs112,338 103,492 200,657 199,819 
Gross profit110,300 99,240 206,298 193,066 
Operating expenses:
Salaries and wages, payroll taxes, and benefits58,949 47,283 111,621 97,049 
General and administrative11,551 14,494 29,472 30,881 
Facilities and facilities related5,823 5,195 11,197 10,381 
Depreciation and amortization13,539 9,668 24,585 19,602 
Total operating expenses89,862 76,640 176,875 157,913 
Income from operations20,438 22,600 29,423 35,153 
Interest expense(3,648)(887)(5,229)(1,801)
Income before income tax expense16,790 21,713 24,194 33,352 
Income tax expense(1,377)(4,445)(2,834)(7,442)
Net income$15,413 $17,268 $21,360 $25,910 
Earnings per share:
Basic$1.03 $1.17 $1.43 $1.76 
Diluted$1.00 $1.13 $1.39 $1.70 
Weighted average common shares outstanding:
Basic15,014,106 14,736,167 14,948,796 14,714,745 
Diluted15,451,788 15,232,157 15,421,535 15,211,835 
Comprehensive income:
Net income$15,413 $17,268 $21,360 $25,910 
Foreign currency translation losses, net of tax(191) (191) 
Comprehensive income$15,222 $17,268 $21,169 $25,910 
See accompanying notes to consolidated financial statements (unaudited).
2


NV5 Global, Inc. and Subsidiaries
CONSOLIDATED STATEMENTS OF CHANGES IN STOCKHOLDERS’ EQUITY
(UNAUDITED)
(in thousands, except share data)
Three Months Ended
Common StockAdditional
Paid-In
Capital
Accumulated Other Comprehensive Income (Loss)Retained
Earnings
SharesAmountTotal
Balance, April 2, 202215,495,451 $155 $457,894 $ $181,454 $639,503 
Stock-based compensation— — 4,172 — — 4,172 
Restricted stock issuance, net41,683   — —  
Net income— — —  17,268 17,268 
Balance, July 2, 202215,537,134 $155 $462,066 $ $198,722 $660,943 
Balance, April 1, 202315,708,193 $157 $490,981 $ $228,732 $719,870 
Stock-based compensation— — 4,359 — — 4,359 
Restricted stock issuance, net182,715 2 (2)— —  
Reclassification of liability-classified awards to equity-classified awards— — 1,697 — — 1,697 
Other comprehensive income (loss)— — — (191)— (191)
Net income— — —  15,413 15,413 
Balance, July 1, 202315,890,908 $159 $497,035 $(191)$244,145 $741,148 
Six Months Ended
Common StockAdditional
Paid-In
Capital
Accumulated Other Comprehensive Income (Loss)Retained
Earnings
SharesAmountTotal
Balance, January 1, 202215,414,005 $154 $451,754 $ $172,812 $624,720 
Stock-based compensation— — 8,961 — — 8,961 
Restricted stock issuance, net110,610 1 (1)— —  
Stock issuance for acquisitions12,519 — 1,352 — — 1,352 
Net income— — — — 25,910 25,910 
Balance, July 2, 202215,537,134 $155 $462,066 $ $198,722 $660,943 
Balance, December 31, 202215,523,300 $155 $471,300 $ $222,785 $694,240 
Stock-based compensation— — 9,571 — — 9,571 
Restricted stock issuance, net246,263 3 (3)— —  
Stock issuance for acquisitions121,345 14,470 — — 14,471 
Reclassification of liability-classified awards to equity-classified awards— — 1,697 — — 1,697 
Other comprehensive income (loss)— — — (191)— (191)
Net income— — — — 21,360 21,360 
Balance, July 1, 202315,890,908 $159 $497,035 $(191)$244,145 $741,148 
See accompanying notes to consolidated financial statements (unaudited).

3


NV5 Global, Inc. and Subsidiaries
CONSOLIDATED STATEMENTS OF CASH FLOWS
(UNAUDITED)
(in thousands)
Six Months Ended
July 1, 2023July 2, 2022
Cash flows from operating activities:
Net income$21,360 $25,910 
Adjustments to reconcile net income to net cash provided by operating activities:
Depreciation and amortization27,205 22,058 
Non-cash lease expense6,784 6,265 
Provision for doubtful accounts607 594 
Stock-based compensation10,728 9,615 
Change in fair value of contingent consideration(7,514)(518)
Gain on disposals of property and equipment(408)(61)
Deferred income taxes(7,673)(3,014)
Amortization of debt issuance costs365 370 
Changes in operating assets and liabilities, net of impact of acquisitions:
Billed receivables10,882 15,152 
Unbilled receivables(9,842)(3,801)
Prepaid expenses and other assets(4,691)(511)
Accounts payable(8,164)(4,349)
Accrued liabilities and other long-term liabilities(5,698)(6,309)
Billings in excess of costs and estimated earnings on uncompleted contracts(7,606)(6,867)
Contingent consideration(1,307) 
Other current liabilities474 (276)
Net cash provided by operating activities25,502 54,258 
Cash flows from investing activities:
Cash paid for acquisitions (net of cash received from acquisitions)(186,242)(4,670)
Proceeds from sale of assets295 48 
Purchase of property and equipment(10,239)(10,379)
Net cash used in investing activities(196,186)(15,001)
Cash flows from financing activities:
Borrowings from Senior Credit Facility180,000  
Payments on notes payable(5,131)(6,218)
Payments of contingent consideration(793)(1,597)
Payments of borrowings from Senior Credit Facility(13,000)(35,000)
Net cash provided by (used in) financing activities161,076 (42,815)
Effect of exchange rate changes on cash and cash equivalents(106) 
Net decrease in cash and cash equivalents(9,714)(3,558)
Cash and cash equivalents – beginning of period38,541 47,980 
Cash and cash equivalents – end of period$28,827 $44,422 
See accompanying notes to consolidated financial statements (unaudited).
4


NV5 Global, Inc. and Subsidiaries
CONSOLIDATED STATEMENTS OF CASH FLOWS
(UNAUDITED)
(in thousands)
Six Months Ended
July 1, 2023July 2, 2022
Non-cash investing and financing activities:
Contingent consideration (earn-out)$325 $6,579 
Notes payable and other obligations issued for acquisitions$7,404 $2,933 
Stock issuance for acquisitions$14,471 $1,352 
Reclassification of liability-classified awards to equity-classified awards$1,697 $ 
Finance leases$232 $644 
See accompanying notes to consolidated financial statements (unaudited).
5


NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(UNAUDITED)
(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, and consulting solutions 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 servicesMEP & technology design
LNG servicesCommissioning
EngineeringBuilding program management
Civil program managementEnvironmental health & safety
SurveyingReal estate transaction services
Construction quality assuranceEnergy efficiency & clean energy services
Code compliance consulting3D geospatial data modeling
Forensic servicesEnvironmental & natural resources
Litigation supportRobotic survey solutions
Ecological studiesGeospatial data applications & software
Fiscal Year
The Company operates on a "52/53 week" fiscal year ending on the Saturday closest to the calendar quarter end.
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 (“U.S. GAAP”) and have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”) for reporting of interim financial information. Pursuant to such rules and regulations, certain information and footnote disclosures normally included in financial statements prepared in accordance with U.S. GAAP have been condensed or omitted. The consolidated financial statements include the accounts of the Company and its subsidiaries. All intercompany transactions and balances have been eliminated in consolidation.
In the opinion of management, the accompanying unaudited interim consolidated financial statements of the Company contain all adjustments necessary to present fairly the financial position and results of operations of the Company as of the dates and for the periods presented. Accordingly, these statements should be read in conjunction with the consolidated financial statements and notes contained in the Company’s Annual Report on Form 10-K for the year ended December 31, 2022 (the “2022 Form 10-K”). The results of operations and cash flows for the interim periods presented are not necessarily indicative of the results to be expected for any future interim period or for the full 2023 fiscal year.
6

NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(UNAUDITED)
(in thousands, except share data)
Performance Obligations
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 that 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 revenue 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.
As of July 1, 2023, the Company had $821,052 of remaining performance obligations, of which $676,038 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 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 Sheet. The liability “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 the three and six months ended July 1, 2023 the Company performed services and recognized $6,616 and $25,046, respectively, of revenue related to its contract liabilities that existed as of December 31, 2022.

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.
 
Goodwill is required to be evaluated for impairment on an annual basis or whenever events or changes in circumstances indicate the asset may be impaired. 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 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. 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 has elected to perform its annual goodwill impairment review as of August 1 of each year. The Company conducts its annual impairment tests on the goodwill using the quantitative method of evaluating goodwill.

7

NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(UNAUDITED)
(in thousands, except share data)
As of August 1, 2022, the Company conducted its annual impairment tests using the quantitative method of evaluating goodwill. Based on the quantitative analyses the Company determined the fair value of each of the reporting units exceeded its carrying value. Therefore, the goodwill was not impaired and the Company did not recognize an impairment charge relating to goodwill as of August 1, 2022. Furthermore, there were no indicators, events or changes in circumstances that would indicate goodwill was impaired during the period from August 2, 2022 through July 1, 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 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. There were no indicators, events or changes in circumstances that would indicate intangible assets were impaired during the six months ended July 1, 2023. See Note 8, Goodwill and Intangible Assets, for further information on goodwill and identified intangibles.
There have been no material changes in the Company's significant accounting policies described in the audited financial statements included in the Company's Annual Report on Form 10-K for the year ended December 31, 2022.
Note 3 – Recent Accounting Pronouncements
None.
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 for the six months ended July 1, 2023 and July 2, 2022 exclude 688,377 and 739,919 non-vested restricted shares, respectively. During the three and six months ended July 1, 2023, there were 111,584 and 41,536 weighted average securities, respectively, 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. During the three and six months ended July 2, 2022, there were 20,854 and 25,653 weighted average securities, respectively, 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:
Three Months EndedSix Months Ended
July 1, 2023July 2, 2022July 1, 2023July 2, 2022
Numerator:
Net income – basic and diluted$15,413 $17,268 $21,360 $25,910 
Denominator:
Basic weighted average shares outstanding15,014,106 14,736,167 14,948,796 14,714,745 
Effect of dilutive non-vested restricted shares and units413,856 481,815 447,546 481,379 
Effect of issuable shares related to acquisitions23,826 14,175 25,193 15,711 
Diluted weighted average shares outstanding15,451,788 15,232,157 15,421,535 15,211,835 
8

NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(UNAUDITED)
(in thousands, except share data)
Note 5 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,682. 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") with Bank of America, N.A. and other lenders party thereto. See Note 10, 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, certain fixed assets, and the fair value of other assets and liabilities acquired.    
On February 22, 2023, the Company acquired all of the outstanding equity interests in Continental Mapping Acquisition Corp. and Continental Mapping Holdings, LLC 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 $141,010, including $120,106 in cash, a $7,404 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 Company's Second A&R Credit Agreement with Bank of America, N.A. and other lenders party thereto. See Note 10, 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, certain fixed assets, and the fair value of other assets and liabilities acquired.
The Company has completed three other acquisitions during 2023. The aggregate purchase price for the three acquisitions was $3,315, including $2,900 in cash, $90 of the Company's common stock, and a potential earn-out of up to $340 payable in cash, which has been recorded at an estimated fair value of $325. 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 2023 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 and accounts receivable.    
2022 Acquisitions    
The Company completed five acquisitions during 2022. The aggregate purchase price of all five acquisitions was $14,220, including $5,882 of 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 will be completed within the one-year measurement period as required by ASC 805. The 2022 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 acquisition date, including intangible assets, accounts receivable, and certain fixed assets. Purchase price allocation adjustments recorded during 2023 were immaterial.
9

NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(UNAUDITED)
(in thousands, except share data)
The following table summarizes the fair values of the assets acquired and liabilities assumed as of the acquisition date for the acquisitions closed during the six months ended July 1, 2023 and the fiscal year ended December 31, 2022:
20232022
VISAximOtherTotalTotal
Cash$7,027 $5,419 $ $12,446 $ 
Billed and unbilled receivables, net5,042 13,937 487 19,466 1,794 
Right-of-use assets2,113 1,622 189 3,924 632 
Property and equipment118 2,870  2,988 1,510 
Prepaid expenses1,505 1,543 17 3,065  
Other assets 155  155  
Intangible assets:
Customer relationships33,394 52,206 859 86,459 3,606 
Trade name2,958 2,266 33 5,257 268 
Customer backlog868 3,920 186 4,974 459 
Developed technology4,222 1,942  6,164  
Non-compete25 580 93 698 298 
Total Assets$57,272 $86,460 $1,864 $145,596 $8,567 
Liabilities(16,439)(13,668)(188)(30,295)(5,623)
Deferred tax liabilities(7,105)(14,223) (21,328) 
Net assets acquired$33,728 $58,569 $1,676 $93,973 $2,944 
Consideration paid (Cash, Notes and/or stock)$75,682 $141,010 $2,990 $219,682 $7,921 
Contingent earn-out liability (Cash and stock)  325 325 6,299 
Total Consideration$75,682 $141,010 $3,315 $220,007 $14,220 
Excess consideration over the amounts assigned to the net assets acquired (Goodwill)$41,954 $82,441 $1,639 $126,034 $11,276 
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 8, Goodwill and Intangible Assets, for further information on fair value adjustments to goodwill and identified intangibles.
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 the three and six months ended July 1, 2023. The revenue and earnings of the fiscal 2022 acquisitions included in the Company's results since the acquisition dates are not material to the Company's consolidated financial statements and have not been presented.
Three Months EndedSix Months Ended
July 1, 2023July 1, 2023
Gross revenues$29,589 $37,064 
Income before income taxes$4,904 $5,631 
General and administrative expenses for the three and six months ended July 1, 2023 and July 2, 2022 include acquisition-related costs pertaining to the Company's acquisition activities. Acquisition-related costs were not material to the Company's consolidated financial statements.
10

NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(UNAUDITED)
(in thousands, except share data)
The following table presents the unaudited, pro forma consolidated results of operations (in thousands, except per share amounts) for the three and six months ended July 1, 2023 and July 2, 2022 as if the fiscal 2023 and 2022 acquisitions had occurred at the beginning of fiscal year 2022. The pro forma information provided below is compiled from pre-acquisition financial information and includes pro forma adjustments for amortization expense, adjustments to certain expenses, and the income tax impact of these adjustments. The pro forma results are not necessarily indicative of (i) the results of operations that would have occurred had the operations of these acquisitions actually been acquired at the beginning of fiscal year 2022 or (ii) future results of operations:
Three Months EndedSix Months Ended
July 1, 2023July 2, 2022July 1, 2023July 2, 2022
Gross revenues$223,036 $231,351 $429,754 $450,204 
Net income$15,374 $16,998 $20,581 $25,363 
Basic earnings per share$1.02 $1.14 $1.38 $1.71 
Diluted earnings per share$0.99 $1.11 $1.33 $1.65 
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 financing from the Company's Senior Credit Facility, to record the effects of promissory notes issued, and to record the income tax effect of these adjustments.
Note 6 Billed and Unbilled Receivables
Billed and unbilled receivables consists of the following:
July 1, 2023December 31, 2022
Billed receivables$152,530 $149,082 
Less: allowance for doubtful accounts(3,420)(3,445)
Billed receivables, net$149,110 $145,637 
Unbilled receivables$109,463 $95,104 
Less: allowance for doubtful accounts(2,271)(2,242)
Unbilled receivables, net$107,192 $92,862 

Note 7 Property and Equipment, net
Property and equipment, net, consists of the following:
July 1, 2023December 31, 2022
Office furniture and equipment$3,346 $3,421 
Computer equipment29,820 25,816 
Survey and field equipment57,126 49,985 
Leasehold improvements6,828 6,546 
Total97,120 85,768 
Less: accumulated depreciation(47,728)(44,128)
Property and equipment, net$49,392 $41,640 
Depreciation expense was $3,605 and $6,871 for the three and six months ended July 1, 2023, respectively, of which $1,366 and $2,620 was included in other direct costs. Depreciation expense was $2,835 and $5,739 for the three and six months ended July 2, 2022, respectively, of which $1,223 and $2,456 was included in other direct costs.
11

NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(UNAUDITED)
(in thousands, except share data)
Note 8 Goodwill and Intangible Assets
Goodwill
The changes in the carrying value by reportable segment for the six months ended July 1, 2023 were as follows:
Six Months Ended
December 31, 20222023 AcquisitionsAdjustmentsForeign Currency Translation of non-USD functional currency goodwillJuly 1, 2023
INF$90,932 $726 $ $ $91,658 
BTS111,838 913 13  112,764 
GEO198,187 124,395 (10)(146)322,426 
Total$400,957 $126,034 $3 $(146)$526,848 
Goodwill of $1,225 from acquisitions completed during the six months ended July 1, 2023 is expected to be deductible for income tax purposes.
Intangible Assets
Intangible assets, net, as of July 1, 2023 and December 31, 2022 consist of the following:
July 1, 2023December 31, 2022
Gross
Carrying
Amount
Accumulated AmortizationNet
Amount
Gross
Carrying
Amount
Accumulated AmortizationNet
Amount
Finite-lived intangible assets:
Customer relationships(1)
$309,452 $(100,697)$208,755 $222,998 $(87,054)$135,944 
Trade name(2)
22,140 (16,996)5,144 16,883 (15,933)950 
Customer backlog(3)
34,391 (29,711)4,680 29,419 (27,333)2,086 
Non-compete(4)
14,826 (11,995)2,831 14,110 (11,298)2,812 
Developed technology(5)
39,108 (16,939)22,169 32,944 (14,305)18,639 
Total finite-lived intangible assets$419,917 $(176,338)$243,579 $316,354 $(155,923)$160,431 

(1) Amortized on a straight-line basis over estimated lives (1 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 (1 to 5 years)
(5) Amortized on a straight-line basis over their estimated lives (5 to 10 years)
The identifiable intangible assets acquired during the six months ended July 1, 2023 consist of customer relationships, trade name, customer backlog, non-compete, and developed technology with weighted average lives of 12.5 years, 3.7 years, 1.2 years, 3.6 years, and 6.6 years. respectively. Amortization expense was $11,300 and $20,334 during the three and six months ended July 1, 2023, respectively, and $8,056 and $16,319 during the three and six months ended July 2, 2022, respectively.
12

NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(UNAUDITED)
(in thousands, except share data)
Note 9 Accrued Liabilities
Accrued liabilities consist of the following:
July 1, 2023December 31, 2022
Current portion of lease liability$14,238 $13,081 
Accrued vacation15,083 12,467 
Payroll and related taxes8,612 6,616 
Benefits4,478 5,160 
Accrued operating expenses7,090 4,540 
Other3,234 2,449 
Total$52,735 $44,313 

Note 10 Notes Payable and Other Obligations
Notes payable and other obligations consists of the following:
July 1, 2023December 31, 2022
Senior credit facility$200,750 $33,750 
Uncollateralized promissory notes21,665 18,492 
Finance leases3,001 3,465 
Other obligations933 1,814 
Debt issuance costs, net of amortization(2,308)(2,672)
Total notes payable and other obligations224,041 54,849 
Current portion of notes payable and other obligations14,800 15,176 
Notes payable and other obligations, less current portion$209,241 $39,673 
As of July 1, 2023 and December 31, 2022, the carrying amount of debt obligations approximates their fair values based on Level 2 inputs 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.
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 July 1, 2023 and December 31, 2022, the outstanding balance on the Second A&R Credit Agreement was $200,750 and $33,750, respectively.
13

NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(UNAUDITED)
(in thousands, except share data)
The Company's Second A&R Credit Agreement provides for the replacement of LIBOR (London Interbank Offered Rate), which prior to April 1, 2023, was transitioned to SOFR (Secured Overnight Funding Rate), subject to the completion of the relevant existing interest period ("LIBOR Transition"). 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 LIBOR or, from and after the LIBOR Transition, either Term SOFR 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 July 1, 2023, the Company's interest rate was 6.5%.
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 July 1, 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 $171 and $365 during the three and six months ended July 1, 2023, respectively, and $185 and $370 during the three and six months ended July 2, 2022, respectively.
Other Obligations
The Company has aggregate obligations related to acquisitions of $22,598 and $20,306 as of July 1, 2023 and December 31, 2022, respectively. As of July 1, 2023, the Company's weighted average interest rate on other outstanding obligations was 3.1%.
14

NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(UNAUDITED)
(in thousands, except share data)
Note 11 Contingent Consideration
The following table summarizes the changes in the carrying value of estimated contingent consideration:
July 1, 2023December 31, 2022
Contingent consideration, beginning of the year$15,335 $8,328 
Additions for acquisitions325 6,299 
Reduction of liability for payments made(2,100)(2,264)
(Decrease) increase of liability related to re-measurement of fair value(7,514)2,972 
Total contingent consideration, end of the period6,046 15,335 
Current portion of contingent consideration4,149 10,854 
Contingent consideration, less current portion$1,897 $4,481 
During the six months ended July 1, 2023, the Company recorded earn-out fair value adjustments of $7,514 that decreased the contingent consideration liability related to acquisitions.
Note 12 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.
Note 13 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 July 1, 2023, 2,145,774 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 the six months ended July 1, 2023:
Number of Unvested Restricted Shares of Common Stock and Restricted Stock UnitsWeighted Average
Grant Date Fair
Value
December 31, 2022713,793$81.25 
Granted264,434$107.12 
Vested(202,453)$47.00 
Forfeited(18,171)$87.75 
July 1, 2023757,603$99.26 
15

NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(UNAUDITED)
(in thousands, except share data)
Stock-based compensation expense relating to restricted stock awards during the three and six months ended July 1, 2023 was $4,902 and $10,728, respectively, and $4,826 and $9,615 during the three and six months ended July 2, 2022, respectively. In connection with the Company's 401(k) Profit Sharing match, stock-based compensation expense during the three and six months ended July 1, 2023 includes $543 and $1,157, respectively, of expense related to the Company's liability-classified awards. Stock-based compensation expense during the three and six months ended July 2, 2022 includes $383 and $654, 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 $5,120. The 401(k) Profit Sharing restricted stock awards are issued under the rules of the NV5 Global, Inc. 2023 Equity Incentive Plan and are not issued into the NV5 401(k) Profit Sharing plan. Approximately $46,313 of deferred compensation, which is expected to be recognized over the remaining weighted average vesting period of 1.7 years, is unrecognized at July 1, 2023. The total fair value of restricted shares vested during the six months ended July 1, 2023 and July 2, 2022 was $20,851 and $7,296, respectively.
Note 14 Income Taxes
As of July 1, 2023 and December 31, 2022, the Company had net deferred income tax liabilities of $20,487 and $6,893, respectively. Deferred income tax liabilities primarily relate to intangible assets and accounting basis adjustments where we have a future obligation for tax purposes.
The Company's effective income tax rate was 8.2% and 11.7% during the three and six months ended July 1, 2023, respectively, and 20.5% and 22.3% during the three and six months ended July 2, 2022, respectively. The difference between the effective income tax rate and the combined statutory federal and state income tax rate was primarily due to the recognition of excess tax benefits from stock-based payments in the second quarter of 2023 and 2022 and federal credits.
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 2019 through 2022 are considered open tax years in the U.S. federal jurisdiction, state and foreign jurisdictions. Fiscal years 2012 - 2014 are considered open in the State of California. It is not expected that there will be a significant change in the unrecognized tax benefits within the next 12 months.
16

NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(UNAUDITED)
(in thousands, except share data)
Note 15 Reportable Segments
The Company reports segment information in accordance with ASC Topic No. 280 “Segment Reporting” (“Topic No. 280”). The Company's Chief Executive Officer, who is the chief operating decision maker ("CODM"), organized the Company into three operating and reportable segments: 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:
Three Months EndedSix Months Ended
July 1, 2023July 2, 2022July 1, 2023July 2, 2022
Gross revenues
INF$96,728 $102,639 $184,938 $202,600 
BTS54,032 61,331 106,878 121,785 
GEO71,878 38,762 115,139 68,500 
Total gross revenues$222,638 $202,732 $406,955 $392,885 
Segment income before taxes
INF$16,745 $19,206 $33,726 $35,457 
BTS8,113 12,622 16,531 25,435 
GEO14,814 11,034 21,835 16,138 
Total Segment income before taxes39,672 42,862 72,092 77,030 
Corporate(1)
(22,882)(21,149)(47,898)(43,678)
Total income before taxes$16,790 $21,713 $24,194 $33,352 
(1) Includes amortization of intangibles of $11,300 and $20,334 for the three and six months ended July 1, 2023, respectively, and $8,056 and $16,319 during the three and six months ended July 2, 2022, respectively.
The Company disaggregates its gross revenues from contracts with customers by geographic location, customer-type and contract-type for each of our 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. Gross revenue, classified by the major geographic areas in which the Company's customers were located, were as follows:
Three Months Ended July 1, 2023Six Months Ended July 1, 2023
INFBTSGEOTotalINFBTSGEOTotal
United States$96,728 $46,560 $68,218 $211,506 $184,938 $90,946 $110,442 $386,326 
Foreign 7,472 3,660 11,132  15,932 4,697 20,629 
Total gross revenues$96,728 $54,032 $71,878 $222,638 $184,938 $106,878 $115,139 $406,955 
Three Months Ended July 2, 2022Six Months Ended July 2, 2022
INFBTSGEOTotalINFBTSGEOTotal
United States$102,639 $54,603 $38,245 $195,487 $202,600 $107,521 $67,462 $377,583 
Foreign 6,728 517 7,245  14,264 1,038 15,302 
Total gross revenues$102,639 $61,331 $38,762 $202,732 $202,600 $121,785 $68,500 $392,885 

17

NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(UNAUDITED)
(in thousands, except share data)
    Gross revenue by customer were as follows:
Three Months Ended July 1, 2023Six Months Ended July 1, 2023
INFBTSGEOTotalINFBTSGEOTotal
Public and quasi-public sector$77,332 $15,998 $61,641 $154,971 $147,062 $33,945 $97,409 $278,416 
Private sector19,396 38,034 10,237 67,667 37,876 72,933 17,730 128,539 
Total gross revenues$96,728 $54,032 $71,878 $222,638 $184,938 $106,878 $115,139 $406,955 
Three Months Ended July 2, 2022Six Months Ended July 2, 2022
INFBTSGEOTotalINFBTSGEOTotal
Public and quasi-public sector$80,054 $15,635 $31,644 $127,333 $159,258 $30,896 $54,634 $244,788 
Private sector22,585 45,696 7,118 75,399 43,342 90,889 13,866 148,097 
Total gross revenues$102,639 $61,331 $38,762 $202,732 $202,600 $121,785 $68,500 $392,885 

    Gross revenues by contract type were as follows:
Three Months Ended July 1, 2023Six Months Ended July 1, 2023
INFBTSGEOTotalINFBTSGEOTotal
Cost-reimbursable contracts$93,185 $38,670 $70,274 $202,129 $177,042 $79,294 $113,501 $369,837 
Fixed-unit price contracts3,543 15,362 1,604 20,509 7,896 27,584 1,638 37,118 
Total gross revenues$96,728 $54,032 $71,878 $222,638 $184,938 $106,878 $115,139 $406,955 
Three Months Ended July 2, 2022Six Months Ended July 2, 2022
INFBTSGEOTotalINFBTSGEOTotal
Cost-reimbursable contracts$98,604 $39,006 $38,638 $176,248 $194,326 $78,492 $68,283 $341,101 
Fixed-unit price contracts4,035 22,325 124 26,484 8,274 43,293 217 51,784 
Total gross revenues$102,639 $61,331 $38,762 $202,732 $202,600 $121,785 $68,500 $392,885 
18

NV5 Global, Inc. and Subsidiaries
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(UNAUDITED)
(in thousands, except share data)
Note 16 – Stockholders' Equity
Accumulated Other Comprehensive Income (Loss)
The Company's accumulated other comprehensive income (loss) consists of foreign currency translation adjustments related to the Company's foreign operations with functional currency other than the U.S. dollar. The after-tax changes in accumulated other comprehensive income (loss) by component were as follows:
Accumulated Other Comprehensive Income (Loss)
Foreign currency translation adjustments balance, December 31, 2022$ 
Other comprehensive income (loss)(191)
Foreign currency translation adjustments balance, July 1, 2023$(191)


19


ITEM 2.  MANAGEMENT’S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS.
The following discussion and analysis of the financial condition and results of operations of NV5 Global, Inc. and its subsidiaries (collectively, the “Company,” “we,” “our,” “us,” or “NV5 Global”) should be read in conjunction with the financial statements included elsewhere in this Quarterly Report and the audited financial statements for the year ended December 31, 2022, included in our Annual Report on Form 10-K. This Quarterly Report contains, in addition to unaudited historical information, forward-looking statements, which involve risk and uncertainties. The words “believe,” “expect,” “estimate,” “may,” “will,” “could,” “plan,” or “continue,” and similar expressions are intended to identify forward-looking statements. Our actual results could differ materially from those anticipated in such forward-looking statements. Factors that could cause or contribute to such differences in results and outcomes include, those discussed under the headings “Risk Factors” in our Annual Report on Form 10-K for the year ended December 31, 2022 and this Quarterly Report on Form 10-Q, if any. Readers are urged not to place undue reliance on these forward-looking statements, which speak only as of the date of this Quarterly Report on Form 10-Q. We undertake no obligation to (and we expressly disclaim any obligation to) revise or update any forward-looking statement, whether as a result of new information, subsequent events, or otherwise (except as may be required by law), in order to reflect any event or circumstance which may arise after the date of this Quarterly Report on Form 10-Q. Amounts presented are in thousands, except per share data.
Overview
We are a provider of technology, conformity assessment, and consulting solutions to public and private sector clients. We focus on the infrastructure, utility services, construction, real estate, and environmental 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.
Fiscal Year
    We operate on a "52/53 week" fiscal year ending on the Saturday closest to the calendar quarter end.
Recent 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,682. The purchase price and other related costs associated with the transaction were financed through our amended and restated credit agreement (the "Second A&R Credit Agreement") with Bank of America, N.A. and other lenders party thereto. See Note 10, 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, certain fixed assets, and the fair value of other assets and liabilities acquired.    
On February 22, 2023, we acquired all of the outstanding equity interests in Continental Mapping Acquisition Corp. and Continental Mapping Holdings, LLC 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 $141,010, including $120,106 in cash, a $7,404 promissory note, and $13,500 of our common stock. The purchase price and other related costs associated with the transaction were financed through our Second A&R Credit Agreement with Bank of America, N.A. and other lenders party thereto. See Note 10, 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, certain fixed assets, and the fair value of other assets and liabilities acquired.
20


We have completed three other acquisitions during 2023. The aggregate purchase price of the three acquisitions was $3,315, including $2,900 in cash, $90 of our common stock, and a potential earn-out of up to $340 payable in cash and common stock, which was recorded at an estimated fair value of $325. 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 2023 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 and accounts receivable.
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 15, Reportable Segments, of the Notes to Consolidated Financial Statements included elsewhere herein.
Critical Accounting Policies and Estimates
    For a discussion of our critical accounting estimates, see Management’s Discussion and Analysis of Financial Condition and Results of Operations that is included in the 2022 Form 10-K.
Results of Operations
Consolidated Results of Operations
The following table represents our condensed results of operations for the periods indicated (dollars in thousands):
Three Months EndedSix Months Ended
July 1, 2023July 2, 2022July 1, 2023July 2, 2022
Gross revenues$222,638 $202,732 $406,955 $392,885 
Direct costs112,338 103,492 200,657 199,819 
Gross profit110,300 99,240 206,298 193,066 
Operating expenses89,862 76,640 176,875 157,913 
Income from operations20,438 22,600 29,423 35,153 
Interest expense(3,648)(887)(5,229)(1,801)
Income tax expense(1,377)(4,445)(2,834)(7,442)
Net income$15,413 $17,268 $21,360 $25,910 
Three Months Ended July 1, 2023 Compared to the Three Months Ended July 2, 2022
Gross Revenues 
Our consolidated gross revenues increased by $19,906, or 9.8%, for the three months ended July 1, 2023 compared to the three months ended July 2, 2022. The increase in gross revenues was primarily due to incremental gross revenues from acquisitions of $31,633 completed since the second quarter of 2022 and organic increases in our geospatial solutions business of $1,835. These increases were partially offset by decreases in our real estate transactional services of $8,271 driven by market reactions to increases in interest rates, decreases in our LNG business of $3,048 driven by project cycles, and decreases in our construction quality assurance practices of $2,641.
21


Gross Profit
As a percentage of gross revenues, our gross profit margin was 49.5% and 49.0% for the three months ended July 1, 2023 and July 2, 2022, respectively. The increase in gross profit margin was primarily due to a change in the mix of work performed. As a percentage of gross revenues, sub-consultant services and other direct costs decreased 2.1% and 0.5%, respectively. These decreases were partially offset by an increase in direct salaries and wages as a percentage of gross revenues of 2.1%. The decrease in sub-consultant expenses and other direct costs as a percentage of gross revenues was primarily driven by the mix of business in our real estate transactional services and our LNG business.
Operating expenses 
Our operating expenses increased $13,222, or 17.3%, for the three months ended July 1, 2023 compared to the three months ended July 2, 2022. The increase in operating expenses primarily resulted from increased payroll costs of $11,666 and amortization expenses of $3,244. The increase in payroll costs was primarily driven by an increase in employees as compared to the prior year period primarily driven by our 2022 and 2023 acquisitions. The increase in amortization expense was driven by acquisitions. These increases were partially offset by a decrease in general and administrative expenses of $2,943. The decrease in general and administrative expenses was primarily due to earn-out fair value adjustments of $6,655 that decreased the contingent consideration liability related to acquisitions, partially offset by increases in information technology costs of $1,184 and professional fees of $1,590.
Interest Expense
Our interest expense increased $2,761 for the three months ended July 1, 2023 compared to the three months ended July 2, 2022. The increase in interest expense primarily resulted from a higher weighted average interest rate and an increase in our Senior Credit Facility indebtedness.
Income taxes
Our effective income tax rate was 8.2% and 20.5% for the three months ended July 1, 2023 and July 2, 2022, respectively. The decrease in the effective income tax rate was primarily the result of excess tax benefits from stock-based payments of $2,750 during the three months ended July 1, 2023 as compared to $1,103 during the three months ended July 2, 2022. The decrease in our tax expense resulting on stock-based payments during the three months ended July 1, 2023 was a result of the increase in our stock price as it relates to the value of stock vested during the period.
Net income
Our net income decreased $1,855, or 10.7%, for three months ended July 1, 2023 compared to three months ended July 2, 2022. The decrease was primarily a result of increases in payroll costs of $11,666, amortization expenses of $3,244, and interest expense of $2,761, partially offset by an increase in gross profit of $11,060, a decrease in general and administrative expenses of $2,943, and a lower effective income tax rate.
Six Months Ended July 1, 2023 Compared to the Six Months Ended July 2, 2022
Gross Revenues 
Our consolidated gross revenues increased by $14,070, or 3.6%, for the six months ended July 1, 2023 compared to the six months ended July 2, 2022. The increase in gross revenues was primarily due to incremental gross revenues from acquisitions of $40,948 completed since the second quarter of 2022 and organic increases in our geospatial solutions business of $6,353. These increases were partially offset by decreases in our real estate transactional services of $17,902 driven by market reactions to increases in interest rates, decreases in our LNG business of $9,288 driven by project cycles, and decreases in our construction quality assurance practices of $4,813.
Gross Profit
As a percentage of gross revenues, our gross profit margin was 50.7% and 49.1% for the six months ended July 1, 2023 and July 2, 2022, respectively. As a percentage of gross revenues, sub-consultant services and other direct costs decreased 2.6% and 1.0%, respectively. These decreases were partially offset by an increase in direct salaries and wages as a percentage of gross revenues of 2.0%. The decrease in sub-consultant expenses and other direct costs as a percentage of gross revenues was primarily driven by the mix of business in our real estate transactional services and our LNG business.
22


Operating expenses 
Our operating expenses increased $18,962, or 12.0%, for the six months ended July 1, 2023 compared to the six months ended July 2, 2022. The increase in operating expenses primarily resulted from increased payroll costs of $14,572 and amortization expenses of $4,015. The increase in payroll costs was primarily driven by an increase in employees as compared to the prior year period primarily driven by our 2022 and 2023 acquisitions and an increase in stock-based compensation. The increase in amortization expense was driven by acquisitions. These increases were partially offset by a decrease in general and administrative expenses of $1,409. The decrease in general and administrative expenses was primarily due to earn-out fair value adjustments of $7,514 that decreased the contingent consideration liability related to acquisitions, partially offset by increases in information technology costs of $2,170 and professional fees of $2,412.
Interest Expense
Our interest expense increased $3,428 for the six months ended July 1, 2023 compared to the six months ended July 2, 2022. The increase in interest expense primarily resulted from a higher weighted average interest rate and an increase in our Senior Credit Facility indebtedness.
Income taxes
Our effective income tax rate was 11.7% and 22.3% for the six months ended July 1, 2023 and July 2, 2022, respectively. The decrease in the effective income tax rate was primarily the result of excess tax benefits from stock-based payments of $2,987 during the six months ended July 1, 2023 as compared to $1,193 during the six months ended July 2, 2022. The decrease in our tax expense on stock-based payments during the six months ended July 1, 2023 was a result of the increase in our stock price as it relates to the value of stock vested during the period.
Net income
Our net income decreased $4,550, or 17.6%, for six months ended July 1, 2023 compared to six months ended July 2, 2022. The decrease was primarily a result of increases in payroll costs of $14,572, amortization expenses of $4,015, and interest expense of $3,428, partially offset by an increase in gross profit of $13,232, decreases in general and administrative expenses of $1,409, and a lower effective income tax rate.
Segment Results of Operations
The following tables set forth summarized financial information concerning our reportable segments (dollars in thousands):
Three Months EndedSix Months Ended
July 1, 2023July 2, 2022July 1, 2023July 2, 2022
Gross revenues
INF$96,728 $102,639 $184,938 $202,600 
BTS54,032 61,331 106,878 121,785 
GEO71,878 38,762 115,139 68,500 
Total gross revenues$222,638 $202,732 $406,955 $392,885 
Segment income before taxes
INF$16,745 $19,206 $33,726 $35,457 
BTS$8,113 $12,622 $16,531 $25,435 
GEO$14,814 $11,034 $21,835 $16,138 
For additional information regarding our reportable segments, see Note 15, Reportable Segments, of the Notes to the Consolidated Financial Statements included elsewhere in this Quarterly Report on Form 10-Q.
23


Three Months Ended July 1, 2023 Compared to Three Months Ended July 2, 2022
INF Segment
Our gross revenues from INF decreased $5,911, or 5.8%, during the three months ended July 1, 2023 compared to the three months ended July 2, 2022. The decrease was primarily due to decreases in our LNG business of $3,048 driven by project cycles and decreases in our construction quality assurance practices of $2,641.
Segment income before taxes from INF decreased $2,461, or 12.8%, during the three months ended July 1, 2023 compared to the three months ended July 2, 2022. The decrease was primarily due to decreased gross revenues.
BTS Segment
Our gross revenues from BTS decreased $7,299, or 11.9%, during the three months ended July 1, 2023 compared to the three months ended July 2, 2022. The decrease in gross revenues was primarily due to decreases in our real estate transactional services of $8,271 driven by market reactions to increases in interest rates.
Segment income before taxes from BTS decreased $4,509, or 35.7% during the three months ended July 1, 2023 compared to the three months ended July 2, 2022. The decrease was primarily due to decreased gross revenues.
GEO Segment
Our gross revenues from GEO increased $33,116, or 85.4%, during the three months ended July 1, 2023 compared to the three months ended July 2, 2022. The increase was primarily due to incremental revenue of $31,281 from acquisitions completed since the second quarter of 2022 and organic increases in our geospatial solution services of $1,835.
Segment income before taxes from GEO increased $3,780, or 34.3%, during the three months ended July 1, 2023 compared to the three months ended July 2, 2022. The increase was primarily due to increased gross revenues.
Six Months Ended July 1, 2023 Compared to Six Months Ended July 2, 2022
INF Segment
Our gross revenues from INF decreased $17,662, or 8.7%, during the six months ended July 1, 2023 compared to the three months ended July 2, 2022. The decrease was primarily due to decreases in our LNG business of $9,288 driven by project cycles, decreases in our construction quality assurance practices of $4,813, and decreases in our infrastructure services of $2,312.
Segment income before taxes from INF decreased $1,731, or 4.9%, during the six months ended July 1, 2023 compared to the six months ended July 2, 2022. The decrease was primarily due to decreased gross revenues.
BTS Segment
Our gross revenues from BTS decreased $14,907, or 12.2%, during the six months ended July 1, 2023 compared to the six months ended July 2, 2022. The decrease was primarily due to decreases in our real estate transactional services of $17,902 driven by market reactions to increases in interest rates. These decreases were partially offset by increases in our energy and technology services of $2,743 and increases in our international engineering and consulting services of $2,041.
Segment income before taxes from BTS decreased $8,904, or 35.0% during the six months ended July 1, 2023 compared to the six months ended July 2, 2022. The decrease was primarily due to decreased gross revenues.
GEO Segment
Our gross revenues from GEO increased $46,639, or 68.1%, during the six months ended July 1, 2023 compared to the six months ended July 2, 2022. The increase was primarily due to incremental revenue of $40,286 from acquisitions completed since the second quarter of 2022 and organic increases in our geospatial solution services of $6,353.
Segment income before taxes from GEO increased $5,697, or 35.3%, during the six months ended July 1, 2023 compared to the six months ended July 2, 2022. The increase was primarily due to increased gross revenues.
24


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 $25,502 for the six months ended July 1, 2023, compared to $54,258 during the six months ended July 2, 2022. The decrease was a result of decreases in net income and increases in working capital. The changes in our working capital that contributed to decreased cash flows from operations were primarily a result of decreases in accounts payable of $3,815 and increases in billed receivables of $4,270, unbilled receivables of $6,041, and prepaid expenses and other assets of $4,180. The increases in billed and unbilled receivables was primarily due to timing of project billing cycles, and the increase in prepaid expenses and other assets resulted from a $5,371 increase in prepaid income taxes, partially offset by a $2,189 decrease in prepaid insurance. The decrease in accounts payable primarily related to timing of payments.
Investing activities
During the six months ended July 1, 2023 and July 2, 2022, net cash used in investing activities totaled $196,186 and $15,001, respectively. The increase in cash used in investing activities was primarily a result of increased cash paid for acquisitions of $181,572.
Financing activities
Net cash flows provided by financing activities totaled $161,076 during the six months ended July 1, 2023 compared to net cash flows used in financing activities of $42,815 during the six months ended July 2, 2022. The increase in cash provided by financing activities was primarily a result of borrowings on our Senior Credit Facility of $180,000 during the six months ended July 1, 2023 and a decrease in principal payments on our Senior Credit Facility of $22,000 during the six months ended July 1, 2023.
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 July 1, 2023 and December 31, 2022, the outstanding balance on the Second A&R Credit Agreement was $200,750 and $33,750, respectively.
Our Second A&R Credit Agreement provides for the replacement of LIBOR (London Interbank Offered Rate), which prior to April 1, 2023, was transitioned to SOFR (Secured Overnight Funding Rate), subject to the completion of the relevant existing interest period ("LIBOR Transition"). 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 LIBOR or, from and after the LIBOR Transition, either Term SOFR 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 July 1, 2023 our interest rate was 6.5%.
25


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 July 1, 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 $171 and $365 during the three and six months ended July 1, 2023, respectively, and $185 and $370 during the three and six months ended July 2, 2022, respectively.
Other Obligations
We have aggregate obligations related to acquisitions of $8,632, $6,335, $3,756, and $3,875 due in the remainder of fiscal 2023, 2024, 2025, and 2026, respectively. As of July 1, 2023, our weighted average interest rate on other outstanding obligations was 3.1%.
Recently Issued Accounting Pronouncements
None.
Cautionary Statement about Forward-Looking Statements
Our disclosure and analysis in this Quarterly Report on Form 10-Q, contain “forward-looking” statements within the meaning of Section 27A of 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 Quarterly Report on Form 10-Q 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:
26


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 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, recessions, and changing government policies, laws and regulations,
the U.S. government and other governmental and quasi-governmental budgetary and funding approval process,
the ongoing effects of the global COVID-19 pandemic,
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 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,
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 Quarterly Report on Form 10-Q, including those discussed under the headings “Risk Factors,” “Management’s Discussion and Analysis of Financial Condition and Results of Operations,” and “Business.”
27


The forward-looking statements contained in this report are based on our current expectations and beliefs concerning future developments and their potential effects on us. 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, which may cause actual results or performance to be materially different from those expressed or implied by these forward-looking statements. These risks and uncertainties include, those factors described in Item 1A. Risk Factors in our Annual Report on Form 10-K for the year ended December 31, 2022. We undertake no obligation to update or revise any forward-looking statements, whether as a result of new information, future events, or otherwise, except as may be required under applicable securities laws. You are advised, however, to consult any further disclosures we make on related subjects in our Form 10-Q, 8-K and 10-K reports filed with the SEC. Our Annual Report on Form 10-K filing for the fiscal year ended December 31, 2022 listed various important factors that could cause actual results to differ materially from expected and historic results. We note these factors for investors as permitted by the Private Securities Litigation Reform Act of 1995, as amended. Readers can find them in “Item 1A. Risk Factors” of that filing and under the same heading of this filing. You may obtain a copy of our Annual Report on Form 10-K through our website, www.nv5.com. Information contained on our website is not incorporated into this report. In addition to visiting our website, you may read and copy any document we file with the SEC at www.sec.gov.
ITEM 3. 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 related to 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 LIBOR (London Interbank Offered Rate) or, from and after the LIBOR Transition, either Term SOFR 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 July 1, 2023, there was $200,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 $2,008 annually.
ITEM 4. CONTROLS AND PROCEDURES.
Disclosure Controls and Procedures
As of the end of the period covered by this Quarterly Report on Form 10-Q, 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 the end of the period covered by this Quarterly Report on Form 10-Q, 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 (i) recorded, processed, summarized and reported within the time periods specified by the Securities and Exchange Commission's rules and forms, and (ii) accumulated and communicated to the Company's management, including the Chief Executive Officer and Chief Financial Officer, in a manner that allows timely decisions regarding required disclosure.
Changes in Internal Control Over Financial Reporting
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 quarter ended July 1, 2023 that have materially affected, or are reasonably likely to materially affect, the Company’s internal control over financial reporting.
28


PART II – OTHER INFORMATION
ITEM 1. LEGAL PROCEEDINGS.
From time to time, we are subject to various legal proceedings that arise in the normal course of our business activities. As of the date of this Quarterly Report on Form 10-Q, we are not a party to any litigation the outcome of which, if determined adversely to us, would individually or in the aggregate be reasonably expected to have a material adverse effect on our results of operations or financial position.
ITEM 1A. RISK FACTORS.
There have been no material changes to any of the principal risks that we believe are material to our business, results of operations and financial condition, from the risk factors previously disclosed in our Annual Report on Form 10-K for the year ended December 31, 2022.
ITEM 2. UNREGISTERED SALES OF EQUITY SECURITIES AND USE OF PROCEEDS.
Recent Sales of Unregistered Securities

On June 13, 2023, the Company issued 30,100 restricted stock awards (the “RS Grants”) under the Company’s 2023 Equity Incentive Plan (the “Incentive Plan”) to certain executive officers of the Company. The RS Grants will vest in 2026, subject to earlier vesting and forfeiture on terms and conditions set forth in the applicable award agreement. The issuance of the RS Grants under the Incentive Plan was exempt from registration under the Securities Act of 1933, as amended (the “Securities Act”), pursuant to Section 4(a)(2) of the Securities Act and/or Regulation D promulgated thereunder.
Issuer Purchase of Equity Securities
None.
ITEM 3. DEFAULTS UPON SENIOR SECURITIES.
None.
ITEM 4. MINE SAFETY DISCLOSURES.
Not applicable.
ITEM 5. OTHER INFORMATION.
None.
29


ITEM 6.    EXHIBITS.
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.

30


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.
/s/ Edward Codispoti
Date: August 10, 2023Edward Codispoti
Chief Financial Officer
(Principal Financial and Accounting Officer)

31
EX-10.1 2 nvee-2023x07x01xex101.htm EX-10.1 Document

Exhibit 10.1

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-31.1 3 nvee-2023x07x01xex311.htm EX-31.1 Document

Exhibit 31.1
CERTIFICATION
I, Dickerson Wright, certify that:
1.I have reviewed this Quarterly Report on Form 10-Q for the period ended July 1, 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: August 10, 2023
/s/ Dickerson Wright
Dickerson Wright
Chairman & Chief Executive Officer
(Principal Executive Officer)


EX-31.2 4 nvee-2023x07x01xex312.htm EX-31.2 Document

Exhibit 31.2
CERTIFICATION
I, Edward Codispoti, certify that:
1.I have reviewed this Quarterly Report on Form 10-Q for the period ended July 1, 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: August 10, 2023
/s/ Edward Codispoti
Edward Codispoti
Chief Financial Officer
(Principal Financial Officer)


EX-32.1 5 nvee-2023x07x01xex321.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 Quarterly Report of NV5 Global, Inc. (the “Company”) on Form 10-Q for the quarter ended July 1, 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 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: August 10, 2023
/s/ Dickerson Wright
Dickerson Wright
Chairman & Chief Executive Officer
Date: August 10, 2023
/s/ Edward Codispoti
Edward Codispoti
Chief Financial Officer
This certification accompanies this Quarterly Report on Form 10-Q 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-101.SCH 6 nvee-20230701.xsd XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT 0000001 - Document - Cover link:presentationLink link:calculationLink link:definitionLink 0000002 - Statement - CONSOLIDATED BALANCE SHEETS link:presentationLink link:calculationLink link:definitionLink 0000003 - Statement - CONSOLIDATED BALANCE SHEETS (Parentheticals) link:presentationLink link:calculationLink link:definitionLink 0000004 - Statement - CONSOLIDATED STATEMENTS OF NET INCOME AND COMPREHENSIVE INCOME link:presentationLink link:calculationLink link:definitionLink 0000005 - Statement - CONSOLIDATED STATEMENTS OF CHANGES IN STOCKHOLDERS’ EQUITY link:presentationLink link:calculationLink link:definitionLink 0000006 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS link:presentationLink link:calculationLink link:definitionLink 0000007 - Disclosure - Organization and Nature of Business Operations link:presentationLink link:calculationLink link:definitionLink 0000008 - Disclosure - Summary of Significant Accounting Policies link:presentationLink link:calculationLink link:definitionLink 0000009 - Disclosure - Recent Accounting Pronouncements link:presentationLink link:calculationLink link:definitionLink 0000010 - Disclosure - Earnings per Share link:presentationLink link:calculationLink link:definitionLink 0000011 - Disclosure - Business Acquisitions link:presentationLink link:calculationLink link:definitionLink 0000012 - Disclosure - Billed and Unbilled Receivables link:presentationLink link:calculationLink link:definitionLink 0000013 - Disclosure - Property and Equipment, net link:presentationLink link:calculationLink link:definitionLink 0000014 - Disclosure - Goodwill and Intangible Assets link:presentationLink link:calculationLink link:definitionLink 0000015 - Disclosure - Accrued Liabilities link:presentationLink link:calculationLink link:definitionLink 0000016 - Disclosure - Notes Payable and Other Obligations link:presentationLink link:calculationLink link:definitionLink 0000017 - Disclosure - Contingent Consideration link:presentationLink link:calculationLink link:definitionLink 0000018 - Disclosure - Commitments and Contingencies link:presentationLink link:calculationLink link:definitionLink 0000019 - Disclosure - Stock-Based Compensation link:presentationLink link:calculationLink link:definitionLink 0000020 - Disclosure - Income Taxes link:presentationLink link:calculationLink link:definitionLink 0000021 - Disclosure - Reportable Segments link:presentationLink link:calculationLink link:definitionLink 0000022 - Disclosure - Stockholders' Equity link:presentationLink link:calculationLink link:definitionLink 9954701 - Disclosure - Summary of Significant Accounting Policies (Policies) link:presentationLink link:calculationLink link:definitionLink 9954702 - Disclosure - Earnings per Share (Tables) link:presentationLink link:calculationLink link:definitionLink 9954703 - Disclosure - Business Acquisitions (Tables) link:presentationLink link:calculationLink link:definitionLink 9954704 - Disclosure - Billed and Unbilled Receivables (Tables) link:presentationLink link:calculationLink link:definitionLink 9954705 - Disclosure - Property and Equipment, net (Tables) link:presentationLink link:calculationLink link:definitionLink 9954706 - Disclosure - Goodwill and Intangible Assets (Tables) link:presentationLink link:calculationLink link:definitionLink 9954707 - Disclosure - Accrued Liabilities (Tables) link:presentationLink link:calculationLink link:definitionLink 9954708 - Disclosure - Notes Payable and Other Obligations (Tables) link:presentationLink link:calculationLink link:definitionLink 9954709 - Disclosure - Contingent Consideration (Tables) link:presentationLink link:calculationLink link:definitionLink 9954710 - Disclosure - Stock-Based Compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 9954711 - Disclosure - Reportable Segments (Tables) link:presentationLink link:calculationLink link:definitionLink 9954712 - Disclosure - Stockholders' Equity (Tables) link:presentationLink link:calculationLink link:definitionLink 9954713 - Disclosure - Summary of Significant Accounting Policies - Revenue Recognition (Details) link:presentationLink link:calculationLink link:definitionLink 9954713 - Disclosure - Summary of Significant Accounting Policies - Revenue Recognition (Details) link:presentationLink link:calculationLink link:definitionLink 9954714 - Disclosure - Summary of Significant Accounting Policies - Contract Balances (Details) link:presentationLink link:calculationLink link:definitionLink 9954715 - Disclosure - Earnings per Share - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954716 - Disclosure - Earnings per Share - Schedule of Earnings Per Share, Basic and Diluted (Details) link:presentationLink link:calculationLink link:definitionLink 9954717 - Disclosure - Business Acquisitions - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954718 - Disclosure - Business Acquisitions - Summary of the Fair Values of Assets Acquired and Liabilities Assumed (Details) link:presentationLink link:calculationLink link:definitionLink 9954719 - Disclosure - Business Acquisitions - Results of Operations From any Business Acquired (Details) link:presentationLink link:calculationLink link:definitionLink 9954720 - Disclosure - Business Acquisitions - Pro Forma Consolidated Results of Operations (Details) link:presentationLink link:calculationLink link:definitionLink 9954721 - Disclosure - Billed and Unbilled Receivables (Details) link:presentationLink link:calculationLink link:definitionLink 9954722 - Disclosure - Property and Equipment, net (Details) link:presentationLink link:calculationLink link:definitionLink 9954723 - Disclosure - Property and Equipment, net - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954724 - Disclosure - Goodwill and Intangible Assets - Schedule of Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 9954725 - Disclosure - Goodwill and Intangible Assets - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954726 - Disclosure - Goodwill and Intangible Assets - Schedule of Finite-Lived Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 9954727 - Disclosure - Accrued Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 9954728 - Disclosure - Notes Payable and Other Obligations - Summary of Notes Payable and Other Obligations (Details) link:presentationLink link:calculationLink link:definitionLink 9954728 - Disclosure - Notes Payable and Other Obligations - Summary of Notes Payable and Other Obligations (Details) link:presentationLink link:calculationLink link:definitionLink 9954729 - Disclosure - Notes Payable and Other Obligations - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954730 - Disclosure - Contingent Consideration (Details) link:presentationLink link:calculationLink link:definitionLink 9954731 - Disclosure - Stock-Based Compensation - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954732 - Disclosure - Stock-Based Compensation - Restricted Stock Awards (Details) link:presentationLink link:calculationLink link:definitionLink 9954733 - Disclosure - Income Taxes (Details) link:presentationLink link:calculationLink link:definitionLink 9954734 - Disclosure - Reportable Segments - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954735 - Disclosure - Reportable Segments - Summarized Financial Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954736 - Disclosure - Reportable Segments - Revenue From Contracts With Customers by Geographic Location (Details) link:presentationLink link:calculationLink link:definitionLink 9954737 - Disclosure - Reportable Segments - Revenue by Customer Type (Details) link:presentationLink link:calculationLink link:definitionLink 9954738 - Disclosure - Reportable Segments - Revenue by Contract Type (Details) link:presentationLink link:calculationLink link:definitionLink 9954739 - Disclosure - Stockholders' Equity - Schedule of Accumulated Other Comprehensive Income (Loss) (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 7 nvee-20230701_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 8 nvee-20230701_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 9 nvee-20230701_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT Deferred income taxes Deferred Income Taxes and Tax Credits Schedule Of Accrued Liabilities Schedule of Accrued Liabilities [Table Text Block] Accrued liabilities Total Accrued Liabilities, Current 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] Remaining performance obligation expected timing of satisfaction 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] Revolving Credit Facility Revolving Credit Facility [Member] Effect of exchange rate changes on cash and cash equivalents Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations Deferred income tax liabilities, net 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 [Member] Period Two Period Two [Member] Period Two [Member] Commitments and contingencies Commitments and Contingencies 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] Sub-consultant services Sub-consultant Services The cost of sub-consultant services. Stockholders' Equity Equity [Text Block] Schedule of Goodwill [Table] Schedule of Goodwill [Table] Geographical [Axis] Geographical [Axis] Income Taxes Income Tax Disclosure [Text Block] Billings in excess of costs and estimated earnings on uncompleted contracts Increase (Decrease) in Contract with Customer, Liability Schedule of Revenue by Major Customers, by Reporting Segments [Table] Schedule of Revenue by Major Customers, by Reporting Segments [Table] 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: Liabilities, Current [Abstract] 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 Business Acquisition [Line Items] Business Acquisition [Line Items] Revenue, Remaining Performance Obligation, Satisfaction Period [Domain] Revenue, Remaining Performance Obligation, Satisfaction Period [Domain] Revenue, Remaining Performance Obligation, Satisfaction Period [Domain] Payments of contingent consideration Payment for Contingent Consideration Liability, Financing Activities 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. 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 Noncompete Agreements [Member] Net income Net income Net Income (Loss) Total current liabilities Liabilities, Current Debt covenant, liquidity availability Debt Covenant, Liquidity Availability Debt Covenant, Liquidity Availability 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] Finance leases Lease Obligation Incurred Stockholders’ equity: Equity, Attributable to Parent [Abstract] Billings in excess of costs and estimated earnings on uncompleted contracts Contract with Customer, Liability 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 (n years) Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period Proceeds from sale of assets Proceeds from Sale of Productive Assets Intangible assets, useful life (in years) Acquired Finite-Lived Intangible Assets, Weighted Average Useful Life Number of Unvested Restricted Shares of Common Stock and Restricted Stock 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] Goodwill Beginning balance Ending balance Goodwill 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] Weighted average common shares outstanding: Weighted Average Common Shares Outstanding [Abstract] Weighted Average Common Shares Outstanding [Abstract] Accrued operating expenses Accrued Operating Expenses Accrued Operating Expenses Other Other Acquisition [Member] Other Acquisition Other Direct Costs Other Direct Costs [Member] Other Direct Costs [Member] Entity Small Business Entity Small Business Salaries and wages, payroll taxes, and benefits Salaries and Wages, Payroll Taxes and Benefits Labor and Related Expense Excluding Stock Based Compensation Local Phone Number Local Phone Number Billed receivables Increase (Decrease) in Accounts Receivable Depreciation expense Depreciation Debt Instrument, Name [Domain] Debt Instrument, Name [Domain] VIS Visual Information Solutions [Member] Visual Information Solutions Income Statement Location [Axis] Income Statement Location [Axis] Schedule Of Notes Payable And Other Obligations Schedule of Long-Term Debt Instruments [Table Text Block] Payables and Accruals [Abstract] Payables and Accruals [Abstract] 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] 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] Document Quarterly Report Document Quarterly Report Non-cash investing and financing activities: Noncash Investing and Financing Items [Abstract] Interest expense Interest Expense 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] 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] Current portion of lease liability Operating Lease, Liability, Current Share-based Payment Arrangement, Restricted Stock Unit, Activity Share-Based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block] Other obligations Stock Payable [Member] Represents the stock payable. Amortization expense Amortization of Intangible Assets Entity Shell Company Entity Shell Company 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] Recent Accounting Pronouncements 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. 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 Billed receivables Accounts Receivable, before Allowance for Credit Loss Senior credit facility Senior Credit Facility Senior Credit Facility [Member] Represents the senior credit facility debt instrument. 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 Accumulated other comprehensive income (loss) Accumulated Other Comprehensive Income (Loss), Net of Tax Accumulated Other Comprehensive Income (Loss) Accumulated Foreign Currency Adjustment Attributable to Parent [Member] Cost not yet recognized, term (in years) 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 Weighted average vesting period (in years) Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount Document Type Document Type Income before income taxes Business Combination Pro Forma Information Income Before Income Taxes of Acquiree Since Acquisition Date Actual 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. 2023 Acquisitions Goodwill, Acquired During Period Interest rate during period (as a percent) Line of Credit Facility, Interest Rate During Period Uncollateralized Promissory Notes Uncollateralized promissory notes Uncollateralized Promissory Note [Member] A written promise to pay a note to a third party with no attached collateral. 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 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. Antidilutive Securities, Name [Domain] Antidilutive Securities, Name [Domain] Stock-Based Compensation Share-Based Payment Arrangement [Text Block] Numerator: Numerator [Abstract] Numerator [Abstract] Business Acquisition [Axis] Business Acquisition [Axis] Less: allowance for doubtful accounts Accounts Receivable, Allowance for Credit Loss, Current 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] Title of 12(b) Security Title of 12(b) Security Denominator: Denominator [Abstract] Denominator [Abstract] Business Acquisitions Business Combination Disclosure [Text Block] 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 Income Tax Disclosure [Abstract] Income Tax Disclosure [Abstract] 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 Statistical Measurement [Axis] Statistical Measurement [Axis] Entity Interactive Data Current Entity Interactive Data Current Disaggregation of Revenue [Table] Disaggregation of Revenue [Table] Other assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Other Noncurrent Assets Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding Goodwill and Intangible Assets Goodwill and Intangible Assets, Policy [Policy Text Block] 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] Performance Obligations Revenue from Contract with Customer [Policy Text Block] Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code Current assets: Assets, Current [Abstract] 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] 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] 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) Common Stock, Shares, Outstanding Series of Individually Immaterial Business Acquisitions Series of Individually Immaterial Business Acquisitions [Member] Notes payable outstanding balance Notes Payable Customer backlog Customer backlog Customer Lists [Member] Beginning balance (in shares) Ending balance (in shares) Shares, Outstanding Accumulated Other Comprehensive Income (Loss) [Line Items] Accumulated Other Comprehensive Income (Loss) [Line Items] Common stock, par value (in dollars per share) Common Stock, Par or Stated Value Per Share Foreign currency translation losses, 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] Debt Instrument [Axis] Debt Instrument [Axis] Gross revenues Business Combination, Pro Forma Information, Revenue of Acquiree since Acquisition Date, Actual Effective income tax rate (as a percent) Effective Income Tax Rate Reconciliation, Percent Credit Facility [Axis] Credit Facility [Axis] Total liabilities Liabilities Direct costs: Direct Operating Costs [Abstract] Prepaid expenses and other assets Increase (Decrease) in Prepaid Expense and Other Assets Accumulated Other Comprehensive Income (Loss) 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 Indefinite-lived Intangible Assets Acquired as Part of Business Combination [Table] Indefinite-Lived Intangible Assets Acquired as Part of Business Combination [Table] Accumulated Other Comprehensive Income (Loss) [Table] Accumulated Other Comprehensive Income (Loss) [Table] Plan Name [Axis] Plan Name [Axis] Accrued Liabilities Accounts Payable and Accrued Liabilities Disclosure [Text Block] Long-Lived Tangible Asset [Domain] Long-Lived Tangible Asset [Domain] Number of reportable segments Number of Reportable Segments 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] Common stock, $0.01 par value; 45,000,000 shares authorized, 15,890,908 and 15,523,300 shares issued and outstanding as of July 1, 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. Total current assets Assets, Current Earn-out of cash fair value Contingent consideration, beginning of the year Total contingent consideration, end of the period Business Combination, Contingent Consideration, Liability Entity Filer Category Entity Filer Category Statement [Table] Statement [Table] 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] Recent Accounting Pronouncements Accounting Standards Update and Change in Accounting Principle [Text Block] Schedule of Accumulated Other Comprehensive Income (Loss) Schedule of Accumulated Other Comprehensive Income (Loss) [Table Text Block] 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 Schedule Of Goodwill Schedule of Goodwill [Table Text Block] Preferred stock, shares outstanding (in shares) Preferred Stock, Shares Outstanding Public and quasi-public sector Public and Quasi-public Sector [Member] Information related to the public and quasi public sector. Net cash provided by operating activities Net Cash Provided by (Used in) Operating Activities 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 Additions for acquisitions Business Combination, Contingent Consideration, Liability, Additions For Acquisitions Represents the additions for acquisitions during the period effecting a change in the contingent consideration liability. Depreciation and amortization Depreciation, Depletion and Amortization Office furniture and equipment Furniture and Fixtures [Member] Statement of Financial Position [Abstract] Statement of Financial Position [Abstract] Period One Period One [Member] Period One [Member] Business Combination and Asset Acquisition [Abstract] Total stockholders’ equity Beginning balance Ending balance Equity, Attributable to Parent Consolidation Items [Axis] Consolidation Items [Axis] 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] Finite-Lived Intangible Assets, Major Class Name [Domain] Finite-Lived Intangible Assets, Major Class Name [Domain] 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 Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table] Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table] Long-Lived Tangible Asset [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 Accounting Standards Update and Change in Accounting Principle [Abstract] Accounting Standards Update and Change in Accounting Principle [Abstract] 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) 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 Useful life (in years) Finite-Lived Intangible Asset, Useful Life Antidilutive Securities [Axis] Antidilutive Securities [Axis] 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 Schedule Of Revenue From External Customers By Geographic Areas Revenue from External Customers by Geographic Areas [Table Text Block] Common Stock Common Stock [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] Income Statement Location [Domain] Income Statement Location [Domain] Document Fiscal Year Focus Document Fiscal Year Focus Geographical [Domain] Geographical [Domain] Weighted average interest rate (as a percent) Debt, Weighted Average Interest Rate 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] Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets by Major Class [Axis] Statement of Cash Flows [Abstract] Statement of Cash Flows [Abstract] 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] Debt issuance costs Debt Issuance Costs, Gross Net cash provided by (used in) financing activities Net Cash Provided by (Used in) Financing Activities 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. 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, 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 Gain on disposals of property and equipment Gain (Loss) on Disposition of Assets GEO GEO [Member] GEO [Member] 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 (Decrease) increase of liability related to re-measurement of fair value Business Combination, Contingent Consideration, Liability, Increase (Decrease) 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. 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 Goodwill, Purchase Accounting Adjustments Developed technology Technology-Based Intangible Assets [Member] Accounts payable Increase (Decrease) in Accounts Payable Common stock, shares authorized (in shares) Common Stock, Shares Authorized 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 Property, Plant and Equipment [Abstract] Property, Plant and Equipment [Abstract] Less: allowance for doubtful accounts Contract with Customer, Asset, Allowance for Credit Loss, Current 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 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 Revenue, Remaining Performance Obligation, Satisfaction Period [Axis] Revenue, Remaining Performance Obligation, Satisfaction Period [Axis] Revenue, Remaining Performance Obligation, Satisfaction Period [Axis] 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 Contingent earn-out liability (Cash and stock) Business Combination, Consideration Transferred, Liabilities Incurred Finance leases Finance Lease, Liability Prepaid expenses and other current assets Prepaid Expense and Other Assets, Current Total estimated fair value Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value, Outstanding Forfeited (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period 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 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 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 Schedule Of Pro Forma Consolidated Results Of Operations Business Acquisition, Pro Forma Information [Table Text Block] 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 Income Tax Expense (Benefit) Foreign Non-US [Member] 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 Basic earnings per share (in dollars per share) Business Acquisition, Pro Forma Earnings Per Share, Basic 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 Other comprehensive income (loss) Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent Equity [Abstract] 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 liability Revenue from Contract with Customer, Excluding Assessed Tax Amendment Flag Amendment Flag Finite-lived intangible assets: Finite-Lived Intangible Assets, Net [Abstract] Axim Axim Geospatial, LLC [Member] Axim Geospatial, LLC Cash and cash equivalents Cash and Cash Equivalents, at Carrying Value Payments on notes payable Repayments of Notes Payable Cash paid for acquisitions (net of cash received from acquisitions) Aggregate cash purchase price Payments to Acquire Businesses, Net of Cash Acquired Credit Facility [Domain] Credit Facility [Domain] Liability Based Awards Liability Based Awards [Member] Liability Based Awards Leasehold improvements Leasehold Improvements [Member] 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 Operating expenses: Operating Expenses [Abstract] 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). Purchase of property and equipment Payments to Acquire Property, Plant, and Equipment Additional Paid-In Capital Additional Paid-in Capital [Member] Total assets Assets Cover [Abstract] Cover [Abstract] 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 Remaining revenue performance obligation amount Revenue, Remaining Performance Obligation, Amount Total operating expenses Operating Expenses Reportable Segments Segment Reporting Disclosure [Text Block] Net 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] Potential earn-out in cash and stock Business Combination, Consideration Transferred, Equity Interests Issued and Issuable 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 Fixed-unit price contracts Fixed-Price Contract [Member] Cost-reimbursable contracts Cost-reimbursable Contracts [Member] Contract with customer in which amount of contract may be cost-reimbursable. Contingent consideration (earn-out) Contingent Consideration Earn-out, Non-cash Contingent Consideration Earn-out, Non-cash Commitments and Contingencies Disclosure [Roll Forward] Commitments and Contingencies Disclosure [Roll Forward] Commitments and Contingencies Disclosure [Roll Forward] Segments [Axis] Segments [Axis] Statement [Line Items] Statement [Line Items] Comprehensive income: Other Comprehensive Income (Loss), Net of Tax [Abstract] Customer relationships Customer relationships Customer Relationships [Member] Borrowings from Senior Credit Facility Proceeds from Long-Term Lines of Credit EX-101.PRE 10 nvee-20230701_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT XML 11 R1.htm IDEA: XBRL DOCUMENT v3.23.2
Cover - shares
6 Months Ended
Jul. 01, 2023
Aug. 04, 2023
Cover [Abstract]    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Jul. 01, 2023  
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 Current Reporting Status Yes  
Entity Interactive Data Current Yes  
Entity Filer Category Large Accelerated Filer  
Entity Small Business false  
Entity Emerging Growth Company false  
Entity Shell Company false  
Entity Common Stock, Shares Outstanding   15,890,254
Entity Central Index Key 0001532961  
Document Fiscal Year Focus 2023  
Document Fiscal Period Focus Q2  
Amendment Flag false  
Current Fiscal Year End Date --12-30  
XML 12 R2.htm IDEA: XBRL DOCUMENT v3.23.2
CONSOLIDATED BALANCE SHEETS - USD ($)
$ in Thousands
Jul. 01, 2023
Dec. 31, 2022
Current assets:    
Cash and cash equivalents $ 28,827 $ 38,541
Billed receivables, net 149,110 145,637
Unbilled receivables, net 107,192 92,862
Prepaid expenses and other current assets 20,501 13,636
Total current assets 305,630 290,676
Property and equipment, net 49,392 41,640
Right-of-use lease assets, net 38,628 39,314
Intangible assets, net 243,579 160,431
Goodwill 526,848 400,957
Other assets 3,751 2,705
Total assets 1,167,828 935,723
Current liabilities:    
Accounts payable 55,578 57,771
Accrued liabilities 52,735 44,313
Billings in excess of costs and estimated earnings on uncompleted contracts 37,195 31,183
Other current liabilities 2,072 1,597
Current portion of contingent consideration 4,149 10,854
Current portion of notes payable and other obligations 14,800 15,176
Total current liabilities 166,529 160,894
Contingent consideration, less current portion 1,897 4,481
Other long-term liabilities 28,526 29,542
Notes payable and other obligations, less current portion 209,241 39,673
Deferred income tax liabilities, net 20,487 6,893
Total liabilities 426,680 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,890,908 and 15,523,300 shares issued and outstanding as of July 1, 2023 and December 31, 2022, respectively 159 155
Additional paid-in capital 497,035 471,300
Accumulated other comprehensive income (loss) (191) 0
Retained earnings 244,145 222,785
Total stockholders’ equity 741,148 694,240
Total liabilities and stockholders’ equity $ 1,167,828 $ 935,723
XML 13 R3.htm IDEA: XBRL DOCUMENT v3.23.2
CONSOLIDATED BALANCE SHEETS (Parentheticals) - $ / shares
Jul. 01, 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,890,908 15,523,300
Common stock, shares outstanding (in shares) 15,890,908 15,523,300
XML 14 R4.htm IDEA: XBRL DOCUMENT v3.23.2
CONSOLIDATED STATEMENTS OF NET INCOME AND COMPREHENSIVE INCOME - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2023
Jul. 02, 2022
Jul. 01, 2023
Jul. 02, 2022
Income Statement [Abstract]        
Gross revenues $ 222,638 $ 202,732 $ 406,955 $ 392,885
Direct costs:        
Salaries and wages 57,079 47,704 105,463 93,681
Sub-consultant services 39,690 40,479 67,304 75,305
Other direct costs 15,569 15,309 27,890 30,833
Total direct costs 112,338 103,492 200,657 199,819
Gross profit 110,300 99,240 206,298 193,066
Operating expenses:        
Salaries and wages, payroll taxes, and benefits 58,949 47,283 111,621 97,049
General and administrative 11,551 14,494 29,472 30,881
Facilities and facilities related 5,823 5,195 11,197 10,381
Depreciation and amortization 13,539 9,668 24,585 19,602
Total operating expenses 89,862 76,640 176,875 157,913
Income from operations 20,438 22,600 29,423 35,153
Interest expense (3,648) (887) (5,229) (1,801)
Income before income tax expense 16,790 21,713 24,194 33,352
Income tax expense (1,377) (4,445) (2,834) (7,442)
Net income $ 15,413 $ 17,268 $ 21,360 $ 25,910
Earnings per share:        
Basic (in dollars per share) $ 1.03 $ 1.17 $ 1.43 $ 1.76
Diluted (in dollars per share) $ 1.00 $ 1.13 $ 1.39 $ 1.70
Weighted average common shares outstanding:        
Basic (in shares) 15,014,106 14,736,167 14,948,796 14,714,745
Diluted (in shares) 15,451,788 15,232,157 15,421,535 15,211,835
Comprehensive income:        
Net income $ 15,413 $ 17,268 $ 21,360 $ 25,910
Foreign currency translation losses, net of tax (191) 0 (191) 0
Comprehensive income $ 15,222 $ 17,268 $ 21,169 $ 25,910
XML 15 R5.htm IDEA: XBRL DOCUMENT v3.23.2
CONSOLIDATED STATEMENTS OF CHANGES IN STOCKHOLDERS’ EQUITY - USD ($)
$ in Thousands
Total
Common Stock
Additional Paid-In Capital
Accumulated Other Comprehensive Income (Loss)
Retained Earnings
Beginning balance (in shares) at Jan. 01, 2022   15,414,005      
Beginning balance at Jan. 01, 2022 $ 624,720 $ 154 $ 451,754 $ 0 $ 172,812
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Stock-based compensation 8,961   8,961    
Restricted stock issuance, net (in shares)   110,610      
Restricted stock issuance, net 0 $ 1 (1)    
Net income 25,910     0 25,910
Stock issuance for acquisitions (in shares)   12,519      
Stock issuance for acquisitions 1,352   1,352    
Reclassification of liability-classified awards to equity-classified awards 0        
Ending balance (in shares) at Jul. 02, 2022   15,537,134      
Ending balance at Jul. 02, 2022 660,943 $ 155 462,066 0 198,722
Beginning balance (in shares) at Apr. 02, 2022   15,495,451      
Beginning balance at Apr. 02, 2022 639,503 $ 155 457,894 0 181,454
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Stock-based compensation 4,172   4,172    
Restricted stock issuance, net (in shares)   41,683      
Restricted stock issuance, net 0 $ 0 0    
Net income 17,268       17,268
Ending balance (in shares) at Jul. 02, 2022   15,537,134      
Ending balance at Jul. 02, 2022 660,943 $ 155 462,066 0 198,722
Beginning balance (in shares) at Dec. 31, 2022   15,523,300      
Beginning balance at Dec. 31, 2022 694,240 $ 155 471,300   222,785
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Stock-based compensation 9,571   9,571    
Restricted stock issuance, net (in shares)   246,263      
Restricted stock issuance, net 0 $ 3 (3)    
Net income 21,360       21,360
Stock issuance for acquisitions (in shares)   121,345      
Stock issuance for acquisitions 14,471   14,470    
Reclassification of liability-classified awards to equity-classified awards 1,697   1,697    
Other comprehensive income (loss) (191)     (191)  
Ending balance (in shares) at Jul. 01, 2023   15,890,908      
Ending balance at Jul. 01, 2023 741,148 $ 159 497,035 (191) 244,145
Beginning balance (in shares) at Apr. 01, 2023   15,708,193      
Beginning balance at Apr. 01, 2023 719,870 $ 157 490,981 0 228,732
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Stock-based compensation 4,359   4,359    
Restricted stock issuance, net (in shares)   182,715      
Restricted stock issuance, net 0 $ 2 (2)    
Net income 15,413     0 15,413
Reclassification of liability-classified awards to equity-classified awards 1,697   1,697    
Other comprehensive income (loss) (191)     (191)  
Ending balance (in shares) at Jul. 01, 2023   15,890,908      
Ending balance at Jul. 01, 2023 $ 741,148 $ 159 $ 497,035 $ (191) $ 244,145
XML 16 R6.htm IDEA: XBRL DOCUMENT v3.23.2
CONSOLIDATED STATEMENTS OF CASH FLOWS - USD ($)
$ in Thousands
6 Months Ended
Jul. 01, 2023
Jul. 02, 2022
Cash flows from operating activities:    
Net income $ 21,360 $ 25,910
Adjustments to reconcile net income to net cash provided by operating activities:    
Depreciation and amortization 27,205 22,058
Non-cash lease expense 6,784 6,265
Provision for doubtful accounts 607 594
Stock-based compensation 10,728 9,615
Change in fair value of contingent consideration (7,514) (518)
Gain on disposals of property and equipment (408) (61)
Deferred income taxes (7,673) (3,014)
Amortization of debt issuance costs 365 370
Changes in operating assets and liabilities, net of impact of acquisitions:    
Billed receivables 10,882 15,152
Unbilled receivables (9,842) (3,801)
Prepaid expenses and other assets (4,691) (511)
Accounts payable (8,164) (4,349)
Accrued liabilities and other long-term liabilities (5,698) (6,309)
Billings in excess of costs and estimated earnings on uncompleted contracts (7,606) (6,867)
Contingent consideration (1,307) 0
Other current liabilities 474 (276)
Net cash provided by operating activities 25,502 54,258
Cash flows from investing activities:    
Cash paid for acquisitions (net of cash received from acquisitions) (186,242) (4,670)
Proceeds from sale of assets 295 48
Purchase of property and equipment (10,239) (10,379)
Net cash used in investing activities (196,186) (15,001)
Cash flows from financing activities:    
Borrowings from Senior Credit Facility 180,000 0
Payments on notes payable (5,131) (6,218)
Payments of contingent consideration (793) (1,597)
Payments of borrowings from Senior Credit Facility (13,000) (35,000)
Net cash provided by (used in) financing activities 161,076 (42,815)
Effect of exchange rate changes on cash and cash equivalents (106) 0
Net decrease in cash and cash equivalents (9,714) (3,558)
Cash and cash equivalents – beginning of period 38,541 47,980
Cash and cash equivalents – end of period 28,827 44,422
Non-cash investing and financing activities:    
Contingent consideration (earn-out) 325 6,579
Notes payable and other obligations issued for acquisitions 7,404 2,933
Stock issuance for acquisitions 14,471 1,352
Reclassification of liability-classified awards to equity-classified awards 1,697 0
Finance leases $ 232 $ 644
XML 17 R7.htm IDEA: XBRL DOCUMENT v3.23.2
Organization and Nature of Business Operations
6 Months Ended
Jul. 01, 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, and consulting solutions 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 servicesMEP & technology design
LNG servicesCommissioning
EngineeringBuilding program management
Civil program managementEnvironmental health & safety
SurveyingReal estate transaction services
Construction quality assuranceEnergy efficiency & clean energy services
Code compliance consulting3D geospatial data modeling
Forensic servicesEnvironmental & natural resources
Litigation supportRobotic survey solutions
Ecological studiesGeospatial data applications & software
Fiscal Year
The Company operates on a "52/53 week" fiscal year ending on the Saturday closest to the calendar quarter end.
XML 18 R8.htm IDEA: XBRL DOCUMENT v3.23.2
Summary of Significant Accounting Policies
6 Months Ended
Jul. 01, 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 (“U.S. GAAP”) and have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”) for reporting of interim financial information. Pursuant to such rules and regulations, certain information and footnote disclosures normally included in financial statements prepared in accordance with U.S. GAAP have been condensed or omitted. The consolidated financial statements include the accounts of the Company and its subsidiaries. All intercompany transactions and balances have been eliminated in consolidation.
In the opinion of management, the accompanying unaudited interim consolidated financial statements of the Company contain all adjustments necessary to present fairly the financial position and results of operations of the Company as of the dates and for the periods presented. Accordingly, these statements should be read in conjunction with the consolidated financial statements and notes contained in the Company’s Annual Report on Form 10-K for the year ended December 31, 2022 (the “2022 Form 10-K”). The results of operations and cash flows for the interim periods presented are not necessarily indicative of the results to be expected for any future interim period or for the full 2023 fiscal year.
Performance Obligations
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 that 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 revenue 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.
As of July 1, 2023, the Company had $821,052 of remaining performance obligations, of which $676,038 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 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 Sheet. The liability “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 the three and six months ended July 1, 2023 the Company performed services and recognized $6,616 and $25,046, respectively, of revenue related to its contract liabilities that existed as of December 31, 2022.

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.
 
Goodwill is required to be evaluated for impairment on an annual basis or whenever events or changes in circumstances indicate the asset may be impaired. 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 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. 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 has elected to perform its annual goodwill impairment review as of August 1 of each year. The Company conducts its annual impairment tests on the goodwill using the quantitative method of evaluating goodwill.
As of August 1, 2022, the Company conducted its annual impairment tests using the quantitative method of evaluating goodwill. Based on the quantitative analyses the Company determined the fair value of each of the reporting units exceeded its carrying value. Therefore, the goodwill was not impaired and the Company did not recognize an impairment charge relating to goodwill as of August 1, 2022. Furthermore, there were no indicators, events or changes in circumstances that would indicate goodwill was impaired during the period from August 2, 2022 through July 1, 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 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. There were no indicators, events or changes in circumstances that would indicate intangible assets were impaired during the six months ended July 1, 2023. See Note 8, Goodwill and Intangible Assets, for further information on goodwill and identified intangibles.
There have been no material changes in the Company's significant accounting policies described in the audited financial statements included in the Company's Annual Report on Form 10-K for the year ended December 31, 2022.
XML 19 R9.htm IDEA: XBRL DOCUMENT v3.23.2
Recent Accounting Pronouncements
6 Months Ended
Jul. 01, 2023
Accounting Standards Update and Change in Accounting Principle [Abstract]  
Recent Accounting Pronouncements Recent Accounting PronouncementsNone
XML 20 R10.htm IDEA: XBRL DOCUMENT v3.23.2
Earnings per Share
6 Months Ended
Jul. 01, 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 for the six months ended July 1, 2023 and July 2, 2022 exclude 688,377 and 739,919 non-vested restricted shares, respectively. During the three and six months ended July 1, 2023, there were 111,584 and 41,536 weighted average securities, respectively, 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. During the three and six months ended July 2, 2022, there were 20,854 and 25,653 weighted average securities, respectively, 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:
Three Months EndedSix Months Ended
July 1, 2023July 2, 2022July 1, 2023July 2, 2022
Numerator:
Net income – basic and diluted$15,413 $17,268 $21,360 $25,910 
Denominator:
Basic weighted average shares outstanding15,014,106 14,736,167 14,948,796 14,714,745 
Effect of dilutive non-vested restricted shares and units413,856 481,815 447,546 481,379 
Effect of issuable shares related to acquisitions23,826 14,175 25,193 15,711 
Diluted weighted average shares outstanding15,451,788 15,232,157 15,421,535 15,211,835 
XML 21 R11.htm IDEA: XBRL DOCUMENT v3.23.2
Business Acquisitions
6 Months Ended
Jul. 01, 2023
Business Combination and Asset Acquisition [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,682. 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") with Bank of America, N.A. and other lenders party thereto. See Note 10, 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, certain fixed assets, and the fair value of other assets and liabilities acquired.    
On February 22, 2023, the Company acquired all of the outstanding equity interests in Continental Mapping Acquisition Corp. and Continental Mapping Holdings, LLC 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 $141,010, including $120,106 in cash, a $7,404 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 Company's Second A&R Credit Agreement with Bank of America, N.A. and other lenders party thereto. See Note 10, 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, certain fixed assets, and the fair value of other assets and liabilities acquired.
The Company has completed three other acquisitions during 2023. The aggregate purchase price for the three acquisitions was $3,315, including $2,900 in cash, $90 of the Company's common stock, and a potential earn-out of up to $340 payable in cash, which has been recorded at an estimated fair value of $325. 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 2023 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 and accounts receivable.    
2022 Acquisitions    
The Company completed five acquisitions during 2022. The aggregate purchase price of all five acquisitions was $14,220, including $5,882 of 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 will be completed within the one-year measurement period as required by ASC 805. The 2022 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 acquisition date, including intangible assets, accounts receivable, and certain fixed assets. Purchase price allocation adjustments recorded during 2023 were immaterial.
The following table summarizes the fair values of the assets acquired and liabilities assumed as of the acquisition date for the acquisitions closed during the six months ended July 1, 2023 and the fiscal year ended December 31, 2022:
20232022
VISAximOtherTotalTotal
Cash$7,027 $5,419 $— $12,446 $— 
Billed and unbilled receivables, net5,042 13,937 487 19,466 1,794 
Right-of-use assets2,113 1,622 189 3,924 632 
Property and equipment118 2,870 — 2,988 1,510 
Prepaid expenses1,505 1,543 17 3,065 — 
Other assets— 155 — 155 — 
Intangible assets:
Customer relationships33,394 52,206 859 86,459 3,606 
Trade name2,958 2,266 33 5,257 268 
Customer backlog868 3,920 186 4,974 459 
Developed technology4,222 1,942 — 6,164 — 
Non-compete25 580 93 698 298 
Total Assets$57,272 $86,460 $1,864 $145,596 $8,567 
Liabilities(16,439)(13,668)(188)(30,295)(5,623)
Deferred tax liabilities(7,105)(14,223)— (21,328)— 
Net assets acquired$33,728 $58,569 $1,676 $93,973 $2,944 
Consideration paid (Cash, Notes and/or stock)$75,682 $141,010 $2,990 $219,682 $7,921 
Contingent earn-out liability (Cash and stock)— — 325 325 6,299 
Total Consideration$75,682 $141,010 $3,315 $220,007 $14,220 
Excess consideration over the amounts assigned to the net assets acquired (Goodwill)$41,954 $82,441 $1,639 $126,034 $11,276 
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 8, Goodwill and Intangible Assets, for further information on fair value adjustments to goodwill and identified intangibles.
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 the three and six months ended July 1, 2023. The revenue and earnings of the fiscal 2022 acquisitions included in the Company's results since the acquisition dates are not material to the Company's consolidated financial statements and have not been presented.
Three Months EndedSix Months Ended
July 1, 2023July 1, 2023
Gross revenues$29,589 $37,064 
Income before income taxes$4,904 $5,631 
General and administrative expenses for the three and six months ended July 1, 2023 and July 2, 2022 include acquisition-related costs pertaining to the Company's acquisition activities. Acquisition-related costs were not material to the Company's consolidated financial statements.
The following table presents the unaudited, pro forma consolidated results of operations (in thousands, except per share amounts) for the three and six months ended July 1, 2023 and July 2, 2022 as if the fiscal 2023 and 2022 acquisitions had occurred at the beginning of fiscal year 2022. The pro forma information provided below is compiled from pre-acquisition financial information and includes pro forma adjustments for amortization expense, adjustments to certain expenses, and the income tax impact of these adjustments. The pro forma results are not necessarily indicative of (i) the results of operations that would have occurred had the operations of these acquisitions actually been acquired at the beginning of fiscal year 2022 or (ii) future results of operations:
Three Months EndedSix Months Ended
July 1, 2023July 2, 2022July 1, 2023July 2, 2022
Gross revenues$223,036 $231,351 $429,754 $450,204 
Net income$15,374 $16,998 $20,581 $25,363 
Basic earnings per share$1.02 $1.14 $1.38 $1.71 
Diluted earnings per share$0.99 $1.11 $1.33 $1.65 
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 financing from the Company's Senior Credit Facility, to record the effects of promissory notes issued, and to record the income tax effect of these adjustments.
XML 22 R12.htm IDEA: XBRL DOCUMENT v3.23.2
Billed and Unbilled Receivables
6 Months Ended
Jul. 01, 2023
Receivables [Abstract]  
Billed and Unbilled Receivables Billed and Unbilled Receivables
Billed and unbilled receivables consists of the following:
July 1, 2023December 31, 2022
Billed receivables$152,530 $149,082 
Less: allowance for doubtful accounts(3,420)(3,445)
Billed receivables, net$149,110 $145,637 
Unbilled receivables$109,463 $95,104 
Less: allowance for doubtful accounts(2,271)(2,242)
Unbilled receivables, net$107,192 $92,862 
XML 23 R13.htm IDEA: XBRL DOCUMENT v3.23.2
Property and Equipment, net
6 Months Ended
Jul. 01, 2023
Property, Plant and Equipment [Abstract]  
Property and Equipment, net Property and Equipment, net
Property and equipment, net, consists of the following:
July 1, 2023December 31, 2022
Office furniture and equipment$3,346 $3,421 
Computer equipment29,820 25,816 
Survey and field equipment57,126 49,985 
Leasehold improvements6,828 6,546 
Total97,120 85,768 
Less: accumulated depreciation(47,728)(44,128)
Property and equipment, net$49,392 $41,640 
Depreciation expense was $3,605 and $6,871 for the three and six months ended July 1, 2023, respectively, of which $1,366 and $2,620 was included in other direct costs. Depreciation expense was $2,835 and $5,739 for the three and six months ended July 2, 2022, respectively, of which $1,223 and $2,456 was included in other direct costs.
XML 24 R14.htm IDEA: XBRL DOCUMENT v3.23.2
Goodwill and Intangible Assets
6 Months Ended
Jul. 01, 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 six months ended July 1, 2023 were as follows:
Six Months Ended
December 31, 20222023 AcquisitionsAdjustmentsForeign Currency Translation of non-USD functional currency goodwillJuly 1, 2023
INF$90,932 $726 $— $— $91,658 
BTS111,838 913 13 — 112,764 
GEO198,187 124,395 (10)(146)322,426 
Total$400,957 $126,034 $$(146)$526,848 
Goodwill of $1,225 from acquisitions completed during the six months ended July 1, 2023 is expected to be deductible for income tax purposes.
Intangible Assets
Intangible assets, net, as of July 1, 2023 and December 31, 2022 consist of the following:
July 1, 2023December 31, 2022
Gross
Carrying
Amount
Accumulated AmortizationNet
Amount
Gross
Carrying
Amount
Accumulated AmortizationNet
Amount
Finite-lived intangible assets:
Customer relationships(1)
$309,452 $(100,697)$208,755 $222,998 $(87,054)$135,944 
Trade name(2)
22,140 (16,996)5,144 16,883 (15,933)950 
Customer backlog(3)
34,391 (29,711)4,680 29,419 (27,333)2,086 
Non-compete(4)
14,826 (11,995)2,831 14,110 (11,298)2,812 
Developed technology(5)
39,108 (16,939)22,169 32,944 (14,305)18,639 
Total finite-lived intangible assets$419,917 $(176,338)$243,579 $316,354 $(155,923)$160,431 

(1) Amortized on a straight-line basis over estimated lives (1 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 (1 to 5 years)
(5) Amortized on a straight-line basis over their estimated lives (5 to 10 years)
The identifiable intangible assets acquired during the six months ended July 1, 2023 consist of customer relationships, trade name, customer backlog, non-compete, and developed technology with weighted average lives of 12.5 years, 3.7 years, 1.2 years, 3.6 years, and 6.6 years. respectively. Amortization expense was $11,300 and $20,334 during the three and six months ended July 1, 2023, respectively, and $8,056 and $16,319 during the three and six months ended July 2, 2022, respectively.
XML 25 R15.htm IDEA: XBRL DOCUMENT v3.23.2
Accrued Liabilities
6 Months Ended
Jul. 01, 2023
Payables and Accruals [Abstract]  
Accrued Liabilities Accrued Liabilities
Accrued liabilities consist of the following:
July 1, 2023December 31, 2022
Current portion of lease liability$14,238 $13,081 
Accrued vacation15,083 12,467 
Payroll and related taxes8,612 6,616 
Benefits4,478 5,160 
Accrued operating expenses7,090 4,540 
Other3,234 2,449 
Total$52,735 $44,313 
XML 26 R16.htm IDEA: XBRL DOCUMENT v3.23.2
Notes Payable and Other Obligations
6 Months Ended
Jul. 01, 2023
Payables and Accruals [Abstract]  
Notes Payable and Other Obligations Notes Payable and Other Obligations
Notes payable and other obligations consists of the following:
July 1, 2023December 31, 2022
Senior credit facility$200,750 $33,750 
Uncollateralized promissory notes21,665 18,492 
Finance leases3,001 3,465 
Other obligations933 1,814 
Debt issuance costs, net of amortization(2,308)(2,672)
Total notes payable and other obligations224,041 54,849 
Current portion of notes payable and other obligations14,800 15,176 
Notes payable and other obligations, less current portion$209,241 $39,673 
As of July 1, 2023 and December 31, 2022, the carrying amount of debt obligations approximates their fair values based on Level 2 inputs 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.
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 July 1, 2023 and December 31, 2022, the outstanding balance on the Second A&R Credit Agreement was $200,750 and $33,750, respectively.
The Company's Second A&R Credit Agreement provides for the replacement of LIBOR (London Interbank Offered Rate), which prior to April 1, 2023, was transitioned to SOFR (Secured Overnight Funding Rate), subject to the completion of the relevant existing interest period ("LIBOR Transition"). 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 LIBOR or, from and after the LIBOR Transition, either Term SOFR 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 July 1, 2023, the Company's interest rate was 6.5%.
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 July 1, 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 $171 and $365 during the three and six months ended July 1, 2023, respectively, and $185 and $370 during the three and six months ended July 2, 2022, respectively.
Other Obligations
The Company has aggregate obligations related to acquisitions of $22,598 and $20,306 as of July 1, 2023 and December 31, 2022, respectively. As of July 1, 2023, the Company's weighted average interest rate on other outstanding obligations was 3.1%
XML 27 R17.htm IDEA: XBRL DOCUMENT v3.23.2
Contingent Consideration
6 Months Ended
Jul. 01, 2023
Commitments and Contingencies Disclosure [Abstract]  
Contingent Consideration Contingent Consideration
The following table summarizes the changes in the carrying value of estimated contingent consideration:
July 1, 2023December 31, 2022
Contingent consideration, beginning of the year$15,335 $8,328 
Additions for acquisitions325 6,299 
Reduction of liability for payments made(2,100)(2,264)
(Decrease) increase of liability related to re-measurement of fair value(7,514)2,972 
Total contingent consideration, end of the period6,046 15,335 
Current portion of contingent consideration4,149 10,854 
Contingent consideration, less current portion$1,897 $4,481 
During the six months ended July 1, 2023, the Company recorded earn-out fair value adjustments of $7,514 that decreased the contingent consideration liability related to acquisitions.
XML 28 R18.htm IDEA: XBRL DOCUMENT v3.23.2
Commitments and Contingencies
6 Months Ended
Jul. 01, 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 29 R19.htm IDEA: XBRL DOCUMENT v3.23.2
Stock-Based Compensation
6 Months Ended
Jul. 01, 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 July 1, 2023, 2,145,774 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 the six months ended July 1, 2023:
Number of Unvested Restricted Shares of Common Stock and Restricted Stock UnitsWeighted Average
Grant Date Fair
Value
December 31, 2022713,793$81.25 
Granted264,434$107.12 
Vested(202,453)$47.00 
Forfeited(18,171)$87.75 
July 1, 2023757,603$99.26 
Stock-based compensation expense relating to restricted stock awards during the three and six months ended July 1, 2023 was $4,902 and $10,728, respectively, and $4,826 and $9,615 during the three and six months ended July 2, 2022, respectively. In connection with the Company's 401(k) Profit Sharing match, stock-based compensation expense during the three and six months ended July 1, 2023 includes $543 and $1,157, respectively, of expense related to the Company's liability-classified awards. Stock-based compensation expense during the three and six months ended July 2, 2022 includes $383 and $654, 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 $5,120. The 401(k) Profit Sharing restricted stock awards are issued under the rules of the NV5 Global, Inc. 2023 Equity Incentive Plan and are not issued into the NV5 401(k) Profit Sharing plan. Approximately $46,313 of deferred compensation, which is expected to be recognized over the remaining weighted average vesting period of 1.7 years, is unrecognized at July 1, 2023. The total fair value of restricted shares vested during the six months ended July 1, 2023 and July 2, 2022 was $20,851 and $7,296, respectively.
XML 30 R20.htm IDEA: XBRL DOCUMENT v3.23.2
Income Taxes
6 Months Ended
Jul. 01, 2023
Income Tax Disclosure [Abstract]  
Income Taxes Income Taxes
As of July 1, 2023 and December 31, 2022, the Company had net deferred income tax liabilities of $20,487 and $6,893, respectively. Deferred income tax liabilities primarily relate to intangible assets and accounting basis adjustments where we have a future obligation for tax purposes.
The Company's effective income tax rate was 8.2% and 11.7% during the three and six months ended July 1, 2023, respectively, and 20.5% and 22.3% during the three and six months ended July 2, 2022, respectively. The difference between the effective income tax rate and the combined statutory federal and state income tax rate was primarily due to the recognition of excess tax benefits from stock-based payments in the second quarter of 2023 and 2022 and federal credits.
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 2019 through 2022 are considered open tax years in the U.S. federal jurisdiction, state and foreign jurisdictions. Fiscal years 2012 - 2014 are considered open in the State of California. It is not expected that there will be a significant change in the unrecognized tax benefits within the next 12 months.
XML 31 R21.htm IDEA: XBRL DOCUMENT v3.23.2
Reportable Segments
6 Months Ended
Jul. 01, 2023
Segment Reporting [Abstract]  
Reportable Segments Reportable Segments
The Company reports segment information in accordance with ASC Topic No. 280 “Segment Reporting” (“Topic No. 280”). The Company's Chief Executive Officer, who is the chief operating decision maker ("CODM"), organized the Company into three operating and reportable segments: 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:
Three Months EndedSix Months Ended
July 1, 2023July 2, 2022July 1, 2023July 2, 2022
Gross revenues
INF$96,728 $102,639 $184,938 $202,600 
BTS54,032 61,331 106,878 121,785 
GEO71,878 38,762 115,139 68,500 
Total gross revenues$222,638 $202,732 $406,955 $392,885 
Segment income before taxes
INF$16,745 $19,206 $33,726 $35,457 
BTS8,113 12,622 16,531 25,435 
GEO14,814 11,034 21,835 16,138 
Total Segment income before taxes39,672 42,862 72,092 77,030 
Corporate(1)
(22,882)(21,149)(47,898)(43,678)
Total income before taxes$16,790 $21,713 $24,194 $33,352 
(1) Includes amortization of intangibles of $11,300 and $20,334 for the three and six months ended July 1, 2023, respectively, and $8,056 and $16,319 during the three and six months ended July 2, 2022, respectively.
The Company disaggregates its gross revenues from contracts with customers by geographic location, customer-type and contract-type for each of our 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. Gross revenue, classified by the major geographic areas in which the Company's customers were located, were as follows:
Three Months Ended July 1, 2023Six Months Ended July 1, 2023
INFBTSGEOTotalINFBTSGEOTotal
United States$96,728 $46,560 $68,218 $211,506 $184,938 $90,946 $110,442 $386,326 
Foreign— 7,472 3,660 11,132 — 15,932 4,697 20,629 
Total gross revenues$96,728 $54,032 $71,878 $222,638 $184,938 $106,878 $115,139 $406,955 
Three Months Ended July 2, 2022Six Months Ended July 2, 2022
INFBTSGEOTotalINFBTSGEOTotal
United States$102,639 $54,603 $38,245 $195,487 $202,600 $107,521 $67,462 $377,583 
Foreign— 6,728 517 7,245 — 14,264 1,038 15,302 
Total gross revenues$102,639 $61,331 $38,762 $202,732 $202,600 $121,785 $68,500 $392,885 
    Gross revenue by customer were as follows:
Three Months Ended July 1, 2023Six Months Ended July 1, 2023
INFBTSGEOTotalINFBTSGEOTotal
Public and quasi-public sector$77,332 $15,998 $61,641 $154,971 $147,062 $33,945 $97,409 $278,416 
Private sector19,396 38,034 10,237 67,667 37,876 72,933 17,730 128,539 
Total gross revenues$96,728 $54,032 $71,878 $222,638 $184,938 $106,878 $115,139 $406,955 
Three Months Ended July 2, 2022Six Months Ended July 2, 2022
INFBTSGEOTotalINFBTSGEOTotal
Public and quasi-public sector$80,054 $15,635 $31,644 $127,333 $159,258 $30,896 $54,634 $244,788 
Private sector22,585 45,696 7,118 75,399 43,342 90,889 13,866 148,097 
Total gross revenues$102,639 $61,331 $38,762 $202,732 $202,600 $121,785 $68,500 $392,885 

    Gross revenues by contract type were as follows:
Three Months Ended July 1, 2023Six Months Ended July 1, 2023
INFBTSGEOTotalINFBTSGEOTotal
Cost-reimbursable contracts$93,185 $38,670 $70,274 $202,129 $177,042 $79,294 $113,501 $369,837 
Fixed-unit price contracts3,543 15,362 1,604 20,509 7,896 27,584 1,638 37,118 
Total gross revenues$96,728 $54,032 $71,878 $222,638 $184,938 $106,878 $115,139 $406,955 
Three Months Ended July 2, 2022Six Months Ended July 2, 2022
INFBTSGEOTotalINFBTSGEOTotal
Cost-reimbursable contracts$98,604 $39,006 $38,638 $176,248 $194,326 $78,492 $68,283 $341,101 
Fixed-unit price contracts4,035 22,325 124 26,484 8,274 43,293 217 51,784 
Total gross revenues$102,639 $61,331 $38,762 $202,732 $202,600 $121,785 $68,500 $392,885 
XML 32 R22.htm IDEA: XBRL DOCUMENT v3.23.2
Stockholders' Equity
6 Months Ended
Jul. 01, 2023
Equity [Abstract]  
Stockholders' Equity Stockholders' Equity
Accumulated Other Comprehensive Income (Loss)
The Company's accumulated other comprehensive income (loss) consists of foreign currency translation adjustments related to the Company's foreign operations with functional currency other than the U.S. dollar. The after-tax changes in accumulated other comprehensive income (loss) by component were as follows:
Accumulated Other Comprehensive Income (Loss)
Foreign currency translation adjustments balance, December 31, 2022$— 
Other comprehensive income (loss)(191)
Foreign currency translation adjustments balance, July 1, 2023$(191)
XML 33 R23.htm IDEA: XBRL DOCUMENT v3.23.2
Summary of Significant Accounting Policies (Policies)
6 Months Ended
Jul. 01, 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 (“U.S. GAAP”) and have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”) for reporting of interim financial information. Pursuant to such rules and regulations, certain information and footnote disclosures normally included in financial statements prepared in accordance with U.S. GAAP have been condensed or omitted. The consolidated financial statements include the accounts of the Company and its subsidiaries. All intercompany transactions and balances have been eliminated in consolidation.
In the opinion of management, the accompanying unaudited interim consolidated financial statements of the Company contain all adjustments necessary to present fairly the financial position and results of operations of the Company as of the dates and for the periods presented. Accordingly, these statements should be read in conjunction with the consolidated financial statements and notes contained in the Company’s Annual Report on Form 10-K for the year ended December 31, 2022 (the “2022 Form 10-K”). The results of operations and cash flows for the interim periods presented are not necessarily indicative of the results to be expected for any future interim period or for the full 2023 fiscal year.
Performance Obligations
Performance Obligations
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 that 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 revenue 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.
As of July 1, 2023, the Company had $821,052 of remaining performance obligations, of which $676,038 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 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 Sheet. The liability “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.
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.
 
Goodwill is required to be evaluated for impairment on an annual basis or whenever events or changes in circumstances indicate the asset may be impaired. 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 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. 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 has elected to perform its annual goodwill impairment review as of August 1 of each year. The Company conducts its annual impairment tests on the goodwill using the quantitative method of evaluating goodwill.
As of August 1, 2022, the Company conducted its annual impairment tests using the quantitative method of evaluating goodwill. Based on the quantitative analyses the Company determined the fair value of each of the reporting units exceeded its carrying value. Therefore, the goodwill was not impaired and the Company did not recognize an impairment charge relating to goodwill as of August 1, 2022. Furthermore, there were no indicators, events or changes in circumstances that would indicate goodwill was impaired during the period from August 2, 2022 through July 1, 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 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. There were no indicators, events or changes in circumstances that would indicate intangible assets were impaired during the six months ended July 1, 2023.
Recent Accounting Pronouncements Recent Accounting PronouncementsNone
XML 34 R24.htm IDEA: XBRL DOCUMENT v3.23.2
Earnings per Share (Tables)
6 Months Ended
Jul. 01, 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:
Three Months EndedSix Months Ended
July 1, 2023July 2, 2022July 1, 2023July 2, 2022
Numerator:
Net income – basic and diluted$15,413 $17,268 $21,360 $25,910 
Denominator:
Basic weighted average shares outstanding15,014,106 14,736,167 14,948,796 14,714,745 
Effect of dilutive non-vested restricted shares and units413,856 481,815 447,546 481,379 
Effect of issuable shares related to acquisitions23,826 14,175 25,193 15,711 
Diluted weighted average shares outstanding15,451,788 15,232,157 15,421,535 15,211,835 
XML 35 R25.htm IDEA: XBRL DOCUMENT v3.23.2
Business Acquisitions (Tables)
6 Months Ended
Jul. 01, 2023
Business Combination and Asset Acquisition [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 date for the acquisitions closed during the six months ended July 1, 2023 and the fiscal year ended December 31, 2022:
20232022
VISAximOtherTotalTotal
Cash$7,027 $5,419 $— $12,446 $— 
Billed and unbilled receivables, net5,042 13,937 487 19,466 1,794 
Right-of-use assets2,113 1,622 189 3,924 632 
Property and equipment118 2,870 — 2,988 1,510 
Prepaid expenses1,505 1,543 17 3,065 — 
Other assets— 155 — 155 — 
Intangible assets:
Customer relationships33,394 52,206 859 86,459 3,606 
Trade name2,958 2,266 33 5,257 268 
Customer backlog868 3,920 186 4,974 459 
Developed technology4,222 1,942 — 6,164 — 
Non-compete25 580 93 698 298 
Total Assets$57,272 $86,460 $1,864 $145,596 $8,567 
Liabilities(16,439)(13,668)(188)(30,295)(5,623)
Deferred tax liabilities(7,105)(14,223)— (21,328)— 
Net assets acquired$33,728 $58,569 $1,676 $93,973 $2,944 
Consideration paid (Cash, Notes and/or stock)$75,682 $141,010 $2,990 $219,682 $7,921 
Contingent earn-out liability (Cash and stock)— — 325 325 6,299 
Total Consideration$75,682 $141,010 $3,315 $220,007 $14,220 
Excess consideration over the amounts assigned to the net assets acquired (Goodwill)$41,954 $82,441 $1,639 $126,034 $11,276 
Schedule Of Pro Forma Consolidated Results Of Operations The following table presents the results of operations of businesses acquired from their respective dates of acquisition for the three and six months ended July 1, 2023. The revenue and earnings of the fiscal 2022 acquisitions included in the Company's results since the acquisition dates are not material to the Company's consolidated financial statements and have not been presented.
Three Months EndedSix Months Ended
July 1, 2023July 1, 2023
Gross revenues$29,589 $37,064 
Income before income taxes$4,904 $5,631 
The pro forma results are not necessarily indicative of (i) the results of operations that would have occurred had the operations of these acquisitions actually been acquired at the beginning of fiscal year 2022 or (ii) future results of operations:
Three Months EndedSix Months Ended
July 1, 2023July 2, 2022July 1, 2023July 2, 2022
Gross revenues$223,036 $231,351 $429,754 $450,204 
Net income$15,374 $16,998 $20,581 $25,363 
Basic earnings per share$1.02 $1.14 $1.38 $1.71 
Diluted earnings per share$0.99 $1.11 $1.33 $1.65 
XML 36 R26.htm IDEA: XBRL DOCUMENT v3.23.2
Billed and Unbilled Receivables (Tables)
6 Months Ended
Jul. 01, 2023
Receivables [Abstract]  
Schedule Of Accounts, Notes, Loans And Financing Receivable
Billed and unbilled receivables consists of the following:
July 1, 2023December 31, 2022
Billed receivables$152,530 $149,082 
Less: allowance for doubtful accounts(3,420)(3,445)
Billed receivables, net$149,110 $145,637 
Unbilled receivables$109,463 $95,104 
Less: allowance for doubtful accounts(2,271)(2,242)
Unbilled receivables, net$107,192 $92,862 
XML 37 R27.htm IDEA: XBRL DOCUMENT v3.23.2
Property and Equipment, net (Tables)
6 Months Ended
Jul. 01, 2023
Property, Plant and Equipment [Abstract]  
Schedule Of Property And Equipment
Property and equipment, net, consists of the following:
July 1, 2023December 31, 2022
Office furniture and equipment$3,346 $3,421 
Computer equipment29,820 25,816 
Survey and field equipment57,126 49,985 
Leasehold improvements6,828 6,546 
Total97,120 85,768 
Less: accumulated depreciation(47,728)(44,128)
Property and equipment, net$49,392 $41,640 
XML 38 R28.htm IDEA: XBRL DOCUMENT v3.23.2
Goodwill and Intangible Assets (Tables)
6 Months Ended
Jul. 01, 2023
Goodwill and Intangible Assets Disclosure [Abstract]  
Schedule Of Goodwill
The changes in the carrying value by reportable segment for the six months ended July 1, 2023 were as follows:
Six Months Ended
December 31, 20222023 AcquisitionsAdjustmentsForeign Currency Translation of non-USD functional currency goodwillJuly 1, 2023
INF$90,932 $726 $— $— $91,658 
BTS111,838 913 13 — 112,764 
GEO198,187 124,395 (10)(146)322,426 
Total$400,957 $126,034 $$(146)$526,848 
Schedule Of Finite-lived Intangible Assets
Intangible assets, net, as of July 1, 2023 and December 31, 2022 consist of the following:
July 1, 2023December 31, 2022
Gross
Carrying
Amount
Accumulated AmortizationNet
Amount
Gross
Carrying
Amount
Accumulated AmortizationNet
Amount
Finite-lived intangible assets:
Customer relationships(1)
$309,452 $(100,697)$208,755 $222,998 $(87,054)$135,944 
Trade name(2)
22,140 (16,996)5,144 16,883 (15,933)950 
Customer backlog(3)
34,391 (29,711)4,680 29,419 (27,333)2,086 
Non-compete(4)
14,826 (11,995)2,831 14,110 (11,298)2,812 
Developed technology(5)
39,108 (16,939)22,169 32,944 (14,305)18,639 
Total finite-lived intangible assets$419,917 $(176,338)$243,579 $316,354 $(155,923)$160,431 

(1) Amortized on a straight-line basis over estimated lives (1 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 (1 to 5 years)
(5) Amortized on a straight-line basis over their estimated lives (5 to 10 years)
XML 39 R29.htm IDEA: XBRL DOCUMENT v3.23.2
Accrued Liabilities (Tables)
6 Months Ended
Jul. 01, 2023
Payables and Accruals [Abstract]  
Schedule Of Accrued Liabilities
Accrued liabilities consist of the following:
July 1, 2023December 31, 2022
Current portion of lease liability$14,238 $13,081 
Accrued vacation15,083 12,467 
Payroll and related taxes8,612 6,616 
Benefits4,478 5,160 
Accrued operating expenses7,090 4,540 
Other3,234 2,449 
Total$52,735 $44,313 
XML 40 R30.htm IDEA: XBRL DOCUMENT v3.23.2
Notes Payable and Other Obligations (Tables)
6 Months Ended
Jul. 01, 2023
Payables and Accruals [Abstract]  
Schedule Of Notes Payable And Other Obligations
Notes payable and other obligations consists of the following:
July 1, 2023December 31, 2022
Senior credit facility$200,750 $33,750 
Uncollateralized promissory notes21,665 18,492 
Finance leases3,001 3,465 
Other obligations933 1,814 
Debt issuance costs, net of amortization(2,308)(2,672)
Total notes payable and other obligations224,041 54,849 
Current portion of notes payable and other obligations14,800 15,176 
Notes payable and other obligations, less current portion$209,241 $39,673 
XML 41 R31.htm IDEA: XBRL DOCUMENT v3.23.2
Contingent Consideration (Tables)
6 Months Ended
Jul. 01, 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:
July 1, 2023December 31, 2022
Contingent consideration, beginning of the year$15,335 $8,328 
Additions for acquisitions325 6,299 
Reduction of liability for payments made(2,100)(2,264)
(Decrease) increase of liability related to re-measurement of fair value(7,514)2,972 
Total contingent consideration, end of the period6,046 15,335 
Current portion of contingent consideration4,149 10,854 
Contingent consideration, less current portion$1,897 $4,481 
XML 42 R32.htm IDEA: XBRL DOCUMENT v3.23.2
Stock-Based Compensation (Tables)
6 Months Ended
Jul. 01, 2023
Share-Based Payment Arrangement [Abstract]  
Share-based Payment Arrangement, Restricted Stock Unit, Activity
The following summarizes the activity of restricted stock awards during the six months ended July 1, 2023:
Number of Unvested Restricted Shares of Common Stock and Restricted Stock UnitsWeighted Average
Grant Date Fair
Value
December 31, 2022713,793$81.25 
Granted264,434$107.12 
Vested(202,453)$47.00 
Forfeited(18,171)$87.75 
July 1, 2023757,603$99.26 
XML 43 R33.htm IDEA: XBRL DOCUMENT v3.23.2
Reportable Segments (Tables)
6 Months Ended
Jul. 01, 2023
Segment Reporting [Abstract]  
Schedule Of Segment Reporting Information, By Segment The following tables set forth summarized financial information concerning our reportable segments:
Three Months EndedSix Months Ended
July 1, 2023July 2, 2022July 1, 2023July 2, 2022
Gross revenues
INF$96,728 $102,639 $184,938 $202,600 
BTS54,032 61,331 106,878 121,785 
GEO71,878 38,762 115,139 68,500 
Total gross revenues$222,638 $202,732 $406,955 $392,885 
Segment income before taxes
INF$16,745 $19,206 $33,726 $35,457 
BTS8,113 12,622 16,531 25,435 
GEO14,814 11,034 21,835 16,138 
Total Segment income before taxes39,672 42,862 72,092 77,030 
Corporate(1)
(22,882)(21,149)(47,898)(43,678)
Total income before taxes$16,790 $21,713 $24,194 $33,352 
(1) Includes amortization of intangibles of $11,300 and $20,334 for the three and six months ended July 1, 2023, respectively, and $8,056 and $16,319 during the three and six months ended July 2, 2022, respectively.
Schedule Of Revenue From External Customers By Geographic Areas Gross revenue, classified by the major geographic areas in which the Company's customers were located, were as follows:
Three Months Ended July 1, 2023Six Months Ended July 1, 2023
INFBTSGEOTotalINFBTSGEOTotal
United States$96,728 $46,560 $68,218 $211,506 $184,938 $90,946 $110,442 $386,326 
Foreign— 7,472 3,660 11,132 — 15,932 4,697 20,629 
Total gross revenues$96,728 $54,032 $71,878 $222,638 $184,938 $106,878 $115,139 $406,955 
Three Months Ended July 2, 2022Six Months Ended July 2, 2022
INFBTSGEOTotalINFBTSGEOTotal
United States$102,639 $54,603 $38,245 $195,487 $202,600 $107,521 $67,462 $377,583 
Foreign— 6,728 517 7,245 — 14,264 1,038 15,302 
Total gross revenues$102,639 $61,331 $38,762 $202,732 $202,600 $121,785 $68,500 $392,885 
Schedule Of Revenue By Major Customers By Reporting Segments Gross revenue by customer were as follows:
Three Months Ended July 1, 2023Six Months Ended July 1, 2023
INFBTSGEOTotalINFBTSGEOTotal
Public and quasi-public sector$77,332 $15,998 $61,641 $154,971 $147,062 $33,945 $97,409 $278,416 
Private sector19,396 38,034 10,237 67,667 37,876 72,933 17,730 128,539 
Total gross revenues$96,728 $54,032 $71,878 $222,638 $184,938 $106,878 $115,139 $406,955 
Three Months Ended July 2, 2022Six Months Ended July 2, 2022
INFBTSGEOTotalINFBTSGEOTotal
Public and quasi-public sector$80,054 $15,635 $31,644 $127,333 $159,258 $30,896 $54,634 $244,788 
Private sector22,585 45,696 7,118 75,399 43,342 90,889 13,866 148,097 
Total gross revenues$102,639 $61,331 $38,762 $202,732 $202,600 $121,785 $68,500 $392,885 
Schedule Of Revenue From External Customers By Products And Services Gross revenues by contract type were as follows:
Three Months Ended July 1, 2023Six Months Ended July 1, 2023
INFBTSGEOTotalINFBTSGEOTotal
Cost-reimbursable contracts$93,185 $38,670 $70,274 $202,129 $177,042 $79,294 $113,501 $369,837 
Fixed-unit price contracts3,543 15,362 1,604 20,509 7,896 27,584 1,638 37,118 
Total gross revenues$96,728 $54,032 $71,878 $222,638 $184,938 $106,878 $115,139 $406,955 
Three Months Ended July 2, 2022Six Months Ended July 2, 2022
INFBTSGEOTotalINFBTSGEOTotal
Cost-reimbursable contracts$98,604 $39,006 $38,638 $176,248 $194,326 $78,492 $68,283 $341,101 
Fixed-unit price contracts4,035 22,325 124 26,484 8,274 43,293 217 51,784 
Total gross revenues$102,639 $61,331 $38,762 $202,732 $202,600 $121,785 $68,500 $392,885 
XML 44 R34.htm IDEA: XBRL DOCUMENT v3.23.2
Stockholders' Equity (Tables)
6 Months Ended
Jul. 01, 2023
Equity [Abstract]  
Schedule of Accumulated Other Comprehensive Income (Loss) The after-tax changes in accumulated other comprehensive income (loss) by component were as follows:
Accumulated Other Comprehensive Income (Loss)
Foreign currency translation adjustments balance, December 31, 2022$— 
Other comprehensive income (loss)(191)
Foreign currency translation adjustments balance, July 1, 2023$(191)
XML 45 R35.htm IDEA: XBRL DOCUMENT v3.23.2
Summary of Significant Accounting Policies - Revenue Recognition (Details)
$ in Thousands
Jul. 01, 2023
USD ($)
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining revenue performance obligation amount $ 821,052
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-07-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining revenue performance obligation amount $ 676,038
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-07-01 | Period One  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligation expected timing of satisfaction 12 months
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-07-01 | Period Two  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Remaining performance obligation expected timing of satisfaction 24 months
XML 46 R36.htm IDEA: XBRL DOCUMENT v3.23.2
Summary of Significant Accounting Policies - Contract Balances (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2023
Jul. 01, 2023
Accounting Policies [Abstract]    
Revenue from contract liability $ 6,616 $ 25,046
XML 47 R37.htm IDEA: XBRL DOCUMENT v3.23.2
Earnings per Share - Narrative (Details) - shares
3 Months Ended 6 Months Ended
Jul. 01, 2023
Jul. 02, 2022
Jul. 01, 2023
Jul. 02, 2022
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Antidilutive securities (in shares) 111,584 20,854 41,536 25,653
Restricted Stock        
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Antidilutive securities (in shares)     688,377 739,919
XML 48 R38.htm IDEA: XBRL DOCUMENT v3.23.2
Earnings per Share - Schedule of Earnings Per Share, Basic and Diluted (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2023
Jul. 02, 2022
Jul. 01, 2023
Jul. 02, 2022
Numerator:        
Net income – basic $ 15,413 $ 17,268 $ 21,360 $ 25,910
Net income – diluted $ 15,413 $ 17,268 $ 21,360 $ 25,910
Denominator:        
Basic weighted average shares outstanding (in shares) 15,014,106 14,736,167 14,948,796 14,714,745
Effect of dilutive non-vested restricted shares and units (in shares) 413,856 481,815 447,546 481,379
Effect of issuable shares related to acquisitions (in shares) 23,826 14,175 25,193 15,711
Diluted weighted average shares outstanding (in shares) 15,451,788 15,232,157 15,421,535 15,211,835
XML 49 R39.htm IDEA: XBRL DOCUMENT v3.23.2
Business Acquisitions - Narrative (Details)
$ in Thousands
6 Months Ended 12 Months Ended
Apr. 06, 2023
USD ($)
Feb. 22, 2023
USD ($)
Jul. 01, 2023
USD ($)
acquisition
Jul. 02, 2022
USD ($)
Dec. 31, 2022
USD ($)
acquisition
Jan. 01, 2022
USD ($)
Business Acquisition [Line Items]            
Aggregate cash purchase price     $ 186,242 $ 4,670    
Earn-out of cash fair value     6,046   $ 15,335 $ 8,328
Axim            
Business Acquisition [Line Items]            
Aggregate purchase price   $ 141,010 141,010      
Payments to acquire businesses   120,106        
Consideration of common stock   13,500        
Axim | Uncollateralized Promissory Notes            
Business Acquisition [Line Items]            
Notes payable outstanding balance   $ 7,404        
Other            
Business Acquisition [Line Items]            
Aggregate purchase price     3,315      
Payments to acquire businesses     2,900      
Consideration of common stock     $ 90      
Number of businesses acquired | acquisition     3      
Potential earn-out in cash and stock     $ 340      
Earn-out of cash fair value     325      
Series of Individually Immaterial Business Acquisitions            
Business Acquisition [Line Items]            
Aggregate purchase price     220,007   14,220  
Payments to acquire businesses         5,882  
Consideration of common stock         $ 433  
Number of businesses acquired | acquisition         5  
Potential earn-out in cash and stock         $ 15,850  
Earn-out of cash fair value         6,299  
Series of Individually Immaterial Business Acquisitions | Uncollateralized Promissory Notes            
Business Acquisition [Line Items]            
Notes payable outstanding balance         $ 1,606  
VIS            
Business Acquisition [Line Items]            
Aggregate cash purchase price $ 75,682          
Aggregate purchase price     $ 75,682      
XML 50 R40.htm IDEA: XBRL DOCUMENT v3.23.2
Business Acquisitions - Summary of the Fair Values of Assets Acquired and Liabilities Assumed (Details) - USD ($)
$ in Thousands
6 Months Ended 12 Months Ended
Feb. 22, 2023
Jul. 01, 2023
Dec. 31, 2022
VIS      
Acquired Finite-Lived Intangible Assets [Line Items]      
Cash   $ 7,027  
Billed and unbilled receivables, net   5,042  
Right-of-use assets   2,113  
Property and equipment   118  
Prepaid expenses   1,505  
Other assets   0  
Total Assets   57,272  
Liabilities   (16,439)  
Deferred tax liabilities   (7,105)  
Net assets acquired   33,728  
Consideration paid (Cash, Notes and/or stock)   75,682  
Contingent earn-out liability (Cash and stock)   0  
Total Consideration   75,682  
Excess consideration over the amounts assigned to the net assets acquired (Goodwill)   41,954  
VIS | Customer relationships      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   33,394  
VIS | Trade name      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   2,958  
VIS | Customer backlog      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   868  
VIS | Developed technology      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   4,222  
VIS | Non-compete      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   25  
Axim      
Acquired Finite-Lived Intangible Assets [Line Items]      
Cash   5,419  
Billed and unbilled receivables, net   13,937  
Right-of-use assets   1,622  
Property and equipment   2,870  
Prepaid expenses   1,543  
Other assets   155  
Total Assets   86,460  
Liabilities   (13,668)  
Deferred tax liabilities   (14,223)  
Net assets acquired   58,569  
Consideration paid (Cash, Notes and/or stock)   141,010  
Contingent earn-out liability (Cash and stock)   0  
Total Consideration $ 141,010 141,010  
Excess consideration over the amounts assigned to the net assets acquired (Goodwill)   82,441  
Axim | Customer relationships      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   52,206  
Axim | Trade name      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   2,266  
Axim | Customer backlog      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   3,920  
Axim | Developed technology      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   1,942  
Axim | Non-compete      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   580  
Other      
Acquired Finite-Lived Intangible Assets [Line Items]      
Cash   0  
Billed and unbilled receivables, net   487  
Right-of-use assets   189  
Property and equipment   0  
Prepaid expenses   17  
Other assets   0  
Total Assets   1,864  
Liabilities   (188)  
Deferred tax liabilities   0  
Net assets acquired   1,676  
Consideration paid (Cash, Notes and/or stock)   2,990  
Contingent earn-out liability (Cash and stock)   325  
Total Consideration   3,315  
Excess consideration over the amounts assigned to the net assets acquired (Goodwill)   1,639  
Other | Customer relationships      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   859  
Other | Trade name      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   33  
Other | Customer backlog      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   186  
Other | Developed technology      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   0  
Other | Non-compete      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   93  
Series of Individually Immaterial Business Acquisitions      
Acquired Finite-Lived Intangible Assets [Line Items]      
Cash   12,446 $ 0
Billed and unbilled receivables, net   19,466 1,794
Right-of-use assets   3,924 632
Property and equipment   2,988 1,510
Prepaid expenses   3,065 0
Other assets   155 0
Total Assets   145,596 8,567
Liabilities   (30,295) (5,623)
Deferred tax liabilities   (21,328) 0
Net assets acquired   93,973 2,944
Consideration paid (Cash, Notes and/or stock)   219,682 7,921
Contingent earn-out liability (Cash and stock)   325 6,299
Total Consideration   220,007 14,220
Excess consideration over the amounts assigned to the net assets acquired (Goodwill)   126,034 11,276
Series of Individually Immaterial Business Acquisitions | Customer relationships      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   86,459 3,606
Series of Individually Immaterial Business Acquisitions | Trade name      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   5,257 268
Series of Individually Immaterial Business Acquisitions | Customer backlog      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   4,974 459
Series of Individually Immaterial Business Acquisitions | Developed technology      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   6,164 0
Series of Individually Immaterial Business Acquisitions | Non-compete      
Acquired Finite-Lived Intangible Assets [Line Items]      
Intangible assets:   $ 698 $ 298
XML 51 R41.htm IDEA: XBRL DOCUMENT v3.23.2
Business Acquisitions - Results of Operations From any Business Acquired (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2023
Jul. 01, 2023
Business Combination and Asset Acquisition [Abstract]    
Gross revenues $ 29,589 $ 37,064
Income before income taxes $ 4,904 $ 5,631
XML 52 R42.htm IDEA: XBRL DOCUMENT v3.23.2
Business Acquisitions - Pro Forma Consolidated Results of Operations (Details) - USD ($)
$ / shares in Units, $ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2023
Jul. 02, 2022
Jul. 01, 2023
Jul. 02, 2022
Business Combination and Asset Acquisition [Abstract]        
Gross revenues $ 223,036 $ 231,351 $ 429,754 $ 450,204
Net income $ 15,374 $ 16,998 $ 20,581 $ 25,363
Basic earnings per share (in dollars per share) $ 1.02 $ 1.14 $ 1.38 $ 1.71
Diluted earnings per share (in dollars per share) $ 0.99 $ 1.11 $ 1.33 $ 1.65
XML 53 R43.htm IDEA: XBRL DOCUMENT v3.23.2
Billed and Unbilled Receivables (Details) - USD ($)
$ in Thousands
Jul. 01, 2023
Dec. 31, 2022
Receivables [Abstract]    
Billed receivables $ 152,530 $ 149,082
Less: allowance for doubtful accounts (3,420) (3,445)
Billed receivables, net 149,110 145,637
Unbilled receivables 109,463 95,104
Less: allowance for doubtful accounts (2,271) (2,242)
Unbilled receivables, net $ 107,192 $ 92,862
XML 54 R44.htm IDEA: XBRL DOCUMENT v3.23.2
Property and Equipment, net (Details) - USD ($)
$ in Thousands
Jul. 01, 2023
Dec. 31, 2022
Property, Plant and Equipment [Line Items]    
Total $ 97,120 $ 85,768
Less: accumulated depreciation (47,728) (44,128)
Property and equipment, net 49,392 41,640
Office furniture and equipment    
Property, Plant and Equipment [Line Items]    
Total 3,346 3,421
Computer equipment    
Property, Plant and Equipment [Line Items]    
Total 29,820 25,816
Survey and field equipment    
Property, Plant and Equipment [Line Items]    
Total 57,126 49,985
Leasehold improvements    
Property, Plant and Equipment [Line Items]    
Total $ 6,828 $ 6,546
XML 55 R45.htm IDEA: XBRL DOCUMENT v3.23.2
Property and Equipment, net - Narrative (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2023
Apr. 02, 2022
Jul. 01, 2023
Jul. 02, 2022
Property, Plant and Equipment [Line Items]        
Depreciation expense $ 3,605 $ 2,835 $ 6,871 $ 5,739
Other Direct Costs        
Property, Plant and Equipment [Line Items]        
Depreciation expense $ 1,366 $ 1,223 $ 2,620 $ 2,456
XML 56 R46.htm IDEA: XBRL DOCUMENT v3.23.2
Goodwill and Intangible Assets - Schedule of Goodwill (Details)
$ in Thousands
6 Months Ended
Jul. 01, 2023
USD ($)
Goodwill [Roll Forward]  
Beginning balance $ 400,957
2023 Acquisitions 126,034
Adjustments 3
Foreign Currency Translation of non-USD functional currency goodwill (146)
Ending balance 526,848
INF  
Goodwill [Roll Forward]  
Beginning balance 90,932
2023 Acquisitions 726
Adjustments 0
Foreign Currency Translation of non-USD functional currency goodwill 0
Ending balance 91,658
BTS  
Goodwill [Roll Forward]  
Beginning balance 111,838
2023 Acquisitions 913
Adjustments 13
Foreign Currency Translation of non-USD functional currency goodwill 0
Ending balance 112,764
GEO  
Goodwill [Roll Forward]  
Beginning balance 198,187
2023 Acquisitions 124,395
Adjustments (10)
Foreign Currency Translation of non-USD functional currency goodwill (146)
Ending balance $ 322,426
XML 57 R47.htm IDEA: XBRL DOCUMENT v3.23.2
Goodwill and Intangible Assets - Narrative (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2023
Jul. 02, 2022
Jul. 01, 2023
Jul. 02, 2022
Finite-Lived Intangible Assets [Line Items]        
Goodwill $ 1,225   $ 1,225  
Amortization expense $ 11,300 $ 8,056 $ 20,334 $ 16,319
Customer relationships        
Finite-Lived Intangible Assets [Line Items]        
Intangible assets, useful life (in years)     12 years 6 months  
Trade name        
Finite-Lived Intangible Assets [Line Items]        
Intangible assets, useful life (in years)     3 years 8 months 12 days  
Customer backlog        
Finite-Lived Intangible Assets [Line Items]        
Intangible assets, useful life (in years)     1 year 2 months 12 days  
Non-compete        
Finite-Lived Intangible Assets [Line Items]        
Intangible assets, useful life (in years)     3 years 7 months 6 days  
Developed technology        
Finite-Lived Intangible Assets [Line Items]        
Intangible assets, useful life (in years)     6 years 7 months 6 days  
XML 58 R48.htm IDEA: XBRL DOCUMENT v3.23.2
Goodwill and Intangible Assets - Schedule of Finite-Lived Intangible Assets (Details) - USD ($)
$ in Thousands
Jul. 01, 2023
Apr. 01, 2023
Dec. 31, 2022
Finite-lived intangible assets:      
Gross Carrying Amount $ 419,917   $ 316,354
Accumulated Amortization (176,338)   (155,923)
Net Amount 243,579   160,431
Customer relationships      
Finite-lived intangible assets:      
Gross Carrying Amount 309,452   222,998
Accumulated Amortization (100,697)   (87,054)
Net Amount 208,755   135,944
Customer relationships | Minimum      
Finite-lived intangible assets:      
Useful life (in years)   1 year  
Customer relationships | Maximum      
Finite-lived intangible assets:      
Useful life (in years)   17 years  
Trade name      
Finite-lived intangible assets:      
Gross Carrying Amount 22,140   16,883
Accumulated Amortization (16,996)   (15,933)
Net Amount 5,144   950
Trade name | Minimum      
Finite-lived intangible assets:      
Useful life (in years)   1 year  
Trade name | Maximum      
Finite-lived intangible assets:      
Useful life (in years)   5 years  
Customer backlog      
Finite-lived intangible assets:      
Gross Carrying Amount 34,391   29,419
Accumulated Amortization (29,711)   (27,333)
Net Amount 4,680   2,086
Customer backlog | Minimum      
Finite-lived intangible assets:      
Useful life (in years)   1 year  
Customer backlog | Maximum      
Finite-lived intangible assets:      
Useful life (in years)   10 years  
Non-compete      
Finite-lived intangible assets:      
Gross Carrying Amount 14,826   14,110
Accumulated Amortization (11,995)   (11,298)
Net Amount 2,831   2,812
Non-compete | Minimum      
Finite-lived intangible assets:      
Useful life (in years)   1 year  
Non-compete | Maximum      
Finite-lived intangible assets:      
Useful life (in years)   5 years  
Developed technology      
Finite-lived intangible assets:      
Gross Carrying Amount 39,108   32,944
Accumulated Amortization (16,939)   (14,305)
Net Amount $ 22,169   $ 18,639
Developed technology | Minimum      
Finite-lived intangible assets:      
Useful life (in years)   5 years  
Developed technology | Maximum      
Finite-lived intangible assets:      
Useful life (in years)   10 years  
XML 59 R49.htm IDEA: XBRL DOCUMENT v3.23.2
Accrued Liabilities (Details) - USD ($)
$ in Thousands
Jul. 01, 2023
Dec. 31, 2022
Payables and Accruals [Abstract]    
Current portion of lease liability $ 14,238 $ 13,081
Accrued vacation 15,083 12,467
Payroll and related taxes 8,612 6,616
Benefits 4,478 5,160
Accrued operating expenses 7,090 4,540
Other 3,234 2,449
Total $ 52,735 $ 44,313
XML 60 R50.htm IDEA: XBRL DOCUMENT v3.23.2
Notes Payable and Other Obligations - Summary of Notes Payable and Other Obligations (Details) - USD ($)
$ in Thousands
Jul. 01, 2023
Dec. 31, 2022
Debt Instrument [Line Items]    
Finance leases $ 3,001 $ 3,465
Debt issuance costs, net of amortization (2,308) (2,672)
Total notes payable and other obligations 224,041 54,849
Current portion of notes payable and other obligations 14,800 15,176
Notes payable and other obligations, less current portion 209,241 39,673
Senior credit facility    
Debt Instrument [Line Items]    
Long-term debt, gross 200,750 33,750
Uncollateralized promissory notes    
Debt Instrument [Line Items]    
Long-term debt, gross 21,665 18,492
Other obligations    
Debt Instrument [Line Items]    
Long-term debt, gross $ 933 $ 1,814
XML 61 R51.htm IDEA: XBRL DOCUMENT v3.23.2
Notes Payable and Other Obligations - Narrative (Details)
3 Months Ended 6 Months Ended
Aug. 13, 2021
USD ($)
Jul. 01, 2023
USD ($)
Jul. 02, 2022
USD ($)
Jul. 01, 2023
USD ($)
Jul. 02, 2022
USD ($)
Dec. 31, 2022
USD ($)
Dec. 07, 2016
USD ($)
Debt Instrument [Line Items]              
Debt covenant, liquidity availability   $ 30,000,000   $ 30,000,000      
Amortization of debt issuance costs       365,000 $ 370,000    
Other obligations   $ 22,598,000   $ 22,598,000   $ 20,306,000  
Weighted average interest rate (as a percent)   3.10%   3.10%      
Senior Credit Facility              
Debt Instrument [Line Items]              
Long-term debt, gross   $ 200,750,000   $ 200,750,000   33,750,000  
Second A&R Credit Agreement              
Debt Instrument [Line Items]              
Minimum fixed charge coverage ratio   3.25   3.25      
AR Credit Agreement              
Debt Instrument [Line Items]              
Debt issuance costs   $ 3,702,000   $ 3,702,000      
Amortization of debt issuance costs   171,000 $ 185,000 365,000 $ 370,000    
Line of Credit | Senior Credit Facility              
Debt Instrument [Line Items]              
Maximum borrowing capacity             $ 150,000,000
Revolving Credit Facility | Senior Credit Facility              
Debt Instrument [Line Items]              
Maximum borrowing capacity             $ 215,000,000
Long-term debt, gross   $ 200,750,000   $ 200,750,000   $ 33,750,000  
Revolving Credit Facility | Second A&R Credit Agreement              
Debt Instrument [Line Items]              
Maximum borrowing capacity $ 400,000,000            
Aggregate credit agreement 138,750,000            
Available increase in borrowing capacity $ 200,000,000            
Interest rate during period (as a percent)       6.50%      
Covenant, net leverage ratio   4.00   4.00      
Minimum fixed charge coverage ratio   1.10   1.10      
XML 62 R52.htm IDEA: XBRL DOCUMENT v3.23.2
Contingent Consideration (Details) - USD ($)
$ in Thousands
6 Months Ended 12 Months Ended
Jul. 01, 2023
Dec. 31, 2022
Commitments and Contingencies Disclosure [Roll Forward]    
Contingent consideration, beginning of the year $ 15,335 $ 8,328
Additions for acquisitions 325 6,299
Reduction of liability for payments made (2,100) (2,264)
(Decrease) increase of liability related to re-measurement of fair value (7,514) 2,972
Total contingent consideration, end of the period 6,046 15,335
Current portion of contingent consideration 4,149 10,854
Contingent consideration, less current portion $ 1,897 $ 4,481
XML 63 R53.htm IDEA: XBRL DOCUMENT v3.23.2
Stock-Based Compensation - Narrative (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2023
Jul. 02, 2022
Jul. 01, 2023
Jul. 02, 2022
Restricted Stock        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Deferred compensation $ 4,902 $ 4,826 $ 10,728 $ 9,615
Weighted average vesting period (in years) 46,313   $ 46,313  
Cost not yet recognized, term (in years)     1 year 8 months 12 days  
Fair value of restricted shares vested     $ 20,851 7,296
Liability Based Awards        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Deferred compensation 543 $ 383 1,157 $ 654
Total estimated fair value $ 5,120   $ 5,120  
Equity Plan 2011        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Number of shares authorized (in shares) 2,145,774   2,145,774  
Equity Plan 2011 | Minimum | Restricted Stock        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Award vesting period (n years)     2 years  
Equity Plan 2011 | Maximum | Restricted Stock        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Award vesting period (n years)     4 years  
XML 64 R54.htm IDEA: XBRL DOCUMENT v3.23.2
Stock-Based Compensation - Restricted Stock Awards (Details) - Restricted Stock
3 Months Ended
Apr. 01, 2023
$ / shares
shares
Number of Unvested Restricted Shares of Common Stock and Restricted Stock Units  
Beginning (in shares) | shares 713,793
Granted (in shares) | shares 264,434
Vested (in shares) | shares (202,453)
Forfeited (in shares) | shares (18,171)
Ending (in shares) | shares 757,603
Weighted Average Grant Date Fair Value  
Beginning (in dollars per share) | $ / shares $ 81.25
Granted (in dollars per share) | $ / shares 107.12
Vested (in dollars per share) | $ / shares 47.00
Forfeited (in dollars per share) | $ / shares 87.75
Ending (in dollars per share) | $ / shares $ 99.26
XML 65 R55.htm IDEA: XBRL DOCUMENT v3.23.2
Income Taxes (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2023
Jul. 02, 2022
Jul. 01, 2023
Jul. 02, 2022
Dec. 31, 2022
Income Tax Disclosure [Abstract]          
Deferred income tax liabilities, net $ 20,487   $ 20,487   $ 6,893
Effective income tax rate (as a percent) 8.20% 20.50% 11.70% 22.30%  
XML 66 R56.htm IDEA: XBRL DOCUMENT v3.23.2
Reportable Segments - Narrative (Details)
6 Months Ended
Jul. 01, 2023
segment
Segment Reporting [Abstract]  
Number of reportable segments 3
Number of operating segments 3
XML 67 R57.htm IDEA: XBRL DOCUMENT v3.23.2
Reportable Segments - Summarized Financial Information (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2023
Jul. 02, 2022
Jul. 01, 2023
Jul. 02, 2022
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues $ 222,638 $ 202,732 $ 406,955 $ 392,885
Segment income before taxes 16,790 21,713 24,194 33,352
Amortization expense 11,300 8,056 20,334 16,319
INF        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 96,728 102,639 184,938 202,600
BTS        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 54,032 61,331 106,878 121,785
GEO        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 71,878 38,762 115,139 68,500
Operating Segments        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Segment income before taxes 39,672 42,862 72,092 77,030
Operating Segments | INF        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 96,728 102,639 184,938 202,600
Segment income before taxes 16,745 19,206 33,726 35,457
Operating Segments | BTS        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 54,032 61,331 106,878 121,785
Segment income before taxes 8,113 12,622 16,531 25,435
Operating Segments | GEO        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 71,878 38,762 115,139 68,500
Segment income before taxes 14,814 11,034 21,835 16,138
Corporate        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Segment income before taxes $ (22,882) $ (21,149) $ (47,898) $ (43,678)
XML 68 R58.htm IDEA: XBRL DOCUMENT v3.23.2
Reportable Segments - Revenue From Contracts With Customers by Geographic Location (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2023
Jul. 02, 2022
Jul. 01, 2023
Jul. 02, 2022
Revenues from External Customers and Long-Lived Assets [Line Items]        
Gross revenues $ 222,638 $ 202,732 $ 406,955 $ 392,885
INF        
Revenues from External Customers and Long-Lived Assets [Line Items]        
Gross revenues 96,728 102,639 184,938 202,600
BTS        
Revenues from External Customers and Long-Lived Assets [Line Items]        
Gross revenues 54,032 61,331 106,878 121,785
GEO        
Revenues from External Customers and Long-Lived Assets [Line Items]        
Gross revenues 71,878 38,762 115,139 68,500
United States        
Revenues from External Customers and Long-Lived Assets [Line Items]        
Gross revenues 211,506 195,487 386,326 377,583
United States | INF        
Revenues from External Customers and Long-Lived Assets [Line Items]        
Gross revenues 96,728 102,639 184,938 202,600
United States | BTS        
Revenues from External Customers and Long-Lived Assets [Line Items]        
Gross revenues 46,560 54,603 90,946 107,521
United States | GEO        
Revenues from External Customers and Long-Lived Assets [Line Items]        
Gross revenues 68,218 38,245 110,442 67,462
Foreign        
Revenues from External Customers and Long-Lived Assets [Line Items]        
Gross revenues 11,132 7,245 20,629 15,302
Foreign | INF        
Revenues from External Customers and Long-Lived Assets [Line Items]        
Gross revenues 0 0 0 0
Foreign | BTS        
Revenues from External Customers and Long-Lived Assets [Line Items]        
Gross revenues 7,472 6,728 15,932 14,264
Foreign | GEO        
Revenues from External Customers and Long-Lived Assets [Line Items]        
Gross revenues $ 3,660 $ 517 $ 4,697 $ 1,038
XML 69 R59.htm IDEA: XBRL DOCUMENT v3.23.2
Reportable Segments - Revenue by Customer Type (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2023
Jul. 02, 2022
Jul. 01, 2023
Jul. 02, 2022
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues $ 222,638 $ 202,732 $ 406,955 $ 392,885
INF        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 96,728 102,639 184,938 202,600
BTS        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 54,032 61,331 106,878 121,785
GEO        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 71,878 38,762 115,139 68,500
Public and quasi-public sector        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 154,971 127,333 278,416 244,788
Public and quasi-public sector | INF        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 77,332 80,054 147,062 159,258
Public and quasi-public sector | BTS        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 15,998 15,635 33,945 30,896
Public and quasi-public sector | GEO        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 61,641 31,644 97,409 54,634
Private sector        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 67,667 75,399 128,539 148,097
Private sector | INF        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 19,396 22,585 37,876 43,342
Private sector | BTS        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 38,034 45,696 72,933 90,889
Private sector | GEO        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues $ 10,237 $ 7,118 $ 17,730 $ 13,866
XML 70 R60.htm IDEA: XBRL DOCUMENT v3.23.2
Reportable Segments - Revenue by Contract Type (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2023
Jul. 02, 2022
Jul. 01, 2023
Jul. 02, 2022
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues $ 222,638 $ 202,732 $ 406,955 $ 392,885
INF        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 96,728 102,639 184,938 202,600
BTS        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 54,032 61,331 106,878 121,785
GEO        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 71,878 38,762 115,139 68,500
Cost-reimbursable contracts        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 202,129 176,248 369,837 341,101
Cost-reimbursable contracts | INF        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 93,185 98,604 177,042 194,326
Cost-reimbursable contracts | BTS        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 38,670 39,006 79,294 78,492
Cost-reimbursable contracts | GEO        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 70,274 38,638 113,501 68,283
Fixed-unit price contracts        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 20,509 26,484 37,118 51,784
Fixed-unit price contracts | INF        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 3,543 4,035 7,896 8,274
Fixed-unit price contracts | BTS        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues 15,362 22,325 27,584 43,293
Fixed-unit price contracts | GEO        
Segment Reporting, Revenue Reconciling Item [Line Items]        
Gross revenues $ 1,604 $ 124 $ 1,638 $ 217
XML 71 R61.htm IDEA: XBRL DOCUMENT v3.23.2
Stockholders' Equity - Schedule of Accumulated Other Comprehensive Income (Loss) (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jul. 01, 2023
Jul. 01, 2023
Accumulated Other Comprehensive Income (Loss) [Line Items]    
Beginning balance $ 719,870 $ 694,240
Other comprehensive income (loss) (191) (191)
Ending balance 741,148 741,148
Accumulated Other Comprehensive Income (Loss)    
Accumulated Other Comprehensive Income (Loss) [Line Items]    
Beginning balance   0
Ending balance $ (191) $ (191)
XML 72 nvee-20230701_htm.xml IDEA: XBRL DOCUMENT 0001532961 2023-01-01 2023-07-01 0001532961 2023-08-04 0001532961 2023-07-01 0001532961 2022-12-31 0001532961 2023-04-02 2023-07-01 0001532961 2022-04-03 2022-07-02 0001532961 2022-01-02 2022-07-02 0001532961 us-gaap:CommonStockMember 2022-04-02 0001532961 us-gaap:AdditionalPaidInCapitalMember 2022-04-02 0001532961 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-04-02 0001532961 us-gaap:RetainedEarningsMember 2022-04-02 0001532961 2022-04-02 0001532961 us-gaap:AdditionalPaidInCapitalMember 2022-04-03 2022-07-02 0001532961 us-gaap:CommonStockMember 2022-04-03 2022-07-02 0001532961 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-02 2022-07-02 0001532961 us-gaap:RetainedEarningsMember 2022-04-03 2022-07-02 0001532961 us-gaap:CommonStockMember 2022-07-02 0001532961 us-gaap:AdditionalPaidInCapitalMember 2022-07-02 0001532961 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-07-02 0001532961 us-gaap:RetainedEarningsMember 2022-07-02 0001532961 2022-07-02 0001532961 us-gaap:CommonStockMember 2023-04-01 0001532961 us-gaap:AdditionalPaidInCapitalMember 2023-04-01 0001532961 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-04-01 0001532961 us-gaap:RetainedEarningsMember 2023-04-01 0001532961 2023-04-01 0001532961 us-gaap:AdditionalPaidInCapitalMember 2023-04-02 2023-07-01 0001532961 us-gaap:CommonStockMember 2023-04-02 2023-07-01 0001532961 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-04-02 2023-07-01 0001532961 us-gaap:RetainedEarningsMember 2023-04-02 2023-07-01 0001532961 us-gaap:CommonStockMember 2023-07-01 0001532961 us-gaap:AdditionalPaidInCapitalMember 2023-07-01 0001532961 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-07-01 0001532961 us-gaap:RetainedEarningsMember 2023-07-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-07-02 0001532961 us-gaap:CommonStockMember 2022-01-02 2022-07-02 0001532961 us-gaap:RetainedEarningsMember 2022-01-02 2022-07-02 0001532961 us-gaap:CommonStockMember 2022-12-31 0001532961 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0001532961 us-gaap:RetainedEarningsMember 2022-12-31 0001532961 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-07-01 0001532961 us-gaap:CommonStockMember 2023-01-01 2023-07-01 0001532961 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-01-01 2023-07-01 0001532961 us-gaap:RetainedEarningsMember 2023-01-01 2023-07-01 0001532961 2023-07-01 2023-07-01 0001532961 2023-07-01 nvee:PeriodOneMember 2023-07-01 0001532961 2023-07-01 nvee:PeriodTwoMember 2023-07-01 0001532961 us-gaap:RestrictedStockMember 2023-01-01 2023-07-01 0001532961 us-gaap:RestrictedStockMember 2022-01-02 2022-07-02 0001532961 nvee:VisualInformationSolutionsMember 2023-04-06 2023-04-06 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-07-01 0001532961 nvee:OtherAcquisitionMember 2023-07-01 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 nvee:VisualInformationSolutionsMember 2023-07-01 0001532961 nvee:AximGeospatialLLCMember 2023-07-01 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember 2023-07-01 0001532961 nvee:VisualInformationSolutionsMember us-gaap:CustomerRelationshipsMember 2023-07-01 0001532961 nvee:AximGeospatialLLCMember us-gaap:CustomerRelationshipsMember 2023-07-01 0001532961 nvee:OtherAcquisitionMember us-gaap:CustomerRelationshipsMember 2023-07-01 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:CustomerRelationshipsMember 2023-07-01 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:CustomerRelationshipsMember 2022-12-31 0001532961 nvee:VisualInformationSolutionsMember us-gaap:TradeNamesMember 2023-07-01 0001532961 nvee:AximGeospatialLLCMember us-gaap:TradeNamesMember 2023-07-01 0001532961 nvee:OtherAcquisitionMember us-gaap:TradeNamesMember 2023-07-01 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:TradeNamesMember 2023-07-01 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:TradeNamesMember 2022-12-31 0001532961 nvee:VisualInformationSolutionsMember us-gaap:CustomerListsMember 2023-07-01 0001532961 nvee:AximGeospatialLLCMember us-gaap:CustomerListsMember 2023-07-01 0001532961 nvee:OtherAcquisitionMember us-gaap:CustomerListsMember 2023-07-01 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:CustomerListsMember 2023-07-01 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:CustomerListsMember 2022-12-31 0001532961 nvee:VisualInformationSolutionsMember us-gaap:TechnologyBasedIntangibleAssetsMember 2023-07-01 0001532961 nvee:AximGeospatialLLCMember us-gaap:TechnologyBasedIntangibleAssetsMember 2023-07-01 0001532961 nvee:OtherAcquisitionMember us-gaap:TechnologyBasedIntangibleAssetsMember 2023-07-01 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:TechnologyBasedIntangibleAssetsMember 2023-07-01 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:TechnologyBasedIntangibleAssetsMember 2022-12-31 0001532961 nvee:VisualInformationSolutionsMember us-gaap:NoncompeteAgreementsMember 2023-07-01 0001532961 nvee:AximGeospatialLLCMember us-gaap:NoncompeteAgreementsMember 2023-07-01 0001532961 nvee:OtherAcquisitionMember us-gaap:NoncompeteAgreementsMember 2023-07-01 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:NoncompeteAgreementsMember 2023-07-01 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:NoncompeteAgreementsMember 2022-12-31 0001532961 nvee:VisualInformationSolutionsMember 2023-01-01 2023-07-01 0001532961 nvee:AximGeospatialLLCMember 2023-01-01 2023-07-01 0001532961 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember 2023-01-01 2023-07-01 0001532961 us-gaap:FurnitureAndFixturesMember 2023-07-01 0001532961 us-gaap:FurnitureAndFixturesMember 2022-12-31 0001532961 us-gaap:ComputerEquipmentMember 2023-07-01 0001532961 us-gaap:ComputerEquipmentMember 2022-12-31 0001532961 nvee:SurveyAndFieldEquipmentMember 2023-07-01 0001532961 nvee:SurveyAndFieldEquipmentMember 2022-12-31 0001532961 us-gaap:LeaseholdImprovementsMember 2023-07-01 0001532961 us-gaap:LeaseholdImprovementsMember 2022-12-31 0001532961 nvee:OtherDirectCostsMember 2023-04-02 2023-07-01 0001532961 nvee:OtherDirectCostsMember 2023-01-01 2023-07-01 0001532961 2022-01-02 2022-04-02 0001532961 nvee:OtherDirectCostsMember 2022-01-02 2022-04-02 0001532961 nvee:OtherDirectCostsMember 2022-01-02 2022-07-02 0001532961 nvee:INFMember 2022-12-31 0001532961 nvee:INFMember 2023-01-01 2023-07-01 0001532961 nvee:INFMember 2023-07-01 0001532961 nvee:BTSMember 2022-12-31 0001532961 nvee:BTSMember 2023-01-01 2023-07-01 0001532961 nvee:BTSMember 2023-07-01 0001532961 nvee:GEOMember 2022-12-31 0001532961 nvee:GEOMember 2023-01-01 2023-07-01 0001532961 nvee:GEOMember 2023-07-01 0001532961 us-gaap:CustomerRelationshipsMember 2023-07-01 0001532961 us-gaap:CustomerRelationshipsMember 2022-12-31 0001532961 us-gaap:TradeNamesMember 2023-07-01 0001532961 us-gaap:TradeNamesMember 2022-12-31 0001532961 us-gaap:CustomerListsMember 2023-07-01 0001532961 us-gaap:CustomerListsMember 2022-12-31 0001532961 us-gaap:NoncompeteAgreementsMember 2023-07-01 0001532961 us-gaap:NoncompeteAgreementsMember 2022-12-31 0001532961 nvee:DevelopedTechnologyMember 2023-07-01 0001532961 nvee:DevelopedTechnologyMember 2022-12-31 0001532961 srt:MinimumMember us-gaap:CustomerRelationshipsMember 2023-04-01 0001532961 srt:MaximumMember us-gaap:CustomerRelationshipsMember 2023-04-01 0001532961 srt:MinimumMember us-gaap:TradeNamesMember 2023-04-01 0001532961 srt:MaximumMember us-gaap:TradeNamesMember 2023-04-01 0001532961 srt:MinimumMember us-gaap:CustomerListsMember 2023-04-01 0001532961 srt:MaximumMember us-gaap:CustomerListsMember 2023-04-01 0001532961 srt:MinimumMember us-gaap:NoncompeteAgreementsMember 2023-04-01 0001532961 srt:MaximumMember us-gaap:NoncompeteAgreementsMember 2023-04-01 0001532961 srt:MinimumMember nvee:DevelopedTechnologyMember 2023-04-01 0001532961 srt:MaximumMember nvee:DevelopedTechnologyMember 2023-04-01 0001532961 us-gaap:CustomerRelationshipsMember 2023-01-01 2023-07-01 0001532961 us-gaap:TradeNamesMember 2023-01-01 2023-07-01 0001532961 us-gaap:CustomerListsMember 2023-01-01 2023-07-01 0001532961 us-gaap:NoncompeteAgreementsMember 2023-01-01 2023-07-01 0001532961 nvee:DevelopedTechnologyMember 2023-01-01 2023-07-01 0001532961 nvee:SeniorCreditFacilityMember 2023-07-01 0001532961 nvee:SeniorCreditFacilityMember 2022-12-31 0001532961 nvee:UncollateralizedPromissoryNoteMember 2023-07-01 0001532961 nvee:UncollateralizedPromissoryNoteMember 2022-12-31 0001532961 nvee:StockPayableMember 2023-07-01 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:SeniorCreditFacilityMember 2023-07-01 0001532961 us-gaap:RevolvingCreditFacilityMember nvee:SeniorCreditFacilityMember 2022-12-31 0001532961 us-gaap:RevolvingCreditFacilityMember nvee:SecondARCreditAgreementMember 2023-01-01 2023-07-01 0001532961 us-gaap:RevolvingCreditFacilityMember nvee:SecondARCreditAgreementMember 2023-07-01 0001532961 nvee:SecondARCreditAgreementMember 2023-07-01 0001532961 nvee:ARCreditAgreementMember 2023-07-01 0001532961 nvee:ARCreditAgreementMember 2023-04-02 2023-07-01 0001532961 nvee:ARCreditAgreementMember 2023-01-01 2023-07-01 0001532961 nvee:ARCreditAgreementMember 2022-04-03 2022-07-02 0001532961 nvee:ARCreditAgreementMember 2022-01-02 2022-07-02 0001532961 2022-01-02 2022-12-31 0001532961 nvee:EquityPlan2011Member 2023-07-01 0001532961 srt:MinimumMember us-gaap:RestrictedStockMember nvee:EquityPlan2011Member 2023-01-01 2023-07-01 0001532961 srt:MaximumMember us-gaap:RestrictedStockMember nvee:EquityPlan2011Member 2023-01-01 2023-07-01 0001532961 us-gaap:RestrictedStockMember 2022-12-31 0001532961 us-gaap:RestrictedStockMember 2023-01-01 2023-04-01 0001532961 us-gaap:RestrictedStockMember 2023-04-01 0001532961 us-gaap:RestrictedStockMember 2023-04-02 2023-07-01 0001532961 us-gaap:RestrictedStockMember 2023-01-01 2023-07-01 0001532961 us-gaap:RestrictedStockMember 2022-04-03 2022-07-02 0001532961 us-gaap:RestrictedStockMember 2022-01-02 2022-07-02 0001532961 nvee:LiabilityBasedAwardsMember 2023-04-02 2023-07-01 0001532961 nvee:LiabilityBasedAwardsMember 2023-01-01 2023-07-01 0001532961 nvee:LiabilityBasedAwardsMember 2022-04-03 2022-07-02 0001532961 nvee:LiabilityBasedAwardsMember 2022-01-02 2022-07-02 0001532961 nvee:LiabilityBasedAwardsMember 2023-07-01 0001532961 us-gaap:RestrictedStockMember 2023-07-01 0001532961 us-gaap:OperatingSegmentsMember nvee:INFMember 2023-04-02 2023-07-01 0001532961 us-gaap:OperatingSegmentsMember nvee:INFMember 2022-04-03 2022-07-02 0001532961 us-gaap:OperatingSegmentsMember nvee:INFMember 2023-01-01 2023-07-01 0001532961 us-gaap:OperatingSegmentsMember nvee:INFMember 2022-01-02 2022-07-02 0001532961 us-gaap:OperatingSegmentsMember nvee:BTSMember 2023-04-02 2023-07-01 0001532961 us-gaap:OperatingSegmentsMember nvee:BTSMember 2022-04-03 2022-07-02 0001532961 us-gaap:OperatingSegmentsMember nvee:BTSMember 2023-01-01 2023-07-01 0001532961 us-gaap:OperatingSegmentsMember nvee:BTSMember 2022-01-02 2022-07-02 0001532961 us-gaap:OperatingSegmentsMember nvee:GEOMember 2023-04-02 2023-07-01 0001532961 us-gaap:OperatingSegmentsMember nvee:GEOMember 2022-04-03 2022-07-02 0001532961 us-gaap:OperatingSegmentsMember nvee:GEOMember 2023-01-01 2023-07-01 0001532961 us-gaap:OperatingSegmentsMember nvee:GEOMember 2022-01-02 2022-07-02 0001532961 us-gaap:OperatingSegmentsMember 2023-04-02 2023-07-01 0001532961 us-gaap:OperatingSegmentsMember 2022-04-03 2022-07-02 0001532961 us-gaap:OperatingSegmentsMember 2023-01-01 2023-07-01 0001532961 us-gaap:OperatingSegmentsMember 2022-01-02 2022-07-02 0001532961 us-gaap:CorporateNonSegmentMember 2023-04-02 2023-07-01 0001532961 us-gaap:CorporateNonSegmentMember 2022-04-03 2022-07-02 0001532961 us-gaap:CorporateNonSegmentMember 2023-01-01 2023-07-01 0001532961 us-gaap:CorporateNonSegmentMember 2022-01-02 2022-07-02 0001532961 country:US nvee:INFMember 2023-04-02 2023-07-01 0001532961 country:US nvee:BTSMember 2023-04-02 2023-07-01 0001532961 country:US nvee:GEOMember 2023-04-02 2023-07-01 0001532961 country:US 2023-04-02 2023-07-01 0001532961 country:US nvee:INFMember 2023-01-01 2023-07-01 0001532961 country:US nvee:BTSMember 2023-01-01 2023-07-01 0001532961 country:US nvee:GEOMember 2023-01-01 2023-07-01 0001532961 country:US 2023-01-01 2023-07-01 0001532961 us-gaap:NonUsMember nvee:INFMember 2023-04-02 2023-07-01 0001532961 us-gaap:NonUsMember nvee:BTSMember 2023-04-02 2023-07-01 0001532961 us-gaap:NonUsMember nvee:GEOMember 2023-04-02 2023-07-01 0001532961 us-gaap:NonUsMember 2023-04-02 2023-07-01 0001532961 us-gaap:NonUsMember nvee:INFMember 2023-01-01 2023-07-01 0001532961 us-gaap:NonUsMember nvee:BTSMember 2023-01-01 2023-07-01 0001532961 us-gaap:NonUsMember nvee:GEOMember 2023-01-01 2023-07-01 0001532961 us-gaap:NonUsMember 2023-01-01 2023-07-01 0001532961 nvee:INFMember 2023-04-02 2023-07-01 0001532961 nvee:BTSMember 2023-04-02 2023-07-01 0001532961 nvee:GEOMember 2023-04-02 2023-07-01 0001532961 country:US nvee:INFMember 2022-04-03 2022-07-02 0001532961 country:US nvee:BTSMember 2022-04-03 2022-07-02 0001532961 country:US nvee:GEOMember 2022-04-03 2022-07-02 0001532961 country:US 2022-04-03 2022-07-02 0001532961 country:US nvee:INFMember 2022-01-02 2022-07-02 0001532961 country:US nvee:BTSMember 2022-01-02 2022-07-02 0001532961 country:US nvee:GEOMember 2022-01-02 2022-07-02 0001532961 country:US 2022-01-02 2022-07-02 0001532961 us-gaap:NonUsMember nvee:INFMember 2022-04-03 2022-07-02 0001532961 us-gaap:NonUsMember nvee:BTSMember 2022-04-03 2022-07-02 0001532961 us-gaap:NonUsMember nvee:GEOMember 2022-04-03 2022-07-02 0001532961 us-gaap:NonUsMember 2022-04-03 2022-07-02 0001532961 us-gaap:NonUsMember nvee:INFMember 2022-01-02 2022-07-02 0001532961 us-gaap:NonUsMember nvee:BTSMember 2022-01-02 2022-07-02 0001532961 us-gaap:NonUsMember nvee:GEOMember 2022-01-02 2022-07-02 0001532961 us-gaap:NonUsMember 2022-01-02 2022-07-02 0001532961 nvee:INFMember 2022-04-03 2022-07-02 0001532961 nvee:BTSMember 2022-04-03 2022-07-02 0001532961 nvee:GEOMember 2022-04-03 2022-07-02 0001532961 nvee:INFMember 2022-01-02 2022-07-02 0001532961 nvee:BTSMember 2022-01-02 2022-07-02 0001532961 nvee:GEOMember 2022-01-02 2022-07-02 0001532961 nvee:PublicAndQuasiPublicSectorMember nvee:INFMember 2023-04-02 2023-07-01 0001532961 nvee:PublicAndQuasiPublicSectorMember nvee:BTSMember 2023-04-02 2023-07-01 0001532961 nvee:PublicAndQuasiPublicSectorMember nvee:GEOMember 2023-04-02 2023-07-01 0001532961 nvee:PublicAndQuasiPublicSectorMember 2023-04-02 2023-07-01 0001532961 nvee:PublicAndQuasiPublicSectorMember nvee:INFMember 2023-01-01 2023-07-01 0001532961 nvee:PublicAndQuasiPublicSectorMember nvee:BTSMember 2023-01-01 2023-07-01 0001532961 nvee:PublicAndQuasiPublicSectorMember nvee:GEOMember 2023-01-01 2023-07-01 0001532961 nvee:PublicAndQuasiPublicSectorMember 2023-01-01 2023-07-01 0001532961 nvee:PrivateSectorMember nvee:INFMember 2023-04-02 2023-07-01 0001532961 nvee:PrivateSectorMember nvee:BTSMember 2023-04-02 2023-07-01 0001532961 nvee:PrivateSectorMember nvee:GEOMember 2023-04-02 2023-07-01 0001532961 nvee:PrivateSectorMember 2023-04-02 2023-07-01 0001532961 nvee:PrivateSectorMember nvee:INFMember 2023-01-01 2023-07-01 0001532961 nvee:PrivateSectorMember nvee:BTSMember 2023-01-01 2023-07-01 0001532961 nvee:PrivateSectorMember nvee:GEOMember 2023-01-01 2023-07-01 0001532961 nvee:PrivateSectorMember 2023-01-01 2023-07-01 0001532961 nvee:PublicAndQuasiPublicSectorMember nvee:INFMember 2022-04-03 2022-07-02 0001532961 nvee:PublicAndQuasiPublicSectorMember nvee:BTSMember 2022-04-03 2022-07-02 0001532961 nvee:PublicAndQuasiPublicSectorMember nvee:GEOMember 2022-04-03 2022-07-02 0001532961 nvee:PublicAndQuasiPublicSectorMember 2022-04-03 2022-07-02 0001532961 nvee:PublicAndQuasiPublicSectorMember nvee:INFMember 2022-01-02 2022-07-02 0001532961 nvee:PublicAndQuasiPublicSectorMember nvee:BTSMember 2022-01-02 2022-07-02 0001532961 nvee:PublicAndQuasiPublicSectorMember nvee:GEOMember 2022-01-02 2022-07-02 0001532961 nvee:PublicAndQuasiPublicSectorMember 2022-01-02 2022-07-02 0001532961 nvee:PrivateSectorMember nvee:INFMember 2022-04-03 2022-07-02 0001532961 nvee:PrivateSectorMember nvee:BTSMember 2022-04-03 2022-07-02 0001532961 nvee:PrivateSectorMember nvee:GEOMember 2022-04-03 2022-07-02 0001532961 nvee:PrivateSectorMember 2022-04-03 2022-07-02 0001532961 nvee:PrivateSectorMember nvee:INFMember 2022-01-02 2022-07-02 0001532961 nvee:PrivateSectorMember nvee:BTSMember 2022-01-02 2022-07-02 0001532961 nvee:PrivateSectorMember nvee:GEOMember 2022-01-02 2022-07-02 0001532961 nvee:PrivateSectorMember 2022-01-02 2022-07-02 0001532961 nvee:CostReimbursableContractsMember nvee:INFMember 2023-04-02 2023-07-01 0001532961 nvee:CostReimbursableContractsMember nvee:BTSMember 2023-04-02 2023-07-01 0001532961 nvee:CostReimbursableContractsMember nvee:GEOMember 2023-04-02 2023-07-01 0001532961 nvee:CostReimbursableContractsMember 2023-04-02 2023-07-01 0001532961 nvee:CostReimbursableContractsMember nvee:INFMember 2023-01-01 2023-07-01 0001532961 nvee:CostReimbursableContractsMember nvee:BTSMember 2023-01-01 2023-07-01 0001532961 nvee:CostReimbursableContractsMember nvee:GEOMember 2023-01-01 2023-07-01 0001532961 nvee:CostReimbursableContractsMember 2023-01-01 2023-07-01 0001532961 us-gaap:FixedPriceContractMember nvee:INFMember 2023-04-02 2023-07-01 0001532961 us-gaap:FixedPriceContractMember nvee:BTSMember 2023-04-02 2023-07-01 0001532961 us-gaap:FixedPriceContractMember nvee:GEOMember 2023-04-02 2023-07-01 0001532961 us-gaap:FixedPriceContractMember 2023-04-02 2023-07-01 0001532961 us-gaap:FixedPriceContractMember nvee:INFMember 2023-01-01 2023-07-01 0001532961 us-gaap:FixedPriceContractMember nvee:BTSMember 2023-01-01 2023-07-01 0001532961 us-gaap:FixedPriceContractMember nvee:GEOMember 2023-01-01 2023-07-01 0001532961 us-gaap:FixedPriceContractMember 2023-01-01 2023-07-01 0001532961 nvee:CostReimbursableContractsMember nvee:INFMember 2022-04-03 2022-07-02 0001532961 nvee:CostReimbursableContractsMember nvee:BTSMember 2022-04-03 2022-07-02 0001532961 nvee:CostReimbursableContractsMember nvee:GEOMember 2022-04-03 2022-07-02 0001532961 nvee:CostReimbursableContractsMember 2022-04-03 2022-07-02 0001532961 nvee:CostReimbursableContractsMember nvee:INFMember 2022-01-02 2022-07-02 0001532961 nvee:CostReimbursableContractsMember nvee:BTSMember 2022-01-02 2022-07-02 0001532961 nvee:CostReimbursableContractsMember nvee:GEOMember 2022-01-02 2022-07-02 0001532961 nvee:CostReimbursableContractsMember 2022-01-02 2022-07-02 0001532961 us-gaap:FixedPriceContractMember nvee:INFMember 2022-04-03 2022-07-02 0001532961 us-gaap:FixedPriceContractMember nvee:BTSMember 2022-04-03 2022-07-02 0001532961 us-gaap:FixedPriceContractMember nvee:GEOMember 2022-04-03 2022-07-02 0001532961 us-gaap:FixedPriceContractMember 2022-04-03 2022-07-02 0001532961 us-gaap:FixedPriceContractMember nvee:INFMember 2022-01-02 2022-07-02 0001532961 us-gaap:FixedPriceContractMember nvee:BTSMember 2022-01-02 2022-07-02 0001532961 us-gaap:FixedPriceContractMember nvee:GEOMember 2022-01-02 2022-07-02 0001532961 us-gaap:FixedPriceContractMember 2022-01-02 2022-07-02 0001532961 us-gaap:AccumulatedTranslationAdjustmentMember 2022-12-31 0001532961 us-gaap:AccumulatedTranslationAdjustmentMember 2023-07-01 shares iso4217:USD iso4217:USD shares nvee:acquisition pure nvee:segment 0001532961 2023 Q2 false --12-30 P2Y 10-Q true 2023-07-01 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 Yes Large Accelerated Filer false false false 15890254 28827000 38541000 149110000 145637000 107192000 92862000 20501000 13636000 305630000 290676000 49392000 41640000 38628000 39314000 243579000 160431000 526848000 400957000 3751000 2705000 1167828000 935723000 55578000 57771000 52735000 44313000 37195000 31183000 2072000 1597000 4149000 10854000 14800000 15176000 166529000 160894000 1897000 4481000 28526000 29542000 209241000 39673000 20487000 6893000 426680000 241483000 0.01 0.01 5000000 5000000 0 0 0 0 0 0 0.01 0.01 45000000 45000000 15890908 15890908 15523300 15523300 159000 155000 497035000 471300000 -191000 0 244145000 222785000 741148000 694240000 1167828000 935723000 222638000 202732000 406955000 392885000 57079000 47704000 105463000 93681000 39690000 40479000 67304000 75305000 15569000 15309000 27890000 30833000 112338000 103492000 200657000 199819000 110300000 99240000 206298000 193066000 58949000 47283000 111621000 97049000 11551000 14494000 29472000 30881000 5823000 5195000 11197000 10381000 13539000 9668000 24585000 19602000 89862000 76640000 176875000 157913000 20438000 22600000 29423000 35153000 3648000 887000 5229000 1801000 16790000 21713000 24194000 33352000 1377000 4445000 2834000 7442000 15413000 17268000 21360000 25910000 1.03 1.17 1.43 1.76 1.00 1.13 1.39 1.70 15014106 14736167 14948796 14714745 15451788 15232157 15421535 15211835 15413000 17268000 21360000 25910000 -191000 0 -191000 0 15222000 17268000 21169000 25910000 15495451 155000 457894000 0 181454000 639503000 4172000 4172000 41683 0 0 0 0 17268000 17268000 15537134 155000 462066000 0 198722000 660943000 15708193 157000 490981000 0 228732000 719870000 4359000 4359000 182715 2000 -2000 0 1697000 1697000 -191000 -191000 0 15413000 15413000 15890908 159000 497035000 -191000 244145000 741148000 15414005 154000 451754000 0 172812000 624720000 8961000 8961000 110610 1000 -1000 0 12519 1352000 1352000 25910000 25910000 15537134 155000 462066000 0 198722000 660943000 15523300 155000 471300000 222785000 694240000 9571000 9571000 246263 3000 -3000 0 121345 14470000 14471000 1697000 1697000 -191000 -191000 21360000 21360000 15890908 159000 497035000 -191000 244145000 741148000 21360000 25910000 27205000 22058000 6784000 6265000 607000 594000 10728000 9615000 -7514000 -518000 408000 61000 -7673000 -3014000 365000 370000 -10882000 -15152000 9842000 3801000 4691000 511000 -8164000 -4349000 -5698000 -6309000 -7606000 -6867000 -1307000 0 474000 -276000 25502000 54258000 186242000 4670000 295000 48000 10239000 10379000 -196186000 -15001000 180000000 0 5131000 6218000 793000 1597000 13000000 35000000 161076000 -42815000 -106000 0 -9714000 -3558000 38541000 47980000 28827000 44422000 325000 6579000 7404000 2933000 14471000 1352000 1697000 0 232000 644000 Organization and Nature of Business Operations<div style="margin-top:10pt"><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, and consulting solutions 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;padding-left:72pt;text-indent:-45pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:94.827%"><tr><td style="width:1.0%"></td><td style="width:4.506%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:44.960%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:4.809%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:41.325%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:right;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:right;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%">MEP &amp; technology design</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:right;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:right;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:right;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:right;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:right;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:right;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:right;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:right;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:right;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:right;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:right;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:right;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:right;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%">Forensic services</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;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:right;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%">Litigation support</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;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%">Robotic survey solutions</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:right;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%">Ecological studies</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;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%">Geospatial data applications &amp; software</span></td></tr></table></div><div style="margin-top:10pt"><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 operates on a "52/53 week" fiscal year ending on the Saturday closest to the calendar quarter end.</span></div> Summary of Significant Accounting Policies <div style="margin-top:10pt"><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: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 consolidated financial statements of the Company are presented in U.S. dollars in conformity with accounting principles generally accepted in the United States (“U.S. GAAP”) and have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”) for reporting of interim financial information. Pursuant to such rules and regulations, certain information and footnote disclosures normally included in financial statements prepared in accordance with U.S. GAAP have been condensed or omitted. 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: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 the opinion of management, the accompanying unaudited interim consolidated financial statements of the Company contain all adjustments necessary to present fairly the financial position and results of operations of the Company as of the dates and for the periods presented. Accordingly, these statements should be read in conjunction with the consolidated financial statements and notes contained in the Company’s Annual Report on Form 10-K for the year ended December 31, 2022 (the “2022 Form 10-K”). The results of operations and cash flows for the interim periods presented are not necessarily indicative of the results to be expected for any future interim period or for the full 2023 fiscal year.</span></div><div style="margin-top:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Performance Obligations </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%">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 that 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.</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 revenue 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.</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%">As of July 1, 2023, the Company had $821,052 of remaining performance obligations, of which $676,038 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:10pt"><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: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 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 Sheet. The liability “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 the three and six months ended July 1, 2023 the Company performed services and recognized $6,616 and $25,046, respectively, of revenue related to its contract liabilities that existed as of December 31, 2022.</span></div><div><span><br/></span></div><div><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="text-indent:36pt"><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%">Goodwill is required to be evaluated for impairment on an annual basis or whenever events or changes in circumstances indicate the asset may be impaired. 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 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. 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 has elected to perform its annual goodwill impairment review as of August 1 of each year. The Company conducts its annual impairment tests on the goodwill using the quantitative method of evaluating goodwill.</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 August 1, 2022, the Company conducted its annual impairment tests using the quantitative method of evaluating goodwill. Based on the quantitative analyses the Company determined the fair value of each of the reporting units exceeded its carrying value. Therefore, the goodwill was not impaired and the Company did not recognize an impairment charge relating to goodwill as of August 1, 2022. Furthermore, there were no indicators, events or changes in circumstances that would indicate goodwill was impaired during the period from August 2, 2022 through July 1, 2023.</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. There were no indicators, events or changes in circumstances that would indicate intangible assets were impaired during the six months ended July 1, 2023. See Note 8, </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>There have been no material changes in the Company's significant accounting policies described in the audited financial statements included in the Company's Annual Report on Form 10-K for the year ended December 31, 2022. <div style="margin-top:10pt"><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: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 consolidated financial statements of the Company are presented in U.S. dollars in conformity with accounting principles generally accepted in the United States (“U.S. GAAP”) and have been prepared pursuant to the rules and regulations of the Securities and Exchange Commission (the “SEC”) for reporting of interim financial information. Pursuant to such rules and regulations, certain information and footnote disclosures normally included in financial statements prepared in accordance with U.S. GAAP have been condensed or omitted. 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: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 the opinion of management, the accompanying unaudited interim consolidated financial statements of the Company contain all adjustments necessary to present fairly the financial position and results of operations of the Company as of the dates and for the periods presented. Accordingly, these statements should be read in conjunction with the consolidated financial statements and notes contained in the Company’s Annual Report on Form 10-K for the year ended December 31, 2022 (the “2022 Form 10-K”). The results of operations and cash flows for the interim periods presented are not necessarily indicative of the results to be expected for any future interim period or for the full 2023 fiscal year.</span></div> <div style="margin-top:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Performance Obligations </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%">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 that 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.</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 revenue 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.</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%">As of July 1, 2023, the Company had $821,052 of remaining performance obligations, of which $676,038 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:10pt"><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>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 Sheet. The liability “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. 821052000 676038000 P12M P24M 6616000 25046000 <div><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="text-indent:36pt"><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%">Goodwill is required to be evaluated for impairment on an annual basis or whenever events or changes in circumstances indicate the asset may be impaired. 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 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. 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 has elected to perform its annual goodwill impairment review as of August 1 of each year. The Company conducts its annual impairment tests on the goodwill using the quantitative method of evaluating goodwill.</span></div>As of August 1, 2022, the Company conducted its annual impairment tests using the quantitative method of evaluating goodwill. Based on the quantitative analyses the Company determined the fair value of each of the reporting units exceeded its carrying value. Therefore, the goodwill was not impaired and the Company did not recognize an impairment charge relating to goodwill as of August 1, 2022. Furthermore, there were no indicators, events or changes in circumstances that would indicate goodwill was impaired during the period from August 2, 2022 through July 1, 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 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. There were no indicators, events or changes in circumstances that would indicate intangible assets were impaired during the six months ended July 1, 2023. Recent Accounting PronouncementsNone Recent Accounting PronouncementsNone Earnings per Share<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%">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: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 weighted average number of shares outstanding in calculating basic earnings per share for the six months ended July 1, 2023 and July 2, 2022 exclude 688,377 and 739,919 non-vested restricted shares, respectively. During the three and six months ended July 1, 2023, there were 111,584 and 41,536 weighted average securities, respectively, 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. During the three and six months ended July 2, 2022, there were 20,854 and 25,653 weighted average securities, respectively, 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: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 following table represents a reconciliation of the net income and weighted average shares outstanding for the calculation of basic and diluted earnings per share:</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:35.250%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.273%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.273%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.273%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.277%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" 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%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" 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%">Six Months 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:100%">July 1, 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:100%">July 2, 2022</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%">July 1, 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:100%">July 2, 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><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%">15,413 </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%">17,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 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%">21,360 </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%">25,910 </span></td><td style="background-color:#cceeff;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><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><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,014,106 </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,736,167 </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,948,796 </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,714,745 </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%">Effect of dilutive non-vested restricted shares and units</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%">413,856 </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%">481,815 </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%">447,546 </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%">481,379 </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%">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%">23,826 </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,175 </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%">25,193 </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,711 </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%">Diluted weighted average shares outstanding</span></td><td colspan="2" style="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%">15,451,788 </span></td><td style="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="padding:0 1pt"></td><td colspan="2" style="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%">15,232,157 </span></td><td style="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="padding:0 1pt"></td><td colspan="2" style="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%">15,421,535 </span></td><td style="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="padding:0 1pt"></td><td colspan="2" style="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%">15,211,835 </span></td><td style="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> 688377 739919 111584 41536 20854 25653 <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 following table represents a reconciliation of the net income and weighted average shares outstanding for the calculation of basic and diluted earnings per share:</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:35.250%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.273%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.273%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.273%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.277%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" 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%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" 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%">Six Months 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:100%">July 1, 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:100%">July 2, 2022</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%">July 1, 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:100%">July 2, 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><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%">15,413 </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%">17,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 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%">21,360 </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%">25,910 </span></td><td style="background-color:#cceeff;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><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><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,014,106 </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,736,167 </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,948,796 </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,714,745 </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%">Effect of dilutive non-vested restricted shares and units</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%">413,856 </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%">481,815 </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%">447,546 </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%">481,379 </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%">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%">23,826 </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,175 </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%">25,193 </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,711 </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%">Diluted weighted average shares outstanding</span></td><td colspan="2" style="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%">15,451,788 </span></td><td style="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="padding:0 1pt"></td><td colspan="2" style="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%">15,232,157 </span></td><td style="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="padding:0 1pt"></td><td colspan="2" style="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%">15,421,535 </span></td><td style="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="padding:0 1pt"></td><td colspan="2" style="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%">15,211,835 </span></td><td style="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> 15413000 15413000 17268000 17268000 21360000 21360000 25910000 25910000 15014106 14736167 14948796 14714745 413856 481815 447546 481379 23826 14175 25193 15711 15451788 15232157 15421535 15211835 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,682. 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") with Bank of America, N.A. and other lenders party thereto. See Note 10, </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, certain fixed assets, and the fair value of other assets and liabilities acquired.    </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 Continental Mapping Holdings, LLC 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 $141,010, including $120,106 in cash, a $7,404 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 Company's Second A&amp;R Credit Agreement with Bank of America, N.A. and other lenders party thereto. See Note 10, </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, certain fixed assets, and the fair value of other assets and liabilities acquired.</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 has completed three other acquisitions during 2023. The aggregate purchase price for the three acquisitions was $3,315, including $2,900 in cash, $90 of the Company's common stock, and a potential earn-out of up to $340 payable in cash, which has been recorded at an estimated fair value of $325. 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 2023 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 and accounts receivable.    </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><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    </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 of 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 will be completed within the one-year measurement period as required by ASC 805. The 2022 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 acquisition date, including intangible assets, accounts receivable, and certain fixed assets. Purchase price allocation adjustments recorded during 2023 were immaterial. </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 following table summarizes the fair values of the assets acquired and liabilities assumed as of the acquisition date for the acquisitions closed during the six months ended July 1, 2023 and the fiscal year ended December 31, 2022:</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:33.526%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.400%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.400%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.400%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.400%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.402%"></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></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 #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></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 #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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,027 </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,419 </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%">12,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%">— </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%">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%">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%">19,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%">1,794 </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,113 </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,622 </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%">189 </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,924 </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></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%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,988 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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></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,505 </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,065 </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%">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%">155 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">155 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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></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></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%">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%">33,394 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,206 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">859 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,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,606 </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%">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%">2,958 </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%">33 </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,257 </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></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%">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%">868 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,920 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">186 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,974 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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></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%">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,222 </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,942 </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,164 </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 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%">Non-compete</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%">25 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">93 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">698 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.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-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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,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%">86,460 </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,864 </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,596 </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></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,439)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">(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%">(30,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%">(5,623)</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%">(7,105)</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,223)</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%">(21,328)</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%">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%">33,728 </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%">58,569 </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%">1,676 </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%">93,973 </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></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></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,682 </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%">141,010 </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,990 </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%">219,682 </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></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%">325 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">325 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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></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,682 </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%">141,010 </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,315 </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%">220,007 </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></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,954 </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%">82,441 </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%">1,639 </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%">126,034 </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></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%">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 8, </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 intangibles.</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 the three and six months ended July 1, 2023. The revenue and earnings of the fiscal 2022 acquisitions included in the Company's results since the acquisition dates are not material to the Company's consolidated financial statements and have not been presented. </span></div><div style="margin-top:3pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.137%"><tr><td style="width:1.0%"></td><td style="width:58.900%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.524%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.175%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.524%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.177%"></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:2px 1pt;text-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%">Three Months Ended</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%">Six Months 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="padding:2px 1pt;text-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%">July 1, 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%">July 1, 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%">Gross revenues</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%">29,589 </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%">37,064 </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 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%">4,904 </span></td><td style="background-color:#ffffff;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,631 </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:12pt;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 expenses for the three and six months ended July 1, 2023 and July 2, 2022 include acquisition-related costs pertaining to the Company's acquisition activities. Acquisition-related costs were not material to the Company's consolidated financial statements. </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 following table presents the unaudited, pro forma consolidated results of operations (in thousands, except per share amounts) for the three and six months ended July 1, 2023 and July 2, 2022 as if the fiscal 2023 and 2022 acquisitions had occurred at the beginning of fiscal year 2022. The pro forma information provided below is compiled from pre-acquisition financial information and includes pro forma adjustments for amortization expense, adjustments to certain expenses, and the income tax impact of these adjustments. The pro forma results are not necessarily indicative of (i) the results of operations that would have occurred had the operations of these acquisitions actually been acquired at the beginning of fiscal year 2022 or (ii) 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:31.083%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.135%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.135%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.135%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.140%"></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="9" 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%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" 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%">Six Months 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%">July 1, 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%">July 2, 2022</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%">July 1, 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%">July 2, 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%">Gross revenues</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%">223,036 </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 #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%">231,351 </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%">429,754 </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 #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%">450,204 </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%">Net income</span></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%">15,374 </span></td><td style="background-color:#ffffff;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%">16,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 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%">20,581 </span></td><td style="background-color:#ffffff;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%">25,363 </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 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%">1.02 </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%">1.14 </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%">1.38 </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%">1.71 </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 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%">0.99 </span></td><td style="background-color:#ffffff;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%">1.11 </span></td><td style="background-color:#ffffff;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%">1.33 </span></td><td style="background-color:#ffffff;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%">1.65 </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 financing from the Company's Senior Credit Facility, to record the effects of promissory notes issued, and to record the income tax effect of these adjustments.</span></div> 75682000 141010000 120106000 7404000 13500000 3 3 3315000 2900000 90000 340000 325000 5 5 14220000 5882000 1606000 433000 15850000 6299000 <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 following table summarizes the fair values of the assets acquired and liabilities assumed as of the acquisition date for the acquisitions closed during the six months ended July 1, 2023 and the fiscal year ended December 31, 2022:</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:33.526%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.400%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.400%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.400%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.400%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.402%"></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></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 #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></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 #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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,027 </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,419 </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%">12,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%">— </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%">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%">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%">19,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%">1,794 </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,113 </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,622 </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%">189 </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,924 </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></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%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,988 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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></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,505 </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,065 </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%">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%">155 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">155 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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></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></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%">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%">33,394 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,206 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">859 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,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,606 </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%">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%">2,958 </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%">33 </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,257 </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></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%">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%">868 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,920 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">186 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,974 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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></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%">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,222 </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,942 </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,164 </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 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%">Non-compete</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%">25 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">93 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">698 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.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-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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,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%">86,460 </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,864 </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,596 </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></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,439)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">(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%">(30,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%">(5,623)</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%">(7,105)</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,223)</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%">(21,328)</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%">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%">33,728 </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%">58,569 </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%">1,676 </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%">93,973 </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></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></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,682 </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%">141,010 </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,990 </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%">219,682 </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></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%">325 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">325 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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></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,682 </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%">141,010 </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,315 </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%">220,007 </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></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,954 </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%">82,441 </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%">1,639 </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%">126,034 </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></tr></table></div> 7027000 5419000 0 12446000 0 5042000 13937000 487000 19466000 1794000 2113000 1622000 189000 3924000 632000 118000 2870000 0 2988000 1510000 1505000 1543000 17000 3065000 0 0 155000 0 155000 0 33394000 52206000 859000 86459000 3606000 2958000 2266000 33000 5257000 268000 868000 3920000 186000 4974000 459000 4222000 1942000 0 6164000 0 25000 580000 93000 698000 298000 57272000 86460000 1864000 145596000 8567000 16439000 13668000 188000 30295000 5623000 7105000 14223000 0 21328000 0 33728000 58569000 1676000 93973000 2944000 75682000 141010000 2990000 219682000 7921000 0 0 325000 325000 6299000 75682000 141010000 3315000 220007000 14220000 41954000 82441000 1639000 126034000 11276000 The following table presents the results of operations of businesses acquired from their respective dates of acquisition for the three and six months ended July 1, 2023. The revenue and earnings of the fiscal 2022 acquisitions included in the Company's results since the acquisition dates are not material to the Company's consolidated financial statements and have not been presented. <table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.137%"><tr><td style="width:1.0%"></td><td style="width:58.900%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.524%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.175%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.524%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.177%"></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:2px 1pt;text-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%">Three Months Ended</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%">Six Months 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="padding:2px 1pt;text-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%">July 1, 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%">July 1, 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%">Gross revenues</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%">29,589 </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%">37,064 </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 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%">4,904 </span></td><td style="background-color:#ffffff;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,631 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table>The pro forma results are not necessarily indicative of (i) the results of operations that would have occurred had the operations of these acquisitions actually been acquired at the beginning of fiscal year 2022 or (ii) future results of operations:<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:31.083%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.135%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.135%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.135%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.140%"></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="9" 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%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" 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%">Six Months 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%">July 1, 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%">July 2, 2022</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%">July 1, 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%">July 2, 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%">Gross revenues</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%">223,036 </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 #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%">231,351 </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%">429,754 </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 #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%">450,204 </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%">Net income</span></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%">15,374 </span></td><td style="background-color:#ffffff;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%">16,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 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%">20,581 </span></td><td style="background-color:#ffffff;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%">25,363 </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 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%">1.02 </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%">1.14 </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%">1.38 </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%">1.71 </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 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%">0.99 </span></td><td style="background-color:#ffffff;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%">1.11 </span></td><td style="background-color:#ffffff;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%">1.33 </span></td><td style="background-color:#ffffff;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%">1.65 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table> 29589000 37064000 4904000 5631000 223036000 231351000 429754000 450204000 15374000 16998000 20581000 25363000 1.02 1.14 1.38 1.71 0.99 1.11 1.33 1.65 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Billed and</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%">Unbilled Receivables</span><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%">Billed and unbilled receivables consists of the following:</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:56.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.733%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.735%"></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%">July 1, 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;padding:2px 1pt;text-align: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%">152,530 </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,420)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">149,110 </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:14pt"><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%">109,463 </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,271)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">107,192 </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: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%">Billed and unbilled receivables consists of the following:</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:56.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.733%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.735%"></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%">July 1, 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;padding:2px 1pt;text-align: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%">152,530 </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,420)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">149,110 </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:14pt"><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%">109,463 </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,271)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">107,192 </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> 152530000 149082000 3420000 3445000 149110000 145637000 109463000 95104000 2271000 2242000 107192000 92862000 Property and Equipment, net<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%">Property and equipment, net, consists of the following:</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:56.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.733%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.735%"></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%">July 1, 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;padding:2px 1pt;text-align: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,346 </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="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%">Computer 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%">29,820 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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="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%">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%">57,126 </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="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%">Leasehold improvements</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%">6,828 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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="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</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%">97,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 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="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%">Less: accumulated depreciation</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%">(47,728)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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="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%">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%">49,392 </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 was $3,605 and $6,871 for the three and six months ended July 1, 2023, respectively, of which $1,366 and $2,620 was included in other direct costs. Depreciation expense was $2,835 and $5,739 for the three and six months ended July 2, 2022, respectively, of which $1,223 and $2,456 was included in other direct costs. <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%">Property and equipment, net, consists of the following:</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:56.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.733%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.735%"></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%">July 1, 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;padding:2px 1pt;text-align: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,346 </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="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%">Computer 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%">29,820 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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="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%">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%">57,126 </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="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%">Leasehold improvements</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%">6,828 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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="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</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%">97,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 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="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%">Less: accumulated depreciation</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%">(47,728)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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="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%">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%">49,392 </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> 3346000 3421000 29820000 25816000 57126000 49985000 6828000 6546000 97120000 85768000 47728000 44128000 49392000 41640000 3605000 6871000 1366000 2620000 2835000 5739000 1223000 2456000 Goodwill and Intangible Assets<div style="margin-top:10pt"><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: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 changes in the carrying value by reportable segment for the six months ended July 1, 2023 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:9.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.141%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.572%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.141%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.141%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.145%"></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%">Six Months 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:100%">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%">2023 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:100%">July 1, 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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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="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%">913 </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%">13 </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%">— </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%">112,764 </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%">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%">124,395 </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%">(146)</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%">322,426 </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%">Total</span></td><td style="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="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="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="padding:0 1pt"></td><td style="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="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%">126,034 </span></td><td style="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="padding:0 1pt"></td><td style="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="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 </span></td><td style="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="padding:0 1pt"></td><td style="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="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%">(146)</span></td><td style="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="padding:0 1pt"></td><td style="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="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%">526,848 </span></td><td style="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%">Goodwill of $1,225 from acquisitions completed during the six months ended July 1, 2023 is expected to be deductible for income tax purposes.</span></div><div style="margin-top:10pt"><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: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%">Intangible assets, net, as of July 1, 2023 and December 31, 2022 consist of the following:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.425%"><tr><td style="width:1.0%"></td><td style="width:21.587%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.183%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.522%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.183%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.522%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.183%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.522%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.183%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.522%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.183%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.522%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.188%"></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%">July 1, 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 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 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%">309,452 </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%">(100,697)</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%">208,755 </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,140 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,996)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,144 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">34,391 </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,711)</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,680 </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,826 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,995)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,831 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,108 </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%">(16,939)</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,169 </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 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 finite-lived intangible assets</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%">419,917 </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%">(176,338)</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%">243,579 </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%">316,354 </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%">(155,923)</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%">160,431 </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><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 (1 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 (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">(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: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 identifiable intangible assets acquired during the six months ended July 1, 2023 consist of customer relationships, trade name, customer backlog, non-compete, and developed technology with weighted average lives of 12.5 years, 3.7 years, 1.2 years, 3.6 years, and 6.6 years. respectively. Amortization expense was $11,300 and $20,334 during the three and six months ended July 1, 2023, respectively, and $8,056 and $16,319 during the three and six months ended July 2, 2022, 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%">The changes in the carrying value by reportable segment for the six months ended July 1, 2023 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:9.388%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.141%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.572%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.141%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.141%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.145%"></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%">Six Months 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:100%">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%">2023 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:100%">July 1, 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="padding:2px 1pt;text-align: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="padding:2px 0 2px 1pt;text-align: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="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%">913 </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%">13 </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%">— </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%">112,764 </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%">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%">124,395 </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%">(146)</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%">322,426 </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%">Total</span></td><td style="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="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="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="padding:0 1pt"></td><td style="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="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%">126,034 </span></td><td style="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="padding:0 1pt"></td><td style="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="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 </span></td><td style="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="padding:0 1pt"></td><td style="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="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%">(146)</span></td><td style="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="padding:0 1pt"></td><td style="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="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%">526,848 </span></td><td style="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 913000 13000 0 112764000 198187000 124395000 -10000 -146000 322426000 400957000 126034000 3000 -146000 526848000 1225000 <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%">Intangible assets, net, as of July 1, 2023 and December 31, 2022 consist of the following:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.425%"><tr><td style="width:1.0%"></td><td style="width:21.587%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.183%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.522%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.183%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.522%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.183%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.522%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.183%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.522%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.183%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.522%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.188%"></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%">July 1, 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 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 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%">309,452 </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%">(100,697)</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%">208,755 </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,140 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,996)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,144 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">34,391 </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,711)</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,680 </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,826 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,995)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,831 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,108 </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%">(16,939)</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,169 </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 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 finite-lived intangible assets</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%">419,917 </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%">(176,338)</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%">243,579 </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%">316,354 </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%">(155,923)</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%">160,431 </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><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 (1 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 (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">(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> 309452000 100697000 208755000 222998000 87054000 135944000 22140000 16996000 5144000 16883000 15933000 950000 34391000 29711000 4680000 29419000 27333000 2086000 14826000 11995000 2831000 14110000 11298000 2812000 39108000 16939000 22169000 32944000 14305000 18639000 419917000 176338000 243579000 316354000 155923000 160431000 P1Y P17Y P1Y P5Y P1Y P10Y P1Y P5Y P5Y P10Y P12Y6M P3Y8M12D P1Y2M12D P3Y7M6D P6Y7M6D 11300000 20334000 8056000 16319000 Accrued Liabilities <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%">Accrued liabilities consist of the following:</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:56.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.733%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.735%"></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%">July 1, 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;padding:2px 1pt;text-align: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%">14,238 </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%">15,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%">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,612 </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%">4,478 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">7,090 </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,234 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">52,735 </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: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%">Accrued liabilities consist of the following:</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:56.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.733%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.735%"></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%">July 1, 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;padding:2px 1pt;text-align: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%">14,238 </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%">15,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%">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,612 </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%">4,478 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">7,090 </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,234 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">52,735 </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> 14238000 13081000 15083000 12467000 8612000 6616000 4478000 5160000 7090000 4540000 3234000 2449000 52735000 44313000 Notes Payable<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%">and Other Obligations</span><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%">Notes payable and other obligations consists of the following:</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:56.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.733%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.735%"></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%">July 1, 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;padding:2px 1pt;text-align: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 #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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%">200,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><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%">21,665 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">3,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%">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%">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%">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%">(2,308)</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%">224,041 </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%">14,800 </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%">209,241 </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: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%">As of July 1, 2023 and December 31, 2022, the carrying amount of debt obligations approximates their fair values based on Level 2 inputs 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:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Senior</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%">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 $200,000 in the aggregate. As of July 1, 2023 and December 31, 2022, the outstanding balance on the Second A&amp;R Credit Agreement was $200,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%">The Company's Second A&amp;R Credit Agreement provides for the replacement of LIBOR (London Interbank Offered Rate), which prior to April 1, 2023, was transitioned to SOFR (Secured Overnight Funding Rate), subject to the completion of the relevant existing interest period ("LIBOR Transition"). 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 LIBOR or, from and after the LIBOR Transition, either Term SOFR 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 July 1, 2023, the Company's interest rate was 6.5%.</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 July 1, 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 $171 and $365 during the three and six months ended July 1, 2023, respectively, and $185 and $370 during the three and six months ended July 2, 2022, respectively.</span></div><div style="margin-top:10pt"><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 $22,598 and $20,306 as of July 1, 2023 and December 31, 2022, respectively. As of July 1, 2023, the Company's weighted average interest rate on other outstanding obligations was 3.1% <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%">Notes payable and other obligations consists of the following:</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:56.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.733%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.735%"></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%">July 1, 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;padding:2px 1pt;text-align: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 #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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%">200,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><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%">21,665 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">3,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%">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%">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%">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%">(2,308)</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%">224,041 </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%">14,800 </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%">209,241 </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> 200750000 33750000 21665000 18492000 3001000 3465000 933000 1814000 2308000 2672000 224041000 54849000 14800000 15176000 209241000 39673000 150000000 215000000 400000000 138750000 200000000 200750000 33750000 0.065 4.00 1.10 3.25 30000000 3702000 171000 365000 185000 370000 22598000 20306000 0.031 Contingent Consideration<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 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:56.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.733%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.735%"></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%">July 1, 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;padding:2px 1pt;text-align: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="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 for acquisitions</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%">325 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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></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,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%">(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="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%">(Decrease) increase of liability related to re-measurement of fair value</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,514)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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="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 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%">6,046 </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="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%">Current portion of contingent consideration</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%">4,149 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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="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%">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%">1,897 </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>During the six months ended July 1, 2023, the Company recorded earn-out fair value adjustments of $7,514 that decreased the contingent consideration liability related to acquisitions. <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 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:56.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.733%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.735%"></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%">July 1, 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;padding:2px 1pt;text-align: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="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 for acquisitions</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%">325 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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></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,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%">(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="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%">(Decrease) increase of liability related to re-measurement of fair value</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,514)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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="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 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%">6,046 </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="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%">Current portion of contingent consideration</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%">4,149 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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="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%">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%">1,897 </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 325000 6299000 2100000 2264000 -7514000 2972000 6046000 15335000 4149000 10854000 1897000 4481000 -7514000 Commitments and Contingencies<div style="margin-top:10pt"><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:33.75pt"><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 July 1, 2023, 2,145,774 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-742">two</span> to four years following the grant date.</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 following summarizes the activity of restricted stock awards during the six months ended July 1, 2023:</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:56.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.733%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.735%"></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%">Number of Unvested Restricted Shares of Common Stock and Restricted Stock 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:100%">Weighted Average<br/>Grant Date Fair<br/>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%">December 31, 2022</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%">713,793</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%">81.25 </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="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%">264,434</span></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%">107.12 </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="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%">(202,453)</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%">47.00 </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="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%">(18,171)</span></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%">87.75 </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%">July 1, 2023</span></td><td colspan="3" style="background-color:#cceeff;border-bottom:1pt solid #000000;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%">757,603</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%">99.26 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div>Stock-based compensation expense relating to restricted stock awards during the three and six months ended July 1, 2023 was $4,902 and $10,728, respectively, and $4,826 and $9,615 during the three and six months ended July 2, 2022, respectively. In connection with the Company's 401(k) Profit Sharing match, stock-based compensation expense during the three and six months ended July 1, 2023 includes $543 and $1,157, respectively, of expense related to the Company's liability-classified awards. Stock-based compensation expense during the three and six months ended July 2, 2022 includes $383 and $654, 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 $5,120. The 401(k) Profit Sharing restricted stock awards are issued under the rules of the NV5 Global, Inc. 2023 Equity Incentive Plan and are not issued into the NV5 401(k) Profit Sharing plan. Approximately $46,313 of deferred compensation, which is expected to be recognized over the remaining weighted average vesting period of 1.7 years, is unrecognized at July 1, 2023. The total fair value of restricted shares vested during the six months ended July 1, 2023 and July 2, 2022 was $20,851 and $7,296, respectively. 2145774 P4Y <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 following summarizes the activity of restricted stock awards during the six months ended July 1, 2023:</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:56.514%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.733%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:19.735%"></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%">Number of Unvested Restricted Shares of Common Stock and Restricted Stock 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:100%">Weighted Average<br/>Grant Date Fair<br/>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%">December 31, 2022</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%">713,793</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%">81.25 </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="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%">264,434</span></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%">107.12 </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="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%">(202,453)</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%">47.00 </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="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%">(18,171)</span></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%">87.75 </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%">July 1, 2023</span></td><td colspan="3" style="background-color:#cceeff;border-bottom:1pt solid #000000;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%">757,603</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%">99.26 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 713793 81.25 264434 107.12 202453 47.00 18171 87.75 757603 99.26 4902000 10728000 4826000 9615000 543000 1157000 383000 654000 5120000 46313000 P1Y8M12D 20851000 7296000 Income Taxes<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%">As of July 1, 2023 and December 31, 2022, the Company had net deferred income tax liabilities of $20,487 and $6,893, respectively. Deferred income tax liabilities primarily relate to intangible assets and accounting basis adjustments where we have a future obligation for tax purposes.</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 effective income tax rate was 8.2% and 11.7% during the three and six months ended July 1, 2023, respectively, and 20.5% and 22.3% during the three and six months ended July 2, 2022, respectively. The difference between the effective income tax rate and the combined statutory federal and state income tax rate was primarily due to the recognition of excess tax benefits from stock-based payments in the second quarter of 2023 and 2022 and federal credits.</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 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 2019 through 2022 are considered open tax years in the U.S. federal jurisdiction, state and foreign jurisdictions. Fiscal years 2012 - 2014 are considered open in the State of California. It is not expected that there will be a significant change in the unrecognized tax benefits within the next 12 months.</span></div> 20487000 6893000 0.082 0.117 0.205 0.223 Reportable Segments<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 reports segment information in accordance with ASC Topic No. 280 “</span><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><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (“Topic No. 280”). The Company's Chief Executive Officer, who is the chief operating decision maker ("CODM"), organized the Company into three operating and reportable segments: Infrastructure ("INF"), which includes the Company's engineering, civil program management, utility services, and construction quality assurance practices; Building, Technology &amp; Sciences ("BTS"), which includes the Company's environmental health sciences, clean energy consulting, buildings and program management, and MEP &amp; technology design practices; and Geospatial Solutions ("GEO"), 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: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:30.652%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.428%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" 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%">Six Months 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:100%">July 1, 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:100%">July 2, 2022</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%">July 1, 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:100%">July 2, 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><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%">96,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 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%">102,639 </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%">184,938 </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%">202,600 </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%">54,032 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,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%">106,878 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,785 </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%">71,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 colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,762 </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%">115,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%">68,500 </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%">222,638 </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%">202,732 </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%">406,955 </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%">392,885 </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: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><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><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%">16,745 </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%">19,206 </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%">33,726 </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%">35,457 </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%">8,113 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,622 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,531 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,435 </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%">14,814 </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,034 </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,835 </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%">16,138 </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 #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%">39,672 </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%">42,862 </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%">72,092 </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%">77,030 </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"><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%">(22,882)</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,149)</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%">(47,898)</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%">(43,678)</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%">16,790 </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%">21,713 </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%">24,194 </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%">33,352 </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:10pt"><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%">Includes amortization of intangibles of $11,300 and $20,334 for the three and six months ended July 1, 2023, respectively, and $8,056 and $16,319 during the three and six months ended July 2, 2022, 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%">The Company disaggregates its gross revenues from contracts with customers by geographic location, customer-type and contract-type for each of our 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. Gross revenue, classified by the major geographic areas in which the Company's 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:99.712%"><tr><td style="width:1.0%"></td><td style="width:20.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.132%"></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%">Three Months Ended July 1, 2023</span></td><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%">Six Months Ended July 1, 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><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 #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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,728 </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%">46,560 </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%">68,218 </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%">211,506 </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%">184,938 </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,946 </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%">110,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><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%">386,326 </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%">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%">7,472 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,660 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,132 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">15,932 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,697 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,629 </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-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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,728 </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%">54,032 </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%">71,878 </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%">222,638 </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%">184,938 </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%">106,878 </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%">115,139 </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%">406,955 </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:8pt"><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><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><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: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%">Three Months Ended July 2, 2022</span></td><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%">Six Months Ended July 2, 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><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 #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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%">102,639 </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%">54,603 </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%">38,245 </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%">195,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%">202,600 </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%">107,521 </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%">67,462 </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%">377,583 </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%">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%">6,728 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">517 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,245 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">14,264 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,038 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,302 </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%">102,639 </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%">61,331 </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%">38,762 </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%">202,732 </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%">202,600 </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%">121,785 </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%">68,500 </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%">392,885 </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 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:99.712%"><tr><td style="width:1.0%"></td><td style="width:20.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.132%"></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%">Three Months Ended July 1, 2023</span></td><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%">Six Months Ended July 1, 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><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%">77,332 </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,998 </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,641 </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,971 </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%">147,062 </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%">33,945 </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%">97,409 </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%">278,416 </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%">19,396 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,034 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,237 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,667 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,876 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">72,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%">17,730 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,539 </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-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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,728 </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%">54,032 </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%">71,878 </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%">222,638 </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%">184,938 </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%">106,878 </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%">115,139 </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%">406,955 </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: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><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><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: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%">Three Months Ended July 2, 2022</span></td><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%">Six Months Ended July 2, 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><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%">80,054 </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,635 </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%">31,644 </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%">127,333 </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%">159,258 </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%">30,896 </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%">54,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 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%">244,788 </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%">22,585 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,696 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,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%">75,399 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,342 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,889 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,866 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">148,097 </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%">102,639 </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%">61,331 </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%">38,762 </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%">202,732 </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%">202,600 </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%">121,785 </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%">68,500 </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%">392,885 </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"><span><br/></span></div><div><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:99.712%"><tr><td style="width:1.0%"></td><td style="width:20.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.132%"></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%">Three Months Ended July 1, 2023</span></td><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%">Six Months Ended July 1, 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><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%">93,185 </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%">38,670 </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%">70,274 </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%">202,129 </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%">177,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><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%">79,294 </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%">113,501 </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%">369,837 </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%">3,543 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,362 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,604 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,509 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,896 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,584 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,638 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,118 </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-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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,728 </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%">54,032 </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%">71,878 </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%">222,638 </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%">184,938 </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%">106,878 </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%">115,139 </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%">406,955 </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: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><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><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: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%">Three Months Ended July 2, 2022</span></td><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%">Six Months Ended July 2, 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><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%">98,604 </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%">39,006 </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%">38,638 </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%">176,248 </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%">194,326 </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%">78,492 </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%">68,283 </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%">341,101 </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%">4,035 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,325 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,484 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,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%">43,293 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">217 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,784 </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%">102,639 </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%">61,331 </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%">38,762 </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%">202,732 </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%">202,600 </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%">121,785 </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%">68,500 </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%">392,885 </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> 3 3 The following tables set forth summarized financial information concerning our reportable segments:<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:30.652%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.518%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.428%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" 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%">Six Months 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:100%">July 1, 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:100%">July 2, 2022</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%">July 1, 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:100%">July 2, 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><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%">96,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 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%">102,639 </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%">184,938 </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%">202,600 </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%">54,032 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,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%">106,878 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,785 </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%">71,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 colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,762 </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%">115,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%">68,500 </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%">222,638 </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%">202,732 </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%">406,955 </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%">392,885 </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: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><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><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%">16,745 </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%">19,206 </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%">33,726 </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%">35,457 </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%">8,113 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,622 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,531 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,435 </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%">14,814 </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,034 </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,835 </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%">16,138 </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 #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%">39,672 </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%">42,862 </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%">72,092 </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%">77,030 </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"><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%">(22,882)</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,149)</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%">(47,898)</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%">(43,678)</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%">16,790 </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%">21,713 </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%">24,194 </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%">33,352 </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:10pt"><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%">Includes amortization of intangibles of $11,300 and $20,334 for the three and six months ended July 1, 2023, respectively, and $8,056 and $16,319 during the three and six months ended July 2, 2022, respectively.</span></div> 96728000 102639000 184938000 202600000 54032000 61331000 106878000 121785000 71878000 38762000 115139000 68500000 222638000 202732000 406955000 392885000 16745000 19206000 33726000 35457000 8113000 12622000 16531000 25435000 14814000 11034000 21835000 16138000 39672000 42862000 72092000 77030000 -22882000 -21149000 -47898000 -43678000 16790000 21713000 24194000 33352000 11300000 20334000 8056000 16319000 Gross revenue, classified by the major geographic areas in which the Company's customers were located, were as follows: <table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.712%"><tr><td style="width:1.0%"></td><td style="width:20.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.132%"></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%">Three Months Ended July 1, 2023</span></td><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%">Six Months Ended July 1, 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><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 #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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,728 </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%">46,560 </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%">68,218 </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%">211,506 </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%">184,938 </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,946 </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%">110,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><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%">386,326 </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%">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%">7,472 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,660 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,132 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">15,932 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,697 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,629 </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-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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,728 </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%">54,032 </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%">71,878 </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%">222,638 </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%">184,938 </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%">106,878 </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%">115,139 </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%">406,955 </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:8pt"><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><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><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: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%">Three Months Ended July 2, 2022</span></td><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%">Six Months Ended July 2, 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><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 #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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%">102,639 </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%">54,603 </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%">38,245 </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%">195,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%">202,600 </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%">107,521 </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%">67,462 </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%">377,583 </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%">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%">6,728 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">517 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,245 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">14,264 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,038 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,302 </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%">102,639 </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%">61,331 </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%">38,762 </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%">202,732 </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%">202,600 </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%">121,785 </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%">68,500 </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%">392,885 </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> 96728000 46560000 68218000 211506000 184938000 90946000 110442000 386326000 0 7472000 3660000 11132000 0 15932000 4697000 20629000 96728000 54032000 71878000 222638000 184938000 106878000 115139000 406955000 102639000 54603000 38245000 195487000 202600000 107521000 67462000 377583000 0 6728000 517000 7245000 0 14264000 1038000 15302000 102639000 61331000 38762000 202732000 202600000 121785000 68500000 392885000 Gross revenue by customer were as follows: <table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.712%"><tr><td style="width:1.0%"></td><td style="width:20.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.132%"></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%">Three Months Ended July 1, 2023</span></td><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%">Six Months Ended July 1, 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><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%">77,332 </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,998 </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,641 </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,971 </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%">147,062 </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%">33,945 </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%">97,409 </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%">278,416 </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%">19,396 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,034 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,237 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,667 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,876 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">72,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%">17,730 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,539 </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-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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,728 </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%">54,032 </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%">71,878 </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%">222,638 </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%">184,938 </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%">106,878 </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%">115,139 </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%">406,955 </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: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><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><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: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%">Three Months Ended July 2, 2022</span></td><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%">Six Months Ended July 2, 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><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%">80,054 </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,635 </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%">31,644 </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%">127,333 </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%">159,258 </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%">30,896 </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%">54,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 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%">244,788 </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%">22,585 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,696 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,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%">75,399 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,342 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,889 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,866 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">148,097 </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%">102,639 </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%">61,331 </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%">38,762 </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%">202,732 </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%">202,600 </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%">121,785 </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%">68,500 </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%">392,885 </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> 77332000 15998000 61641000 154971000 147062000 33945000 97409000 278416000 19396000 38034000 10237000 67667000 37876000 72933000 17730000 128539000 96728000 54032000 71878000 222638000 184938000 106878000 115139000 406955000 80054000 15635000 31644000 127333000 159258000 30896000 54634000 244788000 22585000 45696000 7118000 75399000 43342000 90889000 13866000 148097000 102639000 61331000 38762000 202732000 202600000 121785000 68500000 392885000 Gross revenues by contract type were as follows: <table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.712%"><tr><td style="width:1.0%"></td><td style="width:20.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.121%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.520%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.132%"></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%">Three Months Ended July 1, 2023</span></td><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%">Six Months Ended July 1, 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><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%">93,185 </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%">38,670 </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%">70,274 </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%">202,129 </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%">177,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><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%">79,294 </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%">113,501 </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%">369,837 </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%">3,543 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,362 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,604 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,509 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,896 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,584 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,638 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,118 </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-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;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,728 </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%">54,032 </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%">71,878 </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%">222,638 </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%">184,938 </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%">106,878 </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%">115,139 </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%">406,955 </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: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><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><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: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%">Three Months Ended July 2, 2022</span></td><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%">Six Months Ended July 2, 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><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%">98,604 </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%">39,006 </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%">38,638 </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%">176,248 </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%">194,326 </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%">78,492 </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%">68,283 </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%">341,101 </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%">4,035 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,325 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,484 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,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%">43,293 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">217 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,784 </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%">102,639 </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%">61,331 </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%">38,762 </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%">202,732 </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%">202,600 </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%">121,785 </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%">68,500 </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%">392,885 </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> 93185000 38670000 70274000 202129000 177042000 79294000 113501000 369837000 3543000 15362000 1604000 20509000 7896000 27584000 1638000 37118000 96728000 54032000 71878000 222638000 184938000 106878000 115139000 406955000 98604000 39006000 38638000 176248000 194326000 78492000 68283000 341101000 4035000 22325000 124000 26484000 8274000 43293000 217000 51784000 102639000 61331000 38762000 202732000 202600000 121785000 68500000 392885000 Stockholders' Equity<div style="margin-top:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Accumulated Other Comprehensive Income (Loss)</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 accumulated other comprehensive income (loss) consists of foreign currency translation adjustments related to the Company's foreign operations with functional currency other than the U.S. dollar. The after-tax changes in accumulated other comprehensive income (loss) by component were as follows: </span></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:80.221%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.579%"></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%">Accumulated Other Comprehensive Income (Loss)</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%">Foreign currency translation adjustments balance, December 31, 2022</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%">— </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%">Other comprehensive income (loss)</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%">(191)</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%">Foreign currency translation adjustments balance, July 1, 2023</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%">(191)</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> The after-tax changes in accumulated other comprehensive income (loss) by component were as follows: <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:80.221%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.579%"></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%">Accumulated Other Comprehensive Income (Loss)</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%">Foreign currency translation adjustments balance, December 31, 2022</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%">— </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%">Other comprehensive income (loss)</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%">(191)</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%">Foreign currency translation adjustments balance, July 1, 2023</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%">(191)</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> 0 -191000 -191000 EXCEL 73 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( (MT"E<'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 " "+= I7#0'B:>\ K @ $0 &1O8U!R;W!S+V-O&ULS9+! M:L,P#(9?9?B>R$E&*2;U9:6G#08K;.QF;+4UBV-C:R1]^SE9FS*V!]C1TN]/ MGT"M#D+[B,_1!XQD,=V-KNN3T&'#3D1! "1]0J=2F1-];AY\=(KR,QXA*/VA MC@@UYRMP2,HH4C !B[ 0F6R-%CJB(A\O>*,7?/B,W0PS&K!#ASTEJ,H*F)PF MAO/8M7 #3##"Z-)W HUYE_)"CH'W+#KY-?F8;O?,5GSNBGXNJCXOEJ+9B7X_?OD^L/O)NR\L0?[ MCXVO@K*%7W&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M M3A^%$5B-;'EDD81_OTV23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R M> +]O6N[!3+ MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,! M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2 MBW A(5M>5 TR M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$ MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7K;YH] M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZKR2.FJW"$2M"/F(9 M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+ MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+ M.7\N?<^E[[GT/:'2MSAD6R4)RU3393>* M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.WF)&Y M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_# M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0 MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYNTB42%(JP# 4A M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.' MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_ M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]! MU4#E/]O4#6CV#30,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04 M" "+= I7><(0J>$% "L'P & 'AL+W=O@Q[H=2Q!C(D2T\O6 M@'X8NJX19$]\#<0JV3DF!F4BY8LYN?,O6XXID0B%IXT%AW]+,11A:)R@'/]N M3%O%;QKA[O'6_3:#!Y@)3\10AG\&OIY?MLY:Q!=3GH;Z2:X^B0U0S_AY,DRR MOV25/]OMMHB7)EI&&S&4( KB_#]_W;R('8'K5 C81L#>"6C5+[@;0?;F.GG) M,JQKKGG_0LD54>9I<#,'V;O)U$ 3Q*8:QUK!W0!TNC^42Z%(FR1SKD1RT='@ M:>YTO(W^*M>S"OT)^2QC/4_(3>P+_ZV^ V4I"L2V!;IBJ.%O:7A,''I$F,-< M2WF&N'R0SD#>MP-;+> [6+N_6OII=!%-7E>+X2-%)=3I_UH M0T)5#9%Z!5*O'M)CRI46*ER3)[&02MOP<"NM4MM+&:*JAG@G!=Y)/;R14('T M32\D, Y8*P]WROI=UO$J>QYJT!#TM ]K=DT%8!^Y) MS (SCD(U/O#(VDAQGX>O/?(QE!,>'I&[V#NV<:(.#3FI4TZG3AU2*)Q4T#JY M::A'9*RA3Q*IR%"FL59K^.];\?>X7]_8B'%14^2=!$'K(#_S5W+G0Q<-IH&7 M<2/M>(]EM]=VN[TSAYY:>5%Q4UY6\K(ZO /?!_?D:'M [N$Y\B6VURMN":&; MC"%DS\F(JQ?R)+E_9"5';9J2EUF(HND#)W]>22LY;CE. ^@9;L^QXAXB#-$R M#5$\S[S''9HSZ,3/A()IJ'Y*]@43THXXZNZS!J)3U$8*)E8J)X MS,F:ZP"^[:O!<(/S7M>*=8B81,N<1/&0(_!P]<;:T#"94VYRH#$ M\#2SK4)R\^K->3P3E>EWC]'#8'P]L'YBX\*FA&4D8K4BT3!5RGRCY1]F657" M-)):EY7V.'ZS+D8-<553SC( L5H!Z"[60N4+D.9KFV_!K9RX8Q7G(9(/*Y,/ MJY5\S,!Y HS QL\MK<2'R#^LS#^L5OX91SP, MR56:P.W$WFYQG\JU!5S7E*^,/:Q6[+F)A)J9COD1'.!S Z:(!8_M58L;5H,> M(O6P,O4P/+1L*W(NH"(QO(9K1+BN*5Z9?EBM9:*W4_LX6[PG7U(-638V_LW&$F-"YMC&4"8K56BX8PHBJ(>G>Q+U[)[\)> MC;B5XSBTY[+S$VM Q\4-Z](M\XZ[9S5GNZ9Y&R0FTWX3$,YNX:)UX-EC5K5H MB\N:,I;9Q\4CRWO&S3IU-25N]VA-[+BH*6.9?EP\JPP T,\A0V[M>GL,*@<; M7-<4;&?O"P\GVSRWVSZQ'88]=NTV96W7NM*#*_\O:&=G/]1,>-DV<4(\L_B: M;XT65XNMZ$&V =LI'\_WL3]S,U\F)!13D#K'IS#@J7QK.#_1"^T*9!^#^5$J]/3$_4&S0]_\#4$L#!!0 ( (MT"E?SGQ*J[08 +$< M 8 >&PO=V]R:W-H965T&ULK5EM4]LX$/XKFK33:6<" MD>1W"IF!P%W;Z16FT+O/QA'$4]M*+9F7^_6W2B+2AV-%EHO#R83E2U$F:I]N105_'(CZS+5<%O?3M2R%NF\ M'506$TYI."G3O!I-#]MG%_7T4#:ZR"MQ41/5E&5:/YZ(0MX?C=CHZ<'W_':A MS8/)]'"9WHI+H7\L+VJXFVR\S/-25"J7%:G%S='HF!W,O, ,:"W^SL6]VKHF M)I1K*7^:F\_SHQ$UB$0A,FUIO^K">B*T!S!\8P-<#^$L'>.L!7AOH"ED;UFFJT^EA+>]);:S!F[EH MYZ8=#='DE5G&2UW#KSF,T]/9^;?+\Z^?3X^OSD[)R?'7XV^S,W+YZ>SLZI+L MD1^7I^3]VP_D+;G.W$ZFUB]5S>I[-4+0BL&LG,A?C5 MY'=I <&CJ[AR%;:N3 &XF_(XYM'AY&X['-O*BP.?;:QV%&(. ME2$3@/"Z$&I,*J$QE"M'P=;[F9\P1GLP,;,@]"(<9[#!&3AQ_JBN7XXTL"'0 MB"6\A]0V2W@<U&*9YG,B'J#D*Z':))!Z(6JH*]OYCP$/+42< M!I3U<-M6S N]$,<=;7!'3MQ74J?%"R!&ULL]"LO;SP+;C"4_>[#5*D$( MXZWG=!!L8D\L)&/< XM8)1[S<;",=G1$G7 _5SJM;G/85<_!7#O:65G?"Z*D M!Q2Q@]+J>P/UBFTQ)W-"_5/*^3W4 A0Z[C-.8F-8!8-T"^6^N"HK29*>"1%_11VF8^ M%(:A[.D8C+DIS&B9O+I51C6+ATPH1>0-R:32*Q862N?0@4 <(JVKUA(ZFJ;* M9+DLA'F>R4K7T.+@T2'4!ZK"B@XQ8RP>BJZC/N;FOO,=#?'<2MBDQFG49S[$ MB@7)4!'LJ(^YN>]I%R]EW?:,[2)4&B;DY>%_EM&P:Z!AQA0#^F?:6$F05L2"GQCB>Y MFR=W!=TS^<)M0F1A&/#^K*-V-$Z&IGVK-703YVP@0<8@GF ?9[NK@H9@DR:+ MDWX3A5CY?CQ0('E'K=Q-K:O-6OPT^?0T5\KHQ;:T-%I!\_0/&0VL/M0F+XS3A:,XX2.$QJW$<)MP+VQUQGC MX4/K9>3$EZ9X).M#V=;D5&2BO(;Z^W36.B;@9"G:H_;B$3TQQ$1#GZQ1HX$N MTNMTA>?6%6ZX ,J7.>C: [&=IMC.)#[M5B8;R)WXHDUWA=2J0]H!+9BV&-)G]T0JR'H6T?( M;E'Q7>@4'G7M"@H/T0@^%']K@A$[SJ-X*!\Z,>&YQ<2*R=1@U41!VUH@\AFS MSFD0NS#Q^=#AG->)!L\M&BSZ;3?B*X,(K -Y_+@$,42/2R9;WY/,Q[R_TOHV MKQ0HL1L82/8K MY?0_4$L#!!0 ( (MT"E>>NO#K 0, % * 8 >&PO=V]R:W-H965T M&ULK99K;]HP%(;_BI5-4R=UY$:X=!") E4[=2TJW?9AV@<3 M#L2J$V>V ]U^_>PDS4@;;MWX +Z<\_IYG6/BWIKQ!Q$"2/08T5CTC5#*Y,PT M11!"A$6#)1"KF07C$9:JRY>F2#C@>9844=.QK)8981(;?B\;FW"_QU))20P3 MCD0:19C_.@?*UGW#-IX&[L@RE'K ]'L)7L(4Y)=DPE7/+%7F)()8$!8C#HN^ M,;#/AK:E$[*(KP368J.-M)498P^ZE&MC=9MG)#8OT8IY*K6:+RI#^\O9G>7E^-!O?C$3H?7 ]NAF,TO1R/ M[Z?H9((YQ#($20),Q7OT ;U%)A*A&A8]4ZKEM8@9%$N=YTLY6Y;ZE-(&LNQ3 MY%B.6Y,^W)T^@J"!W#S=J::;RG3IW"F=.YF>NT5O*K$$59 2L06Z(#&. X(I MFC!!L@+[/I@)R569_:BSFFLWZ[7UV3L3"0Z@;ZC#)8"OP/#?O;%;UL:_HA:+^0/ M\% ;66O"W'C=Z[O69\R7)!:(PD*E6HVVTN#Y]27O2)9D-X 9D^H^D35#=>4# MK@/4_((Q^=31EXKR$NG_ 5!+ P04 " "+= I7.^#&+80' *)0 & M 'AL+W=OF82 M XFE=C+8)D6==CXL]H-BT[$PDNBAZ*3=7[^49%LV><5)=P0$L20?'NKP7O(> MRKI\$?*/>L.Y0E_+HJJO)ANEMA?3:;W<\#*KWXHMK_0W:R'+3.E3^32MMY)G MJ[9164PIQL&TS/)J,KMLKWV4LTNQ4T5>\8\2U;NRS.2W&UZ(EZL)F1PN?,J? M-JJY,)U=;K,GON#J\_:CU&?3(\LJ+WE5YZ)"DJ^O)M?D(F5M@Q;Q)>JH'A_8W[7B MM9C'K.9S4?R>K]3F:A)-T(JOLUVA/HF77_E>D-_P+451M__1RQZ+)VBYJY4H M]XWU'91YU7UF7_<#<=) \\ -Z+X!-1MX PW8O@%[;0_>OH'WVA[\?8-6^K33 MW@Y.55DR@+)?6WN6ZG9O/[N\7]OVZ3ZX?T \HK]##1NSJK%K5EU.E;Z[I8KK)Y12@,674Z?3X<7@&$:,GH.2VR8AX/8]\]AJ0UC,8VB'G8F MUC^*]9WIE^12%Q:T%+6J+R"M_I@)-R99,B99.A+960R"8PP"9\(MLB*3.:^1 M7M_1BS818-)U'/Y)_/T0A[&1R8^'Y@QA=",6R*M5$TC,R!2VT4PQ%CL-CX M*#9VBGT0*BO^4FQLRR"462LH ,/,B\T5U(8U;MX/#;T 6QQ')(8%$]P;/?R* M@K&58ITKT)YA0"UFV$QD !?'U#-@"0"C.*"Q,7@IU&W,>9:32,2I;,BI;.A;;>3QH'P_ZG?7C9[3-ODE1%$AE M7YO3YIM'7G&=H? .@MK5)8H]<_4!8%Y((V9FJ TCA 24F!EJXV)=K(8F9&^I MB=,?SMYKI5*O0HWJ;*7W=GGCJ)M],ZB= 7?K^\34#L \+S9+*P"CL1XD4[H- MTXOO4&TEO7)T:K.$ZRFVS+/N64D3_U)(E?^WO0!J]^T;83ZS,M^& MQ4$0F>)M%/7\R+3R4)]Q@.F ^-Y'$K>1[&JOL)9G4+=M[J(X"JBIVX:%06#7 M),!1AD$46LH!G!_&9,!TD-Y4$K>KW&^CUU*4AP'0'A,4;GL\BCW+>D P&I@U M.X%@L6?.G12 ,5\[MP'9O;,D;FMY6RFN2XHZA!H4;/N\-RSP+,$ +(I"4R^ M\BF-3;T C$1X:'KWYI*XW>4^S(]\+21'>7>F:YQ3/^#[@M#:1@ P2D)BU38 MYA&S#*0 C#'F#TQQVGM-ZO::MZ^23&WK]X:PT CF'()YGFZXVD<:E$JLYR+$]\RPS2%82*T%'(!1P@)SYP3!_)C@ :F] MDZ/4Z:S33%9ZX=:;";UAK#>9Y*"SIDX_^+W.>E2V9%2V="RV\WCT1I*ZC>1- M5N=+]&->H94VTYD\"Z?;S2=-![R&&;G.!!5&F'TM!5#@@NW>/U/TT]/?VUR^M.WO6 M%N*)([WJE-I(MK)K)':J5MI4ZBD*S\M1'Y:.RI:,RI:.Q78>I][H4K?1[>=E M%QDX(R&OB8E'<& F)H#T0A9HFV F)X2,O2B, S-!04[]YPT\3:2]UZ5NKWLZ M.5WZ;<^I*Z-/PLBT?B"2,DK,1V@)S*F!S'3Z,"&CEGZ5R4.JLV MS6_JSP<3",]'IWG^[ODX)ELR*ELZ%MMY1'I;3MVV_"\L6OPZBP; ((MFPT"+ M!L"&+1KK#3AS&_!W>N.1/U5HN9.25\MO2,FLJHON@4,AZKIYW%;I\1#KQJ6# MO^%"[CPVJR6 ,C>?KR)*G43GH]![5ZGZ_/UX]OKASW;ZN8ER_(1=S EQ/R$7: MO9;3TW=O"7W(Y%->U:C@:]T5?AOJX,CNQ9ON1(EM^V;)HU!*E.WAAF/"5VIYQ M)+#Q;FIG;6=W=G;V R/1%B<4Z9*4W?[[!2E%%!X"R?@F7Q+) LX%[\'K'((\ M?2[*S]4J26KTYSK+J[/)JJX?WTRGU6*5K./J=?&8Y.*7^Z)EC_)#<)O7'QP^E^#;=HRS3=9)7:9&C,KD_FUS@-Q'SF@IM MB7^ER7-U\!DUE_*I*#XW7RZ79Q.G:5&2)8NZ@8C%?T_)+,FR!DFTXX\=Z&0? MLZEX^/D+>M1>O+B83W&5S(KLW^FR7IU-@@E:)O?Q)JMOBN=WR>Z"W 9O4615 M^R]ZWI5U)FBQJ>IBO:LL6K!.\^W_\9^[1!Q4P/1(!;*K0(96H+L*5*E _",5 MV*X"4RJ(W)LKN+L*KMJDX$@%;U>A)7.Z35:;Z7EG9?&,RJ:T0&L^M'2U MM46"T[SI6;=U*7Y-1;WZ?'9]=7O]_G)^<P?[Z[?S_G-[4\_! 3[OR+^SX^7=_]!)^CC[1S]_.,K]"-*K,5BL]YD<9TLT76]2DHDVB;&^ZH9 MB$\)NLP7Q3I!/[\OJNJ5 3ZRP]\DM9@I!#:/RSS-'Y043P7S>_K)GG[28K(C MF&^3AS1OP,3PS.)\(5HG2*Q6<9E4KU!DMF-N"-7/BTSEV&6:.XYY.GPY)A8S*(<$B M(#")3;IGDXYD83YQY)3/]&*"&X46O0QSL:\6XWHQ)5AD".:3 M )-],2D_;)\?UM:C1_(C!J!8?2O1R>?)]M.K9LYJIXY5D2V3LOH;XG]LTOHO M]-^;(LN06+V>XW+Y/U/>&&3/AP2;0X)Q2+ ("$QBW]VS[UI'1TOS2;,-62(Q M$8N]614W4[^)6U>;B(+0P\J(L(8;R]F0B!PR8@0$)G'A[;GPK%S<)%5=IHMF MI:P:6E!:59MFQOH%Y6([?; (F=BQ8H\=>9Z^YF#'P\J,-(>,R2'!(B PB4=_ MSZ/_ AY-W/E:NM6%QM?G?H4+'>-$'2G69H_-,!"8E.%@G^' FN$K,1S2=N-H MRF:@98*XH=IW9]8(8RPJ11A3IZQJE+E#%C MCSMVT R*R4%C1E!H,C,'Q@+N61H665Q5Z7VZ:+=9J+A'61I_2C.QO3[Y\IM8 M..)FAUVAND!)N_76?S.RB'L7$GL#1U,(B<9!T2(H-)GJSD3 =A>!YTN;A;#) MA EQP6H'7WL?(I-)H)+?4Q5M0H:EX.B15!H,J.=D8#M3H+"Z" 6J99WSW-" M1M51:3(25'_' ,8\XGB>.F/JY=0-A*$(#@.?'/$2<&O=HZ#I:WW>']'T= MC+E^$*HNFJ&E"T.2@:!T6+H-#D3M!I M?VP7_V,,-:QK=H9];=,-*=OG@V)RT)@1%)I,26<68+M;\#)?S0X^>ASJTIUA M+Z#J= =J*("B15!H,IN=2X'M-L5X=PWK;H*FBL*^NR_S?A1N;_GH/'\+$X%T M)@*QFPAVCXT8M+M/O$#)JSW&V+D+%(V#HD6]"9%IZ!P#8G<,7B@C[>BC;T7K M_L(1&0D:EX.B15!H,J,'IPM&&0.#6-3ENU%&[LK9M](&,*.,-)13M]*&(C89 M23JI3<;>M%@.#B-05O!NI^_K8$S,7BJ+W'XEH_.N1R6$^(%[9)ATPIRXWU%Q M$L@[Z3-0M#DH&@=%BZ#0Y$[0V0[$?FQ@C.(D^HW]T/75,QSV@*.I&Q*3@\:, MH-!D2CH3@+SD!$"?XK2#CQZ'NN G8KWW5,D)&I6#HD50:#*=G8% 7F(@&"GL MO8<_VQ4Y7*\T2G24$ZJ.&U!M#X4F)[K3]L2N[7LTIZ[ "::>EEA(%3X'1>.@ M:%%O0N0#LYWTIR\Z/] W?]G1Q\Y?U""LQ54R=6L'&I6#HD50:#*?G8= [1[" M5YP'H0:ESYBV4[ ''CO6C@15-^>@02,H-)F;S@V@=C?@&Y\(H0:%[H6^2B/D M;?KYH)@<-&8$A2:S>/",@=VOV#[9LI">;$EW3[9D1YYL>4MU4^$$A]H0@[0 MYJ!H?- 51% Q96XZVX':;880@=$(G4-HJTYQ>CG3\-!+ M$<8P.^(.TNUY-L-S!JZOLF,X0B!FL$"U= SEM$?:#.8$"7QZY 8" M[20[#;ZC,TI!SP" HLU!T3@H6@2%)G>"SDZ@ YYH&.B,4EU+,ZK._#-[P-'4 M#8G)06-&4&CRLZ:=M<#LUL++G%$[^.C'2PW.0D!\K#H+H%$Y*%H$A2;3V3D+ MK.]YAK'.*.M_1&%7Y' 1(BHE.LJ)>H;-WO31B?X6-@'K; )FMPGLSB@SOR- M/1Y@CS'Z@6K0)P4,EZ!N%GJO4LYM)]Z97;Q_8PN&&D$.QLEV,=:,';T MT+ALFZT8 SE= O&4,AHP1C* MF8:'7LIHP4P/WBG5O&/L][@4:KQ"67(O*CJO?4%*N7UMU_9+73RVKYGZ5-1U ML6X_KI)8J,^F@/C]OBCJ+U^:-U?M7YYV_G]02P,$% @ BW0*5W(_.R@_ M" -R0 !@ !X;"]W;W)KS4?'=;S4[+79W+0MQ61.TVFZ1ZNA!Y M^7 VHJ/G+[[*NW6MOYC,3K?)G5B(^OOVMH)/DT,OF=R(0LFR()58G8W.ZC MPSUUP^[U<^]7QGEP9IDH,2_SOV56K\]&\8AD8I7L\OIK^?"'V#L4Z/[2,E?F M?_*PM_5&)-VINMSL&X."C2R:O\GC?B Z#: ?O ';-V#]!KZE =\WX,;11IEQ MZS*ID]EI53Z02EM#;_K"C(UI#=[(0D_CHJ[@5PGMZMG\YGIQ\]>?E^??/E^2 MQ3?X\^7S];<%N;DB\_/%'^3JKYN_%V1,OB\NR8>?/Y*?B2S(MW6Y4TF1J=-) M#1IT3Y-T?[^+YG[,JW(YR(3V7'["6@_.,">';A@S@[_M?9?V ] M00JJ%:E+R$%I6:0R%Z0X*-;?ZT^IGL5M5=Y+"%*R?'K]- ;O.8WOU-G1:(6' MT0J=TW@IH--4)DVR+3*2;,JJEO\U7V">-]T%W3F+F!?T9A:Q J,8G]GHH#5R MAUQ9C,V4Y0(R.A&/ #F%AE\TN'T8Q7Y/(V+$P@"7&!\DQDZ)MSJ8#/L O20K M=\MZM3-Y%/AN M@"$C'$:\KQ(QXQZUA#)M:4R=J)N==Y*6'MU,+"'7*[5+BE1 ?"A\Z>U[[R0U@P%PE M*42,DMI=G$_4">^W NJ]>CL>JQ;HU$G V87,!K[ YF(&8\]VXIN$4K=#+VMQ#:1V3,\ MFV KZ[6H]M&':AZBLV/,.,POC,+)XUV*8N3$\?\.&@2$TI7RP+4/,+&!@+7*9 M&[DW)F32'6 7E+X0,&S(4S_J!SUB-&91:!':,I>YF7O]V@(*%3Z$*@L"KY\% M$;/ 9[8Z@K7T92_0MU>^R^)>!_?+=1][5ZZ^5V_'H]!RE;FY:D;!T$ 7*]T] M!?FPWW*8"6Z(!A-LQJIK]Q$=HR%AQS0.V8!QF*$?VO96K$4QM:]DT5 4,X2SW&IWW)J!V/ M;*!HB#9]C^L)36;OFGEKV0!-<)K M5KYS!_#FE?].O1T?7K:DYR^0OJR@C2&X&86%*"2D@#F4>K(F5TFJF?.$GE\. MZ4QC#_[U)A"QLZQKWA*$!Y?\^*F87,5O3S M%N/]<,?QGI(O:B?K!"[L<]BV]D7;P'-W8#^ MO%J)IN"'[7AS#@:1(TBZ/SR =6#Z&]-RFE?SR4\PH_8TLQ9TL M=$%D."XJ66:H'T,>\SCP!REI:.9'T]@V!RVUN9O:+_LA=,GJ]&"(91;'K%\7 M(6:^[S/+&0MOX.WEN'^"P?C%JJ0#[HZ M'Y>[&MV=^T,P<];?[")&86#;-_HMP'TWP*^[T.X6A3VW%L")! M71FR._*]?EI K-B4!]-^#-\Y/VC/E5>H?4IKX?]=<_9L9M!Y1^RW;? MS?:O(LVA!I(KF1[.R9^/%Y[&S[_!T"3-%$7- V;S, M6_?DEX@!OA?:^$FR#*$\2U,OEU@(W[4E&CI96%>(0$N7 MI[YT*+*H5.ATT.L=IX50)IF.X]Z=FXYM%;0R>.? 5T4AW&:&VJXG23_9;MRK M?!EX(YV.2Y'C X;'\L[1*MVA9*I XY4UX' Q2<[[9[-#EH\"7Q6N?>L;V).Y MM4^\^)1-DAX30HTR,(*@OQ5>H-8,1#2^-9C)SB0KMK^WZ%?1=_)E+CQ>6/V7 MRL)RDIPFD.%"5#KOX!_#C35A MZ>'29)@]UT^)ZX[P8$MX-G@3\(]*=Z'7[\"@-QB^@3?Y5IH3CN/Y&U1K; M<85ZTX&P1#AX=SH8]$87MBB%V<15?P36;0_VP,W9[Z \""B=7:D,'3,+*)?& M:IL3IK2&)Y4*&Q#>$S4:(*$3Z="1IU[E3'NKJ]J#8*&LYI3W*%(ZM1(!P1-) MXB"U(FT/RD2NRBRD P2AV1 G64GTT7I]3M@=FEE" _I B!U LU+. M&J;#06)K.5JJE*!(B@;B$P9"L'5PB:.),:9I@%%8S)T561?^)"*M:/5/1K[% M4^J*Y)GL8_>A"U=((6)SD43$T5:2O=RNT$4RON;"*L^][[:2N@TW1SXR7=W @BG+4RB?- M5Z]RLY/Y?'O]LR)%HU">;PD.VW;WTN14FNC:>[-*:6;([N1.%!1V0S7UQ/%565JWC_6] MG=O %F(D6VV[LR2Y3A27M ]4?2W8ZQ_XBY+\E1I"E.2%O7>4$IC(\6ZG*^I^J;?;>[>Q>=U\^!O7C]J+H1CMK M@\8%J?:Z)T<)N/JA4B^"+>/C@.),3XWX225-4X,%Z'QA;=@NV,#NM3C]'U!+ M P04 " "+= I7G2C.JL4, @) & 'AL+W=OU#HXVZ<\+W;2O=[E8U=OOVY.(D/_A!KS>!'IR]>]/)M;I7X:?NSN'369%2 MZU89KZT13JW>GMQMYP;^TVOK1WX(L65K[D3Y\5[\].2>%5*.J0!(D M_O>@WJNF(4%0XU.2>5*.I(WCO[/T/[/ML&4IO7IOFW_K.FS>GKPZ$;5:R;X) M/]CM7U6RYR7)JVSC^;]B&]=>79Z(JO?!MFDS-&BUB?^7C\D/HPVOSI_8L$@; M%JQW/(BU_$8&^>Z-LUOA:#6DT1]L*N^&VT956_LU9P'FTZZQ*LF^C[,43LJ_%]]:$C1??FEK5 MT_UGT+,HN\C*WBZ>%?BWOIF+\XN96)PO+I^1=UF,OV1YET_(.V*E^,_-T@>' M9/GO,8.CO*OC\JB OO:=K-3;$U2(5^Y!G;S[[$\7U^>OG]'VJFA[]9ST_S-4 M?Y1L<2N]]K3PCDPT0<;J,C4>:%/IKE'\]7MK//;4\?L?-TI4Y8FJQ4H;B=6R M$1XB%.H\\+: A>]MVTFS$](IT<53L$,;\=/\?BYJVS32>?H,B81+.NQ0-F&# M&B_Z=H,R:V64DTVSH^]5EV3103\939_N20,OOOCL3Z\6B_/7?,I?;F[N^//% MZR_9NHU\4&*IE"&5.JA6BZYWOB<_!C[E75.QUT6O'M M8[619LW&MMHSR'U!ZY(2]]^^+\?#1DCLK&/+($_#(4ZW(R=J$P$:8N;B;J27 M[ZO-<<5FHE(N +?'FWG1RMI@;%"BUKYJK.\1 V%H"3D1?FWZ.CKQ:!2+?[3A MB+@::U2,4/'MR)^(8@V8QP;8:1%-Q&3^*S,F*<,>3M$_3".8I/'8]TNO:RT= M8C 7-TT3_5BE9:AZXV45@T9[EK(AQ?U(5=5H@+!,*52-4WPNOHM)93MMR)/0 MHI4&G8TTG14-^3"*8V]D7^LH*H;S-Q<(-G $1A-;-F=,^%5Y0%I0ROKLDZ'(D^)431=? MO?;BQI@>FW_@@A(XAMJ[N#@__7NQ8Z>D$XJZEO@&KFR7RHG+V'<6DRKE!V5_ M+MB8O,>]28I6TF_$"GS(EQ-S"AQXD$$0EI68:B[!&@!-?";'(A^&>,.9ZK$# MZU$Q,!2T51]0Q'NG4+GE\U<]4HC:*MSK*[B'7 D48ZA@>KWG\M&KY,5/UI0 M'\A",<3:ZQS9"#4>E.E)G:(NB9JM/9:^0MG4ZN1L0 1TA1 MU@7,?XX:C>EDS8%#?3AU2K=+M#JV:5 @S31D]-A +X,+("[ M1^]<3(GC7\#WA#JD,T-W>D;:*'BB940*-B 6$P&4/$]Y8ZDJV2.N&NY4G2:= M25Z),=*'K<$PD(Z*@X!"0;[/&5OTY/;7R*5U,^IPIX25@ )J_SDI9AS,&/"Q MENC$SGI?JI;S8LBDI$\R.>O@CT1JS^>H.C/1&^83)OMB5ZH0B>"C-6XW&B1% MCYE:WR'F-=HMPK?+-0_NQLY<[O:D9PPD1.?,/6/TTBD:;)E/'@_FC%9%_5]_L65VG?D!$QYZ(J7%ZR!^XZ_7/*NH'$0!L% MO\;6,F9S3]@X;0/C3,[I9PT3"XNDEFWD8(Q#PYFKGKLI!S+IE3[65D5H =+0 MK#ZTHT'4$*!6[K+^@TNH$9&_F.L6("B$#.V6^Z2QYG1-FPQQACVH QA]H-/E M5KH:87VJ>+/)J:/FTI&#/ *3F)I$P A_(4X]TC9*I++,(=FWLF'P0TSC14=R M'$5&1E<0!W?(TV%.YGBS9 M+_^)#Y_)B@*#I'H8:C 7S "/\? 1=MUF8DT])!"C7L=B.R /,['4#8;5]8@X M59C_5*+IF?9 35JHZI0&Q' 19Y#WO(Q#[E""# M/6!&AECZ/G@M>&(!AU7-SSV?3FTL1&;3;X0]W2%$[MJWK/++//V MCU,M453"RL@P_1.&IV!,>ZE)#'Y4.GZ*OMQBH0I9 AP<3)F@>]7 ]3J3 6ZU ME"#?8$#&?B[IC5.*C?/Z,6-D9.1C])XD=,'YH8?%J:88\.)Z=GUQS4]?+%[. MSJ^N9Y1"A-4 %)I0)FG8I.[.T^.QD,9B58\@1=$4;#\8&-!EP=*VFA -!W^' M\<2L-7&6&\Z_X6OM4T4-(08HU&EV$)W4F=&C&W[J-75FHG74+3(69M D!Z]- M5#_F>=DS2Z7/9<>D8,(.]:!@W@BUQU;C<=^F^5XLB5>1OI%?9SZ\/R!$OGD:EILF7^1L.OH*&C3$S%@]4>B1VL MIWN#W^29^2263J43TE"69IX80XU#M6/M>?K&/QY+E_%ZS3&)4A152L? C^*- M4;SYTJ[J6Q\BCJ9Y4 VDBALE#HW',/4Q.5\^/C%O'3,L-O965LX *@X&HBK$W M-=JXXVN66N<[,Z!NWCOCLJ/+E]&%RM MQ[0;8(+X(]@Q!J>$.73+FGP&KA*S M,H6H.-MG'S VH&(V%G,J^4O%=CZ9C(3LNH8KE(;54T2F(YM)9C0:7"044'3U M4Y4Y2DZYCTG[SO_\P-L1C"@,0]AF,9Y6)&+"&,]CTY'CX5%;9>R=]A8Z<3)[ MCETURA+XRO;KC6@)8= $12P^3CI5;8S^U.>Y:,MO;OSD&D4.MU9S<=\O/\0. M$4D(=]5'\:&OU^GRB8E@*G:=D8G4S:6"M.1 \^7MJ/)'1E-5VBJ.G6.$9K#M MALNCW.P]!MHTH$Z@;UHJ%(6I]_S4?70LOR.+LE+Z\KZ$2,>R CV2WKC%CG?3 MKU$GXH(A0((^QKNC\2E403WSR4'N2!REI<_TJ)P7!W9Z-,GA>)\4\28&%:OR MICSB99UB"YXVD:2,JI_5YO>=?BM](4K3C7$<5=-QIH2N/A([]N4!N^(8IC)* M)I3ZXZWL^7QM,W'H5L9)*S>%,G06=72=1K%$F2AQ1YY! W+KQ(S8.W94M$?\ MCAFE=U0 ;58&E;)5?*.9FQ;CZ*_H<8R#6[ZF*^UN8EFQJAYH9+KH9'Z15%ND M:]R,$&,Z"1A^OM]W#K67KF!CVRB7$$M9?6SL>C8\B6Y"W6YT!QO!'K'>R): MAV91 A)%=TMK<%U&D@A(-;S1V(YR@J#*0BI0Z*:E!/CY*2+B&,AI1@U M)B';*;WLR[PBT42DV3 T $GC2]("8H/-1EN5L MV(-()AA^OX#Y)L[O7<.ED7QTNSZ]9HH\JSIHLKLTZ,GV MT5&COC85,^-<'PS2@V_J7Y1:6Z['9X0S!1C$HW.0.W>SR!$DO;NKJS M\&/%_^SDB+:. ?,?]);SU>R7)K095\(J8MGD=2G^K<=[\[P0W^HE,7Y^[/7_ MV>A7&X"+-?\VA68?N#+^@*,\+3]_N8F_^AB6Q]_.? ]8INO51JVP]7S^U+O4>*'8#O^#.%N![>N.;/] !Y4=![_X'4$L#!!0 ( M (MT"E?ROT;$'0( /L$ 8 >&PO=V]R:W-H965T&UL MI53!CM,P$/T5RTB<4).FW1:5)%);0("TJ&JU<$ X!+/V//>O'%F'+=*/YH2 ,ES):1):(E8KX+ 9"54S$Q4#=*>G)2N&%I7 M%X&I-;#<@RH11&&X""K&)4UCO[?3::P:%%S"3A/35!73OS<@5)O0*3UO['E1 MHML(TKAF!1P '^J=MEXPL.2\ FFXDD3#*:'KZ6HS=_$^X!N'UHQLXBHY*O7H MG,]Y0D,G" 1DZ!B879Y@"T(X(BOC5\])AY0..+;/[!]][;:6(S.P5>([S[%, MZ%M*M9^@K^?.\65*&/\E;1>[G%.2-095U8.M@HK+;F7/_3V, +/E M%4#4 R*ONTOD5;YGR-)8JY9H%VW9G.%+]6@KCDOW4PZH[2FW.$SWD(%$LLXR MU4CDLB [K:2U,[!7CR8.T&9QL4'6,VXZQN@*XX+<*XFE(1]D#OE+?#1*C ML\1-=)/P2R,F))R^(5$8S6[PS8:29YYO=H5O5.L!F(9^EZ<]@=)GO=-?3?\.Y9 MN&>ZX-(0 2<+#2?+.TIT-VJ=@ZKV[7U4:(?%FZ5]G4"[ 'M^4@K/CDLPO'?I M'U!+ P04 " "+= I7&.\_$,\$ #># &0 'AL+W=O"0I[H]WZ#\ZV]&6%3=PI=H_1&V;15 &K(8U[UO[36U_@L&>G/ JU1KWGVV] M;!H%K.J-5=V@C PZ(?V7/PU^V%,HWU)(!H7$\?8'.9;7W/+E7*LMTR2-:#1P MICIM)"7.:MP5J&>7-UQ+(>\-VX!F=PW7,)]8Q*7=235@7'J,Y V,*?NB MI&T,NY$UU(?Z$^0SDDIVI"Z3DX"_].T9B^*0)5&2GL!+1R-3AY?^FY&W.R/9 MGQF:U>!0U"C&)C4+(2G5 R[8! MMG69CV+\$306,I-]MT(DM68HUF'I.4S#L"<8RZ6#J7M-']+'4X6J0P9/5=N[ MS5X^@B%$U+):5#3T&&?L6K0]S8^0QGJF8C<>55F05O 6J:,&=0#;<(N4^K9F MJJIZS<2:&<"!L(+H(674U"@B76H@D$)/F!Y&0ZRJ'M!@/ R>0%?"(!/E--!V MHB4DZAQ(XS82QR;A=ATWPN2R@GT7.5G'$"4&EXT*H[&H0/,KU6VX?#YCO]+F M>HU6T]9H<_L\6/T(^Q9B5*4B%V!/K8'PAS#X$#CX5AGG"N%/&L!1DR/RIQVJ M/_E$Y(^$'&W9Y11-5V_E'MXT[F@CGECG&PM08V'8%I[9T!60SK"0N(5D2!]@ MT[(,TZ)P D4Z"V?Q#*V6G]Y*J9"6-N!NAQ9=>OV2F;;1 [H))>0A#7XO(CC M.,S+S&EE.$RGK]WT$I+#PT.V;435,/("!0KKC$P:TV!T'R8,^K@>2N$U_FOG MKZ#BO2&30&!P,7V.1)5YSZ, 1L-=^)2DF"ZUH#,-:_ $QVP%F*,=V/_DKB%2 M!^Y*HK#,O;>2/)SFZ?_;6U0U:]7B4\@YC:]::ENN1TOL-QPG"%")5HR\R92] MIDN>>H\)NRKZAQ=\U1%(_68C/4>:%,G]6YW=84@/%@ZJ\: 2W][YVG=(V"I] MSKZ^F/3Q0YG$\>X]_$#B*LS".I@P_13H-XVE!PUE6AL7,K])?EK.;L<..L3_549P)O1084.2. M^3UE61F'99RS+"O"///SM)CM(;L[@=)AP-#@[UZ\3GCUO1=F2"IL-V7BV,5% M3CZ(9RD94\3Q>#>^T_XLC\.B+&F8I$D8YX5;3:AKY6X5>UF)PV.OFLG>FQ.# M>N]>UH:N5VG]\W-<'1_O%_[-^B+N7_Y?N+X7:%H+:U2-SHH\8-J_IOW$JHU[ MP:Z4Q?>P&S;X P0T">#^6N'%-TSH@/$GS?)O4$L#!!0 ( (MT"E=@JP@C M]@P ,HI 9 >&PO=V]R:W-H965T*R7-*R^^OOF5E2HE[B MY-*B]X( B44N=V?G]9F9)9]N3/7>KI2JQ?TZ+^RSP:JNRR=75S9=J;6T0U.J M D\6IEK+&K?5\LJ6E9(9+UKG5Z'OCZ_64A>#YT]Y[%WU_*EIZEP7ZETE;+-> MR^KA6N5F\VP0#+J!G_1R5=/ U?.GI5RJ6U7_M7Q7X>YJ2R73:U58;0I1J<6S MP2QX_IYE7V;. 30RI7:4T4)'[NU(W*MWKH+4C\#RP(VP4A\^TV8BY?R%H^?UJ9 MC:AH-JC1!8O*J\&<+L@HMW6%IQKKZN?7C<6(M6*6_MIHJTE5]NE5#=(TX2IM MR5P[,N$'R(S%CZ:H5U9\6V0JVU]_!9:V?(4=7]?AHP1_:/*A\ -/A'X8/4(O MVLH9,;WH8W+>F/5<%]*Y1)&)F;5P_9[TXN^SN:TKN,L_3NG!;3,ZO0V%T!-; MRE0]&R!&K*KNU.#YUU\%8_^;1X08;848/4;]TXWU&618T?LC;PLQ*RN=B[$S M@R?JE2(%EK)X0#QA:J4R(?-B,K)>:= M(.>#7U[=#B[$HC)K\3KZ7E:5MD.!0:&MD**LS)W.5$5\VF9NTTJ7M.$E!72/ MH-TR N:86UG(_,$2$6R\QMU2 9)J)M2MDF69ZU2ZA>Q3M*C6*>YH]UNX@4Z5 M.)])>7NQVV0H?CZE3^*:MIP/& M*R!F+FN02PTI7UIKH%8:V.AZQ;+!R0LK'3IN8"2Q0& 4*:;4J\HTRU7?WG\! M#4B>D<&Q!YG4D0?+NA9R62FGF7-:-+A5J2%-?"W7Y3<_B1LW:];-@JV8C6M9 MO">19K Z5.B)-\/9L"=$3CM65I2R@B_1D*K-$!I5XHVIE0A\CR^L>"*Q1A=-Q4\R54NXM7$.^1%6AW!582KRGMK04E4!AQ4O74A= MB3N9-V" 0D 62]TQ Q[&:"S1[7SH?([OGQO'T) M::03Y(#_C08$S!5%;YFKSL?:[4VA+A^4K,1:2=M4SDE*F-MD%!Z5:I4R?Q"S MVQN1^+%C2O8@F3R*$(SCG]-#7^"'/:M+VVD*\:;N)/;O,YYA=P^$T[QA M4#QR"@_34],4-6DB5?J.G-@3J:K@H@4LHDP_*,0_09I']$ L7+Q(X"0YO63Z8VI2A?0IV9^;W*B#-%>O[YQ40.R MA- ZT[*" 'WES>[U6KS).:6=!Z'N!/R9C43XAU9Q-O)$_(@V14 8.41CR4^+H+(B\V/>[+7;H3ZF9 MD*8VZ?L_/?5\!*._)),OR>1+,OD3DTF_< 4$](R%^$4\M63ZW4365,0TI9V/ MH%M7>SM2>T08Y2(O"N(]C N]*2!KBW!GTX_@EY,>.0+17G B@$\5ETAVM*XI MR=YGT<@'5#@@V)+>K'2Z8I'G2E$R2"F:08OL2A;7:T:Z?:V>12$<<4:(.V\- M?[GA P-:6F)8@BH)Q[[S"#1T1QA!^E6_)0_E='-;>L^_[Q?QO;CJ'C\!Z2%L+] MQKT?G3N%+ZCV^4!(AA\O.,A/CDFT98<7AOM51^PE2M (1DO@H8-MRBVFX0-FP0WU:U(Z]<#I%W,+5^\<%:Y.I M_+.BU?X9X?JEPO@/85'XOX=%?T1Y0?N<*C&&XMU!@Y!3N^-.7K-_HFMR/=0V M&GL5@FL*])K"LH*GM(9'JVP,!GX.Z4[(<&%FP/L'?%EK;4\+&#N6DOH,GU'-$:N;GA$[>"_8F. M KGK=4W(SX::9_?WAM#M3$P\/YS@-_9&P12_7W^5A$'X#:Z"T!N-QKVA:_AC MJX*FF+N;G1UAW0).$WO^*!3H :?11(R2B0BFWF@\AB"3Z4CP.YM+L[@D-VYU M&WI!$.'Y&/P&R51@:3@2XR@4[RH#MZ[=H2W%3 M&$]$.$YVE.=C 21?*'N5 Y%9?UC;DJH4*,!YM[]X@'1& ;]$&(LX\<4T$N,IF,%_YR,SIQ=XQ\0+)R$N2(RQ3][A M)2"&WU'LQ5-RD\2+QQ/QNA<!EX4)KN!-ZH^"M8SLL,D3$@ XF[*?(\G MQ.T4JIQ$N( !1B,Z7+)TV./0A1WH_(8K#]?0PP.O$,=<"5Q0V/ ).LO/)R:. MT)1_X?'NV036"MISJR5Y[K9)V,$J[[*K,G8"=;^H_/D_UQ)=[.YQ>Y(;[G&( M&]15OC_A9U1DB6_O*:$@=_5)T/F1 ZFUPV=*J"C66?JJ;B"B6@ZA=N;7E$KF%RG;F*EL_5^*B3:A!';;_8;E.^ M:K5GF]Q-(?!N3[Q8;)IZI,JM1C1A*-5U=!++F9.)]+1T.H?S:U(6\8.[XZ[; M5WW6SH-FTZ13P?5VSK3Y?'CHJ_59=95L[N&II,-@J3J M9*D!V5#TH"L27=G3^72_+?J8<8G=E;QSA/B0HE6Q.[IX32_=V83;U/]OFHUG\(![O1%N/;NGZZ[MN' MOQ[AI#;L]]H'U+AJ_9T&_(0P:0J)$KTF($,[+1A ]@F?#J1S=DK36"@*]1Y! M<,FMA[ K?I'MLL?%[U<\,H,^C!0W[3AD5A)Y(TT;KB!D[2!;+77!5J$&L%?7NY'47'^AT2GA8BRYV#_L/I>U,VV&%ZS#1!N6$ MY!E_B'#'>?1<7SR"JGRLL#%-WL+%U@1D#^Z$]Q#X..E13#1\?,$HLTO3GV!" M >V=:_"W:&JTP*=9?/*9<-4YX8>?' -9B+XBHL(R1!\6Q50 C8!N$ZZ)1C$* M7F 7%:FMT5 -Q5XTX;)HC,J1BE24:G%"*T,\&D?B6EJ=[E+'+LZP9NASO3<, MF,(P2OAG$H@7.F\H@D\N\X?3J5L6N&41_Z AFO6A_N-S(,RMU(+>L1[4:;TBY*!4\]PB*@W=^==B@>76>0(''-RBR]][K_D* M#<]HWYI])U,NLA^A=GB:B("W#>W/,;:WJA=MCL#I:#OUF=95[_LZM'1+_HJ0 MD 5HZ3ZUVXYN/U2_S=M/=5XX_2M25B)U<+;#4'T[B@:CY8[$3\EY5B!H>&\;5TJNTWLZ#0.45-E2=B2URHK[;7DNS"GI*43?(52TX2"R7WGDT7R?6WAE\K7&G!G.PF61"W-O%IV+I MA580,LRU)5 S/. %,F9!1L;//=/K0UK'X?Q _^!R-[ED5.&%8-_J0E=+;^I! M@25MF;X1NX^XSR>UO%PPY9ZPZVQCXD'>*BV:O;-1T-2\&^GC_CT,'*;A"PYD M[T"<[BZ04WE)-5TMI-B!M-:&9B=MQ-7<7LJMEN:T-GYZM:X9PP(H+^". M9]WB!G.L'VC&4"T";8)8TR#? ]<=D+P ',.5X+I2\)X76/SN'QAQO4)R4+@F M)X&?6W8&8>0#"4E\@A?W&<>.%[_ &V0'W\\SI:7Y,GX<2[3C),SN7@/!>F.I56 M($K0%4(IF*GRFF_F8*[M"?:W!I?&I\E00MSMD -Y"'L-44K\- [M+)GYX93 M%U1J#M12*<]M F%:#-=MLQ4="Y:;J*_C?V$A",W)NGH"-P';AI;_;]\CSKC4\FW<-]HK*3&PO=V]R:W-H965T&A"92FFE? MX,Z^Y[GG;.Z8;92^-R6BA<=*2#/W2FOK:1"8K,2*F3-5HZ2=0NF*67+U.C"U M1I:WH$H$41@F0<6X]!:S=FVI%S/56,$E+C68IJJ8?KI H39S;^#M%F[YNK1N M(5C,:K;&.[3?ZZ4F+^A9#JV2EU+US M/N5S+W2"4&!F'0.CUP->HA".B&3\V7)Z?4H'W+=W[!_:VJF6%3-XJ<1/GMMR M[J4>Y%BP1MA;M?F(VWI&CB]3PK1/V'2Q,67,&F-5M0637W'9O=GC]ASV &GX M B#: J)6=Y>H57G%+%O,M-J =M'$YHRVU!9-XKATEW)G->URPMG%4M/]:OL$ M3.9P_:?A-9VX]4&BG066$KBP(-N2771DT0MD"=PH:4L#US+'_! ?D+!>7;13 M=Q&=)/S97>],3SYDBAK46 .J %LB%$I0HW.YG@+=WA-L+P^N,,-JA1J&W4H$7XN"9P1HM.2V MT7A(#Z]AZ _CI'W'T0 N554WE@B>0Z*)GT8A1",_'21PUU EG.R/H_0=&3'!R#AQ;E05B1E.(F<,_"0.X=AG M$NPU=H5ZW8XO0V?>2-OU>+_:3\CS;C \AW?C]8;I-9<&!!8$#<_&(P]T-[(Z MQZJZ'1,K96GHM&9)4QZU"Z#]0BF[&ULK5=M;]LV M$/XK!\\H$H"U15*2I30)D#1MUP'MBB;=/@S[($NTS54279**X_WZW5&V8Z]I MUI[YY[/]*G*V,_NH52'NZ:NG5G@X7WRY/QV)4+U11N9):JQ9.9L4WA M<6OG8[>TJJB"4%./112EXZ;0[>#\--#>V?-3T_E:M^J=!=&LB3J3$?:?.Z.AM$9)"J5>D)H<"O6_5'4L>MY$#J#LG#?- M1A@M:'3;?Q=WFSCL"631%P3$1D $NWM%P]1!G.-R@W?9XXDO MX*7PQK1^X>!%6ZGJ4'Z,MNT,%%L#+\6C@+]T]0@BSD!$0CZ")W<.RX GO\MA MN-*NK(WKK((_+J;.6RR;/Q\*0Z\E?E@+M=*)6Q:E.AM@KSAE;]7@_,E//(V> M/>)#O/,A?@S].Y+V(WBP.[Y9*"@7>*H0 F=PV;W,)*8= +A]PUC@IW M?(OE]-<*5* MU4R5!=G+B%[PHOS4::>IRQU<5']AUY!:!]BWV)4M/.^L56VYAAM;M*XNPCPP M,VA-^_3#]17,NC;,B*+&EMNPSK=.']CX^NU+&$(>L5P*7$Q$BI]/?LH$%\\. M5CEG:9+!Y38"+F,D\@2,>'>-' MG!Z#%(+%J.;&>#1O"'&$RI,)KKA(621C7$G\[[F'D" UB[/[I*&?0\Z$2&!F M38-C<"]8I6F6M?(8VJJSE,7_SI)&ZMT29RH>> -3A3.PZC!\E'!*M&X158$O M[F#9V:5QRHT>**H]2A$H#%KE&14 6GR@DJKR\]27Z(!VGKC)ZKYJT(>30^'/ M!5]9X[!.RK)K.JP%]..BP8K5?_=U\19OPJ]@>:E;[=73&N^4"GW^ES,G6',T MNU&O57W!N85>.DP3)4E&.8L3$=*&^4SS"5%%E+%)DM *DY[G&9UG$Q8E,1US MF; \CJF(*P5M@4$^$L?(RW@<(5"*(E@""6YCP%V62:2BC)3'D"?1O4G3HOQ8 MFSDD!)VB0<\>GM '03T 7_E&8GO0.P#\PMQE(YKYM0(F0- M)9C: E6O56'=<4C1UV)A'>LO(28[0/G_ &**MHCQMR)B[X6;L<-J;#Y?)YVL-HL]\RS/9F2/E@OS+PNVYC]SR;!F+A!MET! MS MJGJHS%?:+_!Z(^_QH$"G\;V[\1-5CPRE%8[IU"E8X4H?8C#**@O101-@0\7Z4_,(J%0X?C1<[4-?;,LQP M/J7]DIH*I\8W (M^)A\"CQYZ(HWWWKB8@GEXR=,-UK6^?^[NJ+L?"Q?]&_F> MO?^E\::P+,.+>6H\YCLL%_B#1UEBP/.9,7Z[ M(06[GU#G_P!02P,$% @ BW0*5Q;VY)JS @ Z@4 !D !X;"]W;W)K M&ULC93;;MLP#(9?A?"&71GU,8=F28"FW; -*Q:T M.UP,NU!L.A8J2YZD-,G;CY(3+P/28#>V1)&??IHFIUNEGTR-:&'7"&EF06UM M.XDB4]38,'.E6I1T4BG=,$M;O8Y,JY&5/J@141K'PZAA7 ;SJ;:=E%/*7F#TG E06,U M"VZ2R2)W_M[A.\>M.5F#RV2EU)/;?"QG0>P$H<#".@*CUS/>HA .1#)^'YA! M?Z4+/%T?Z>]][I3+BAF\5>('+VT]"\8!E%BQC; /:OL!#_D,'*]0PO@G;#O? M+ N@V!BKFD,P*6BX[-YL=_@.)P'C^(6 ]!"0>MW=15[E';-L/M5J"]IY$\TM M?*H^FL1QZ8KR:#6=[82 M:(#)$GS*3!CX>;,R5M-_\>MO->;WZ)_K]5N0@Y+_$,&8XV<6(K%/6=L: JL#5"I02U+Y?K"5!M]G H#=QA M@0Y&&:C=TB"^-QTBMX9@7S4UD;%?)3K+KK21VV9G9AZU]@$A(PH0"." H6?/U M>[H!2I1\S>R++9% H]%]^O0!=+:R[GLY5\J+AT5NRO/6W/OB_?%QF<[50I9M M6RB#-U/K%M+CJYL=EX53,N-)B_RXU^F,CA=2F];%&3^[=1=GMO*Y-NK6B;): M+*1;7ZK'%^<%7*F[I7_M;AU^':\L9+IA3*EMD8X-3UO MC;OO+P>NT)3(UE57N[^SJGRKN9TCV4IN7 M_%>LPMC^J"72JO1V$2?#@X4VX;]\B'%H3#CM/#.A%R?TV.^P$'OY07IY<>;L M2C@:#6OT@;?*L^&<-I24>^_P5F.>O_AJO2K%K5S+2:Z$-)FX\7/EQ,TDUS-) M@2O/CCT6HN'':31Z&8SVGC$Z$E^L\?-2?#29RG;G'\/!C9>]VLO+WHL&_U7E M;='I)J+7Z?5?L-??[+K/]OK/V(O[+7G#XS1UE5\6,E7G+11'J=Q2M2Y^^EMWU/GE!7\'&W\'+UG_JUGZOXV*,*9HC+$\ MQC;&I/BC2U\*.Q5X*:8V1ZEK,WLOD+>UB&D3'U2J%A-,[HL_528*9Q>Z+*U;"\,^]KK) M:#04W=-D\*XG/FDC3:I$KE"QI>@GG4X7?P<8TF_CE:O-T@Z@ZX8 M#I+3P3MQ53FGC!<%&8=A+/06*UW,[G1$=YAT3T9OR5*"4)3(U=YR%.IW20_^ M(-3OL)>^&',B=S)'%A]E+^%DI]*Y-7)-X:D,!RJC(#:=E06R]:!!H? 2D[1# MKO%G*?,*3XA4X;$1G]52Y:(GM"DJP$GR8(&<+_#%43X6A72\1V_C\[@A.&NG M4P4@BJ%SZ:)-&-.84[R':NE2B1FHIB+'\N(3HFI\=6HXGV]W5F9^51EKV7P/NZ.(MR_25X[0'< ;H&,:;F\9H4$ "-=! MMW_*I+Y"'D+L*D[_"[$G/#+6K7F$2,'A /LUJ"8Q8F*=XVY4-E;A7.WF M)'8?@D?AJ(AAM:S2>:@%7KM1B?2]+2Z?LOT*>CC&I0)O!:Z28JH=HLN+4CAS MK0QMDQ#K@4K-]8H_-:AE6:IMMXT0Y[R^OG9>$K>E>96Q^($H3JW+J!-,%>43 MN$9HM.?0-=F(8_P'Z)K"0"8<==8:7H_"N/Z!@% 0X$F&IW $Q+T%3E70P@>] M9\'\8\T*AQ(**7>%B8D8?6@EB6TQ$%0)@DAHE!\MLAC%K:L\YI5 ME,524RJH+85 %CE$9(#Z5'R^OKRY$X>?801^7AO@=D($>Q-[W1V" (9=S36 MNH'M&)_R.AX)NP[FA4BC^ 96O[_Y!+OW$88W8!9#QQ?QJ0K1B8:!P=^QMYH8 MJ0."GZ-."?[F:DG4N:DW34X23 D;3.TA+");QL/6D=_L7(F"BUZ8U]Z" BG MF:D<2XL0!M170B]W^=\6M#1@H$, I/A8.1O40[IF P+X!OKP,GALT72FD)F! MV:8^>KF_G40HS6WI&Y$*!Q9I^ 278M[30'CAXDH\JHD""L)+U.J'H)]4>3H MD[0)'(IGU+K0!UD3!:C^1OS:OF^+C+0P=:[K.A@A $[1,;R9-2@4 M*)VMQ-H-"BEWF^N@!9!(J.L9+ZOM4Z65[$W7S=499J/V\.]O8R*\I48-Y+-2 M!\GAT5+A,[6Q.?)'=*-!2%]_&XI_Y'824D,;Y XO=[TGD;Z[@]"FPL='<@"% M)_A&X[&5:<72!PH0.E9EAF1SK8->F__Q\OK;A_&FFA>6@@,N8H$:JP?#%N!. M%%Z@ "Z3HR#\!>(C ]" C4$;G(>EN_A?]^VGPL6L7H=KC[2?B]=4/^ O"=B9 M8E.-P 57^+S ?G3;W8T?I)UB-!6=,]#TO%FH; AS'P@D5$0I^4"V)-!OZ5X2(*)5/ED2OQZBJ4*#Y?P7MG\X24+U54 M+6:-6K$J@%$TWLIM7C1Z9A.NM/9,!IOUT(8#\3@CIU-LDWB##@:-*6$Y&*(0 M3:I2&4YQ*@(WV=!:(B:. MN%KM:ZV?F_A"7%9\H&3I^.9FEFR\K)UG**7HIT[6';9.WFYRZZ?;2)$F<%7A MTS5YCR)?^'N5S>(1Q<%CS& 5 $E=$AA"SXC%R8C<.5H! M,Y-:*:/]RY &\?'N^GX<&PTTC'DC##B1Y7[:T!WG(M.DC4Q6@LGM3'%YA8-X M?AL$M-A3A O(RA(F8Y%>!BY\,MT9/JV9P% M Y!HK4, 5I.,E 1WMXEM EFR4'01PH&9*\H#Y9%U3S@AT!D_F&2&/=HZ(3W? MU7GH:M;ZR9Y28ODUTWS&B 1>']!B)-OQ$BY[?(<7:-/%RY14%MK':\2 <1-_ M(M@TH,WT-V*"3^@'.!!T>K4;.]>%]:W8GEM\J.B>=..!8C04&=(8^Q%.WRI< MYI7Z 5*"+]3#M0 ):#KJGPVCSI/,C-GOU:6GW4//*97.XTCYN_ C! M'9)^:B&FQ%DN_!ZQ>;KY-6<NB_\!4$L#!!0 ( (MT"E>ZR7@' M&@, !,' 9 >&PO=V]R:W-H965T $$AA29RT:T=;:>M @(0T;0,>$ ]NBDM1(O\=F^ M[[O[SO9EMM7FERT1'3Q64MEY4#I77T21S4NLN#W3-2K:66M3<4=3LXEL;9 7 M+:B2$8OC<51QH8+%K%V[,8N9;IP4"F\,V*:JN-E=H=3;>9 $^X5;L2F=7X@6 MLYIO\ [=U_K&T"P:6 I1H;)"*S"XG@>7R<55YOU;AV\"M_; !J]DI?4O/_E4 MS(/8)X02<^<9. T/N$0I/1&E\;OG#(:0'GAH[]D_M-I)RXI;7&KY712NG >3 M I<\T:Z6[W]B+V>D>?+M;3M%[:=[X@%D#?6Z:H'4P:54-W('_LZ' F\1$ MZP&LS;L+U&9YS1U?S(S>@O'>Q.:-5FJ+IN2$\H=RYPSM"L*YQ5(K)]0&E0,R MK2C0<%^N6>2(W?M$><]TU3&Q(TQC^$)=S5>B"9,\'\6_HPM8\QWE C\2B>I%,H[?G9"0#1*R4^S_=5HGF9[/ M\Q@]W)<(:RWI!=,V.+Z2V#]C\8=JYV@[+SDA+0C53;DQ.^_\P&6#H-> U@EZ M15A _B],?ACF NC(=]"?.%QCCM4*#:3="H/E$6 (*]P(I7P\BN3C[Y ;> G) M*$S3$1F3,&43N"P*X0&6U!CJ"+\;8?N%E(U@'++I%&ZQ:+J605Q2\)60PNU: M1,UWW?VI>('PFH5)'+_Q(QMG-%+&U!@MOJ$J=-93"H.R+8#39+ZMR(&NFR?T M;FLN3%^MU^?A*"%"%D[/&=QKQ^71HH6 =)=[U34:H0O2$6?CO?9E8XQ'U=KL M11WC@BQ,LBDD<3@992>J+=%::DY/>:G8X61Z3F,69I,$GKONT4&CJM!LVG9, M5+I1KNM9P^K0\2^[1O?/O?M=?.&&CMQ2+FN"QF?GHP!,UX*[B=-UV_96VE$3 M;&PO=V]R:W-H965TCB]0VD'A;;(LN$.RVW4/1 RV-)#84J7*H*/[W?:1LQ0&\ =I>;)&<>?/> MS'"X&IQ_E(8YT'-KK*RS)H3N-L^E:+A5,G<=6YQ4SK#WS4/X^*E<9XM( MB T7(2(H_#WQEHV)0*#Q]P$SFT)&Q]/O(_J/23NT[)3PUIDON@S-.GN74>1WOWP3 M\.?>S&EQ,:/E8GGY!M[EI/Z8^[G02/IOGS7!;&(%?G M@\2+="N=*GB=X:8(^R?.-M]^3A*NWT/]]R?X''/VB@ZY5O$ S MVAJEV]'H3H1%1J=?&X93VRF[)RVXWKN_<.4H."K8!\P%*EX^^\D//D6ITV9?Z*>Z&\CY)?>1FM=MKH &F@X94M>'9.(KH] MT53()%!C,U3:0D%T[YSHL=L0&&67&!5/ MD$\]F,I7*&FHPFN"1)U(4,6C=0-::4P24V\/Q4'QH-N['E20R'2&AHJ4S\K# M <3(_-Q=S4]&;/4G7:G-^MN'-4OYN.#]U%Y]*N0X0JNB_EW MUQGY\1$9%\%U:7#O7, SD#X;O+OLHP'.*^?"<1$#3"_YYA]02P,$% @ MBW0*5U(PH+H.!0 @ L !D !X;"]W;W)K&UL ME59M;]LV$/XK!VWH6D"U+=F)T[P82-)N:X&V0;.V'X9]H"7*XBJ1*DG%\7[] MGJ-D1TGC8/N2B.3=<\^]^D[7QGYSI92>;NM*N[.H]+XY'H]=5LI:N)%II,9+ M86PM/(YV-7:-E2(/2G4U3B>3PW$ME(X6I^'NRBY.3>LKI>65)=?6M;";"UF9 M]5F41-N+3VI5>KX8+TX;L9+7TG]NKBQ.XQU*KFJIG3*:K"S.HO/D^&+&\D'@ MBY)K-_@F]F1IS#<^O,W/H@D3DI7,/",(_+N1E[*J& @TOO>8T6FJKRKWY5ET%%$N"]%6_I-9_RY[?PX8+S.5"W]IWQ327B$-O#M#@>5KX<7BU)HU698&&G\$5X,VR"G- M2;GV%J\*>GYQ[4WV[>4%_,KITM3(M1,Z:)#2O<@'=)[HWWI MZ(W.97Y??PQ6.VKIEMI%^B3@N[8:T22)*9VDTR?PICM7IP%ONL_54EC9NWHE M-J@L3^?6"KV2X?O/\Z7S%F7RUV/.=]BSQ[&Y=8Y=(S)Y%J$WG+0W,EH\^RDY MG)P\P7RV8SY["OU_)>E)I,=Y[H.GMYH^9MXLI44.$F3"ES)("+WYQ9%CO=)4 MN;2.1--8%QT%I>B\LQ $XI>?0Z<4Z;L]^.DK3R-LK"3--:UPK4A#>DO",O;>V&QM-IC(&2&9LKO0)9 M;:AH+2A86J&BH+*65J)1' M4;\PPB(JN6G\_FBGTST>/F>%:"C U]$+-FQE4Z$T N;#$,:1=HU8^:WK5:4C*-^PC]UW)Y2&>;I_NWQ!HJEXYR) EU:5V,.,FL#>Z9HE"9 MY#NN&!-R(>NF,AL)%41\P 9#UI>(8:XXPJ)":OLH.5JB] 8)J]EAD8$&\FG6 M&A9*U4 !-8&JY*)@X&7KT&K.L7$PP'\N6OPT@*+.3&O%:@B8851:M6Q1"S@- MF'&I)O,3[H4L UX7BBWM6FRV46 E)X?$?6E-NRH#6BC"4&8<=$*MP$^$ICMR M\&6FNB:W_+N%)_;&JHR+*DC]>$.M5BS92!NV 9@FQT,U>+U]O8M^)ESYW\#]E:37,I/!Q+2SF=(3"6'3*J0*;\E1G,P3?CJ:C^8'][RC^<$\/IRPI5>O M1NDA/?8C.QYL1;6TJ[#[.>2TU;Y;D':WN_7RO-NJ[L2[W11C'^WKJ)(%5">@ M$W5]LSUXTX0=:VD\-K;P66)%EI8%\%X8X[<'-K!;NA?_ E!+ P04 " "+ M= I73H)[#80$ O"@ &0 'AL+W=O7FT]=IU%40:G5HVSR>1XW JID\5Y6+NSBW/3>R4UWEEP?=L*N[Y"9987 MR339+'R2=>-Y8;PX[T2-]^B_='>6WL9;E%*VJ)TT&BQ6%\GE].QJSO;!X'>) M2[?S#)Q);LP#O]R6%\F$":'"PC."H+]'O$:E&(AH?!LPDVU(=MQ]WJ!_"+E3 M+KEP>&W4'[+TS45RFD")E>B5_V26O^*0SQ'C%4:Y\ O+:#N;)5#TSIMV<"8& MK=3Q7ZP&'78<3B>O.&2#0Q9XQT"!Y8WP8G%NS1(L6Q,:/X14@S>1DYJ+WNC MPF>Q0G<^]H3(Z^-B\+Z*WMDKWL?PT6C?./A%EUCN^X^)R99. MMJ%SE;T)^%NO4IA,1Y!-LMD;>+-M>K. -_MN>G C7:&,ZRW"GY>Y\Y8:XJ^7 M4HZ(\Y<1>4C.7"<*O$AH"AS:1TP6/_XP/9[\_ ;?^9;O_"WT[Y;COWO#I0-3 M 0FZAD%/$+J$&RRPS='"+*YF(_ -PK5I.Z'7T(@2-.T%U-AH+98@(Z8G!944 MN5322PS0[[+):'YZ$E#?'8].W\]&-*:NPS!H:IU2K+=!.BMI)Y#$T*(2G@P, MF7JA:YDK!.$<>A?P15&87GNI:YY!28OE5QH.VAW(8-D@%76)1/Z1O*#J/5?9 MY$K6(LP^;5XA>-?;SCAT*7Q^RODG!UA5D?4N4\N,EL+!:9H=!!;3:7IR &5O MF0>KYAN+&#XYN8(VS@+R+.P)OZ_+*#ADD_0HHF99.OM?J-FFZ!CPO-L$NP=RR\(*$M'BKY0&(> M^D;H0VW\GB'7Q35&E:-!-FJE9]A(+1=Z]WD000W9HN#MA[K9A0R5L#4Z#Z+E MWN8,=Q0B"^&!.KVFLY8%8$IP-#F 2)'-86L*YTK MOJ$L*41(MR?Z5OIUC-,0I:I7"AZT62HL:V1\00LTF20D^4L=KP"430H?:#,E MW=E#$?U M:&BW4&$JBJSUWG?W[_@9'/+?_,7(0[S[ $II79->A*NE2.$V:,R5QA7/$I91 M$!_W%$D*Y+RG."(A*UFP$@55HL8-;*^'.G,)]EJ<%1^,-*X\$,LXS.E+)\5X MYQ!OD3J#KRH.PKX7S_/MZO8V=!DO 4_F\2KUD1I+4C-.%*T%N/%TPPF-#-SJT;$#?*V/\YH4#;.^(BW\ 4$L#!!0 ( (MT"E?> M>!*VH@@ "$7 9 >&PO=V]R:W-H965T4DHBKP\]]Q[SZ5UOYG-7KE4MW;'9 MJ 9OEL;6LL6C7SLQ,_=VG/3DS75KI1EY:YKJZE M?3A7E;D[G86S<>*S7JU;FIB?G6SD2EVI]M?-I<73?&MEH6O5.&T:9M7R=/8F M?'4>TWJ_X)]:W;G)F)$G-\9\H8O%<6,E9UK33UL!H):-_U_>3_P,-F0!X]L$,,&X7'W!WF4/\M6GIU8<\*NQKSW[K#;&MO*F4NQ*KAEY M>]$C]@;76.^M;E;LWV]N7&N1$_\YY&YO+3YLC>KDE=O(4IW.4 A.V5LU.WOV M4Y@&KY_ &F^QQD]9_]&(/&GD,,0#EMGU6K$+4V]D\X :H_>.N8$MW?1%3]6C MJ8!*8Q>R*15RM%VS-U<7[-IL=,E^,<=,Y %[]E,N1/":?4.W?Q&^9L^'%7O; MAIC?U,)O&SW636LP896:V)#-8J#"4S6PX5ZQ M#\W22F1-5[:=53#^X9=W9/MNK@"\4,T*L5$6ECDK]:VNV,:: ME94U,#;0/3+.&5RL=/O *%3PTG$/HS1-?QZY]+63?HETKK,^#!M*8%K]FIUW MNEKX,ZY5N6Y,958/[)FL-XA&J156.P ^O[[Z <"WVIJ&8,F*K96L$&LWV( + ME9(-%BF+ P@?Y,^?>S,@^500JW&BBN M3-41!^3#^[>?ONO#:K?5#5MWUO?RC*E;676R'4P@"7S.$[MF25-.'4H&WPD6 M#&:Q1%LL<1OE&\PDD0#.U(K=*)A4WKQ:+K&*+,N:*N.WOKC4/7JL/Z@"$J2H M0;%][9#)O=/$AL%^R[I&5I4I_2I4(W!A..X?/%L:++DC !XSU7.+24MA]*W7 ME\%2-_"2&)J6.0**$FMHL^GLX3*X]O4R57QVI>_W)R#@#VS0[_Y!^ ?QQ)OW MUCB'(V]5TP$UBHL=L2+EF<@Q" /!TZB@41[S(J(Y07-!P)#6+(EY$ F6ACR* M0JQ.>9[E+!0AS_*$(6E8%OJI*.=9*E@8)CR$O33G"4Q<&\KVU3X$G"#HU/&L M# <P&7]ULW0K@1TY:PX")(:6\$Q_P@X7&2>1]R M'H81,/,4=&!+ D\$7D>] V',\S &%/B7P5: 8AA3Z7GX@CT7Y):@0Y#2(8 6#_KQ#Y_3.%@%Q M!O+A$ 8Q#XNX]SI*A#_EPUBZ>Z6 TH H2XBF3UT\'L'?"!&B(C@2 <(;4S;[ M>NJEF]XX9&#=9Z#Z)@/YI#ZKAUZ(CG(>)&D_!. H+-BBL[YJ?L#PD+/[AO>% M9:&=7*VL6GEQT=",WV77TIJ:"LY?0US?4_L;G[(0F =2,6CH!D+'?,V#'[Y= M\;)]V*BQ27@3_0Q1HR2D$=0]4L+'[.<)ML4.T:"FO515&M?-:5!PYG@SV.[H M57@M@5)Z/'2,C:":>>#^G6; D)Q".R4GK-!20PJL"5J<'G$GP9 M"R;V1(>Z&[JK7NI^.0&IY7_!Z"04L"F)JL'W_<:SB]^=PMD#&[Q_PK9>FP^+ MZ)XR/JVH)"HD&*0*?25^._-KH\GKJ];GWT1)8PA+2N4)Z1.AUS:46.)5::>M M1<"+V$^% 8]C$KXH1YU L_!S2%&_IHM;*%ZSC,<0%@@#K,)2")4<7T%D"SS& M/"TR0(>P%8])[1;?H.1'HV!/57B';U3XHZV2[Y3Y,7+'3G.8W/'M_T/NKCL! M?1I$GBTN!LF'A.?9I%_1^HPG(J0@@+W4LPLM3O+H&W9[6I(P \]D<$MMS$6* M;@"RWQ:.R"T[XV03=TS:.Q.^Y:W5Z]4(V,&?]GI/AE=U-1 M1:+H<3EV^N6FGW"*JILR*(.[Y!OE89'W!*1QZ&>029D?H;D%?0@BY#RY72 H M ?$ELIS'8/BI1(I$Z, A%11I%,TPQQ1%ZFU&"+",T\ [LH M"P$BH[]&[G^7]3Q :XU[UM/(7Y2(=3\C*"*1?X>;4$(^1 'N%NE0.E'LKPLQ M\B__/>M@(D$*QK"*]1DN2SG+D/A%P7 MB:!1$*T\+U@8X8Z3(K"(#W3G#ZX* MW[O'ILQ\4_X3:N/"N/8EE*2^Z:SS[7]WU4#"13STKL#C-"-7,B1Q%@\.A\)? MM.EVZ)4_0ZS\_0WW4[CNJ4H+W#\S]D[?J\7+#GJ(7UCX>34Y!DOCR$L3W;?! M8DPM($%A93[B@@2/%(SR.^KC^5,_H$(.?1B;3SY;HH.L_,=9W*'HQM=_P=S.;K__OND_>^Z6]Q^//TJ[TOBE M7*DEM@;'63)CMO\@VS^T9N,_@MZ8%NW*#]=*+I2E!7B_-*8='^B [5?QL_\! M4$L#!!0 ( (MT"E&PO=V]R:W-H965T3U!*1\0R[FK.H GI@)OC M-?NYSYUSF0F+)UK^RA/*AL%1 FFHI1TK9=?L,[GP/'%6EK_A67E&W'$N+2D MBQK,=I&KZB\>ZGW8 !RU7P!$-2#RNJM 7N6I(#$:&+T$X[R9S0U\JA[-XG+E M#F5*AE=SQM%H2CJ^S;1,T-A=.+LK8#F$2ZTHLW"F M$DR>XD-6U,B*UK(FT5;"KZ5L0;NS#U$[ZF[AZS9I=CU?]P6^*C'X/9Y9,GP3 M_CR78T71>Y["54??+D2,PX"OOT5SC\%HYUWGL'V\16"O$=C;QO[J0N=*Z1[A0L2X0]KYI:S_ CPS]NE"K78U5GILK'G6D@6= O<+K@C%=]@85/$*>-^5929?B\E?OMI0C>:6-,J$\R4UKVH)$2RE,RV MU,PVG7Q<-;!']^H9N!1FGO-12TP9VFY].@C 5*VU,D@O?#N;:>+FZ(<9OT9H MG .OIUK3VG !FO=M] ]02P,$% @ BW0*5^AWCEMF"@ 9!P !D !X M;"]W;W)K&ULM5EK;QLW%OTKA%KT ['Q;[@9JA-$QFR G)L:S^^CWWDO.29:/=8H&BL69X7^>^.9=; MZ[[X0JD@'JO2^*M)$4+]>C[W6:$JZ6>V5@9OUM95,N"GV\Q][93,F:@JY\O% MXGQ>26TFUY?\[,Y=7]HFE-JH.R=\4U72[6Y5:;=7D^-)^^"#WA2!'LRO+VNY M4?342NUK(IPP>[_8M*]IP1O\R6GO\OMO'LV>E$9(T/MDK$T*#2)OXK'Q,. M X)7BV<(EHE@R7I'0:SE3S+(ZTMGM\+1:7"C/]A4IH9RVI!3[H/#6PVZ<'T? MG2'L6MSKC=%KG4D3Q$V6V<8$;3;BSI8ZT\J+']J_?KRF5SE8_HY5.[T7K9ZWRY?9/C7IIR)Q?%4+!?+DQ?XG70XG#"_ MDV?X'3+XWS/." MMJ>=MJUN3\_I 1_PRT\"9\,ON=$9.48823]Y^&$4S2 M>.R;E=>YE@X^F(F;LHPX9ND8LMIXF46G$(QXR" MVIY*."(@99!82^W@/J+O>=?6Z\[O.(B^Q5+0X-TX?CLTNR,@5=#>WQAFQ)((W

.F/"[XH"TH)#U+29] MDB?%*9N.+]YX<6-, ^(/G% "8JB3B^/%T=\Z.W9*.J&H*XF? &6U4DZLF((GWI%"ZM?+7#4*(VB;@]1G@(0AF+W2ELZXKG;W8 M+NZ4X^)"%> ?JU)O(@Z'^L[_Q$A\M!BX8!;R,I:!VA'<0.1!F8:0R2QF& ZH M2H7"YM-1/*L'638Y7\;!VUQ7'R?N\'!G%5 MDZW\P]Q(:L(434IQHZ,RN59MV.;Z0>>43QM+<4L&8:[15#:A:1#:<_1Z:@E MF8(7Q3Y@II0KB%V#L; ,3)+AV[SM-27XZ(B"AFK:LD1S0C_,0K1X/\L/V^,Y MG3S^]FM-'O2\()#L#5*(I!/4\!@J([*%=<&^,4.YB.%DS1- ?3AR2E!&7 C:YR+(7'X!;"G D@ZJ->E,_#H?(WS8&JP@251][[*6XZ*/I*1/,KG5P1_P MU![FR#HSTAOF4WOPG5TI0R2&^79OS&",9S-5N MCWM;CJFY<.3.N03+;0][,PIG8KZ?WM^<3Y=G+PB0[I>$%O#DWB$2*,>@SA>HK[P.I;2[4D12?/0 M'MWR--'U$1%C+JK"Z24;U%VG?TM1U\]3T$8!U]CEAH/E,S9BMGTFDMOPLX9G M'(N@EE41M34[-O4T=V?.C M8A)#DV9!JK]@IQZ)C *I.^80[%M9E MF28O\0K*]7O4R'6O8$L(M4N\U&7:>KUOJK05BA6U0-(WCD+MZ+(_RT6]R*A- M:VZ<=$D+#I+#K,;AE<+&,P34Y#UG77@BC4Q-^Q"W6EJ9!,V'W9S=(9CMS1N] M];1M_B%D9B-?.I4DI%$^C:?1AQI"M6/M>6?#?[S,K.*EC.-^I\BKE$B!'\5[ MAGA?HEW65#[$M39M$:KO?US3(#2*X2YEVE@ITBAH:\8'VJVU\R$!*KY"#1WB M3K)&9EGGQP /YU_UB-E-<1:OAYJ.U"OI.ID#L>,2(SK.E3Q:\D1#5OR\1'WE%_8AA.24R7\#V=''QQYM'*ZC4V8 MH:W$J$PNZL#V+09<&Y QA<5*07BI6'E'0ZR0=5URAM)><03/U&0S\8Q&HVV$ M=$% R_QSF3D(3KE?D_;!__X)VK$8D1MZMTVC/ZU(/80[+$^X!\0#49NE(7@P MA+421VO"$*I!E KVVP*45&%J9&P,?DXZ%16&/VU:4?8+5_M^]'R+?N[CIFX M;U;4Q0D_WODAN%2/XG.3;]*5!??LE.RZK4RD;ILJ"$MV-%_Y#3)_8#1EIE05*"[ MTR>9>(-TTVR0)^*82X!$I^<;AY$4RJ"&6W_/=\".PM*W"UDG+^Y6]&@4PW'U MC_4F.A6G6J*7+CHNNO9_\6*[_H!1<.\CB4-9:)#2[.]# \"?X_AW9.LAQ>># M+S_823;\?8O:([C$CT#=T^X3VDW\P-7]'6MF *9/_+%"WE:,#>$]7R>T/$M!]6+S^+U!+ P04 " "+= I7 MSM_PNW8# #A!P &0 'AL+W=O<'MH,-V-\/#QJ]:$2I>0O2<"6)AF81K.ALG;GY?L(?'([FS"9. MR5:IK\YY7R^"V!$" 95U" P_3W +0C@@I/%MP S&)5WBN7U"_\5K1RU;9N!6 MB2^\MOM%4 :DAH9UPCZJXZ\PZ,D=7J6$\?_D.,R- U)UQJIV2$8&+9?]EST/ M^_":A&1(2#SO?B'/\HY9MIQK=23:S48T9WBI/AO)<>D.96,UCG+,L\M[IB67 M.T,.H,EFSS20'S^SK0#STSRRN(";%E4#V+H'2_X#;$(^*&GWAMS+&NJ7^1$2 M&]DE)W;KY"K@;YVX(3$-21(GZ16\=%2;>KST_]0^C&K_7&V-U5@"-,*"?(%B^?4,G\;LK9+.1;'8-?;G!"UAW LBGACQ"I63% M!6>^EC'R>0_D(U[:][)2+9"5K,D77X)0D]43:+Q1O4)#/G766"9K5$ZPE'WJ M+1-5)T:T-3.\\B!W7'0.X]];=6E_KBJXO#]N]48)[ :.CW6UAK?;CTMK"$/G MA5;5$(LI$K7R7BM*(<>35C9H-;U6=:856Y9/K9C1U!E%F$Q*-!(:II/8&7DXI3&Y ZFP-_2H_5&^9G\0.*992.,)P4^13D(Z M*9PYSUCF$Y*5-"QI3K*L"/.L]]-B>H;,C>E\.0P8&O#0$-(J;-[?.FZX.T)#$@1, M/#M:Y&X/Z#1U8@I*Q_)]I?XLIV%1ELY,TB2D>>&CN,%YFOLH1=9H7KK/T5G; MQ4/=^(R.[]>J;]O_3.\?OP],[SA*$]!@:GQ3Y '1_8/2.U8= M?!/?*HM/@C?W^ :#=A-PO%'*GARWP/BJ+_\&4$L#!!0 ( (MT"E<>A5IK M908 ((. 9 >&PO=V]R:W-H965TR $G2VUZX; T MJ[G=&"E:S]1WD_P2-M>S6(")#O9.)(@,#S(.]EU) @P?A]ESB:5Q+@_WTG_WML. M6Q;"RCO=_5NU;GTUJV:LE4NQ[=P'_?BC'.WQ !O=6?_/'@-MF<]8L[5.]R,S M$/1J"*-X&OVPQU#%?\' 1P;N<0=%'N4;X<3UI=&/S! UI-'$F^JY 4X-="GW MSN!4@<]=WVXM=JQE-\WO6V45N=9.^6[.-:LN^%,NR3Z+;2[K:\.>.U @"[ M@8D_*[%0'8RCM44>?GE#P;*3NH];1AJ7ND.*JV'%'$7/F.?J#RAS=$P8'P)& MO?1;(F 4 6/KKZ';PR@"1HP3Q][UM,*14O/E@65-IRW8VJWQ:'!LU1/K0V!* M"DR&L'IF8U1YO1ZBLHWHV+,49B1[(QO9+Z1A::#E%X&#INS3VWMV\Z1Z]@[, MAGW4#LSA_T[8-?N:E5',2XQYE"4UQF^^JGC"O\4LX5&6%7M;MZKK1A=LAT58 M&&A7#SX5(S8@.O,HSCA+TJA.2Y95)4OJ*"L*&%+6&?,5];5>OM[:R;<\2I(4 MYP7P)E7-P,HS5J2H[,8]>Y42WMN@UCJ6)!68JC*>D/&HKBJ(R),83'(C M%.B?T!4LK@C;<4[_&;24$!\7^<09_#(BV6TF>7YT_G9P8E@IBIS <<'N?/V# M"",[GZAVK3:6I6F4PMR<1SPN6)77K"JB+"?C"FQ\-**5;!"]).@YF,EY4+Y(7HOGS@%U%29-/J5SV\;G2_D0A1GK.\BEF=LJ(&&/Q"C(P9BN@H(UYR3,B, M(J;HB"H(PYCE45Y3F%117I0'"7R6@#JM7V$"NXN*)A7]IW'$ZQR3'+>>OH() M2VDHO9QX.DBOLS)*8B),R"!0[M"?\21*>?6R\2MB[\MD_9KNH>05&4#H:H^[ M* EM#5>6*2:X@"Q#J443;Z4)Q=8'T!EE2 0_.=7E#9 7G%O M?Q+%21P$U7Y$Q(>S$K>5D&B')*?(1=8.K_'=,=GX'+3X !]E[PS:C2DNAWX% M7%;OVJHMS0'(O2#'(M4K[>#\W5-K0:Z M$>WWAR/N/?M!Z_81=8 < L5U3@%14=E(@J=3[W%>1''J8R5!%!7L1'?)I^Z2 M_^WN@BK!_.>/=XON%%7=EGV0%I\]OMF\VXQVVF.]Y*2FO]]+_"FYCMQE1N7H M"7I23JO%V-OEGA^71O?$I:B*V(WT7X&^=WB6_8:RZR5N;:0,47.J;9S[/FM0 M((9M(*<(!.:I6XW]Q#>+@P:EAJ;;DCPU>$)\BVS$\/PO.]D&0QIYM.7!-H.0 MT0Z?@4X:!05C&+U(:?;O:HFOG*$A.NNPT7L_$MRU> B"%E(..Q?+ENPB!^Q_ MR+%[>.)@XZ"!'BQ^,-K:G5^HOO$ZRBL*UA3]$'7M[8#2**$5#I?D"UJA.'EB ME-XX\RVS2)-_B(2'7GWBY'\Q> GG:>6' M,F%O5+>E:SO*%I_7=6!+ EOJ!_3<8WD_WWL7H-FM_.N'H@-5*#P1IMWI@743 MWA4OY.%U]HLP*X7([>02K/$YO6=,>/&$A=,;_\I8:(?.ZJ=K/!*E(0*<+S5* M_;@@!=.S\_I/4$L#!!0 ( (MT"E?&51H?Q ( $H& 9 >&PO=V]R M:W-H965T&:.&VTRUVYNZS;O\>7=%F KN)+;5_LQX_O;'>Z4_K.;! M/)1"FIFW ML78["0*3;K#DYE1M4=*77.F26S+U.C!;C3RK@TH1L# ?UF=7>CY5 ME16%Q"L-IBI+KA^7*-1NYD7>T\%UL=Y8=Q#,IUN^QANTM]LK35;0HF1%B=(4 M2H+&?.8MHLDRU4RXH;/%/B>Y'9S9!ASBMAK]7N ^[KZ3N\5 E3 M_\*N\1V$'J25L:K^@$C%X*8/L 5O-N$M4LS[GE\ZE6.]#. MF]"<4I=:1Q.Y0KI'N;&:OA849^?+0@C,@,L,;N6J,:XQQ>*>KP0:./E:R]XT ML)3-Q03I'GG9(+,7D =PJ:3=&'@G,\S^C ^(94N5/5%=LJ. GRIQ"F'D PM9 M? 0O;DN/:[SX!;QNF3\6*V,UMX1ETK),CJ'/;V@,LTH@?,EAD::JDM;X\%E9)'&AN#2PH,=[7T@NTT*N M.Z]WJ)2CR0Z7TFF1ZJE%=.?N4D4C:JP!E8/=(.1*T*@3E0G0DSW"_L7@G&+* M%6J(FQ,&RW_!7D/49WX_#IV6C/UPQ. "C9D =ZA4HTN@(5/5RN:5H+%N[@1. M8C]A8:^62;]W -P'25NNP8VB)D/?'\3#Y];_BTHX]I-!3-JX[T=A\K],F,^& M4:^6">L=1&^YA$,_&C.7@OFC 8-#+1-TYKM$O:ZWF+MX2M>,>GO:+LI%LQ^> MW9LM>\GUNJ">$9A3:'@Z['N@F\W5&%9MZVVQ4I9V3ZUN:-FC=@[T/5?4>GO# M)6C_/N:_ 5!+ P04 " "+= I7T&[$Q=@" W!@ &0 'AL+W=O,LL6,ZTVH%TTL3FC M3;5%DS@NW:7<6DVKG'!VL=1TO]H^ Y,Y7#TTO*83MSY(>@\G=VPET'R724\%LC3B$<^!"%T? ( MW[!/>]CR#?^3M@]+P:3=SQ[^G*V,U?1@_AY*O6..#S.[(IJ:FF4X]ZA*#.I' M]!8?W@V2\-,1W7&O.S[&OKBEHLP;@?"C@/[JSG;%'U)\E/.PXKUW@7OOPH=, M45$::T 58$N$0@DJ;B[74Z"+>H;M/<$E9EBM4,.PFXE(=L$S C1:' M]S#TAW'2CG$T@ M5U8TE@M>0:.*G40C1R$\'"=PVI+8367 4NURCL3^($H@G M_B0=P7>DTBT51?"JUNH178R!A,A2^HYHTSMEF8")@X60COQQDA+,F"FUCJRI M&L$LYE3Q=$@99VU/.8G'_CA*/Y(1$XR,(^=&69&8X21RQL!/XA .O8A@IY@K MU.NV91DZ\T;:KJ[[V;XKGG7-X#6\:ZG73*^Y-""P(&AX.AYYH+LVU3E6U6UK M6"E+C:8U2^KLJ%T K1=*V1?';=#_*Q;_ %!+ P04 " "+= I7Y"]9GLH$ M !,"P &0 'AL+W=OP5 M+S-G;F=(7JR,_>064GKXTC;:70X6WB_/AT-7+V0KW'.SE!IW9L:VPN/4SH=N M::681J6V&;(DR8>M4'HPNHAK[^WHPG2^45J^M^"ZMA5V?24;L[HCEM?!B=&'-"FR01K0PB*%&;71.Z5"4.V]Q M5Z&>'[TV9KI230-"3^&-]D+/U:21,'9.>@BJG^_I#='+G*=MZ>L6. O[<-<\AH018PO@1/+Z+G$<\_N\B MOU:N;HSKK(3?QA/G+?+G]T-IZ*VDAZV$GCIW2U'+RP$VC9/V00Y&SY[0/'EQ M)(9T%T-Z#'UTASTZ[=#I=S/8QG/(QZ,HAWV\7TBH%Y@4Z4!I\&$JK%TK/8<' MT702)FOLRJ6Q/E $G)QCKWK <"AWM8#S] SLDF'6 /8H=J.%E9ZW4 M]1KNK="N$;'WS0RTT65;"U?T=4$I)R4M@>T*@DM"Z L M);S*X(0FI_A)\U/@C)$4S=P;C^X]A31!XUF!(\IRDO 41QS_>^FGD.%JF99P MA$G9CDG9#S/I1FGEY5F#Q^6!SCC$K^/8CR!$A""@I2>A_EB8O9R'7ORV\C46 M6SD?I .U>M(@$<_WE;]5?&V-0YK4===V2 4,9]PB8=6?/2UN\=+[ 9&]?*B_ M!W..E O'--JULN>;6Z@EGITTU(@G%4DS%JN&Y4:J- T"$<1J2(%1>=2DI<)X"RE%:X6A =U1I(RAUMLE]JT2^G1 M-/I$4U(B,T^0WU65!:F2T[!*:1)7657&5QD,?J>XC9#I#_/X!8HBUB^D\1L??BW==A M+0X[F?UG)[,])P^=9L-'+QRD]3R^XQPZUVG?/W9VJ[NGXKA_(7T5[]^9;X6= M*[P\&CE#U>1Y@8>7[=]N_<2;97PO38S''HK#!3YWI0T"N#\SQF\GP<#N 3WZ M"U!+ P04 " "+= I7VYZGVL," #K!0 &0 'AL+W=O38!A B15KA+U7V\]X\--S?(42QC]AV^9F60!%8ZRJ M#V!24'/9OMGN< \G@&'\ B ] %*ONSW(J_S +)N.M=J"=MG$YA;>JD>3."Y= M41ZLIJ^<<'8Z*PK=8 G?.%MRP2U' V\?V5*@>3>.+)W@\J+BP#9OV=(7V/IP MJZ1=&_@H2RS_QT>DK).7'N7-TXN$7QMQ!7$20AJGV06^K+.;>;[L!;X%VWMO MP&0)WCL3!G[-EL9J^D%^G[/<,N;G&5W3C,R&%3@)J"L,ZF<,IF]>)?WX_06] M>:SB4!#Y@@?42-61M)(6;1FN4%C9*^[XC H'4-QW['EY#DH=I-G2++(R' M2>?MF17,HY(>Q3-(TC#O#X#*IDF KYI&P2RE6K8CF<.PGZ30IVYHHAG"#L+X.J;D7A[#'9DD$Z0J!SHSOX9'99D@ MA;TT'&0]6N1YF"49G*MJ=-* ->J5'S/N#AMIVU[LHMTDF[4-_"^]'8.W3*^X M-'1G%4'CJT$O -V.EG9CU<:W\U)9&@Y^N:9IC-HET/=**7OE_'JNG:P4Z"I>XL]S[CF^]LUDK?2#62%:^%$+::;!RMKF+(I,L<*:F1/5 MH*252NF:61KJ960:C:STH%I$:1P/HYIQ&G.. M0JVG01(\3=SRY-S>:1M&6I>0U2L.5!(W5-)@G9^>YV^\W M?.:X-CM]<$X62CVXP?MR&L1.$ HLK&-@U#SB!0KAB$C&]YXSV(9TP-W^$_M; M[YV\+)C!"R6^\-*NIL$H@!(KU@I[J];OL/O;S MCCU]AGT(5TK:E8$WLL3R3WQ$2K=RTR>YY^E!P@^M.($X"2&-T^P 7[:UGWF^ M[!F^WKCQSN=%H5LF#'R=+XS5=&&^[;/<,>;[&=TC.C,-*W :T"LQJ!\QF+UZ MD0SCUP?TYEN]^2'VV1T]RK*E3%U7\&?JYOM2MT_^P0#[Y7>1FIU+HGPDM7-) M"OIP8PVH"F@1*B7HP7.Y/ -*V@;ZG,$E%E@O")QU,RG1*0Z&QY!8J5G#! M[09>TFH@/2:TR3<#@<0#(*\W$* M;[EDLD 02._60!;&<4+?G'9<_V-@G&4DJE M+Z8N\ZVT7<79SF[K];PK4[^W=\7^BNDE)P<"*X+&)Z># '170+N!58TO6@ME MJ03Z[HK^.:C=!EJO%+GM!R[ ]B\V^P502P,$% @ BW0*5V?&UL?57;;MLX$/V5@;98 M)( :77U+;0.)TV)W@:)!DDT?BC[0TL@B2HDJ2<7U?GV'E*PX"]LOXFWFS#FC MX7"^E>J'+A$-_*I$K1=>:4QS'00Z*[%B^DHV6--)(57%#"W5)M"-0I8[ITH$ M<1B.@XKQVEO.W=Z]6LYE:P2O\5Z!;JN*J=TM"KE=>)&WWWC@F]+8C6 Y;]@& M']'\V]PK6@4#2LXKK#67-2@L%MY-='V;6GMG\,QQJP_F8)6LI?QA%W_G"R^T MA%!@9BP"H^$%5RB$!2(:/WM,;PAI'0_G>_1/3CMI63.-*RF^\MR4"V_J08X% M:X5YD-N_L-R7WT>#ARFX0F'N'>( M'>\ND&-YQPQ;SI7<@K+6A&8G3JKS)G*\MC_ET2@ZY>1GEBM9&UYOL#9 4\US M5,REZ^*)K07JRWE@*(PU#K(>\K:#C$] CN$S@98:/M8YYF_] Z(W<(SW'&_C MLX#_M.(*PLB'.(R3,WC)H#EQ>,E)S57%#566T<#J'(8<9!PUW'&=":E;A?#M M9JV-HL+Y?BP+79#T>!![F:YUPS)<>'1;-*H7])9__A&-PP]G)*2#A/0<^O*1 M+F?>"H0O!:Q*1N0UK)A2.](!STRT[N2C-IP*%P\D_N\W']-U-O)Q74\E0B$% MW7 ;W]C*Z:\Y_X^8&3K.>I:\[I9[LB^.K"P ![+9*]GLD.PU4"7LH"\$N,,, MJS4J2+J=^%#E&T*/-=2R$LP=F:"VYVSJ-ANZZL*I8C7,1^%(:7=HS' M*8W$F!JGQDO*0C=["Z%0N 082=/W%1E0%5I :U8PKOIL74S\442 L3^;Q/ D M#1,GD^8#4HGWJAM47.:D(TS'>^VK5BGKU4BU%W4*"U(_2F<0A?YTE)[)-O4- M3&UL?55;;]HP%/XK1]DTM1(C5PCM G:7:5.5:\/TQY,MSW]=9@173 M?;E&09ZE5!4SM%4K7Z\5LMPE5:4?!<'0KQ@7WG3L;-=J.I:U*;G :P6ZKBJF M=G,LY7;BA=Z+X8:O"F,-_G2\9BN\17._OE:T\SN4G%S[Q DL(2\R,16#TV> %EJ4%(AI_6DRO*VD3]]3GEF>FMD]O1Q3KIRN) 5W;5F[KA.[MBB1'TZ]@V5L<%^UD+.&\CH M#<@A7$EA"@V?18[YZWR?Z'4.\^@HX(^Z[$,0]B *HO@(7MQICAU>_);F M@BEL-5^S'3TQ S.EF%BA6_^:+;11]%Y^'Q+?8">'L6T/G>LURW#B49-H5!OT MIA_>A,E^\Q;P'-TC,>6;([VX6[@4G\\R^?6YVA_0@V]Y!>]GG\+.N%J@LUKW8$!H%[&NTYZ&ME]XNH;2BF<@/GX2&1]>F9)QM M4-'4@4O,T)6(FYH1I&'<2\]B> ^CL!\-X"N=K\V(ADDOB1.RAT':#R-X:/B< M4%8O&<2GY$G2?A S8LE-+=#]=4S_ 5!+ P04 " "+= I7!?+[ M:>$& #^$P &0 'AL+W=ON*>3RTKB8R2# UGRS '9'Y!1[^ZBJ.5?BU!< MG+7-/6MI-Z31()H:3T.YLJ:@W(863TN<"Q/;BCN;^ MN[-)P VT;S+KI5UUTN0ST@S[T-1AY=F;>N[F3\]/H-E./3FH=R5/"OS;MGK% M$L&93*0Z(4_MS%51GGI&7F\CZ\PNZR7[Y^74AQ;)\:]CYG;2]'%I!)C7?E/, MW/D(B/"N_>1&%]]^(TSR_0E=]4Y7?4KZQ2T .-\B,#\MV.=ZOZ\[1"*U.;MZ M''8<,^+T-72'58_6\C=0NOW/[YE8Y8;;F6&@4@D-RJG4:9YKFA-TEJ2L*N[6Y9JGBC)C.!*">PV M/+,9$U)PFZ7LW9N?F!5Q267<&LF$2+F /)/Q%"+NF@!7+)^J@!LDW3K<97'! MF&G(SM,4(Y5+GD'Z$-"RGC5KQZ8.#G7P_L/.# $S-!T1.9>)H;,*AL5!RG5J MHPT9%T)!9V[@#AQ)88G$8]49(#3/A(;FL%0S6);A ;8)*-CI?TH1E7-C)=-0 M&>9;R9,5_/JNT"W+@&;!82&HEZ6,74Q'<-> MA0@5]9R-98+P:LIF%I#J(:8B/?'(P'67@>ZS#.0(J=^X6#.J1]Z)RGB2FFX( MA97(V7S;1M1\@> ^9Y\*?G6")](=3Z1?S!,?NSQD;]MFS=X\! 3/K^.=<2U MGHCBG6N6;;%9E3-VB3+NCS'&R0N/T]X3*'(VJPKORT4)ZZ>/T3_KXM\(P7)_ M>T&W(W3L'K-5W'/=K#=%_?@7WY<^4OG>(4^J9H94F_-NAF,=8QVGEB=\<9IG M"&H$(\)*EY^?K_Q &^ "J9 DP!W#(U!/CJGF)K=0'7#/ MGR.@G7X]OXT'&CODIKU^ ^^-=_RVYZOGG#OP[W'G#D__%^?N.1O:FT1%;W'9 M$R&(+;,'+$[[+4^EH"# >R9Z%PR59NHS[W9N286%GTG@SK6:2P..A+,R\K-* MY'.NW6O7%XWQ4!L.V?Y N[Z6C(>:L2\ )X!O=L W_S7P ? /$6A/,+]O&X8F M[QCJ3][V!:@GI ^X_1I O=E.*^(54/"OV\*7+S?=@@?;PB-C*ETJ1HC0E&== M&(T6<05XL'&$PI5TB:2 7 I>CM1**.K29EP+PV[:\A.5OEXR*K3*#:4"55G M7"I+^6B,138"78:*9ZY0J"UR!."62 ?UYT#P'WH]2U V=>=UHV(31%Z/*Y(B MHN(S=#DIV: 2] VF)P"E8RN@@:+L]UZ')U( 24,J]ELT0AFS@&^>,[0<"DP+ MZLVRG F%_L4@L(@/V/.K8MONL&W_GT7]IFWFVQG>W2X1AEM@LYRYHQ@_>>L7 M8-Q'D"-AZ)6)A<>-^QI(OVY\> EV7T^WK8_O&H-*$3Z*BQ@8Q,]8"HP%)*WN MPR=D?"6@/C968XO,BYTF.FD$,@;>Y.B4+7M;/KCYRRUJ%-NT<.G!-=BJ52P7 M]&: G-!4EE/0A(WY*ZD(454AM*HN._\,G)02^I7$NXR$WPW: HU7(8HQH"]SA4[, MHM0#H/HKX7UR\$T&*%W&+T_H:YMM';K/,[O5W<>MR^Z;SGY[]V7L0]$NR]JS MRBUP-'EET9ZWW=>F;A*:3?S",VT"*"$.5ZZ8NY8VX/FB:<(PH0MVG_PN_@-0 M2P,$% @ BW0*5P5 02:B @ ! 8 !D !X;"]W;W)K&ULG51A3]LP$/TKIS Q)C&2IH6QTD9J@6E,0T.4;1^F?7"=2Y/A MV,%V*/WW.SMI*%*IM'UI?/;=>^]JOQLME;XW.:*%IU)(,PYR:ZMA&!J>8\G, MD:I0TDFF=,DLA7H1FDHC2WU1*<(XBD["DA4R2$9^[T8G(U5;44B\T6#JLF1Z M-46AEN.@%ZPW;HM%;MU&F(PJML 9VN_5C:8H[%#2HD1I"B5!8S8.)KWA=.#R M?<*/ I=F8PVND[E2]RZX2L=!Y 2A0&X= J//(YZC$ Z(9#RTF$%'Z0HWUVOT M3[YWZF7.#)XK\;-(;3X.3@-(,6.UL+=J^1G;?HX='E?"^%]8-KG'E,QK8U79 M%I."LI#-ESVU_\-&P6GT2D'<%L1>=T/D55XPRY*15DO0+IO0W,*WZJM)7"'= MIC4)+%"XQY"W&V' MOR9S8S4]B=_;>FP@!MLAG$V&IF(:HX5R5Q)D[4SPB7$FN2H2#K\ILOZS=5'6/0'/F5R@@<)9Y9E7>5[^@K=H>87CA?G*'RN)TL(2-8$:R)0@OYOAO_4 MY#3RD:27KS5*O@*Z)&FHVCLX_4.&H(E@#3E1,,GQ$"Z08SDGV'[S2&)X _M[ MIW$O/FOY=FD_Z'WL_0\K/E%( P(S*HV./AP'H)N9TP165=[G&ULS5=K:]LP%/TK%Z^,%M+ZD6>SQ-#'QCHV&IIV M^U#Z075N$E%;\B0YR6 _?I+LN!ESW%$:R!=;LG3//4?W&%\/EEP\R3FB@E42 M,SETYDJE?=>5T1P3(D]XBDRO3+E(B-)3,7-E*I!,;% 2NX'G==R$4.:$ _ML M),(!SU1,&8X$R"Q)B/AUCC%?#AW?63^XH;.Y,@_<<)"2&8Y1W:4CH6=NB3*A M"3)).0.!TZ%SYO?/_< $V!W?*2[EQAB,E$?.G\SD:C)T/,,(8XR4@2#ZML + MC&.#I'G\+$"=,J<)W!ROT3]9\5K,(Y%XP>,?=*+F0Z?GP 2G)(O5#5]^QD)0 MV^!%/);V"LMBK^= E$G%DR)8,T@HR^]D51S$1D 0; D(B@![$&Z>R+*\)(J$ M \&7(,QNC68&5JJ-UN0H,U49*Z%7J8Y3X3BO!O IC.F,T2F-"%-P%D4\8XJR M&8QX3".*$H[A!A?(,M3WB.N]]E@/+U$1&LLC. #*X';.,TG81 YF9)&Y4 M4#G/J01;J'S)XA/P_ 8$7M"$N_$E'!X<_0WC:G6EQ*"4&%COBL3A1E2C=4\E(E MD,24MHI^GJ!C$YC7>1'V M]K!P-W44&L51)KO4#LK^SY59)JJ;VR(NU2>'M?C-?>@I]OQFKUJXW5+ M8MW],![\-L"43^":896^6IZO+$^O/(7>OKBPMP.9IZ7,T_]TX1;WX5J<*L7) M#7%5>NHS^@$DG*FYK&'O>\_?86_?S'J[Y)5?Z5JBKRRCO]&0^/OBUX+)&RM] M[DO\VGY@)Y9](670JO&LN]%&FI;\&Q$SRB3$.-5@WDE7?V5$WN7F$\53VUD^ M] MY_?N>I?LA+Q7%:*&AYIQ-?,JK9M+WU=9A351YZ)!;FX*(6NBS5:6OFHDDMR! M:N:'01#[-:'<2Q-WMI)I(EK-*,>5!-76-9&/"V1B-_,FWO[@EI:5M@=^FC2D MQ#7JNV8ES+>;C[G,R^P M@I!AIBT#,9\M+I$Q2V1D_.HYO>%)"SQ<[]D_.>_&RX8H7 KVG>:ZFGGO/6VBFLMS2TU.)VNN^J!*&!- M2TX+FA&N89YEHN6:\A)6@M&,HH*WL!1<2Y-X6!!&>&;.3J]0$\K4F;F]6U_! MZHP]O<4M M\A:AD**&;/]O9)1L**/Z<LFJ#(/'2VL?G M^\[-.3D9;BB[YRL @1ZR-.8#U/%XBB^F*=>_:%/K6@:*2RYH5H.E!QG)JW_\4.=A!R!Y MV@%.#7 . ;TG &X-<)]KH5<#>L^UX-4 ';I9Q:X3%V&!PR&C&\24MF13"YU] MC9;Y(KFZ)W/!Y"F1.!%.,FD&85V(QK$^/*A/.$"1?=T%RL.)KF"20M^.@TWC^!-V6X3(,M^@QS+<5O\F3P'[FBXTQ;.WUF?_K'UO62XS05P-9_[!-]5+DA"TE*7 M>PYQR8@@()/]$*>ES#=:,)JA"\P#&,#-GN.+ U&.'K5[9OO6LK4)=D49=DTX[(]DK9:TK9.\6^ M7TK^6,HSDM&YGHWY\=JCM7W#K2B8ZV>[;G^ MOM:TA"QO=ML9YD>.DM[)(LZI)LVA'9 M7AG\I@S^?]%0_"Y+V259U"79M".RO5(&32F#?]%03I*^M#)=DD7!4=_Q^WTW M" [:T[%:X%Y>VI<'_) _D8WLPL5OD MD1S!JXGYD;Z:WV\P6Y*&ULK5=_C]HX$/TJ5EI5NU*[B?,;"DAE MD].U4JM5N=[][4T,6$UB:CO0^_8W3D(6@J'<'=)J29PWSS//8WMFLN/BNUQ3 MJM#/LJCDU%HKM1G;MLS6M"3R@6]H!5^67)1$P:M8V7(C*,D;H[*P7<<)[9*P MRII-FK$G,9OP6A6LHD\"R;HLB?A[3@N^FUK8V@]\9:NUT@/V;+(A*[J@ZMOF M2<";W;/DK*259+Q"@BZGU@<\3K&C#1K$GXSNY,$STJ$\<_Y=OWS,IY:C/:(% MS92F(/"SI8^T*#03^/&C([7Z.;7AX?.>_; CFF4CZR(N_6*[64RNV4$Z7 MI"[45[[[G78!!9HOXX5L_J-=AW4LE-52\;(S!@]*5K6_Y&K M=*(LE("O#.S4+"6B8M5*H@T5:+$F@J)W: 'IF-<%17R)>L#3'O 6S8ED&2)5 MCA)6U(KFZ"ZABK!"WH/UMT6"[E[?H]>(5>B/-:\E(.7$5N"NGM3..M?FK6ON M&=<\])E7:BU16N4T-]@GE^W#"_8VR-1KY>ZUFKL7"3_5Q0-R\%OD.JYG\.?Q M&G.W,7=-X?R_V=/_//N1&%Z?.%[#YYWA^U*75!#%Q=BTLJVM;[;5A]]8;DA& MIQ:<;I**+;5F;U[AT'EODO669,DMR=(;D1TM@-\O@'^)??8%;A%69;RDZ,VK MV,7XO3XQ669:CI8I;)CTU;&=X<#'D$7;0YT-J,@-XV-4W&@)K3@<_&>W M6GC+K79+LN269.F-R(Z6(.J7(+J8=^U]MVN*#KCLR!9.OA5%4M^&$D'Y)15< M<7!+HCNX\MKA>]-:M=,$1RGI8!\[X2 K#4 _\D(<1H/$- %'?AR-!HRID1'^ M_,"K>E4DL%0BC!,OW8J:6KAKIB2OY* MJ_C$8=B\<3!4R@"+<8R#@4X&F!\%_E E(YL7C&ULM9Q?C MP>RT.':=S$[C;1;XD;A.2+H-0YX\7(@@OC\;F(/' Q_]U3K+#PQGIQN^$CZ])?BGS./Z2O[E: MG@V,O$4B$(LL1W#YZTY)/G9DI:_*.I;1,N*^%$NQ9LLD9_Z,BZ;76Q3>21- MR?GBZ]9/_5P?*7E'/O DX;E*R%M'9-P/TI_(&^)'Y,]UO$UYM$Q/AYG,GU.& MBS*7L\M%G\AED_=QE*U3XD9+L>R(9_IXDVH 0WGAU=73QZN_H%KB^28Y(H;] M,Z$&M\??-31\,N]1@FYD>$TFY: M1C4M8WJ,(Q9'Q#)5S#,M\YYI&8^JBWVB94I)K4K05L&U>@B:_/V[/$:N,A&F M_W0T]6*'''4C\]'@)-WPA3@;R.X^%P" MED]"[F;FU*8C>CJ\V]=!^[21/3'4DQBR81X(IM1W7-5WK*VORY/HG9R%D?AV M5^%;[B?DC@?;SNIJ87VKBX0Y.]AXKVRV,;(;M45F9..VGL:6-593>NVSIA:= M5B<(],P&X.L,VUUZ5VGN:/X0BRE*2Q;M[D420>=E%B*[[TPLMKV^)C]NUH[)T MC0'90>9TD3"&A'D@F"($TZA=#$,KAW5L92)H#I;E0&H/2/!1-%1"M!43Q,\V2B5(. MDN9 :2Z4QJ T#T53E5/;CZ;6JYH5_0K9\ <^#P2)MUF:\6CI1RLRYP&/NJ>> M>F9OY5BMR>=D9(R:@Q'46H32&)3FH6BJ(FI[T=3[BW]D:Y%T5AUJ)$)I#I3F M0FD,2O-0-%4=M3EIC@\PTD!-2BC-@=)<*(U!:1Z*IBJG=DC-9RS2'MZ&'M5; M,%#CM*3MWSQ9EMDPF5UH3@:E>2B:*H3:%36U%MHK?! ]L+<5IZCW/_EX(U/F$TARS;:0>M[0 M4>A- ]%4[50.Z2F MWB+]L WG(LE%4'<(CWW$DGQ_9@G'A9[>6QE(FF.V_5>K*0RH70JE>2B:NNZI M-DRIWC"]EK>I4>;S@(C'?X_[T>[?X_)V]>F^0H_MJP@HS2EI^WV%-6IV%M"4 M#$KS4#15$[5K2O6N:<^%$GI:;RE C=*2IG0.M#FEA*9D4)J'HJE2J/U/JG7) M9C5((85P%2W].W^YY4'P0*[",'?3\VZC<^%HITR@KBB4YD!I+I3&H#0/ M15/U5+NB] "K,BG4%872'"C-A=(8E.:A:*IR:O>4ZMW3/BZ''M5;,%!#M:0I MM[74,(Q)IWMS\GPZ&GMY;&E"G$TISH31&VRYL<]DW*J$JC-KFI'J;\]4.!M3MA-(< M*,V%TACM6-(ZGHY;4XE#&)ZT-CRIWO#LZV% #4XHS8'27"B-T;;Y:M/CXZ86 M#N%Q6K7':>D]SE>:&*]=.*AO35\M06D.E.9":0Q*\U T57.UAVJ9>*/#@CJI M4)H#I;E0&H/2/!1-54YMN5IZR_55"P?US-[*@9JK4)H+I;&2IDQF[.:C&QXJ MIZJ(O2?9]4M)/U_==-8<^[0Z]G%U[//JV ?6L4^L'\(6M6I;U!H=8)R!^J-0 MF@.EN5 :@](\%$U53FVV6GJSM?=V!U;[^>[)V&Z:AI?ZM+WE #51H30&I7DH MFBJ'VFRU<*M(]:C>_0?49[7:7F:'2EUH4@:E>2C:3@G#O4VA0I&LBOV^4K*( MMU&VVR&I.EKM*79>[*35..Z8)^YN9[ :L]NH[#U/5KZ\80[$K40:1Q,IY62W M]]?N319OBJVGYG&6Q6'QLLW>8)J![;9?U!+ P04 M" "+= I7+\MN*,@. 6F &0 'AL+W=OSF)DM)C/=A\4^*#83"Y4ECR0G M+; _?BG;,<4/7XGIM5[:V!$/I1-1.HFM[/3GL*#HHOB-_'E!GQTZ[AOV?G]$_[HZ>'\U=UK#KJOAW MOFQ7[V;QS%FR^VQ;M+]53_]@AR,*.KQ%532[?YVGP[;NS%ELF[9:'QKS/5CG MY?[_[.N!B5X#XI]H0 \-J-H@.-' .S3PU ;AB0;^H8&_8V9_*#L>TJS-KB[K MZLFINZTY6O?#CLQ=:W[X>=G]X6_;FO\VY^W:JP_;AG_3-,[[Q9_;O,F[/T;C M7#BW^Q/!J>Z==L6.Y^S8LN:[JOW3J\^N%'YPPLU3MGCC>/OF%#@:[WA&>#L\_P3>YYM;PTY\ !MU MEZ>WS29;L'60A!%C[D17&X MQF[+N_V'FBU8_ICQ,ZQY[92L-;$$HMJRM <+>BP%KD\5EI!ZE%B*CBQ%($L[ MR7)1W5]L&^9DNU%G(@4$L24ETDBAA'@**4@]2J3$1U)BD)1/-5>(=?MM=_(P M?JG:<,UF/%E '%M>8HT70F*%%J0.)5J2(RW) "ULD^6** "+:$ M)#HA@1LHC"#U*#%"7*$#79"3?W&95P,#!VYN2\@!K<^(J]"!U:',1T\7$Y"/ MWZLV*PZW;R,?8'-K/HA^?8UHI%Y@L3J5.:&"$PIRTI/X1DK UM:44(V2"Q+Z M7J)R@M2KS(E0RP26RRF[9W6G -OLJU,,$(0JH@]H$D$1T2XK6)W*_ B!3$"% M>/4K:P]7%>[Q]V+92 VJ CZ@]:GQO(BJ]R"L3F5JA+HE _*66^U\R>IL-P.R MNR.]ZB3O:^?7JN4NFM^TYU7M-&VU^/*CD314(7Q ZY,6!6&L78/.H86)$,,$ M5L.MJ6W;7 MK:;)'\KN$E_MOB_U2YKSZN]5M7SBYLQ\RJ'*:Z+K:Y\D@:]R>PZ)383&)K#( M_GQSZ_S/N=Y-87)":U;LZ&U6^<9\M.,753O@(J68J')% N+06&+,7+LHCH,JCL, MF@2JP<#J4R9&& P*&PSE%GR7+;X4U8.1'%0G@8J68J')) K#0<-I!C"J[4!% M2['09(J%0Z&P0QDY@%$-"M4-2AQJX_<<]H0*>T)A>[(?ORE[9$6UZ?P'6ZS* MB@_A;T9^4$T&*EJ*A283*;P(3:89PZ@>!14MQ4*30P/"HWCP\X-Q8Q@&L8X1 MZ$\1?$K5.0:L/F5BA+/P8&>Q'\2_5N7%HEIO6&L4T#"&-2^8:"D6FLR?\!\> MG63L>J@>!14MQ4*3*>XE?N!G&"/'+FX$2']Z0=5'%U@]RK0(7^'!ON+]UWQM M) +52:"BI5AH,F7"<7C!-(,5U8^@HJ58:#+%PH]X P] 3H2BX&;6E!D"/SY1 MG[UB]2E3(7R#!_N&ER:C8%AKJG0G0;S$4R-D6)W*7 DOX<%>8F0^"D:QIL:0 M! IU@78.<^ )<^ -I8'&AJ1@(&MR]%00C2/UX2%6GW*\5E47]23PU50=5I\R+4+4^["H'TI+P"FYM38DA#D2\4)O3PNI5YJ07F(=% MM4U>"H:R)DB?LK\@/J7:I>4<$MH7$MJ')^U'!J9@%&MN].Q/$ >AJO>P.I6I M$=+7'\S^?%]@"L:W)DW7R,0G+M&N0N=0R;Y0R3ZLDK\_,05W8$V;KI:8 E2-CHJ68J') M% LQ'\!B?MR$, QB3: NZ0-*W5!=B7<.21\(21_ DOXPD.$X%(QA30QJ5@<+ M3>9/R/_ GV;PHEH#5+04"TVFN+=H%C80(P''%",'+ZH+"?4'%$&LWH&QNI1Y$>8B MA,W%[L&GD0I4/X&*EF*AR9SUWM\SS0J"$/>-/JBF! M-IEB8DG#@&<>)4!3< MS)JRX2<76!W*/ CG$,+.X<7OBD+U$J%A@7*LYJ&PNI29$E8BA*W$R#P4C&)- MC.%%0+'ZD!6K2_DU6L(91$.)G[%Q*!C(EIMH^)5 6!W*S A!'\&"?DP6"H:P MYL0@Y]5QA-6C3(H0\Q$LYH>24'!S:T+TAP3:27(.;1X);1[!#PB&B$'!K:T9,:5\8C4$A=6GS(A0T1&LHFU"4#"4 M-3WZ1+TV@,ZAEB.AEB-XEGYD_@E&L:;%$.4)(_7Y!5:?,C.]-UP.!GF^+_X$ MXUMS9GC]99)H9],Y!'$D!'$$"^+O#S_!'5B39IAFU]8]874IT9@YAS:.A3:.86T\540*W@U;:F-#HC[4WJ.(U:=,K1#7\9A$ MO4U$"@:T)@DUOX.%)I,I1'D\S9K9&%6\HZ*E6&@RQ4+GQQAK9F$0:P)UM1\' MVC@^A]B/A=B/8;'_/([AA!0,8LT+:GP'"TTF4'B#>)HEM#&J;T!%2['09(J% MQ8AABS%R[*(ZC%AW&)ZZ\@2K1YD6X2]BV%]HMV @( 5#69.#FM[!0I-I[+US M/YYF ..^DQ_U?3Y8:#+%PJ'$L$,9.8!1#4ILFKM79PBPNI3+&@A_DHQYB?_X M@!0,9\L0*EJ*A293*?Q(,LTJ@P35I:"BI5AH,L7"I208JPQ@$&L"AQ\@8'4H MLR*,10(;B^)<[A@Q#9W9 MN"6Y7$,>1WM3DVFKD\?:*[3EPC/O@Q7KX/;VQZHG;8@?!(EZ]3)M& =A=.J( M>_6S7%B%#M6C@YO;'[ N0"\\ER;ZW]>P81#V7C2D''&O^)4+"TRK:G,PEOWA MZS/8%Y1X>E4UPX8G3^]>%2L7GIT>6T@.AK$_:CWEDGA)I!H/TW8T\4_>HWLE MJMS!!,MW5HF#.[!G1%=ME"2&VEZ&#:.$DE.4]"I+N;!X0Z@!!_=@SXDAO:+% M>DQ;A31)3A#2K]TZ4+QU;(DWY"*NABJNE+JNJT:431MV;UX[=560JK3"6FZR M"F[8]5X-$H^&KJ>)8-.&A/:BB0IU/3$X4,WUA9,5=D7=D&O"HL*E:'#*WZ"G M3\DT*SD)-!ZK0CINO'$"Q9]$@?$-?2^R8MO-"]^00[PGD M@0JS+Q_B<'QGH%][HE#3)6AP"N\]F4ZF6?%)D&O5HL*E:' *SSU/,%#:=NRP MQK4$AMJV 0UTT6-P!+VW\2H'W3,$ T5K$>[;0+!GH'=[LE!S)VAP"OL][T&F M*25%D.O=(A>\/4O%6](K>4O@@J]CAS9N2=MG.&GEV!/&&H@!0U.^0OT3!&=)CE/<$OBXL*E:' *SSWC ]>$'3V\ M<6T-U2?>0Z(MES5M=FJJHE>EE@R4J7WYX!Z( @UT;,\2:E(%#4XAON>"Z#2) M>H);)1<7+D6#4WCNN1ZX3.SH,8WK:0YP_71 F&C/) Q;T405X_-FQ5B;9FUV M=4F>V"_9/5#S@=O MP>YY4_=-MZBZ[IZV/W]HJTT'Z=Q5+=?DNQ]7C'ONNMN __Z^JMKG#UT'3U7] M9;=[5_\'4$L#!!0 ( (MT"E==_V=4GP( +H& 9 >&PO=V]R:W-H M965T>WYWKEW@EU8/. 0Q9\T+HD9<; M4Y[[ODYSX%0?RQ($OIE+Q:G!4"U\72J@F0/QP@^#8.ASRH27Q"YWHY)85J9@ M FX4T17G5#U-H)"KD=?S-HE;MLB-3?A)7-(%W(&Y+V\41G[+DC$.0C,IB(+Y MR!OWSJ<#6^\*OC)8Z:TUL9W,I'RPP54V\@(K" I(C66@^%C"%(K"$J&,QX;3 M:[>TP.WUAOW2]8Z]S*B&J2R^LB?M)U,X<2 M%*WSETIR0L43V84IR,CA!1C*"GV$X/N["W)X<$0."!/D2RXK346F8]^@8+NM MGS;B)K6X\#?B(G(MA2\RR#KPT_WXX1Z\CX-JIQ5NIC4)]Q)^JHIC$O3> MD# (HRX]_PS?D1.UAQ5?,8$K2^&R,A8:S2 K2,EW\FA]= MQU!OT^_>QAK)N2YI"B,/G4*#6H*7O'[5&P;ONF;PG\AV)M)O)]+?QYY\4!+' MH6 )HH+.?UR-'SJ\M;AE$IX-3L]B?[G=P\NJZ"08]MNJ'7MQ@K[@KD4H. M9 9HOH!7PT6&KKN%#EY(Z)\%_6N_HU50N&1E# '*'!\0D*4+53UH&1I3.;F31H76Z9X\<%E"W M]W,IS2:P&[2?J^0G4$L#!!0 ( (MT"E&PO M=V]R:W-H965TV -OR MU@[H&B3+]C#L@9:N+:(2Z9*4W?[[DI2BVC+K!6M>+/+JG/MQ2%_=Z8'QCZ($ MD.AS75$QN*_(2:BQ&; =4O=DP7F.IMGSKBAT'7!A27;F!Y\5NC0EU MTJFQW?%TRAI9$0IW'(FFKC'_LH"*'6:.[SP9[LFVE-K@IM,=WL(#R,?='5<[ MM_=2D!JH((PB#IN9,_=O5XG&&\!?! [B:(UT)6O&/NK-NV+F>#HAJ""7V@-6 MCSTLH:JT(Y7&I\ZGTX?4Q./UD_=?3>VJEC46L&35WZ20Y=.AR."\F,G!!TA&!+&WR&$ M'2%\;H1Q1Q@_-T+4$4SI;EN[$2[#$J=3S@Z(:[3RIA=&?<-6>A&J[\F#Y.HM M43R9+AJA+$*@>?ZI(8+HTQ/H#;KC#)F30$ME8!4IL(0"W8-0)R 0VZ /.^"X MA5]E(#&IQ+4B/CYDZ.K5-7J%7"1*S$$@0M$C)5*\5D:U_K-DC<"T$%-7J@IT M'F[>9;MHLPV^DVV(WC,J2X%6M(#"PL\N\^,+?%.KN MC^6UP$(_C/Q36'8.&P>3)!J?PE866.0%WC?82;%17VQTL=@_U.TC-&-'-0(R5!16%<6@O,NZ+C"\6N<""Y @PIX1N M!5+=N>V_Z$KUW()5%>9'UFN;$FV Y+C&D1<,A+"!_(%:F0T4#L1:V4");U!PG"@@PT41P,=W*-O? U\ M:X8K@7+64-FVZ-[:SV]S,[8,[ O_=NE;[)F:]]KQ[)O[=EA\C_F6J,]\!1L5 MRALEZO[R=@!K-Y+MS(2Q9E+-*V99JID5N :H]QO&Y--&!^BGX/0K4$L#!!0 M ( (MT"E=SCB&)Q ( &(( 9 >&PO=V]R:W-H965T)\MK21ME8($$C3QN !\> FMZTUQRZVTXY_ MCYVTH6O3PB1X27R=>X[/N?[*<"WDHUH :/14,JY&SD+KY6 (W M7V9"ED2;4,Y=M91 BAI4,A=[7NR6A'(G&]9]MS(;BDHSRN%6(E65)9$_;X") M]],/R5IK(;5D*6@)75' D839RKOW!.+7Y=<(7 M"FNUTT;6R52(1QN\+T:.9P4!@UQ;!F)>*Q@#8Y;(R/BQX73:(2UPM[UE?UM[ M-UZF1,%8L*^TT(N1DSJH@!FIF+X3ZW>P\1-9OEPP53_1NLF-$P?EE=*BW("- M@I+RYDV>-G78 ?CA$0#> /#? H(-(*B--LIJ6Q.B23:48HVDS39LME'7ID8; M-Y3;6;S7TGRE!J>S&\H8%(CP CWP:1/<00YT1:8,%#J?@":4J0MTA1[N)^C\ M[ *=( M"AHX?@YWC?NV!+@M :[Y@B-\NW:_74^5EF9M?>^RU?"$W3QVOPW4DN0PV8Y:"T'I]BWLRY_.^^RVW#$-8<]#5:9'^$H\(;N M:M=(1UK8]U+;W$ M.)7-C=8$6BSK2V$JM+EBZN;"_ 2 M GF^TP(O0WL/=/^5F2_ %!+ P04 M" "+= I7!9^UAYD# "\$ &0 'AL+W=O[#J@\>P[G7%^;ZYEN&?\JU@ 2?<^S0LRLM93EC6V+= TY$=>L MA$(]63&>$ZF&_-$6)0>RK$%Y9KN.$]HYH8653.M["YY,624S6L""(U'E.>$_ MWD+&MC,+6T\W/M+'M=0W[&1:DD>X!_FY7' ULCN6)%K=B[1MK* V-?]>#=>F1BLWM-#3>"^Y>DH53B8+KBJ"RQ^(%$OT^[>*EFJ.Y!4J5 6]N 5) M:"9>HE?H\_TM>O'L)7J&:($^K5DE%$!,;:DT:"8[;=_WMGF?>^)]?U79-7+P M%7(=US/ Y\/P6TBOD=? W3[<5LX[^VYGWZWYO)_8OT*+C!2RGP7T[YT*1^\D MY.*+R6K#[9NY]0*\$25)86:I%2: ;\!*GO^&0^>UR?A(9+TT>%T:O"'VY!.3 M)#,Y;&!A#=,[PB:91-AUIO9F7_IQ5!Q$8=Q%]33YG29_4-,="'&CEGE:Y55& M)"S5ZE364TKT^C>);?B"/1FO_"ARXP.UIC ?NR?D!IW<8%!N;R%!;R&9M 9' M(OR)-W$/I!JB<.@[9J5AIS0<5/IAM:(IH%7%"RHK#GW%)K&#?.?6^4AD/>M1 M9SVZX'*/QDS#2&2]-,1=&N)?6^[Q4;UYGA\>%*4AR'>QN28GG:+)H*(YR\M* M A^NPT&.7>SL/KO.!2NQ)1\I$V.Q]5.QUX'@7ZO&%K=?:>XD/OKZ MF,*"&(?FBL2[U@ /?G*3^THY;?;S%87L)WOD,-G94W*);@#OV@'L7;(Z!YN- MLU,Q$EL_%;LN! ^W(:>K\[B/"%1O=+A;&L+\R20.3E3GKMW P_W&':C#RYJI MLJ1YR=D&]-28&_)!HK.G8R2VONU=[X+#2U;FJ)W,6&S]5.QZ&3S8(PQ49G34 MCX?Q41MLB@K\PUW3WCM:ZG/]>\(?:2%0!BL%&ULM59=;YLP%/TK%JNF M5NK*5R!=EB U@6F=UBUJU^UAVH,+3K *-K5-TO[[V8:PD-"LT]A+P.:<8J0 (]Y1OC$2(4H1J;)XQ3ED)_1 A'Y94%9#H5 [YAM.9;[T!Y1ZF:<6U[6MEVGK'M@BM*1,I!1!*4 M=/##PWS_ -^4<6B"X6R",74."GXLLS-@V:? L1RWXSRSP_2+@DFZH^E.ESO_ M9CUZ";W3>BL8;E,9KM9S_U 9IV">02+:!0)^?))P<"E0SG]V9;[2'G1KJ^8W MX@6,T<20W8TCMD)&\/J5[5OONL+>IUC8IUC4DU@K08,F08-#ZD&(I&B,H6ZX MZ%'>'!QUI:)2\;6*NC96@>M;WMA<;8=X'^2=W>:@QM_67)]B89]B44]BK43X32+\_]@4 M_#X3U*=8V*=8U)-8*T'#)D'#7IK"<.]?:KN^O],4.D".NII:36$?Y/B.M=,4 M.D #S]]I"N;6&),CMM3S(P\YXC\7U,<;KGXHO<4JK0 MMSQC/V=]5S>MF[HFDESS[.TW4=N9,')30 M-2DR=0IJ[_)M^9&' 0 # 1 M$P!5W;505>45460^%7R/1#E:9RL/JE:K:%ULL2FOP8[^I>VH;@L:$E6!/^663GR,._ M(?# 1Y]75^CUJS>6O'Y[H_PJKW_L1OUSR_6GGA)[(I)_^SJN$P7]B4J;7<@= MB>G,T3Z25#Q09_[K+SCT?K>4&;1E!K;L\R7=I(RE;*/G:D983/L*K%.$58K2 MM@_SP/.BT7CJ/O1(CUKID56ZNN&+^&N1RK1T7.]LJ%.,#J0QA)X?]$N'K71H ME5XD_VFK:%BH7M&P(^KWZXU;O;%53S]];7>&+@LA*(N_HSM!F,Q(!1IM%,;9 M63GUU@6KX$,R[>5FZ*:92'V%CCN%GN$@[*]UTM8ZL=:JC75D.DPZJB,()\&D M7S=J=2.K[O7'=WUBUJ GF@-[AG;><[FXR?3,E1YP&?^\D9LA^!@&)BLVF,56/!ZSPIM1K&8CMD MC[L9=Q$;X7 TX&9L$(OMC%W>K7KEK%%/M8D!,1X_FZ&M3']JI0;#V,[ATPS= M93'&>.(//3T#8VRG\6F.CGJFSL!?)1CF@I64QQS=1/_0\I"FH2?8Z?E2EH8N M< O9=8P8+A,03/Y6FPDOVI ME1H:@YW&)WD:>M:\T01/!I;;8(@,=B*?Y&GH+GXQ!'XT&E WY 7[&OB8K?O6 MLD->,1 %.T1?S-==[@ZOO,%0%^S4/<':4>==S <(.NLH]^ 5/Z=B4VUD2!3S M@JGZ;;^]VFZ6+.HM C.\WFGY0(2>M1)E=*U#O?.Q[EK4FQ?UB>*[:L/@GBO% M\^IP2TE"13E _[[F7#V>E +M%M+\?U!+ P04 " "+= I7'QCIY:$$ K M(0 &0 'AL+W=OO*Z8)E5)[P)J:'#'PR6=LQNF?BROA;YS:TJ<9"R7"<^18+.1,2.6LJDJ$%3_NV<3EJ8%2<_CWPKJU&,6AMO7&_I'X[QV MYI9*-N'I7TFL%B/GU$$QF]%5JK[Q]1^L8O6I=]![KS="45SRIC M/8,LR25Y\46Z4T)\FVDZ-?^<\7B=IBF@>HZM< MT7R>W*8,74C)E$3'Z"L5@A9BHO>$*9JD\DBW_K@AZ/V[(_0.)3GZON KJ>WE MT%5Z2@78G5;#7Y;#^R\,'Z O/%<+B:(\9G&'/;';AQ9[5X>BCH>_B<>E;P5^ M6J4GR,,?D._Y0<=\)KN8^\;<[W+G;:-'_WOT5C""^LL1&%[P N]CDB>*'7_6 MZG=].?[^K/NC*\4R^4^7]"6\UPTO,N"Y7-(I&SDZQ4DF[IDS_O47''J_=<4= M$D8@81$0K*50KU:H9Z/7CV]7^$O+T%@6[XO[,?;]_M"]WPZK%;]O6'<9,0(: ML16N?AVNOC5<%QD7*OF/FG<4>]!O6\FZ0M=_[@@./.])[)[W.O7Z8;L3>=[) M]X*@]R0H'0.& 3ZK>[6\#6MO0ZNW$_/Z8$*_T%/CLEPDR\XD;>7L^Z1"P@@D M+ *"M<08U&(,#IE+!Y *0<(()"P"@K44.JT5.K4^+ENB4"/*![22;+9*49K, M]/)'KW0>&17RJ$L?*WI??2!AQ.XT]DNG4(@RLY+J4@5H/BU5SFI5SJP3_"YH MS%!.L\Y$;;7=-^R0, ()BX!@+0&PUY0(WB%35T4'$@F41D!I$12MK=-6*88M!ZUM0&@&E15"TMDY-C8OM1>[;\AIDA3L! MI9%7_,;&+>3ODM8.457CIJS&]KKZ*\^/ISQ;,M6Y2K-;[ZT!)(V TB(H6EN' MIN#'X4$S&N@^ "B-@-(B*%I;IV8O %L+V3=F--"] % :><7OS4IML$EIXY;RI7Z,%)LN;[G29:^Y7# :,U%TT)_/.%>;FV* ^O<1 MXY]02P,$% @ BW0*5Q:RU77D!P ZT@ !D !X;"]W;W)K&ULM9QM;]LV$,>_BN 50PLLL?@D2UUB(+70KL-:%$V[O59L MVA:J!T^2DV;8AY\DNZ8H41>SN[YI8\?\W]W?(?T[BO+50UY\*;=25L[7-,G* MZ\FVJG8OI]-RN95I5%[F.YG5OUGG11I5]<-B,RUWA8Q6[: TF5+7]:9I%&>3 M^57[W(=B?I7OJR3.Y(?"*?=I&A6/KV22/UQ/R.3;$Q_CS;9JGIC.KW;11M[* MZO/N0U$_FIY45G$JLS+.,Z>0Z^O)#7D9>FXSH'W%G[%\*#L_.TTI=WG^I7GP M=G4]<9N,9"*752,1U?_=RX5,DD:ISN/OH^CD%+,9V/WYF_KKMOBZF+NHE(L\ M^2M>5=OKB3]Q5G(=[9/J8_[PFSP6)!J]99Z4[;_.P_&U[L19[LLJ3X^#ZPS2 M.#O\'WT]&M$90/C( 'H<0,\=P(X#V+D#^'$ ;YTYE-+Z$$95-+\J\@>G:%Y= MJS4_M&:VH^ORXZQYWV^KHOYM7(^KYF_R?/40)XD392OG;59%V2:^2Z1S4Y:R M*IT+Y[;^2UOMZV?RM?,ZSN)*7OQ1OU.F%S\/917%2?FB'O;Y-G2>/WOA/'/B MS/FTS?=E':"\FE9USDWDZ?*8WZM#?G0DO]_WR:7CDE\ MF>H6I[H%6/?[^L-O_/T5@Z"4,S$+>H6"(6P+'<:L7\D9,=?IG>KTP#H7[6(O MB_K3-&G?V'(;[XPK)JACNR1@BH5(8II_LY-_,^RU=89I)*98B"2F&>F?C/1Q MUE9_, ^8&W!!>W,/C&9KS# FI30(?//<"TXE!VAK:V!8YFK(#OH?*6!$V[(- M0?V9._:10EQ%?^[_6%R/@S6W77\F1*]4.(AMK8:HA(F CQ7;05WR'2NL\Z_S MKEXZTGUJM "4M%TC4-5"+#7=3L6R!!UF"2K-HJJ%6&JZFPIH"4RTGTNYWB=. M$J^E\[SNF1YE5)0OC"9BPNKBB;1(FXC1+Z0T=+\4#1,8A\Y$ MP3L!D7;^J8A6TLFB5!I=0B5U5+402TTW3L$Z\=$G+B:1+U#50BPUW4W5!Q"X M$3B[]R%#(J>4<+=/QJA=@"$H\7Q_9(.%JBZ PEV 3?M#AW1^0;P@\'J5PR&M M]QI-447 QDI7/0&%>P*X 3H.[H85I-.('$M%I7I#S$"X(W5V-IY!?.VLKW"_ M \M8[S?C;CC_"$*GBM I0]^\1T5U5+402TUW4_$[A?G]?$2"A:Q-A-,:[W>P MTM#]4H!.X6UP?0*/]SBPC+5;J%2.I:9;J*B<>N@3&!7/4=5"+#7=347L%"9V MBPF,2N]/I"7&6QRL/'3#%*E3>%_]M&-Q%RV_)/G&:!4JFJ.JA5AJNGT*S6F M/GLQZ7N!JA9BJ>F7SQ7R,QCYS[^ /B1OQEE ^A?047'?$)0&G 1F"F:*]AE, M^S:-#AMR^ 4-9F10.2K]&Z/.V%BCPU0#P. & &YTCH.[8;GG][M9.(1UJ<.8 MU/6]D4([)T/@'>O^,@OW.["8[1*!JA9BJ>E&*D)G''O!9:BHCJH68JGI;BI^ M9S"_GX]+L)"UB7!:X_T.5AJZ7PK6V9G'83K3>+SK@<6L/4/E="PUW4C%Z0S] M7 Q#!794M1!+37=303R#(=YB&J.B_!-I$7>\[<%*1'=,<3N#M]3?Y]G%,D]W MLC)>VH%'6]N$RNA8:OIY3\7HW,6>N1P3PQ>H:B&6FNZF8G\.L__9'0\?(CCA M/NU?X(##69MC"DK(R+X_5]C/8>RW.C4\!/(+0H*@?]P+#FE=N3$J'3O2QU4C MP.%& .YXCH.U[L-G_>8.#F%=JBDFH2.%=@Z&PWO6G146;G9@'>O5 17/L=1T M#Q6><_3S+QR5TU'50BPUW4T%[QSK_ LL9&WB$^=?1IL=K#1TOQ2C# MQ_L<6,?:+E0RQU+3/51DSM$/PG!41$=5"['4=#<5M7.8VBUF,"K /Y$6<'4' M*P_])B4%ZP+>4 _EO4SR7?VW5\GE-LN3?/-HL@N6L;4+52W$4M,M5(0N"/8, M%JC'\U'50BPUW4U%_@(F_[/['3$$E4II76V_5E2H-P0E MOL=&KN.)SBVA\*ZU:;&%6Q]8T'JAP+V?]$? NE"P+M"/Q0A4:D=5"['4=#<5 MR@NL8S&PD+6)WWTL!BL/W3#%[0+>NAZ;R^--$"QH;1PJMF.IZ68J;!?HAV0$ M*K^CJH58:OH-^8KI/9CISY_+L)#U/?EP6M#%'JQ$#HY-.U\LTWP-T+NHV,19 MZ21R7K$F>T _?>SDQ!18E O=@-VQXX3V04FI95.FFMSGDY8 M+2DI8].3+5E@ 3-&?Y&ES*=68J$EK'!-Y1W;?H;.3ZCU,D9% M\XNV;6P86BBKA61%EZP("E*V_WC7K<-!@AN<2/"Z!.^U"7Z7X#=&6[+&UBV6 M.)UPMD5<1RLU/6C6ILE6;DBIG^*]Y.HN47DRO'^++B_>H0M$2O20LUK@B3I?:SI"COL> M>8[G&])GY]-O(1LAOTWW7J;;RG%OV^MM>XV>?T)OCI_Q@BJOR@UJU@!3@7Y? M+X3D:F?],1EL%0.SHCYM5Z+"&4PM=9P$\ U8Z=LW;N1\--G]3V(OS/N]>?^< M>CJK.8=2HHKQYBBQ%:*@C@*BW29X-MEO-:-&4[\;-JD;>'XRL3>'O@Q1OI.X M?=0+X* '#LX"[S?I!F=8$YOP6H7PL'#H)/X1GB'*"Z+8C!?V>.%9/+69.*.T MV4L<*)8*5>(=&(])."!((M<[PAP&19$;F2FCGC(Z2WD#):R(-$)%@WI!$!\_ MVF%0J#:D&2KNH>)7/5G5E;AZM.4:P4XU*&%>NWA $#MCYPAS&!2$P0G,I,=, MSF+^D#EP$U$R*.9[?G!$- SR@F!L)AKW1..S1 ],8FHB&@\.8.C%?GB$-(P* M M_UCYCL@[ZB>_IWS->D%.IML5)YSBA6GGC;)]N)9%73:A9,JL;5#'/U:0%< M!ZC[*\;D?J*[5_^QDOX#4$L#!!0 ( (MT"E?W#',5V , <0 9 M>&PO=V]R:W-H965TV M@=5!T0QM$]3-]C#L@99IFR@E:B0=-_WU(RE5EBQ&=0:]Q*)TS\DYEY?DY?3 MQ5>Y(T2!;QG+Y8YMY\:M_=B_F4[Q6C.;D70.ZS#(NGMX3QP\Q#WH\7G^EVI\P+?SXM\)8L MB7HH[H4>^37+FF8DEY3G0)#-S/L=72]08@ VXD]*#K+Q#(R5%>=?S>!V/?.@ M4408296AP/KGD2P(8X9)Z_BW(O7J_VF S>6UFA259,_49WYX3RI#L>%+.9/V+SA4L= #Z5XJGE5@K2"C>?F+OU6): !0] P@ MJ #!N8"P H36:*G,VKK!"L^G@A^ ,-&:S3S8W%BT=D-S,XU+)?17JG%J_HDK M(L$]?L(K1@#.U^!.[8@ =RM&M]AD6H)+L"PG&? -. ?P^H8H3)E\HZ$/RQOP M^M4;\ K0''S9\;W4&#GUE19O)/AI)?1M*31X1N@?>W8%(+H 0Q"!WS1#[\A MZ14(2WC0AOLZ977>@CIO@>4+G^5;*7";2R7VNJ@5^/N##@"WBF3R'Y>YDBUR MLYFU>BT+G)*9IQ>C).*1>/-??T$)_,UE=2"REO&P-A[VL<_?T1SG*0&,Z,7C MG,<2GUB\V44>YR&$:.H_-BTX@J(DKH-:TJ):6M0KS*?K<%ZA)=,L<-/9=!",>*+W2Q2ZEWXY9=EX]1=S;@).C,1C*8W::[;";M;.$7W^8(1L?6 ?7W#G?G M'%/]'"^>F8'8VHZ/70>*ARW+WB[FQ>8'8FN;/W8NJ+]U.;\LDTZC.@G#TZ+L M!J$QBDYJTF_C71*1'GK+ >*%_;BMN)*7P/MXT[? MU(DP ?K[ANO]LQJ8NV!]]Y__!U!+ P04 " "+= I7OPPY3*@' !N30 M&0 'AL+W=OR M3D3JD-+Y8Y)^S]:<"_(4A7%VT5L+L3D;#++%FD# M;)-RMBR*HG!@&<9H$+$@[DW/BW4WZ?0\V8HPB/E-2K)M%+'TYT<>)H\7/;/W MO.(V6*U%OF(P/=^P%;_CXNOF)I5+@QUE&40\SH(D)BF_O^C-S#-J6WE!L<5? M 7_,]CZ3_%#F2?(]7[A:7O2,?(]XR!I,>6?)[M@W%;?)(>75 PYRW2,*L^)\\EML. MY<:+;2:2J"J6>Q %.V!9.J8%*^'N/P19_8YJL8V@)CC'.,.6K&* ZP=^ZW"Z[](G"_/U);D"N!(^R?QKV\F-).VFFYRA'*AR8):;%<+EK!1 ]NV%5'7;JGI(51\)HR"88IWA MSCI#K75F49**X-^B<2;)O>RI22L%6;9E\8)+3V4B:S*.%MK5.$B8@X2Y)6RX M;Z[1\-A:PV,/CH\=Z"-WC8)@BFE&.].,M*8I>W5)W:MKLH@6T=4BHZ-OV+*& MIY/C:PM2U6VKZB%5_095PS9&1ZH4I*I88+RSP%AK@6_%?1Q?RB:&I_*^E 2Q MX%)&$-FWESU[EA%&-CQ=R)Y04Q_MHQ;?U1XE;++WE1E]PS8/O(&4=%M)>DA) M'PFC()ABGLG./!.M>>YX'"0IN4RY[*40CRU>[*!H.5U=@H0Y2)B+A'E(F(^$ M41!,\=SISG.GT+NS4Z3SD# '"7.1, \)\Y$P"H(ISC.-.A8SM->[3TF\>B^; MQZCH7K\CJS3)&OM,>DY7UU4TM2=AC(<-MV108;>]L <5]BN:TF&WFW0I2E=U MQ%Y0:K[2 BZ2>$EF;UBT^7#[W!+.5BGG^=6IT1M:8F=O(&D.E.9":1Z4YD-I M%$5376C5+K2@;6*%0UD027.@-!=*\Z T'TJC*)IJP3HS-[7!Z/0ZB(-H&Y'[ MX$G>3"[6+%WQ(LHL;BKS<:*DT8G0\+RBG>XW&WUK>-A&0F/Q5IH>5-.'TBB* MICJGSKQ-?>@]:]EL0C-N*,V!TEPHS8/2?"B-HFBJ\^K(W!QBFTUH6@ZE.5": M"Z5Y4)H/I5$43;5@'<";^@3>:3=,HZ=T=MYQ,FV/#:OA;A*:PK>5]:"R/I1& M4335+W5:;^KC^E\=G,;>(W#ZZB/]1]J'[GIRY[,.C=VA-!=*\Z T'TJC*)KJ MQCI\-['INPF-WZ$T!TISH30/2O.A-(JBJ=,SZQ#>TH?PU^RI2!KF22IK@WA% M%DS*O7 -U,.Z&A!*N,W\)F_!8TXX?2'"C-A=(\ M*,V'TBB*IEJPSOBM5S+^;BTO--J'TAPHS872/"C-A])H15,F!#PWO2^TO/4X M@*4?!V@]N4+/Z6RLD]:3*Z#";GMA#RKL-PB_,+D"I:LZHL[G+?V<=GU?K//$ M"[U:9]] XWLHS872/"C-A](HBJ8ZM([OK1&V4P;-\:$T!TISH30/2O.A-(JB MJ1:L1P0L_8A QT[9<81^8C0^9W6IU^WL+NBD?2C-@])\*(VB:*J[ZM$'2S_Z M,%O)%G65/PFR*%M8IFUA)\<#0_:DJ6MQJ=?M["[H: *4YD%I/I1&43357?5H M@J6-BJ>S\K'6,'_J2/J+9?F'ME>RTZ;N<_.5##IL *6Y4)H'I?E0&D71U&?Z MZV$#6S]L<*4\U[;=-Z:F?/E+3]. MUA1QZ8'\Q5V9-,(V%N6;:W9K=R\'FQ6OQ#I8?VF>.6;#>M<\\\I7?]7X\DUD MU])R09S)"]6]E#+Z8_F7G)8O]RH71+(I7A4U3X1(HN+CFK,E3_,-Y._ODT0\ M+^0"NU>L3?\'4$L#!!0 ( (MT"E&PO=V]R M:W-H965TB@A*_K(4LJ,:IW+BJDD"S!E1P-_"\V"TH*YWYM%E[ MD/.IJ#5G)3Q(HNJBH/+E'KC8S1S?.2P\LDVNS8([GU9T T^@OU4/$F=NYR5C M!92*B9)(6,^<._]VX7L&T%C\RV"GCL;$2%D)\C P*5K;_]'F?B", ^K$#@CT@. ?$%P#A'A V M0EMFC:PEU70^E6)'I+%&;V;0Y*9!HQI6FFU\TA*_,L3I^4*4FI4;*#7!H6(9 M2-KD]^T2-&5<79%K\NUI2=Z^OB*O"2O)UUS4BI:9FKH:"1@W;KH/=M\&"RX$ MB\D7#)>7'WGM;%OZ2LY.<1%U.HB'O MQQ6:'E?H.[*"#2M+_$;$FN@#M+%%I7AU*;C"OM2.3@5(X%1#1K3 X76!!GAVC!QCMJ9,DBWEM576N$]X M//*C,UE]JV R#NRJDDY5,JCJJ]"4FU*_4/6 ?6%?[Q5()FQ]]#[I5XD7Q6?L M^T:GQ^*$_J2C/QD^KK64AG4EY*&B+FFQ$9_T.$5^-#DCWC?RO61TH9I\[\]5 MZ/W/3L-!*;R-3Y19KS^OWVF2R?B,OL4JBA+_C+Y[=*D7(#?-6P=9B+K4[?W> MK7;OJ;OF%>'^,6\?8U^HQ$ZI4,8:H=[-&%,GV_=-.]&B:IX(*Z'QP=$,+[QS-AC M#\EP2]DC7Q$BP%,2IWQDK8187]LVGZ](@OD579-4_K*@+,%"WK*ES=>,X% ) M);&-',>S$QREUGBHVN[8>$@S$4V*\?Y6.#QD-$M M8'EO25M/17E.83Y4$P^6LDY<3X0=#YX^5$NCH$4YK(^<>QBN E^(H9 MPWD8P85/!(YB_EZV?G_PP<6[]^ =B%+P;44SCM.0#VTA!Y,C[7FI>%(H1B<4 M=\ M3<6*@R -2=@B[^OE/8V\+9U0>0(]>V*"M,#?L_@*./ #0 [JM(QG^AIQ MI,11FSG_3WOPG[4WG-&IID5'\=P3O'O"!8OF0LX*-4/:XJLEY GNFJ_QG(PL MF<$X81MBC7_]!7K.;VW.-0GS3<("0[!&&-PJ#*ZB=TZMSA5FY')VO#IOY-), MET1F; %F.[#?[P[O5//-%K,0_/E%(L%G01+^5UL079-!- GS3<("0[!&$+M5 M$+O:M>23!6%,1F:^%\&V6!083V'R#7XS=@>.7,V;?1^W=.HCK]G)/^X$G1[J M-WL%Q[T&'NQ6G1K&>I6QGM;8'VIGEL;B#6'RI $V,I-$Z1*L"8MH""[DKK$C MF/'W;1XHV-U]X[P.[!RX0#N"9=^S/8Y6!(94-E_8JE_:T+IU2+D!*A?2; MD&>S.5VFT=\D_ $8)F&^WF:H; )]D!2;/$0@Q+NV8T9@:%2- MT/2KT/2UP_R((P8V.,X(H L9FVK3Y'E"YFKRMQYN)EKNN8$Q"?/[1PL".?TN M/%@0_:.5VD,#KSUW#"IO#K3>_!+A611'8@>*\ZC:P5J/EEK.N=XS"?--P@)# ML$8PH%-7!LX;'S[* 1B*HU&:;Y06F*(U0[E7Y$$S1Y"2L[^NN^[A_EMVVD\1 MG?Y!)[^%!&&W=Y!&6E!>UVU/(Q#5YB*MN=^HP#'(#QX)SK/QHDK3K3:CHS%T M(7(.C=:J/'MVO49G8$IGTXUU#0CU16#P,\N3\5V,4UE70MCJ/*-5H%&:;Y06 MF*(U@U%7@O"M2T%HM!8T2O.-T@)3M&8HZWH0Z@O"KUDR(RP_,9;'1)R)%67Y MH5X=YXO6UO-\2=[/J@BZW5[//4Q7VB&<[?Y7J@U,J6UZMBX^H;[Z/,Q8X!]P M&Z51DB7RZC7_:>GY9Z\!HY6J45I@BM:,5%W3PMY;IS.CM:]1FF^4%IBB-4-9 MU\!07P07X3C\GT?WKX0>>'9HC):_+QB+"K-:PV!H',TPU,4SU%?/;;D//YV3 M^XQ6U49IOE%:8(K6?,Y4%];HK0MK9+2P-DKSC=("4[1F*.O"&ND+Z_-SGQYX M=FA,TOP7C'5/YSY3XRC"8.\]STX(6ZH7"3B8TRP5Q3/,JK5Z6>%&/:(_:)_ MZREL:??A=5"\BE#CBS3O"TK%\TVNH'KE8_PO4$L#!!0 ( (MT"E>+]/)63P, . * M 9 >&PO=V]R:W-H965T>%MCJDO?U]D62J9'L@*!,VNI2F9PJ#:^KA2PW!F5 MA1\&P<0O&1=>.G?/KE4ZESM3< '7BNA=63+U ML0W<@KFKKA6._-9+SDL0FDM!%*P7WI)>KFAL#=R*>PX'W;DG-I0'*1_MX&N^ M\ )+! 5DQKI@>-G#%12%]80<_S1.O79/:]B]?_+^R06/P3PP#5>R^,YSLUUX M4X_DL&:[PMS(PQ=H AI;?YDLM/LGAV9MX)%LIXTL&V,D*+FHK^Q'(T3'( K/ M&(2-0>BXZXT[(T+U5DC'!?VK=P:A;,<[4QZ:V3V>+'" MN')R)4M\V9HYN2[(#6BC>&9PQJTBRP-3N2;O/H!AO-#O>];,?8-0UK6?-0"K M&B \ Q"1;U*8K28?10[YK_8^!M-&%#Y%M H''2XK-2(!_9.$01B1M\0G>LL4 MZ.8RL$/4:A:Y':(S._R]*Q] $;DF=V*/ F#P71WJW7 6]2Q1R5H\)O)31>\$ M-[I/LQH@[@>PF7JI*Y;!PL-4U*#VX*5_O*&3X*^!\.(VO'C(>[J"#1>"BPUY MQT6CVGOR;Z]^-6WM;^S\V3*P3Q,:);-H[N][.,8MQWB0X[-BPDKU7(KQ"44X MB>,H[J>8M!2308K[^@4_%V)R G&!YS >G]$B:2F200JL0&O@+P%)3D'HE":T MGV/:E%K58[D'AIX.XDT*P_@'Y MQ+@B]ZS801_/['](*QH<2VWP@L3*95$PI4F%I<0I:*4\EJO>2EK[3SIZ3NDH M'/?+23O? /KL3'L-5NU]UL&B03*BX1FN\,@5/C?W7H,5GIR^.#F#="S]=+#T M_I:(KZ&*3L2:)J/DW#L\%FTZ7+4[F?D:JOCD9,UFHW 2''^_5PZ_TW24H#:N MM=(DDSMAZOZC?=JV;\NZ:3DNKWN_;TQA9FA2P!I- U3#(ZINI^J!D95K81ZD MP8;(W6ZQ!05E%^#\6DKS-+ ;M$UM^A]02P,$% @ BW0*5[O>NY[P @ M3@H !D !X;"]W;W)K&ULK59=;]HP%/TK5E9- MK=213RAC$*D0T#JI4M6/[6':@TENB+7$SFP'NG\_QPD9L#2C*B]@._>LD"FA<,>1*+(,\]]32-EF8MC&=N&>K!)9+IC^., #YE-]Q-3,;EHAD0 5A%'&()\:U/5KTRW@=\)7 1NR,49G)DK&?Y>0FFAA6 MN2%((90E U9_:YA!FI9$:AN_:DZCD2R!N^,M^T+GKG)98@$SEGXCD4PFQM! M$<2X2.4]VWR&.A^]P9"E0O^B317KJ>"P$))E-5CM(".T^L?/M0\[ ,73#G!J M@',(\%X N#7 /5;!JP'>L0K]&M _%C"H 0/M?666=CK $OMCSC:(E]&*K1SH M' )V?7: S1"AZ M3%@A,(W$V)1*M(2:82TPK02<%P1<=,NH3 2:TPBB%GS0C1]TX$V5;).QL\UX MZG02?BG2'K+L2^18CMNRG]DQ<$?#G;9TWJ8^?YOZHAL>0-A#KMT&W_/2;4Z/ MJ_G<_YX>%! 1IDP4'-#WZZ607-T9/]J.2\7HM3.6]^A(Y#B$B:$N2@%\#8;_ M_IT]L#ZUU>J49,$IR>:G)%N$E2 M(@F(2T1!MM6Y8AUHUO)Y6_N.Y0VOQN9ZMX"=VJ\MX%&2\U-*+OZ5' P_NHWB MGN/]QO%^I^/S. ;]X.Y:SK$$=(X%PB@''@*5%VVN5\S#G?U8/6OH'+C>%N58 M_?VHH"W*M@_M;.5RW/VH16?&KSW!YLY[EP%?Z&ULC53;CM,P$/T5RT@()&C2 M] ):DDCM+@B0=E6U AX0#TXR3:SU)=A.L_P]OJ2A2&WA)?;8<\ZB);$/9F+Q4GQIJJCG2K@%0>Q%F4Q/$RXH0* MG*?^;*/R5':&40$;A73'.5&_UL!DG^$I/AYL:=T8=Q#E:4MJV('YTFZ4M:*1 MI:(AVHDPO42W0OA6DT>B\JJ/[&1U;FJ#4Y:ETG5PD_=VR" MXNDKE,3)#.D@]PKO;*S!S//.+O .B:-0"RIJ]'U5:*/LB_EQ+NW -C_/YKKH M1K>DA S;-M&@#H#SY\^FR_C=%:WS4>O\&GO^T/$"%))[VQ'CGQM*H<^)#70+ M3^,GC MZ3@'5N'Y_W$/0^2>J)H*C1CL+32>O+%Q56C,8!C9^F8HI+&MY;>-G66@G(.] MWTMICH8+,$['_#=02P,$% @ BW0*5P5Y$@]7!@ 8BX !D !X;"]W M;W)K&ULO5IM;]LV$/XKA%<,+=#6(JDW9XZ!QE*[ M#.M:-.WV8=@'Q69LH7IQ)3G)BOWX42^1+.K,1>XACT>=^!PYOTNS MK_E6B(+*@D+?99IKO,A&L*Z,X MFC+#L*=Q$":3Q;QZ]C%;S--]$86)^)B1?!_'0?;WA8C2N_,)G3P\^!1NMD7Y M8+J8[X*-N!+%E]W'3-Y-6Y9U&(LD#].$9.+F?/*&GOFWAG32MED:'EX_L+^MG)?. M7 >Y6*;1'^&ZV)Y/W E9BYM@'Q6?TKN?1>.05?*MTBBO_I*[!FM,R&J?%VG< M&,L>Q&%2_P;WS4 <&$@>V( U!DPU,(\8\,: /[8%LS$P']N"U1A4KD]KWZN! M\X(B6,RS](YD)5JRE1?5Z%?6S2K BN(T&NQ$;. M@"(GK\A5-6W"[V)-WH9)D*S"("*723TOR_@^]T01A%'^0H*_7'GD^;,7Y!D) M$_)YF^[S(%GG\VDANU:L,F>0.T]KW?_?K?<&@[<3A5=\ M_ A?,SM(/6'"9/-27MZ*9"_D[RJ54T1:;,AE(6+RYZ_2N+K,_X+F0=V2";=4 MIL:S?!>LQ/E$YKY<9+=BLOCQ!VH;/T%!P"3S,,E\)+)>N,PV7*:.??$N2_-< M9O(J0N#+6-O;E7WY.;E=,,9L[LZGMX?#"\ ,YG#6AWE#F&G8,\OJP_PAC,^8 MZW:PGK-6ZZRE=?9A;H;)*HT%N18R40E2!/>PYS69== ):CLS0W%\B&+4H5SQ M&T"9=&8J;@]1G'.+P5[;K=>VUNLW8CD?5&WFU' MWCU9YG:AL/A9;?_P/Y ,] M67)HFL(*&B:;A\KF8['U@\:ZH+$GIHB&X/!]M4Q#7?4M 9A-.:=*C@!@U+!= M1TT2$$XNNHXM#VFG7:AVK;UXYW\ O405(JAL'BJ;C\76'_].C%#S=%E"*WQ& M!PV3S4-E\['8^D'K1!75JZI'9(FAKG'HX+5> C#N.K8J(0$8I1955QP^@+-= MZ^A2HI-35*^G/NQ$%I23LZV$@3YK249//TPV#Y7-QV+KAZ/3>]0Y7:AL M/A9;/VB=J&1:_?.(E4=#\%\U# &%C$@'%3% '"Z,@;K%!G3*[*1>9,!0LEV M3$MU'X#-F*%6=0$8YPZS5>D4&SN=8F.HB@V5S4-E\['8^D'K%!M[JF)C0^T$U74 &%37 6!@70?" M:>HZK)-L3"_9QJ9-8).+JEMZ2P!%F@7$%7^H++Y6&S]H'3RAYUNJXRA[I6ALGFH;#X66S]HG6YC3]TP M8\/=*ZC.!<"@.A< ^M< $Y3Y^*=).+Z+;.12;-AZW77=*FRZ;^$8-10SP9X M (Q1EZOG1" V^05RC_C>*0NN5Q;+-)-O9E" !R7TMJ//):'N/Z&R^5AL_2AT M:H>SDZ5)KA56HX.&R>:ALOE8;/V@'9S_T\NTL6FC9CL\ZO6*,==5EYH@CE)3 ME>@0SG3)?4$L#!!0 ( (MT"E?T&PO=V]R:W-H965T.@<9BN@SM5B3M^C#L0;$96Z@L>1*=M,!^_"A9,4V)8NSE#GYI M;/G>0U[>RU,=?HP?\N)KN>1/XPU6<9(/)N'[VL9B,\XU(DXQ_+%"Y6:WBXOL% M3_.'\P$>/#ZX3A9+43T83L;K>,%ON/B\_EC(;\,=RCQ9\:Q,\@P5_.Y\\!:? M,1I4#K7%'PE_*/<^HRJ4VSS_6GVYFI\/G*I'/.4S44'$\L\]G_(TK9!D/_YN M0 >[-BO'_<^/Z)=U\#*8V[CDTSS]DLS%\GP0#M" 9IM2Y*O&6?9@E63;O_&W9B#V'"2.V8$T#J3MX/8XT,:!'MJ" MVSBXA[;@-0YUZ,-M[/7 1;&()^,B?T!%92W1J@_UZ-?>UW]([GBR)>+Y,9>I_/XCKW+R,NXB0M7TF@SS<1>OGB%7J!D@Q]6N:;,L[F MY7@H9->K#@QG33H@[J=V)*9SGM<[^<^O:8-!=$=$:C_8645TN);JK MZH5]$[S(XG2O4F3297UDB]?O)2O,T=NRY+*<_GPO<="5X*OR+U-);!MUS8U6 M#'I6KN,9/Q](BBQY<<\'DQ]_P+[SLRD?D& 1)!@# M,RY^XRY]K0)^^*O"PE MX6_S9TK"UM^O_:O_=>XGA!"?AN/A_?[P&LP<$E"BFT5=,]?Q1YZGF[&N&1V1 M,%1F6K#>+EC/&NS5;Y>F"*U.QY89)%@$"<: P+21]WXG >XH) MVP-FOQNCM'H=6VV@:!$H&H-"T\>?J/$GIR"+IE6H_$&B1:!H# I-SY\2B]BJ M: XA#-J9N@'NS/"IP8R&@=_6' 8SC#W*K"26-BNL3YGB9!E M>"-BT1.NU?_HRH-$BT#1&!2:G@FE_[!W$N8 59"@:!$H&H-"T_.G5"2V2IU# MF,/O*@,YV1V_31U=.SSRW#!H"%M(<\E/S"=OVED0?Z M!_6L8=A1CBY!2+0(%(U!H>GY4!(1AR>A$%"1"8H6@:(Q*#0]?TIH8JL:.H1" M1@Z70>*QJ#0]'PH.4G< MD_ 'J @%18M T1@4FIX_)4*)?1?R /[P# L1!+??0 QF-"2NU^:/KAG&CNN2 M-H$86@WDY4"J2!"?A#%#5 M"8H6@:(Q*#0]?TIU$OO.Y &<$1IF.>[LL1C, @-E=*V(XY/V@JFI38\Z?8RA M-!JQ:[2&,?I7.^S^1]<=Z,X>*!J#0M./=2GM2)U3\ 8%U9J@:!$H&H-"T_.G MM"9]8JOR2=YH /;G<%NG/&T2/6W"K"9Z>$J*4;L44T31LZAA]S^ZT$#W]$#1 M&!2:GHF] Z"G.0$*>P04]@PH["'0_T-44B4JZ7//@38 VIN#&[3?+PQ6W;73 MR&"%O5'[9869S%SBNSVTH108M2LP11L]:QEV_Z/+#G1##Q2-0:'IF5#:D)[D M7"@%U96@:!$H&H-"T_.G="5][NG0!D [RNUWED(-5AYN[\4:C%Q_%+1)HVN% MG;W=EFVDP[T;,[+0%O55I1+-\DTFMO<>=D]WUZ'>UI> 6L\O\-D4&YY'^(QM M+SLI^.W=JP]QL4BR$J7\3C;EO GD%"RVUYFV7T2^KN_KW.9"SH+ZXY+'0LTQ)] N@>H)SD "ZQ+8H6=PN@3GT#.X M74+;]/&V[6W'17$53\Z+_ $5371-:S;:WF^SZ_Y*LF:@W%1%_6M2YU63:['. MBRJ^306Z$8MZ!%0E>HVNQ;W(-@+=?D/3]AI$@3Y^6POT,A)5G*3E#W70IYL( MO7SQ WJ!D@Q]7.:;,L[FY?FXJB^K@8]GW25<;B^!#EP"0Q_RK%J6B&=S,3?D M1_9\SY(_KKMCUR?TL4\NJ17XRR9]@S!YA2BFS' ]TT/2:9M.3CR???$0__:"H")"R"A'$@F%(N9U%LAX\VXS??:_.:_D?L)I=1CP?GX?K][#6&8^HRJ85$_S,%>Z+IJ M&.^'L9 &@0Q3&NON&NM:&_O^MW>F%EJ3CAUFD+ ($L:!8$K/>[N>]TZF"AYD MN2!A$22, \&43W51Z$<17&M'J(F"(2QP0EUB>#^L MEA@/8[,H!+NV!M:V7GZ\,370FG3L*(.$19 P#@13>C[<]7QX,E$((_&5EJSCAUMH+0(E,:A:&K_4]G_]&0*T9T*JFB0M B4QJ%H:M&D M 216PW*(2K#>_>J3WFT]-82QP/=T2V$((\0E^E,&-\1Y@3OT^$"D@R)V"W6U MN4V3&8JS.?JRB]XUPE]H@N((8[ZC#%=0?IQU \D02G$Y(0*TE*"T" MI7$HFEHT:2^)U0X=(B1A_T&DUH>>7>F'!1B[CBXC_3#B^%A_8.&F.#>D[H", M4.G/J-V?/2DC W,==NRQ(Q*4%H'2.!1-+9#TDY2<3$8HJ D%I46@- Y%4XLF M32BU^J4#9*0#:#=TJ/L98YC'M+6/R!#&6.CH2R2F,!R$WH"(2/M&[?;M21$9 MF!2Q8X\>CZ#+=: T#D53"R3])G5.)R*@3A24%H'2.!1-+9ITHM2^]'B B+B& M.5'/T3V-(8S58?JSB"$L]!VLSXD8PES'8\Z B$@/1^T>[JI([N-*6.9 [("C M1Q[H.AXHC4/1U%)(;TG]T\D%J-\$I46@- Y%4XLF_2:U+TH>(!=!7RY\S_-U MN>B'^2X+]1580QBA@=N;0S7%.0$._0'!D%Z-VKV:*AC#,QYVS-$C$'2E#Y3& MH6CJ6US22S)\,ME@H/X2E!:!TC@432V:])?LB?7*)V6C R@W<,A";:9S:@BC MU UTJV((8W[@Z_.FAC"',8>:18-)9\;LSJPG&@/S&W;,T>,/=.D/E,:A:&I! M]M[]/.'+G[!O?\*^_@G[_N?_X2>9])/LN:^ =@!U(18S1Q>-?ICC>KJV1(8P MGX;ZH@PWA(4X",(!T9!.C-F=6$\T!N8S[)BCQQ_H>A\HC4/1U()(K\A.]VXH M W65H+0(E,:A:&K1I*MDSWU#M /LO\--,&6Z03&$^80$NF888+[/L*X9AC 6 M>/J5*!;MAT$3.^/;3 M)8G??DGU(2X625:B5-S5I\)O_/K>*[8?)VUWJGS=?GUSFU=5OFHWER*>BZ() MJ'^_R_/J<:X3L[FI/YH 8 $@V 9 M>&PO=V]R:W-H965TJN7 MI&8/>?&YW'!>H2]IDI67DTU5;2^FTW*YX6E4OLZW/!._W.5%&E7B:[&>EMN" M1ZLF*4VFQ++<:1K%V60^:XY]*.:S?%F\]DV6O,;7GW:?BC$MVE'6<4IS\HXSU#![RXG;_ %HUZ=T$3\'O.' M\N SJIMRF^>?ZR_O5I<3J[XBGO!E52,B\>>>+WB2U"1Q'7^WT$EWSCKQ\/,C M_6W3>-&8VZCDBSSY(UY5F\N)/T$K?A?MDNHZ?_B)MPUR:MXR3\KF7_30QEH3 MM-R559ZVR>(*TCC;_XV^M!UQD" X^@32)A UP1Y)H&T"/?8,=IM@'WL&ITUH MFC[=M[WIN#"JHOFLR!]044<+6OVAZ?TF6_17G-4#Y:8JQ*^QR*OFUWR;%U5T MFW!TP]=B!%0E>H6N^3W/=AS=?D6+/*L*44[T\>N6H^>S2YU! MNP%"&QX=X;6C NT'2IRM7W:CXYHO\VP9BXPU>E?Q%/WYBTAN/I9_Z<;!_DRV M_DRU)%Z4VVC)+R="\TI>W//)_/OOL&O]H"L")"R$A#$@F%0NNRN7;:+/?RSR MLA0*WE1(>S/N\]TFO_YOY'Y."'&I/YO>'W:O)LPB'B5R6#@,LRTWT(%%'0A/EVH$H,&X8)B7$M M2R\*?M=6W]C6JX\WN@8:DTX=99"P$!+&@&!2SP==SP=G$X4 LER0L! 2QH!@ M4KFPU3_[6T^4A19P>(\ZMJ4^!2PT82ZF%"NZH G#ENM[JC#HX@CVQAX7\('9 MP>8&L]^TK31FG3K:0&DA*(U!T>3^)WW_D[,I1'LJJ*)!TD)0&H.BR47K#2 V M&I9C5((.[E M%3Q.;W=%V[&'G?.(!ZA%!:2$HC4'1 MY*+U/A$;?PS@LQ,/V5?D8QE$W\*FGRH'V#^?BH":2E!:"$IC4#2Y:+VQ MQ$8C=(R*!,,)#(I]1Q4139CO6K:J(<,P['F6350-T<0%-B6N7D-([\R(V9F9 M-61DBL/,/'4X@M)"4!J#HLG5Z6TDP6?3$ +J/4%I(2B-0='DHO7>DQAMTA$: MT@)D?^)ZEJ(ANK# LEQ%0S1A7D "16J8+LRW S*B(+UK(V;79E:0D8D0,_/D MP0BZ1 =*8U TN3J]QR3V^10$U(""TD)0&H.BR47K#2@Q+S<>H2#.\&:VB&>K M"C(,$T*CKH^$FC",J6-A54*&<:Y/?#HB(;UW(V;O]C;^PE>O=EE7Q#N?=H#:3E!:"$IC4#2Y:+WM).95R2.TP]?, M@SB6.@VB"W-M7W4PFC#J8:RNM&C"'.P=T.3F]H:-F W;N'2,3X&8D2>/1=!% M/U :@Z+)&[IZL])O[%T^4T!:0'2+>_85-$/ M391M466>)-1$>7Z@6!RFB?(/GW;DIO9.C9J=FE$\1N8^S,B3QR'H:B HC4'1 MY.(<; <]XWY0V VAL#M"8;>$_A]VD_9VDSYU5V@+D+R&0]6UV84FC!!*!O*A M"?,<]2&%:<)L2H(1XT)[HT;-1LTH("-3'V;DR6,1=$40E,:@:')Q>E=)S[=U ME()Z3E!:"$IC4#2Y:+WGI$_=0-H"#K=XX\'"RD(7153OHD4-=H]JH@CV%.F8 M'KP9D_)BW;R25 H]V&75_AV([FCWVM.;YF4?Y?@5OEA@S?$07[#]2TT]?O^. MU?NH6,=9B1)^)TYEO?;$;5?L7UO:?ZGR;?->SFU>57G:?-SP:,6+.D#\?I?G MU>.7^@3=RV/S?P%02P,$% @ BW0*5[7>%M * P ]@H !D !X;"]W M;W)K&ULO59=3]LP%/TK5H8VD ;Y:)NVK(U$"].8 M0$-T; _3'DQRVU@X=K&=%O[]["0-#81T'=5>&MNYY_C<V+<,8$BR/^!R8?C/E(L%*3\7,EG,!.,I ";4]Q_'M!!-F!8-L M[4H$ YXJ2AA<"233),'B<024+X>6:ZT6KLDL5F;!#@9S/(,)J)OYE= SNV2) M2 ),$LZ0@.G0.G&/QZYC %G$#P)+N39&)I5;SN_,Y#P:6HY1!!1"92BP?BQ@ M#)0:)JWCOB"URCT-<'V\8O^<):^3N<42QIS^))&*AU;/0A%,<4K5-5]^@2*A MCN$+.979+UH6L8Z%PE0JGA1@K2 A+'_BA\*(-8#FJ0=X!<#[6T"K +2R1'-E M65JG6.%@(/@2"1.MV2LPB.;"5%FZVM\-"Y"@7Z;TBLH4N.5.Q M1&A<02)_U]4BWZM=OY>Y5H[E'(UUG8"_6\W@9 MYO?;7OLIK**P4RKL-"K,BQ56BD6*8E%3K#K%.65G3?Z=T05%'KEVK] M1K7Z]&PPTW^Q:[?MNNW>,W$;PRKRNJ6\;J.\K4Y!G?I&^FT__!V159SHE4[T M_N-]T-NE+3LBJ]C2+VWIO_T^:*38-MO^BP_]E0O#=9[^KYTW'L*"P&^^(#9% MY?+LM6QENI'OG9P,[LXO#^UG#7#N!T[2T3-(+P8XK\$PZGB?NEM^:KAZ MW]/&.6@3,)OD4NSG 0R&G134NR=\ZJ>$L[EBX)63@O&--0_!L)!<*D^; IAP M(5BJ!PN'=@:U:7D*)J1J8ML(]N^\77X =#,0R#CO!0Y]:YA-2J(U5>+*3)K% MC?$1Y+7CVTUI%"X5V83#D;]U:&XFR%RJC*H^3.AWIMF$TQSD*+9Y=V\")>KV3W4G^NS79$,X=.H]>*YFS=S-=Y+P!C#W%V4I9\\XFSI2BHW?RS M \XFI//S5E*Q!Q,-6F5A#%3YWCU5FBUV+;\4*6_I6G?MM,YQS<-7J/GOYGE) M!56$[XHVO7_,67ZQXNC#OY+<_%P=9;/7B!F/K?X76$;X-Z\YIQS40[6[$LH^+1^6;H-9F;U[T]?K,^HSFI MN;[MP:F_'7^C&:N+I%]U#8EH5VW'7V%[8=R_O9A83&1T3;.TG:KEO!EZ9F"B MMA5&,!^+N1' L#B8 LS'>F%Q_J?]C-']6 S3-G8B8]1GC/I8+Q>2 M-A\LCMLG,9=[ITD217&,931-G0I2+&]Q#%\W&Z8-/+ X$.G/&!5P'H'XKOC0$^Y?:((JHIIPYY@ M'$D2#(%>=/=H'"/9B>'CK@_VE$11DK@1P-P*H@A#X&G$$4P!:,"0*&K.P8/S M*.C.J6#[&\CL-U!+ P04 " "+= I7EXJ[', 3 @ "P %]R96QS M+RYR96QSG9*Y;L,P#$!_Q=">, ?0(8@S9?$6!/D!5J(/V!(%BD6=OZ_:I7&0 M"QEY/3P2W!YI0.TXI+:+J1C]$%)I6M6X 4BV)8]ISI%"KM0L'C6'TD!$VV-# ML%HL/D N&6:WO606IW.D5XA-/E_G;@2=&A(E@6FD7)TZ(=I7\=Q_:0T^FO8R*T>EOH^7%H M5 J.W&,EC'%BM/XU@LD/['X 4$L#!!0 ( (MT"E?YH%Z3[@0 +@H / M >&PO=V]R:V)O;VLN>&ULQ9I;<]HX%(#_BH:7[BXO9OO1?*G]EH4W'G=\VV;_=&\,+NA'!5V8\&@U&_XE+U M/GU\>M:-Z<,=[43NI%;^8'/@JQ3W]M?Y9I<=I)5K64KW,.Z%WZ7HL4HJ6-!^(N/>[73%[)TPLRX$Y^-KO=2;9O'^+?H@]<(<7C: M'H-X9OY/&/5F(W,QTWE=">6.<32B; "5WSR6H^8^>3Z\EB.F?9Y7R^R@!@A !&)P-D M;VXX@(P1R/@5(;.5W_PS7WC Y05;S%<,0"8(9'(RR.GE9 $@4P0R/1WD)+L$ MD",$2MR 6 4EOFY:+\[UPT=P+(#PCD!UK(.3?*HUFV M%X9E.VX$[+L'6.<]H"5K:IL2UOH _E?[?P\70#C4+,1J.9=E*8K0/KZH]7&G M*6]YX!ZDA8GY94@L&%_A?+FZAP Z]V'<-S?\Q92 U6^(V65(K)?/6A?W/H ! M\EW/)6.6-:&1)[9:I#']CTB/ZGE84PX2+(AQEE2*R4J:XJ MZ9J+; CB3][\M[+&C#(D5DKF='[W]IQ;T0!6_DGV61 QF0R);7*EDC(M;'\_R%O5D%!_\)$3%W1,3NZ$QD.BDQC43$&D$SFG9Y8QJ) MB#6"9#1-2"$F9I.(V"9X5@,'S1'FDXC8)QUI36?%Q)P2$3L%S6]:%3/&-!,3 M:^:E_.9'/"$FIISX-933D4%T8&+VB8GMTR'MKHH9H_-BQ.KILG\U;8NFR->1), M0 GUS-D+F#ZQ8Q<:?CE*, $EQ +"TV'8;R:8@Q)B!Z'I\ SJ/$&_SA!;",/T M[1UB8A9*B"V$9NVM5#/!+)006PC';-5-S$+)*<= +::@E-A!<&ZZLX&GZ-( 8O5T#7C!T )B8NI)B=73 MC7G,A.5C"Q-33TJLGF[,6W$0JA;L F)BZDG)5PA@F&N(BM^DC9? MW#9U64[]L:6ZUKQX6GCWM&CPTW=02P,$% @ BW0*5_5)DLP! @ 7B0 M !H !X;"]?]"2J,T(%XO*+P2<$/#SG0S?M M^U/9[8>R^#@>3F75[*9I^)526>_RL2LW_9!/YR.;?CQVTWDY;M/0K=^Z;4ZZ M7+9I_#ZC>7SX/G/Q\CGD_YG8;S;[=?[=K_\<\VGZQ^#TWH]O99?SU"Q>NG&; MIU63/@[7W25=-G)SGMPLGEY7S?CT*DVJ':00I/6##(*L?I!#D-@^_I!LD09EP1),ZP)M!;D6@B\%@1;",06)%L( MS!9$6PC4%F1;"-P6A%L(Y!:D6PCL%L1;"/16U%L)]%;46PGTUMG#-H'>BGHK M@=Z*>BN!WHIZ*X'>BGHK@=Z*>BN!WHIZ*X'>BGHK@=Z&>AN!WH9Z&X'>AGH; M@=XV>UE"H+>AWD:@MZ'>1J"WH=Y&H+>AWD:@MZ'>1J"WH=Y&H+>CWDZ@MZ/> M3J"WH]Y.H+>CWDZ@M\]>=A/H[:BW$^CMJ+<3Z.VHMQ/H[:BW$^CMJ+<3Z!VH M=Q#H':AW$.@=J'<0Z!VH=Q#H':AW$.@=LX^5!'H'ZAT$>@?J'01Z!^H=!'H' MZAT$>K>H=TN@=XMZMS^I=YD^#[E<>[[6>/V?I'HZGYNOE[\LOW;.;L(%YP2_ M$SW^!5!+ P04 " "+= I7UDS DN ! #C(P $P %M#;VYT96YT7U1Y M<&5S72YX;6S-VLM.PS 0!=!?B;)%C>M7>8BR ;;0!3]@D@F-FL26;:#\/4X* ME4"EHBH2=].HM3UWXI'.JITZ_1P:V\]S3VW(L^O- MQB%KGAOGVJ8T,:VSE[[ZEC+Y2"C2R7%/6#8NG*0-.=N9,*S\'/!Q[OZ%O&\J MRA;&QSO3I5ULW;(0WUH*Q?X2.WJT==V45-GRN4M'BN \F2HLB6+7%INB)_N3 M8[IAVGSRH_/',OL"T\Z%MRZDB7DZ/.YS),/IB4N%R,=F_RMN$U/IH]^/AFE7 M5/TR.UWOJ_6K<1Z!C8_C[_CKC+?U#^Q#@/0A0?I0('UHD#YF('V<@O1Q!M+' M.4@??(K2"(JH'(54CF(J1T&5HZC*45CE**YR%%@YBJP"15:!(JM D56@R"I0 M9!4HL@H4606*K )%5H$BJT215:+(*E%DE2BR2A19)8JL$D56B2*K1)%5HLBJ M4&15*+(J%%D5BJP*15:%(JM"D56AR*I09%4HLFH4636*K!I%5HTBJT:15:/( MJE%DU2BR:A19-8JL,Q199_\IZZ.UJS^.'Y]%9YK^,Y^-_^VY>@=02P$"% ,4 M " "+= I7!T%-8H$ "Q $ @ $ 9&]C4')O M<',O87!P+GAM;%!+ 0(4 Q0 ( (MT"E<- >)I[P "L" 1 M " :\ !D;V-09 M7)PC$ 8 )PG 3 " &UL4$L! A0#% @ BW0*5WG"$*GA!0 K!\ !@ ("! M#@@ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ MBW0*5SO@QBV$!P "B4 !@ ("!?Q@ 'AL+W=O&PO=V]R M:W-H965T&UL4$L! A0#% @ BW0*5].!=*,ZJQ0P " D 8 " @=8V !X M;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ BW0*5QCO/Q#/! W@P !D ("! M)$8 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ BW0*5V;8$2S% @ 0P8 !D ("!+%L 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ BW0*5U(PH+H.!0 @ L !D M ("!C'@ 'AL+W=O&PO=V]R M:W-H965T>!*VH@@ "$7 M 9 " @8R" !X;"]W;W)K&UL M4$L! A0#% @ BW0*5R*;IW34 @ ZP8 !D ("!98L M 'AL+W=O. M6V8* !D' &0 @(%PC@ >&PO=V]R:W-H965T&UL4$L! A0#% @ MBW0*5QZ%6FME!@ @@X !D ("!NIP 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ BW0*5^0O69[*! M3 L !D ("!8*D 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ BW0*5V?&PO=V]R:W-H M965T&UL4$L! M A0#% @ BW0*5P5 02:B @ ! 8 !D ("!/,( 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ BW0* M5VP!EK@5 P I P !D ("!\\H 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ BW0*5R_+;BC(#@ %I@ M !D ("!2MH 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ BW0*5W..(8G$ @ 8@@ !D M ("!ON\ 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ BW0*5[6V;&PO=V]R:W-H965T\" M 0!X;"]W;W)K&UL4$L! A0#% @ BW0*5]45 M27S[ @ N @ !D ("!"@L! 'AL+W=O&PO=V]R:W-H965T_##E,J < &Y- 9 " @4L2 0!X;"]W;W)K&UL4$L! A0#% @ BW0*5S;>\L:! P <0H !D M ("!*AH! 'AL+W=O&PO M=V]R:W-H965T+]/)63P, M . * 9 " @5HC 0!X;"]W;W)K&UL4$L! A0#% @ BW0*5[O>NY[P @ 3@H !D ("! MX"8! 'AL+W=O&PO=V]R:W-H965T1(/5P8 &(N 9 M " @70L 0!X;"]W;W)K&UL4$L! A0#% M @ BW0*5_1R7'>&PO=V]R:W-H965T[FI/YH 8 $@V 9 " @:] 0!X M;"]W;W)K&UL4$L! A0#% @ BW0*5[7>%M * M P ]@H !D ("!AD&PO7BKL

]. 0!X;"]W;W)K8F]O:RYX M;6Q02P$"% ,4 " "+= I7]4F2S $" !>) &@ @ $* M5 $ >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'-02P$"% ,4 " "+= I7 MUDS DN ! #C(P $P @ %#5@$ 6T-O;G1E;G1?5'EP97-= :+GAM;%!+!08 10!% -H2 !46 $ ! end XML 74 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 75 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 76 FilingSummary.xml IDEA: XBRL DOCUMENT 3.23.2 html 305 261 1 false 47 0 false 6 false false R1.htm 0000001 - Document - Cover Sheet http://www.nv5.com/role/Cover Cover Cover 1 false false R2.htm 0000002 - Statement - CONSOLIDATED BALANCE SHEETS Sheet http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS CONSOLIDATED BALANCE SHEETS Statements 2 false false R3.htm 0000003 - Statement - CONSOLIDATED BALANCE SHEETS (Parentheticals) Sheet http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals CONSOLIDATED BALANCE SHEETS (Parentheticals) Statements 3 false false R4.htm 0000004 - 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 4 false false R5.htm 0000005 - Statement - CONSOLIDATED STATEMENTS OF CHANGES IN STOCKHOLDERS??? EQUITY Sheet http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY CONSOLIDATED STATEMENTS OF CHANGES IN STOCKHOLDERS??? EQUITY Statements 5 false false R6.htm 0000006 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS Sheet http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS CONSOLIDATED STATEMENTS OF CASH FLOWS Statements 6 false false R7.htm 0000007 - Disclosure - Organization and Nature of Business Operations Sheet http://www.nv5.com/role/OrganizationandNatureofBusinessOperations Organization and Nature of Business Operations Notes 7 false false R8.htm 0000008 - Disclosure - Summary of Significant Accounting Policies Sheet http://www.nv5.com/role/SummaryofSignificantAccountingPolicies Summary of Significant Accounting Policies Notes 8 false false R9.htm 0000009 - Disclosure - Recent Accounting Pronouncements Sheet http://www.nv5.com/role/RecentAccountingPronouncements Recent Accounting Pronouncements Notes 9 false false R10.htm 0000010 - Disclosure - Earnings per Share Sheet http://www.nv5.com/role/EarningsperShare Earnings per Share Notes 10 false false R11.htm 0000011 - Disclosure - Business Acquisitions Sheet http://www.nv5.com/role/BusinessAcquisitions Business Acquisitions Notes 11 false false R12.htm 0000012 - Disclosure - Billed and Unbilled Receivables Sheet http://www.nv5.com/role/BilledandUnbilledReceivables Billed and Unbilled Receivables Notes 12 false false R13.htm 0000013 - Disclosure - Property and Equipment, net Sheet http://www.nv5.com/role/PropertyandEquipmentnet Property and Equipment, net Notes 13 false false R14.htm 0000014 - Disclosure - Goodwill and Intangible Assets Sheet http://www.nv5.com/role/GoodwillandIntangibleAssets Goodwill and Intangible Assets Notes 14 false false R15.htm 0000015 - Disclosure - Accrued Liabilities Sheet http://www.nv5.com/role/AccruedLiabilities Accrued Liabilities Notes 15 false false R16.htm 0000016 - Disclosure - Notes Payable and Other Obligations Notes http://www.nv5.com/role/NotesPayableandOtherObligations Notes Payable and Other Obligations Notes 16 false false R17.htm 0000017 - Disclosure - Contingent Consideration Sheet http://www.nv5.com/role/ContingentConsideration Contingent Consideration Notes 17 false false R18.htm 0000018 - Disclosure - Commitments and Contingencies Sheet http://www.nv5.com/role/CommitmentsandContingencies Commitments and Contingencies Notes 18 false false R19.htm 0000019 - Disclosure - Stock-Based Compensation Sheet http://www.nv5.com/role/StockBasedCompensation Stock-Based Compensation Notes 19 false false R20.htm 0000020 - Disclosure - Income Taxes Sheet http://www.nv5.com/role/IncomeTaxes Income Taxes Notes 20 false false R21.htm 0000021 - Disclosure - Reportable Segments Sheet http://www.nv5.com/role/ReportableSegments Reportable Segments Notes 21 false false R22.htm 0000022 - Disclosure - Stockholders' Equity Sheet http://www.nv5.com/role/StockholdersEquity Stockholders' Equity Notes 22 false false R23.htm 9954701 - 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 23 false false R24.htm 9954702 - Disclosure - Earnings per Share (Tables) Sheet http://www.nv5.com/role/EarningsperShareTables Earnings per Share (Tables) Tables http://www.nv5.com/role/EarningsperShare 24 false false R25.htm 9954703 - Disclosure - Business Acquisitions (Tables) Sheet http://www.nv5.com/role/BusinessAcquisitionsTables Business Acquisitions (Tables) Tables http://www.nv5.com/role/BusinessAcquisitions 25 false false R26.htm 9954704 - 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 26 false false R27.htm 9954705 - 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 27 false false R28.htm 9954706 - 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 28 false false R29.htm 9954707 - Disclosure - Accrued Liabilities (Tables) Sheet http://www.nv5.com/role/AccruedLiabilitiesTables Accrued Liabilities (Tables) Tables http://www.nv5.com/role/AccruedLiabilities 29 false false R30.htm 9954708 - 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 30 false false R31.htm 9954709 - Disclosure - Contingent Consideration (Tables) Sheet http://www.nv5.com/role/ContingentConsiderationTables Contingent Consideration (Tables) Tables http://www.nv5.com/role/ContingentConsideration 31 false false R32.htm 9954710 - Disclosure - Stock-Based Compensation (Tables) Sheet http://www.nv5.com/role/StockBasedCompensationTables Stock-Based Compensation (Tables) Tables http://www.nv5.com/role/StockBasedCompensation 32 false false R33.htm 9954711 - Disclosure - Reportable Segments (Tables) Sheet http://www.nv5.com/role/ReportableSegmentsTables Reportable Segments (Tables) Tables http://www.nv5.com/role/ReportableSegments 33 false false R34.htm 9954712 - Disclosure - Stockholders' Equity (Tables) Sheet http://www.nv5.com/role/StockholdersEquityTables Stockholders' Equity (Tables) Tables http://www.nv5.com/role/StockholdersEquity 34 false false R35.htm 9954713 - 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 35 false false R36.htm 9954714 - Disclosure - Summary of Significant Accounting Policies - Contract Balances (Details) Sheet http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesContractBalancesDetails Summary of Significant Accounting Policies - Contract Balances (Details) Details 36 false false R37.htm 9954715 - Disclosure - Earnings per Share - Narrative (Details) Sheet http://www.nv5.com/role/EarningsperShareNarrativeDetails Earnings per Share - Narrative (Details) Details 37 false false R38.htm 9954716 - 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 38 false false R39.htm 9954717 - Disclosure - Business Acquisitions - Narrative (Details) Sheet http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails Business Acquisitions - Narrative (Details) Details 39 false false R40.htm 9954718 - Disclosure - Business Acquisitions - Summary of the Fair Values of Assets Acquired and Liabilities Assumed (Details) Sheet http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails Business Acquisitions - Summary of the Fair Values of Assets Acquired and Liabilities Assumed (Details) Details 40 false false R41.htm 9954719 - 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 41 false false R42.htm 9954720 - 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 42 false false R43.htm 9954721 - Disclosure - Billed and Unbilled Receivables (Details) Sheet http://www.nv5.com/role/BilledandUnbilledReceivablesDetails Billed and Unbilled Receivables (Details) Details http://www.nv5.com/role/BilledandUnbilledReceivablesTables 43 false false R44.htm 9954722 - Disclosure - Property and Equipment, net (Details) Sheet http://www.nv5.com/role/PropertyandEquipmentnetDetails Property and Equipment, net (Details) Details http://www.nv5.com/role/PropertyandEquipmentnetTables 44 false false R45.htm 9954723 - Disclosure - Property and Equipment, net - Narrative (Details) Sheet http://www.nv5.com/role/PropertyandEquipmentnetNarrativeDetails Property and Equipment, net - Narrative (Details) Details 45 false false R46.htm 9954724 - 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 46 false false R47.htm 9954725 - Disclosure - Goodwill and Intangible Assets - Narrative (Details) Sheet http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails Goodwill and Intangible Assets - Narrative (Details) Details 47 false false R48.htm 9954726 - 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 48 false false R49.htm 9954727 - Disclosure - Accrued Liabilities (Details) Sheet http://www.nv5.com/role/AccruedLiabilitiesDetails Accrued Liabilities (Details) Details http://www.nv5.com/role/AccruedLiabilitiesTables 49 false false R50.htm 9954728 - Disclosure - Notes Payable and Other Obligations - Summary of Notes Payable and Other Obligations (Details) Notes http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails Notes Payable and Other Obligations - Summary of Notes Payable and Other Obligations (Details) Details 50 false false R51.htm 9954729 - Disclosure - Notes Payable and Other Obligations - Narrative (Details) Notes http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails Notes Payable and Other Obligations - Narrative (Details) Details 51 false false R52.htm 9954730 - Disclosure - Contingent Consideration (Details) Sheet http://www.nv5.com/role/ContingentConsiderationDetails Contingent Consideration (Details) Details http://www.nv5.com/role/ContingentConsiderationTables 52 false false R53.htm 9954731 - Disclosure - Stock-Based Compensation - Narrative (Details) Sheet http://www.nv5.com/role/StockBasedCompensationNarrativeDetails Stock-Based Compensation - Narrative (Details) Details 53 false false R54.htm 9954732 - Disclosure - Stock-Based Compensation - Restricted Stock Awards (Details) Sheet http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails Stock-Based Compensation - Restricted Stock Awards (Details) Details 54 false false R55.htm 9954733 - Disclosure - Income Taxes (Details) Sheet http://www.nv5.com/role/IncomeTaxesDetails Income Taxes (Details) Details http://www.nv5.com/role/IncomeTaxes 55 false false R56.htm 9954734 - Disclosure - Reportable Segments - Narrative (Details) Sheet http://www.nv5.com/role/ReportableSegmentsNarrativeDetails Reportable Segments - Narrative (Details) Details 56 false false R57.htm 9954735 - Disclosure - Reportable Segments - Summarized Financial Information (Details) Sheet http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails Reportable Segments - Summarized Financial Information (Details) Details 57 false false R58.htm 9954736 - Disclosure - Reportable Segments - Revenue From Contracts With Customers by Geographic Location (Details) Sheet http://www.nv5.com/role/ReportableSegmentsRevenueFromContractsWithCustomersbyGeographicLocationDetails Reportable Segments - Revenue From Contracts With Customers by Geographic Location (Details) Details 58 false false R59.htm 9954737 - Disclosure - Reportable Segments - Revenue by Customer Type (Details) Sheet http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails Reportable Segments - Revenue by Customer Type (Details) Details 59 false false R60.htm 9954738 - Disclosure - Reportable Segments - Revenue by Contract Type (Details) Sheet http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails Reportable Segments - Revenue by Contract Type (Details) Details 60 false false R61.htm 9954739 - Disclosure - Stockholders' Equity - Schedule of Accumulated Other Comprehensive Income (Loss) (Details) Sheet http://www.nv5.com/role/StockholdersEquityScheduleofAccumulatedOtherComprehensiveIncomeLossDetails Stockholders' Equity - Schedule of Accumulated Other Comprehensive Income (Loss) (Details) Details 61 false false All Reports Book All Reports [ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 1 fact(s) appearing in ix:hidden were eligible for transformation: us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 - nvee-20230701.htm 4 nvee-20230701.htm nvee-20230701.xsd nvee-20230701_cal.xml nvee-20230701_def.xml nvee-20230701_lab.xml nvee-20230701_pre.xml nvee-2023x07x01xex101.htm nvee-2023x07x01xex311.htm nvee-2023x07x01xex312.htm nvee-2023x07x01xex321.htm http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 true true JSON 79 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "nvee-20230701.htm": { "axisCustom": 1, "axisStandard": 17, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 878, "http://xbrl.sec.gov/dei/2023": 30 }, "contextCount": 305, "dts": { "calculationLink": { "local": [ "nvee-20230701_cal.xml" ] }, "definitionLink": { "local": [ "nvee-20230701_def.xml" ] }, "inline": { "local": [ "nvee-20230701.htm" ] }, "labelLink": { "local": [ "nvee-20230701_lab.xml" ] }, "presentationLink": { "local": [ "nvee-20230701_pre.xml" ] }, "schema": { "local": [ "nvee-20230701.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" ] } }, "elementCount": 409, "entityCount": 1, "hidden": { "http://fasb.org/us-gaap/2023": 1, "http://xbrl.sec.gov/dei/2023": 5, "total": 6 }, "keyCustom": 24, "keyStandard": 237, "memberCustom": 21, "memberStandard": 25, "nsprefix": "nvee", "nsuri": "http://www.nv5.com/20230701", "report": { "R1": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "document", "isDefault": "true", "longName": "0000001 - Document - Cover", "menuCat": "Cover", "order": "1", "role": "http://www.nv5.com/role/Cover", "shortName": "Cover", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R10": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000010 - Disclosure - Earnings per Share", "menuCat": "Notes", "order": "10", "role": "http://www.nv5.com/role/EarningsperShare", "shortName": "Earnings per Share", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000011 - Disclosure - Business Acquisitions", "menuCat": "Notes", "order": "11", "role": "http://www.nv5.com/role/BusinessAcquisitions", "shortName": "Business Acquisitions", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000012 - Disclosure - Billed and Unbilled Receivables", "menuCat": "Notes", "order": "12", "role": "http://www.nv5.com/role/BilledandUnbilledReceivables", "shortName": "Billed and Unbilled Receivables", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000013 - Disclosure - Property and Equipment, net", "menuCat": "Notes", "order": "13", "role": "http://www.nv5.com/role/PropertyandEquipmentnet", "shortName": "Property and Equipment, net", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000014 - Disclosure - Goodwill and Intangible Assets", "menuCat": "Notes", "order": "14", "role": "http://www.nv5.com/role/GoodwillandIntangibleAssets", "shortName": "Goodwill and Intangible Assets", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000015 - Disclosure - Accrued Liabilities", "menuCat": "Notes", "order": "15", "role": "http://www.nv5.com/role/AccruedLiabilities", "shortName": "Accrued Liabilities", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000016 - Disclosure - Notes Payable and Other Obligations", "menuCat": "Notes", "order": "16", "role": "http://www.nv5.com/role/NotesPayableandOtherObligations", "shortName": "Notes Payable and Other Obligations", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LossContingencyDisclosures", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000017 - Disclosure - Contingent Consideration", "menuCat": "Notes", "order": "17", "role": "http://www.nv5.com/role/ContingentConsideration", "shortName": "Contingent Consideration", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LossContingencyDisclosures", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000018 - Disclosure - Commitments and Contingencies", "menuCat": "Notes", "order": "18", "role": "http://www.nv5.com/role/CommitmentsandContingencies", "shortName": "Commitments and Contingencies", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000019 - Disclosure - Stock-Based Compensation", "menuCat": "Notes", "order": "19", "role": "http://www.nv5.com/role/StockBasedCompensation", "shortName": "Stock-Based Compensation", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000002 - Statement - CONSOLIDATED BALANCE SHEETS", "menuCat": "Statements", "order": "2", "role": "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "shortName": "CONSOLIDATED BALANCE SHEETS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000020 - Disclosure - Income Taxes", "menuCat": "Notes", "order": "20", "role": "http://www.nv5.com/role/IncomeTaxes", "shortName": "Income Taxes", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000021 - Disclosure - Reportable Segments", "menuCat": "Notes", "order": "21", "role": "http://www.nv5.com/role/ReportableSegments", "shortName": "Reportable Segments", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000022 - Disclosure - Stockholders' Equity", "menuCat": "Notes", "order": "22", "role": "http://www.nv5.com/role/StockholdersEquity", "shortName": "Stockholders' Equity", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "nvee:BasisOfPresentationAndPrinciplesOfConsolidationPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954701 - Disclosure - Summary of Significant Accounting Policies (Policies)", "menuCat": "Policies", "order": "23", "role": "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies", "shortName": "Summary of Significant Accounting Policies (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "nvee:BasisOfPresentationAndPrinciplesOfConsolidationPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954702 - Disclosure - Earnings per Share (Tables)", "menuCat": "Tables", "order": "24", "role": "http://www.nv5.com/role/EarningsperShareTables", "shortName": "Earnings per Share (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954703 - Disclosure - Business Acquisitions (Tables)", "menuCat": "Tables", "order": "25", "role": "http://www.nv5.com/role/BusinessAcquisitionsTables", "shortName": "Business Acquisitions (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954704 - Disclosure - Billed and Unbilled Receivables (Tables)", "menuCat": "Tables", "order": "26", "role": "http://www.nv5.com/role/BilledandUnbilledReceivablesTables", "shortName": "Billed and Unbilled Receivables (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954705 - Disclosure - Property and Equipment, net (Tables)", "menuCat": "Tables", "order": "27", "role": "http://www.nv5.com/role/PropertyandEquipmentnetTables", "shortName": "Property and Equipment, net (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954706 - Disclosure - Goodwill and Intangible Assets (Tables)", "menuCat": "Tables", "order": "28", "role": "http://www.nv5.com/role/GoodwillandIntangibleAssetsTables", "shortName": "Goodwill and Intangible Assets (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954707 - Disclosure - Accrued Liabilities (Tables)", "menuCat": "Tables", "order": "29", "role": "http://www.nv5.com/role/AccruedLiabilitiesTables", "shortName": "Accrued Liabilities (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R3": { "firstAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000003 - Statement - CONSOLIDATED BALANCE SHEETS (Parentheticals)", "menuCat": "Statements", "order": "3", "role": "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals", "shortName": "CONSOLIDATED BALANCE SHEETS (Parentheticals)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" } }, "R30": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954708 - Disclosure - Notes Payable and Other Obligations (Tables)", "menuCat": "Tables", "order": "30", "role": "http://www.nv5.com/role/NotesPayableandOtherObligationsTables", "shortName": "Notes Payable and Other Obligations (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionContingentConsiderationTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954709 - Disclosure - Contingent Consideration (Tables)", "menuCat": "Tables", "order": "31", "role": "http://www.nv5.com/role/ContingentConsiderationTables", "shortName": "Contingent Consideration (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionContingentConsiderationTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954710 - Disclosure - Stock-Based Compensation (Tables)", "menuCat": "Tables", "order": "32", "role": "http://www.nv5.com/role/StockBasedCompensationTables", "shortName": "Stock-Based Compensation (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954711 - Disclosure - Reportable Segments (Tables)", "menuCat": "Tables", "order": "33", "role": "http://www.nv5.com/role/ReportableSegmentsTables", "shortName": "Reportable Segments (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954712 - Disclosure - Stockholders' Equity (Tables)", "menuCat": "Tables", "order": "34", "role": "http://www.nv5.com/role/StockholdersEquityTables", "shortName": "Stockholders' Equity (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "span", "div", "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954713 - Disclosure - Summary of Significant Accounting Policies - Revenue Recognition (Details)", "menuCat": "Details", "order": "35", "role": "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails", "shortName": "Summary of Significant Accounting Policies - Revenue Recognition (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954714 - Disclosure - Summary of Significant Accounting Policies - Contract Balances (Details)", "menuCat": "Details", "order": "36", "role": "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesContractBalancesDetails", "shortName": "Summary of Significant Accounting Policies - Contract Balances (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "0", "first": true, "lang": "en-US", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954715 - Disclosure - Earnings per Share - Narrative (Details)", "menuCat": "Details", "order": "37", "role": "http://www.nv5.com/role/EarningsperShareNarrativeDetails", "shortName": "Earnings per Share - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "0", "first": true, "lang": "en-US", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "us-gaap:NetIncomeLossAvailableToCommonStockholdersDiluted", "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954716 - Disclosure - Earnings per Share - Schedule of Earnings Per Share, Basic and Diluted (Details)", "menuCat": "Details", "order": "38", "role": "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails", "shortName": "Earnings per Share - Schedule of Earnings Per Share, Basic and Diluted (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "us-gaap:NetIncomeLossAvailableToCommonStockholdersDiluted", "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R39": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954717 - Disclosure - Business Acquisitions - Narrative (Details)", "menuCat": "Details", "order": "39", "role": "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "shortName": "Business Acquisitions - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-56", "decimals": "-3", "lang": "en-US", "name": "us-gaap:PaymentsToAcquireBusinessesGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000004 - Statement - CONSOLIDATED STATEMENTS OF NET INCOME AND COMPREHENSIVE INCOME", "menuCat": "Statements", "order": "4", "role": "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME", "shortName": "CONSOLIDATED STATEMENTS OF NET INCOME AND COMPREHENSIVE INCOME", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "-3", "lang": "en-US", "name": "us-gaap:CostDirectLabor", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-64", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954718 - Disclosure - Business Acquisitions - Summary of the Fair Values of Assets Acquired and Liabilities Assumed (Details)", "menuCat": "Details", "order": "40", "role": "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "shortName": "Business Acquisitions - Summary of the Fair Values of Assets Acquired and Liabilities Assumed (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-64", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954719 - Disclosure - Business Acquisitions - Results of Operations From any Business Acquired (Details)", "menuCat": "Details", "order": "41", "role": "http://www.nv5.com/role/BusinessAcquisitionsResultsofOperationsFromanyBusinessAcquiredDetails", "shortName": "Business Acquisitions - Results of Operations From any Business Acquired (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R42": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:BusinessAcquisitionsProFormaRevenue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954720 - Disclosure - Business Acquisitions - Pro Forma Consolidated Results of Operations (Details)", "menuCat": "Details", "order": "42", "role": "http://www.nv5.com/role/BusinessAcquisitionsProFormaConsolidatedResultsofOperationsDetails", "shortName": "Business Acquisitions - Pro Forma Consolidated Results of Operations (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:BusinessAcquisitionsProFormaRevenue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954721 - Disclosure - Billed and Unbilled Receivables (Details)", "menuCat": "Details", "order": "43", "role": "http://www.nv5.com/role/BilledandUnbilledReceivablesDetails", "shortName": "Billed and Unbilled Receivables (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R44": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:PropertyPlantAndEquipmentTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954722 - Disclosure - Property and Equipment, net (Details)", "menuCat": "Details", "order": "44", "role": "http://www.nv5.com/role/PropertyandEquipmentnetDetails", "shortName": "Property and Equipment, net (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:PropertyPlantAndEquipmentTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R45": { "firstAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:Depreciation", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954723 - Disclosure - Property and Equipment, net - Narrative (Details)", "menuCat": "Details", "order": "45", "role": "http://www.nv5.com/role/PropertyandEquipmentnetNarrativeDetails", "shortName": "Property and Equipment, net - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:Depreciation", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfGoodwillTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-4", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954724 - Disclosure - Goodwill and Intangible Assets - Schedule of Goodwill (Details)", "menuCat": "Details", "order": "46", "role": "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails", "shortName": "Goodwill and Intangible Assets - Schedule of Goodwill (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfGoodwillTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": "-3", "lang": "en-US", "name": "us-gaap:GoodwillAcquiredDuringPeriod", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954725 - Disclosure - Goodwill and Intangible Assets - Narrative (Details)", "menuCat": "Details", "order": "47", "role": "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails", "shortName": "Goodwill and Intangible Assets - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-137", "decimals": null, "lang": "en-US", "name": "us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954726 - Disclosure - Goodwill and Intangible Assets - Schedule of Finite-Lived Intangible Assets (Details)", "menuCat": "Details", "order": "48", "role": "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails", "shortName": "Goodwill and Intangible Assets - Schedule of Finite-Lived Intangible Assets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R49": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeaseLiabilityCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954727 - Disclosure - Accrued Liabilities (Details)", "menuCat": "Details", "order": "49", "role": "http://www.nv5.com/role/AccruedLiabilitiesDetails", "shortName": "Accrued Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeaseLiabilityCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R5": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-35", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:SharesOutstanding", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000005 - Statement - CONSOLIDATED STATEMENTS OF CHANGES IN STOCKHOLDERS\u2019 EQUITY", "menuCat": "Statements", "order": "5", "role": "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY", "shortName": "CONSOLIDATED STATEMENTS OF CHANGES IN STOCKHOLDERS\u2019 EQUITY", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-35", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:SharesOutstanding", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R50": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FinanceLeaseLiability", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954728 - Disclosure - Notes Payable and Other Obligations - Summary of Notes Payable and Other Obligations (Details)", "menuCat": "Details", "order": "50", "role": "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails", "shortName": "Notes Payable and Other Obligations - Summary of Notes Payable and Other Obligations (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FinanceLeaseLiability", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R51": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "nvee:DebtCovenantLiquidityAvailability", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954729 - Disclosure - Notes Payable and Other Obligations - Narrative (Details)", "menuCat": "Details", "order": "51", "role": "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails", "shortName": "Notes Payable and Other Obligations - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-4", "decimals": "-3", "lang": "en-US", "name": "us-gaap:OtherCommitment", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R52": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionContingentConsiderationTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-4", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationContingentConsiderationLiability", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954730 - Disclosure - Contingent Consideration (Details)", "menuCat": "Details", "order": "52", "role": "http://www.nv5.com/role/ContingentConsiderationDetails", "shortName": "Contingent Consideration (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionContingentConsiderationTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": "-3", "lang": "en-US", "name": "nvee:BusinessCombinationContingentConsiderationLiabilityAdditionsForAcquisitions", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R53": { "firstAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-169", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954731 - Disclosure - Stock-Based Compensation - Narrative (Details)", "menuCat": "Details", "order": "53", "role": "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails", "shortName": "Stock-Based Compensation - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-169", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R54": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-166", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954732 - Disclosure - Stock-Based Compensation - Restricted Stock Awards (Details)", "menuCat": "Details", "order": "54", "role": "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails", "shortName": "Stock-Based Compensation - Restricted Stock Awards (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-166", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R55": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:DeferredIncomeTaxLiabilitiesNet", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954733 - Disclosure - Income Taxes (Details)", "menuCat": "Details", "order": "55", "role": "http://www.nv5.com/role/IncomeTaxesDetails", "shortName": "Income Taxes (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "3", "lang": "en-US", "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R56": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:NumberOfReportableSegments", "reportCount": 1, "unique": true, "unitRef": "segment", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954734 - Disclosure - Reportable Segments - Narrative (Details)", "menuCat": "Details", "order": "56", "role": "http://www.nv5.com/role/ReportableSegmentsNarrativeDetails", "shortName": "Reportable Segments - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:NumberOfReportableSegments", "reportCount": 1, "unique": true, "unitRef": "segment", "xsiNil": "false" } }, "R57": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954735 - Disclosure - Reportable Segments - Summarized Financial Information (Details)", "menuCat": "Details", "order": "57", "role": "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails", "shortName": "Reportable Segments - Summarized Financial Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-191", "decimals": "-3", "lang": "en-US", "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R58": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954736 - Disclosure - Reportable Segments - Revenue From Contracts With Customers by Geographic Location (Details)", "menuCat": "Details", "order": "58", "role": "http://www.nv5.com/role/ReportableSegmentsRevenueFromContractsWithCustomersbyGeographicLocationDetails", "shortName": "Reportable Segments - Revenue From Contracts With Customers by Geographic Location (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-202", "decimals": "-3", "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R59": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954737 - Disclosure - Reportable Segments - Revenue by Customer Type (Details)", "menuCat": "Details", "order": "59", "role": "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "shortName": "Reportable Segments - Revenue by Customer Type (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-243", "decimals": "-3", "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000006 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS", "menuCat": "Statements", "order": "6", "role": "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS", "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": "-3", "lang": "en-US", "name": "us-gaap:DepreciationDepletionAndAmortization", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R60": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-5", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954738 - Disclosure - Reportable Segments - Revenue by Contract Type (Details)", "menuCat": "Details", "order": "60", "role": "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails", "shortName": "Reportable Segments - Revenue by Contract Type (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-275", "decimals": "-3", "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R61": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-26", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquity", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954739 - Disclosure - Stockholders' Equity - Schedule of Accumulated Other Comprehensive Income (Loss) (Details)", "menuCat": "Details", "order": "61", "role": "http://www.nv5.com/role/StockholdersEquityScheduleofAccumulatedOtherComprehensiveIncomeLossDetails", "shortName": "Stockholders' Equity - Schedule of Accumulated Other Comprehensive Income (Loss) (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-304", "decimals": "-3", "lang": "en-US", "name": "us-gaap:StockholdersEquity", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R7": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000007 - Disclosure - Organization and Nature of Business Operations", "menuCat": "Notes", "order": "7", "role": "http://www.nv5.com/role/OrganizationandNatureofBusinessOperations", "shortName": "Organization and Nature of Business Operations", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R8": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000008 - Disclosure - Summary of Significant Accounting Policies", "menuCat": "Notes", "order": "8", "role": "http://www.nv5.com/role/SummaryofSignificantAccountingPolicies", "shortName": "Summary of Significant Accounting Policies", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000009 - Disclosure - Recent Accounting Pronouncements", "menuCat": "Notes", "order": "9", "role": "http://www.nv5.com/role/RecentAccountingPronouncements", "shortName": "Recent Accounting Pronouncements", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "span", "div", "body", "html" ], "baseRef": "nvee-20230701.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } } }, "segmentCount": 47, "tag": { "country_US": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "UNITED STATES", "terseLabel": "United States" } } }, "localname": "US", "nsuri": "http://xbrl.sec.gov/country/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenueFromContractsWithCustomersbyGeographicLocationDetails" ], "xbrltype": "domainItemType" }, "dei_AmendmentFlag": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.", "label": "Amendment Flag", "terseLabel": "Amendment Flag" } } }, "localname": "AmendmentFlag", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_CityAreaCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Area code of city", "label": "City Area Code", "terseLabel": "City Area Code" } } }, "localname": "CityAreaCode", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_CoverAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Cover page.", "label": "Cover [Abstract]", "terseLabel": "Cover [Abstract]" } } }, "localname": "CoverAbstract", "nsuri": "http://xbrl.sec.gov/dei/2023", "xbrltype": "stringItemType" }, "dei_CurrentFiscalYearEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "End date of current fiscal year in the format --MM-DD.", "label": "Current Fiscal Year End Date", "terseLabel": "Current Fiscal Year End Date" } } }, "localname": "CurrentFiscalYearEndDate", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "gMonthDayItemType" }, "dei_DocumentFiscalPeriodFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.", "label": "Document Fiscal Period Focus", "terseLabel": "Document Fiscal Period Focus" } } }, "localname": "DocumentFiscalPeriodFocus", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "fiscalPeriodItemType" }, "dei_DocumentFiscalYearFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.", "label": "Document Fiscal Year Focus", "terseLabel": "Document Fiscal Year Focus" } } }, "localname": "DocumentFiscalYearFocus", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "gYearItemType" }, "dei_DocumentPeriodEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.", "label": "Document Period End Date", "terseLabel": "Document Period End Date" } } }, "localname": "DocumentPeriodEndDate", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "dateItemType" }, "dei_DocumentQuarterlyReport": { "auth_ref": [ "r658" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as an quarterly report.", "label": "Document Quarterly Report", "terseLabel": "Document Quarterly Report" } } }, "localname": "DocumentQuarterlyReport", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r659" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as a transition report.", "label": "Document Transition Report", "terseLabel": "Document Transition Report" } } }, "localname": "DocumentTransitionReport", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_DocumentType": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.", "label": "Document Type", "terseLabel": "Document Type" } } }, "localname": "DocumentType", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "submissionTypeItemType" }, "dei_EntityAddressAddressLine1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 1 such as Attn, Building Name, Street Name", "label": "Entity Address, Address Line One", "terseLabel": "Entity Address, Address Line One" } } }, "localname": "EntityAddressAddressLine1", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressAddressLine2": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 2 such as Street or Suite number", "label": "Entity Address, Address Line Two", "terseLabel": "Entity Address, Address Line Two" } } }, "localname": "EntityAddressAddressLine2", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressCityOrTown": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the City or Town", "label": "Entity Address, City or Town", "terseLabel": "Entity Address, City or Town" } } }, "localname": "EntityAddressCityOrTown", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressPostalZipCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Code for the postal or zip code", "label": "Entity Address, Postal Zip Code", "terseLabel": "Entity Address, Postal Zip Code" } } }, "localname": "EntityAddressPostalZipCode", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressStateOrProvince": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the state or province.", "label": "Entity Address, State or Province", "terseLabel": "Entity Address, State or Province" } } }, "localname": "EntityAddressStateOrProvince", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "stateOrProvinceItemType" }, "dei_EntityCentralIndexKey": { "auth_ref": [ "r656" ], "lang": { "en-us": { "role": { "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.", "label": "Entity Central Index Key", "terseLabel": "Entity Central Index Key" } } }, "localname": "EntityCentralIndexKey", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "centralIndexKeyItemType" }, "dei_EntityCommonStockSharesOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.", "label": "Entity Common Stock, Shares Outstanding", "terseLabel": "Entity Common Stock, Shares Outstanding" } } }, "localname": "EntityCommonStockSharesOutstanding", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "sharesItemType" }, "dei_EntityCurrentReportingStatus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Current Reporting Status", "terseLabel": "Entity Current Reporting Status" } } }, "localname": "EntityCurrentReportingStatus", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "yesNoItemType" }, "dei_EntityEmergingGrowthCompany": { "auth_ref": [ "r656" ], "lang": { "en-us": { "role": { "documentation": "Indicate if registrant meets the emerging growth company criteria.", "label": "Entity Emerging Growth Company", "terseLabel": "Entity Emerging Growth Company" } } }, "localname": "EntityEmergingGrowthCompany", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntityFileNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.", "label": "Entity File Number", "terseLabel": "Entity File Number" } } }, "localname": "EntityFileNumber", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "fileNumberItemType" }, "dei_EntityFilerCategory": { "auth_ref": [ "r656" ], "lang": { "en-us": { "role": { "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Filer Category", "terseLabel": "Entity Filer Category" } } }, "localname": "EntityFilerCategory", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "filerCategoryItemType" }, "dei_EntityIncorporationStateCountryCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Two-character EDGAR code representing the state or country of incorporation.", "label": "Entity Incorporation, State or Country Code", "terseLabel": "Entity Incorporation, State or Country Code" } } }, "localname": "EntityIncorporationStateCountryCode", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "edgarStateCountryItemType" }, "dei_EntityInteractiveDataCurrent": { "auth_ref": [ "r660" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).", "label": "Entity Interactive Data Current", "terseLabel": "Entity Interactive Data Current" } } }, "localname": "EntityInteractiveDataCurrent", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "yesNoItemType" }, "dei_EntityRegistrantName": { "auth_ref": [ "r656" ], "lang": { "en-us": { "role": { "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.", "label": "Entity Registrant Name", "terseLabel": "Entity Registrant Name" } } }, "localname": "EntityRegistrantName", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityShellCompany": { "auth_ref": [ "r656" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.", "label": "Entity Shell Company", "terseLabel": "Entity Shell Company" } } }, "localname": "EntityShellCompany", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntitySmallBusiness": { "auth_ref": [ "r656" ], "lang": { "en-us": { "role": { "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).", "label": "Entity Small Business", "terseLabel": "Entity Small Business" } } }, "localname": "EntitySmallBusiness", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntityTaxIdentificationNumber": { "auth_ref": [ "r656" ], "lang": { "en-us": { "role": { "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.", "label": "Entity Tax Identification Number", "terseLabel": "Entity Tax Identification Number" } } }, "localname": "EntityTaxIdentificationNumber", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "employerIdItemType" }, "dei_LocalPhoneNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Local phone number for entity.", "label": "Local Phone Number", "terseLabel": "Local Phone Number" } } }, "localname": "LocalPhoneNumber", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_Security12bTitle": { "auth_ref": [ "r655" ], "lang": { "en-us": { "role": { "documentation": "Title of a 12(b) registered security.", "label": "Title of 12(b) Security", "terseLabel": "Title of 12(b) Security" } } }, "localname": "Security12bTitle", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "securityTitleItemType" }, "dei_SecurityExchangeName": { "auth_ref": [ "r657" ], "lang": { "en-us": { "role": { "documentation": "Name of the Exchange on which a security is registered.", "label": "Security Exchange Name", "terseLabel": "Security Exchange Name" } } }, "localname": "SecurityExchangeName", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "edgarExchangeCodeItemType" }, "dei_TradingSymbol": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Trading symbol of an instrument as listed on an exchange.", "label": "Trading Symbol", "terseLabel": "Trading Symbol" } } }, "localname": "TradingSymbol", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.nv5.com/role/Cover" ], "xbrltype": "tradingSymbolItemType" }, "nvee_APICShareBasedPaymentArrangementReclassificationsIncreaseForCostRecognition": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "APIC, Share-Based Payment Arrangement, Reclassifications, Increase for Cost Recognition", "label": "APIC, Share-Based Payment Arrangement, Reclassifications, Increase for Cost Recognition", "terseLabel": "Reclassification of liability-classified awards to equity-classified awards" } } }, "localname": "APICShareBasedPaymentArrangementReclassificationsIncreaseForCostRecognition", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS", "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "xbrltype": "monetaryItemType" }, "nvee_ARCreditAgreementMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "AR Credit Agreement [Member]", "label": "AR Credit Agreement [Member]", "terseLabel": "AR Credit Agreement" } } }, "localname": "ARCreditAgreementMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "xbrltype": "domainItemType" }, "nvee_AccruedOperatingExpenses": { "auth_ref": [], "calculation": { "http://www.nv5.com/role/AccruedLiabilitiesDetails": { "order": 6.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accrued Operating Expenses", "label": "Accrued Operating Expenses", "terseLabel": "Accrued operating expenses" } } }, "localname": "AccruedOperatingExpenses", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/AccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "nvee_AximGeospatialLLCMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Axim Geospatial, LLC", "label": "Axim Geospatial, LLC [Member]", "terseLabel": "Axim" } } }, "localname": "AximGeospatialLLCMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "domainItemType" }, "nvee_BTSMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the operating and reportable segment Buildings, Energy & Science (BES), which includes energy and environmental practices as well as buildings program management.", "label": "BTS [Member]", "terseLabel": "BTS" } } }, "localname": "BTSMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails", "http://www.nv5.com/role/ReportableSegmentsRevenueFromContractsWithCustomersbyGeographicLocationDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "xbrltype": "domainItemType" }, "nvee_BasisOfPresentationAndPrinciplesOfConsolidationPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for the basis of presentation and principles of consolidation for the company.", "label": "Basis of Presentation and Principles of Consolidation [Policy Text Block]", "terseLabel": "Basis of Presentation and Principles of Consolidation" } } }, "localname": "BasisOfPresentationAndPrinciplesOfConsolidationPolicyTextBlock", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "nvee_BusinessCombinationContingentConsiderationLiabilityAdditionsForAcquisitions": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents the additions for acquisitions during the period effecting a change in the contingent consideration liability.", "label": "Business Combination, Contingent Consideration, Liability, Additions For Acquisitions", "terseLabel": "Additions for acquisitions" } } }, "localname": "BusinessCombinationContingentConsiderationLiabilityAdditionsForAcquisitions", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/ContingentConsiderationDetails" ], "xbrltype": "monetaryItemType" }, "nvee_BusinessCombinationContingentConsiderationLiabilityIncreaseDecreaseOfLiabilityRelatedToReMeasurementOfFairValue": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents the amount of increase (reduction) of the contingent consideration liability during the period related to re-measurement of fair value.", "label": "Business Combination, Contingent Consideration, Liability, Increase (Decrease) Of Liability Related To Re-measurement Of Fair Value", "terseLabel": "(Decrease) increase of liability related to re-measurement of fair value" } } }, "localname": "BusinessCombinationContingentConsiderationLiabilityIncreaseDecreaseOfLiabilityRelatedToReMeasurementOfFairValue", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/ContingentConsiderationDetails" ], "xbrltype": "monetaryItemType" }, "nvee_BusinessCombinationContingentConsiderationLiabilityReductionOfLiabilityForPaymentsMade": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the amount of reduction of liability for payments made, effecting a change in the contingent consideration liability during the period.", "label": "Business Combination, Contingent Consideration, Liability, Reduction of Liability for Payments Made", "negatedLabel": "Reduction of liability for payments made" } } }, "localname": "BusinessCombinationContingentConsiderationLiabilityReductionOfLiabilityForPaymentsMade", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/ContingentConsiderationDetails" ], "xbrltype": "monetaryItemType" }, "nvee_BusinessCombinationProFormaInformationIncomeBeforeIncomeTaxesOfAcquireeSinceAcquisitionDateActual": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Business Combination Pro Forma Information Income Before Income Taxes of Acquiree Since Acquisition Date Actual", "terseLabel": "Income before income taxes" } } }, "localname": "BusinessCombinationProFormaInformationIncomeBeforeIncomeTaxesOfAcquireeSinceAcquisitionDateActual", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsResultsofOperationsFromanyBusinessAcquiredDetails" ], "xbrltype": "monetaryItemType" }, "nvee_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPrepaidExpenses": { "auth_ref": [], "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 2.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, acquired at the acquisition date.", "label": "Prepaid expenses", "terseLabel": "Prepaid expenses" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPrepaidExpenses", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "nvee_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRightOfUseAssets": { "auth_ref": [], "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 6.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Business Combination, Recognized Identifiable Assets Acquired And Liabilities Assumed, Right-Of-Use Assets", "label": "Business Combination, Recognized Identifiable Assets Acquired And Liabilities Assumed, Right-Of-Use Assets", "terseLabel": "Right-of-use assets" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedRightOfUseAssets", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "nvee_CommitmentsandContingenciesDisclosureRollForward": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Commitments and Contingencies Disclosure [Roll Forward]", "label": "Commitments and Contingencies Disclosure [Roll Forward]", "terseLabel": "Commitments and Contingencies Disclosure [Roll Forward]" } } }, "localname": "CommitmentsandContingenciesDisclosureRollForward", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/ContingentConsiderationDetails" ], "xbrltype": "stringItemType" }, "nvee_ConsiderationTransferredCashNotesAndCommonStock": { "auth_ref": [], "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 1.0, "parentTag": "us-gaap_BusinessCombinationConsiderationTransferred1", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "This item represents cash and common stock transferred plus the liabilities assumed on the sale date.", "label": "Consideration paid (Cash, Notes and/or stock)", "terseLabel": "Consideration paid (Cash, Notes and/or stock)" } } }, "localname": "ConsiderationTransferredCashNotesAndCommonStock", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "nvee_ContingentConsiderationEarnOutNonCash": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Contingent Consideration Earn-out, Non-cash", "label": "Contingent Consideration Earn-out, Non-cash", "terseLabel": "Contingent consideration (earn-out)" } } }, "localname": "ContingentConsiderationEarnOutNonCash", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "nvee_CostReimbursableContractsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Contract with customer in which amount of contract may be cost-reimbursable.", "label": "Cost-reimbursable Contracts [Member]", "terseLabel": "Cost-reimbursable contracts" } } }, "localname": "CostReimbursableContractsMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails" ], "xbrltype": "domainItemType" }, "nvee_DebtCovenantLiquidityAvailability": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Debt Covenant, Liquidity Availability", "label": "Debt Covenant, Liquidity Availability", "terseLabel": "Debt covenant, liquidity availability" } } }, "localname": "DebtCovenantLiquidityAvailability", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "nvee_DenominatorAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Denominator [Abstract]", "label": "Denominator [Abstract]", "terseLabel": "Denominator:" } } }, "localname": "DenominatorAbstract", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "stringItemType" }, "nvee_DevelopedTechnologyMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Developed Technology [Member]", "label": "Developed Technology [Member]", "terseLabel": "Developed technology" } } }, "localname": "DevelopedTechnologyMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "nvee_EquityPlan2011Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the 2011 equity incentive plan.", "label": "Equity Plan 2011 [Member]", "terseLabel": "Equity Plan 2011" } } }, "localname": "EquityPlan2011Member", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "nvee_GEOMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "GEO [Member]", "label": "GEO [Member]", "terseLabel": "GEO" } } }, "localname": "GEOMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails", "http://www.nv5.com/role/ReportableSegmentsRevenueFromContractsWithCustomersbyGeographicLocationDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "xbrltype": "domainItemType" }, "nvee_INFMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the operating and reportable segment Infrastructure (INF), which includes engineering, civil program management, and construction quality assurance practices.", "label": "INF [Member]", "terseLabel": "INF" } } }, "localname": "INFMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails", "http://www.nv5.com/role/ReportableSegmentsRevenueFromContractsWithCustomersbyGeographicLocationDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "xbrltype": "domainItemType" }, "nvee_IncreaseDecreaseInAccruedLiabilitiesAndOtherLongTermLiabilities": { "auth_ref": [], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 16.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Increase (Decrease) in Accrued Liabilities And Other Long-Term Liabilities", "label": "Increase (Decrease) in Accrued Liabilities And Other Long-Term Liabilities", "terseLabel": "Accrued liabilities and other long-term liabilities" } } }, "localname": "IncreaseDecreaseInAccruedLiabilitiesAndOtherLongTermLiabilities", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "nvee_IncreaseDecreaseInContingentConsiderationLiability": { "auth_ref": [], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 17.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Increase (Decrease) In Contingent Consideration Liability", "label": "Increase (Decrease) In Contingent Consideration Liability", "terseLabel": "Contingent consideration" } } }, "localname": "IncreaseDecreaseInContingentConsiderationLiability", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "nvee_IncreaseDecreaseInContractWithCustomerFromUnbilledReceivables": { "auth_ref": [], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Increase Decrease in Contract With Customer From Unbilled Receivables", "negatedLabel": "Unbilled receivables" } } }, "localname": "IncreaseDecreaseInContractWithCustomerFromUnbilledReceivables", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "nvee_LiabilityBasedAwardsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Liability Based Awards", "label": "Liability Based Awards [Member]", "terseLabel": "Liability Based Awards" } } }, "localname": "LiabilityBasedAwardsMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "nvee_LineOfCreditFacilityAvailableIncreaseInBorrowingCapacity": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Line of Credit Facility, Available Increase in Borrowing Capacity", "label": "Line of Credit Facility, Available Increase in Borrowing Capacity", "terseLabel": "Available increase in borrowing capacity" } } }, "localname": "LineOfCreditFacilityAvailableIncreaseInBorrowingCapacity", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "nvee_LineOfCreditFacilityCovenantMinimumFixedChargeCoverageRatio": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The Minimum level of fixed charge coverage ratio under the line of credit facility.", "label": "Line of Credit Facility, Covenant, Minimum Fixed Charge Coverage Ratio", "terseLabel": "Minimum fixed charge coverage ratio" } } }, "localname": "LineOfCreditFacilityCovenantMinimumFixedChargeCoverageRatio", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "xbrltype": "pureItemType" }, "nvee_LineOfCreditFacilityCovenantNetLeverageRatio": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line of Credit Facility, Covenant, Net Leverage Ratio", "label": "Line of Credit Facility, Covenant, Net Leverage Ratio", "terseLabel": "Covenant, net leverage ratio" } } }, "localname": "LineOfCreditFacilityCovenantNetLeverageRatio", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "xbrltype": "pureItemType" }, "nvee_NetChangeInOperatingLeases": { "auth_ref": [], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 13.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of net increase (decrease) in right-of-use assets and operating lease liabilities during the period.", "label": "Non-cash lease expense", "terseLabel": "Non-cash lease expense" } } }, "localname": "NetChangeInOperatingLeases", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "nvee_NumeratorAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Numerator [Abstract]", "label": "Numerator [Abstract]", "terseLabel": "Numerator:" } } }, "localname": "NumeratorAbstract", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "stringItemType" }, "nvee_OtherAcquisitionMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Other Acquisition", "label": "Other Acquisition [Member]", "terseLabel": "Other" } } }, "localname": "OtherAcquisitionMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "domainItemType" }, "nvee_OtherDirectCosts": { "auth_ref": [], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": 3.0, "parentTag": "us-gaap_DirectOperatingCosts", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Other cost of labor directly related to good produced and service rendered.", "label": "Other Direct Costs", "terseLabel": "Other direct costs" } } }, "localname": "OtherDirectCosts", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "nvee_OtherDirectCostsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Other Direct Costs [Member]", "label": "Other Direct Costs [Member]", "terseLabel": "Other Direct Costs" } } }, "localname": "OtherDirectCostsMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetNarrativeDetails" ], "xbrltype": "domainItemType" }, "nvee_PayrollAndRelatedTaxes": { "auth_ref": [], "calculation": { "http://www.nv5.com/role/AccruedLiabilitiesDetails": { "order": 3.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for 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).", "label": "Payroll and Related Taxes", "terseLabel": "Payroll and related taxes" } } }, "localname": "PayrollAndRelatedTaxes", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/AccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "nvee_PeriodOneMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Period One [Member]", "label": "Period One [Member]", "terseLabel": "Period One" } } }, "localname": "PeriodOneMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "xbrltype": "domainItemType" }, "nvee_PeriodTwoMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Period Two [Member]", "label": "Period Two [Member]", "terseLabel": "Period Two" } } }, "localname": "PeriodTwoMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "xbrltype": "domainItemType" }, "nvee_PrivateSectorMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information related to the private sector.", "label": "Private Sector [Member]", "terseLabel": "Private sector" } } }, "localname": "PrivateSectorMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails" ], "xbrltype": "domainItemType" }, "nvee_PublicAndQuasiPublicSectorMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information related to the public and quasi public sector.", "label": "Public and Quasi-public Sector [Member]", "terseLabel": "Public and quasi-public sector" } } }, "localname": "PublicAndQuasiPublicSectorMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails" ], "xbrltype": "domainItemType" }, "nvee_RevenueRemainingPerformanceObligationSatisfactionPeriodAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Revenue, Remaining Performance Obligation, Satisfaction Period [Axis]", "label": "Revenue, Remaining Performance Obligation, Satisfaction Period [Axis]", "terseLabel": "Revenue, Remaining Performance Obligation, Satisfaction Period [Axis]" } } }, "localname": "RevenueRemainingPerformanceObligationSatisfactionPeriodAxis", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "xbrltype": "stringItemType" }, "nvee_RevenueRemainingPerformanceObligationSatisfactionPeriodDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Revenue, Remaining Performance Obligation, Satisfaction Period [Domain]", "label": "Revenue, Remaining Performance Obligation, Satisfaction Period [Domain]", "terseLabel": "Revenue, Remaining Performance Obligation, Satisfaction Period [Domain]" } } }, "localname": "RevenueRemainingPerformanceObligationSatisfactionPeriodDomain", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "xbrltype": "domainItemType" }, "nvee_SalariesAndWagesPayrollTaxesAndBenefits": { "auth_ref": [], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": 1.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Labor and Related Expense Excluding Stock Based Compensation", "label": "Salaries and Wages, Payroll Taxes and Benefits", "terseLabel": "Salaries and wages, payroll taxes, and benefits" } } }, "localname": "SalariesAndWagesPayrollTaxesAndBenefits", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "nvee_SecondARCreditAgreementMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Second A&R Credit Agreement", "label": "Second A&R Credit Agreement [Member]", "terseLabel": "Second A&R Credit Agreement" } } }, "localname": "SecondARCreditAgreementMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "xbrltype": "domainItemType" }, "nvee_SeniorCreditFacilityMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the senior credit facility debt instrument.", "label": "Senior Credit Facility [Member]", "terseLabel": "Senior credit facility", "verboseLabel": "Senior Credit Facility" } } }, "localname": "SeniorCreditFacilityMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails" ], "xbrltype": "domainItemType" }, "nvee_SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsNonvestedWeightedAverageGrantDateFairValueRollForwardRollForward": { "auth_ref": [], "lang": { "en-us": { "role": { "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]", "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]", "verboseLabel": "Weighted Average Grant Date Fair Value" } } }, "localname": "SharebasedCompensationArrangementbySharebasedPaymentAwardEquityInstrumentsOtherthanOptionsNonvestedWeightedAverageGrantDateFairValueRollForwardRollForward", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "xbrltype": "stringItemType" }, "nvee_StockIssuedDuringPeriodValueAcquisitionsNetOfIssuanceCosts": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Stock Issued During Period, Value, Acquisitions, Net Of Issuance Costs", "label": "Stock Issued During Period, Value, Acquisitions, Net Of Issuance Costs", "terseLabel": "Stock issuance for acquisitions" } } }, "localname": "StockIssuedDuringPeriodValueAcquisitionsNetOfIssuanceCosts", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "xbrltype": "monetaryItemType" }, "nvee_StockPayableMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the stock payable.", "label": "Stock Payable [Member]", "terseLabel": "Other obligations" } } }, "localname": "StockPayableMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails" ], "xbrltype": "domainItemType" }, "nvee_SubConsultantServices": { "auth_ref": [], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": 2.0, "parentTag": "us-gaap_DirectOperatingCosts", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The cost of sub-consultant services.", "label": "Sub-consultant Services", "terseLabel": "Sub-consultant services" } } }, "localname": "SubConsultantServices", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "nvee_SurveyAndFieldEquipmentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the property and equipment that are classified as survey and field equipment.", "label": "Survey and Field Equipment [Member]", "terseLabel": "Survey and field equipment" } } }, "localname": "SurveyAndFieldEquipmentMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "nvee_UncollateralizedPromissoryNoteMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A written promise to pay a note to a third party with no attached collateral.", "label": "Uncollateralized Promissory Note [Member]", "terseLabel": "Uncollateralized Promissory Notes", "verboseLabel": "Uncollateralized promissory notes" } } }, "localname": "UncollateralizedPromissoryNoteMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails" ], "xbrltype": "domainItemType" }, "nvee_VisualInformationSolutionsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Visual Information Solutions", "label": "Visual Information Solutions [Member]", "terseLabel": "VIS" } } }, "localname": "VisualInformationSolutionsMember", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "domainItemType" }, "nvee_WeightedAverageCommonSharesOutstandingAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Weighted Average Common Shares Outstanding [Abstract]", "label": "Weighted Average Common Shares Outstanding [Abstract]", "terseLabel": "Weighted average common shares outstanding:" } } }, "localname": "WeightedAverageCommonSharesOutstandingAbstract", "nsuri": "http://www.nv5.com/20230701", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "stringItemType" }, "srt_ConsolidationItemsAxis": { "auth_ref": [ "r180", "r236", "r247", "r248", "r249", "r250", "r251", "r253", "r257", "r307", "r308", "r309", "r310", "r312", "r313", "r315", "r317", "r318", "r702", "r703" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Axis]", "terseLabel": "Consolidation Items [Axis]" } } }, "localname": "ConsolidationItemsAxis", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "xbrltype": "stringItemType" }, "srt_ConsolidationItemsDomain": { "auth_ref": [ "r180", "r236", "r247", "r248", "r249", "r250", "r251", "r253", "r257", "r307", "r308", "r309", "r310", "r312", "r313", "r315", "r317", "r318", "r702", "r703" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Domain]", "terseLabel": "Consolidation Items [Domain]" } } }, "localname": "ConsolidationItemsDomain", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "xbrltype": "domainItemType" }, "srt_MajorCustomersAxis": { "auth_ref": [ "r263", "r633", "r708", "r750", "r751" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]", "terseLabel": "Customer [Axis]" } } }, "localname": "MajorCustomersAxis", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails" ], "xbrltype": "stringItemType" }, "srt_MaximumMember": { "auth_ref": [ "r300", "r302", "r303", "r304", "r377", "r486", "r523", "r540", "r541", "r594", "r596", "r598", "r599", "r601", "r615", "r616", "r623", "r630", "r640", "r644", "r704", "r742", "r743", "r744", "r745", "r746", "r747" ], "lang": { "en-us": { "role": { "label": "Maximum [Member]", "terseLabel": "Maximum" } } }, "localname": "MaximumMember", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails", "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "srt_MinimumMember": { "auth_ref": [ "r300", "r302", "r303", "r304", "r377", "r486", "r523", "r540", "r541", "r594", "r596", "r598", "r599", "r601", "r615", "r616", "r623", "r630", "r640", "r644", "r704", "r742", "r743", "r744", "r745", "r746", "r747" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]", "terseLabel": "Minimum" } } }, "localname": "MinimumMember", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails", "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "srt_NameOfMajorCustomerDomain": { "auth_ref": [ "r263", "r633", "r708", "r750", "r751" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]", "terseLabel": "Customer [Domain]" } } }, "localname": "NameOfMajorCustomerDomain", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails" ], "xbrltype": "domainItemType" }, "srt_RangeAxis": { "auth_ref": [ "r300", "r302", "r303", "r304", "r376", "r377", "r406", "r407", "r408", "r485", "r486", "r523", "r540", "r541", "r594", "r596", "r598", "r599", "r601", "r615", "r616", "r623", "r630", "r640", "r644", "r647", "r700", "r704", "r743", "r744", "r745", "r746", "r747" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Axis]", "terseLabel": "Statistical Measurement [Axis]" } } }, "localname": "RangeAxis", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails", "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "stringItemType" }, "srt_RangeMember": { "auth_ref": [ "r300", "r302", "r303", "r304", "r376", "r377", "r406", "r407", "r408", "r485", "r486", "r523", "r540", "r541", "r594", "r596", "r598", "r599", "r601", "r615", "r616", "r623", "r630", "r640", "r644", "r647", "r700", "r704", "r743", "r744", "r745", "r746", "r747" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Domain]", "terseLabel": "Statistical Measurement [Domain]" } } }, "localname": "RangeMember", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails", "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "srt_SegmentGeographicalDomain": { "auth_ref": [ "r261", "r262", "r537", "r538", "r539", "r595", "r597", "r600", "r602", "r606", "r607", "r608", "r609", "r610", "r611", "r612", "r613", "r614", "r618", "r632", "r647", "r708", "r750" ], "lang": { "en-us": { "role": { "label": "Geographical [Domain]", "terseLabel": "Geographical [Domain]" } } }, "localname": "SegmentGeographicalDomain", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenueFromContractsWithCustomersbyGeographicLocationDetails" ], "xbrltype": "domainItemType" }, "srt_StatementGeographicalAxis": { "auth_ref": [ "r261", "r262", "r537", "r538", "r539", "r595", "r597", "r600", "r602", "r604", "r606", "r607", "r608", "r609", "r610", "r611", "r612", "r613", "r614", "r618", "r632", "r647", "r708", "r750" ], "lang": { "en-us": { "role": { "label": "Geographical [Axis]", "terseLabel": "Geographical [Axis]" } } }, "localname": "StatementGeographicalAxis", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenueFromContractsWithCustomersbyGeographicLocationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AccountingPoliciesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Accounting Policies [Abstract]", "terseLabel": "Accounting Policies [Abstract]" } } }, "localname": "AccountingPoliciesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": { "auth_ref": [ "r24" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period.", "label": "Accounts Payable and Accrued Liabilities Disclosure [Text Block]", "terseLabel": "Accrued Liabilities" } } }, "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/AccruedLiabilities" ], "xbrltype": "textBlockItemType" }, "us-gaap_AccountsPayableCurrent": { "auth_ref": [ "r23", "r643" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accounts Payable, Current", "terseLabel": "Accounts payable" } } }, "localname": "AccountsPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableGross": { "auth_ref": [ "r156", "r264", "r749" ], "calculation": { "http://www.nv5.com/role/BilledandUnbilledReceivablesDetails": { "order": 1.0, "parentTag": "us-gaap_AccountsReceivableNetCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business.", "label": "Accounts Receivable, before Allowance for Credit Loss", "terseLabel": "Billed receivables" } } }, "localname": "AccountsReceivableGross", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableNetCurrent": { "auth_ref": [ "r264", "r265" ], "calculation": { "http://www.nv5.com/role/BilledandUnbilledReceivablesDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 2.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.", "label": "Accounts Receivable, after Allowance for Credit Loss, Current", "terseLabel": "Billed receivables, net", "totalLabel": "Billed receivables, net" } } }, "localname": "AccountsReceivableNetCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesDetails", "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedEmployeeBenefitsCurrent": { "auth_ref": [ "r27" ], "calculation": { "http://www.nv5.com/role/AccruedLiabilitiesDetails": { "order": 4.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations, 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).", "label": "Accrued Employee Benefits, Current", "terseLabel": "Benefits" } } }, "localname": "AccruedEmployeeBenefitsCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/AccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesCurrent": { "auth_ref": [ "r27" ], "calculation": { "http://www.nv5.com/role/AccruedLiabilitiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued Liabilities, Current", "terseLabel": "Accrued liabilities", "totalLabel": "Total" } } }, "localname": "AccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/AccruedLiabilitiesDetails", "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedVacationCurrent": { "auth_ref": [ "r27", "r61" ], "calculation": { "http://www.nv5.com/role/AccruedLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for 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).", "label": "Accrued Vacation, Current", "terseLabel": "Accrued vacation" } } }, "localname": "AccruedVacationCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/AccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossLineItems": { "auth_ref": [ "r165", "r166", "r469", "r470", "r471", "r472", "r473", "r474" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Accumulated Other Comprehensive Income (Loss) [Line Items]", "terseLabel": "Accumulated Other Comprehensive Income (Loss) [Line Items]" } } }, "localname": "AccumulatedOtherComprehensiveIncomeLossLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockholdersEquityScheduleofAccumulatedOtherComprehensiveIncomeLossDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "auth_ref": [ "r34", "r35", "r93", "r157", "r504", "r528", "r531" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 4.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source.", "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax", "terseLabel": "Accumulated other comprehensive income (loss)" } } }, "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossTable": { "auth_ref": [ "r165", "r166", "r469", "r470", "r471", "r472", "r473", "r474" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about components of accumulated other comprehensive income (loss).", "label": "Accumulated Other Comprehensive Income (Loss) [Table]", "terseLabel": "Accumulated Other Comprehensive Income (Loss) [Table]" } } }, "localname": "AccumulatedOtherComprehensiveIncomeLossTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockholdersEquityScheduleofAccumulatedOtherComprehensiveIncomeLossDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "auth_ref": [ "r7", "r17", "r35", "r450", "r453", "r483", "r524", "r525", "r669", "r670", "r671", "r678", "r679", "r680" ], "lang": { "en-us": { "role": { "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.", "label": "AOCI Attributable to Parent [Member]", "terseLabel": "Accumulated Other Comprehensive Income (Loss)" } } }, "localname": "AccumulatedOtherComprehensiveIncomeMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "xbrltype": "domainItemType" }, "us-gaap_AccumulatedTranslationAdjustmentMember": { "auth_ref": [ "r8", "r17", "r35", "r166", "r167", "r470", "r471", "r472", "r473", "r474", "r669" ], "lang": { "en-us": { "role": { "documentation": "Accumulated other comprehensive income (loss) resulting from 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 the parent.", "label": "Accumulated Foreign Currency Adjustment Attributable to Parent [Member]", "terseLabel": "Accumulated Other Comprehensive Income (Loss)" } } }, "localname": "AccumulatedTranslationAdjustmentMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockholdersEquityScheduleofAccumulatedOtherComprehensiveIncomeLossDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AcquiredFiniteLivedIntangibleAssetsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Acquired Finite-Lived Intangible Assets [Line Items]", "terseLabel": "Acquired Finite-Lived Intangible Assets [Line Items]" } } }, "localname": "AcquiredFiniteLivedIntangibleAssetsLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": { "auth_ref": [ "r112" ], "lang": { "en-us": { "role": { "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.", "label": "Acquired Finite-Lived Intangible Assets, Weighted Average Useful Life", "terseLabel": "Intangible assets, useful life (in years)" } } }, "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails" ], "xbrltype": "durationItemType" }, "us-gaap_AdditionalPaidInCapital": { "auth_ref": [ "r88", "r643", "r753" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 3.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Additional Paid in Capital", "terseLabel": "Additional paid-in capital" } } }, "localname": "AdditionalPaidInCapital", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [ "r415", "r416", "r417", "r535", "r678", "r679", "r680", "r735", "r755" ], "lang": { "en-us": { "role": { "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.", "label": "Additional Paid-in Capital [Member]", "terseLabel": "Additional Paid-In Capital" } } }, "localname": "AdditionalPaidInCapitalMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "xbrltype": "domainItemType" }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "auth_ref": [ "r63", "r64", "r380" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.", "label": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition", "terseLabel": "Stock-based compensation" } } }, "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "Adjustments to reconcile net income to net cash provided by operating activities:" } } }, "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "stringItemType" }, "us-gaap_AllocatedShareBasedCompensationExpense": { "auth_ref": [ "r410", "r418" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.", "label": "Share-Based Payment Arrangement, Expense", "terseLabel": "Deferred compensation" } } }, "localname": "AllocatedShareBasedCompensationExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "auth_ref": [ "r158", "r266", "r272" ], "calculation": { "http://www.nv5.com/role/BilledandUnbilledReceivablesDetails": { "order": 2.0, "parentTag": "us-gaap_AccountsReceivableNetCurrent", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.", "label": "Accounts Receivable, Allowance for Credit Loss, Current", "negatedLabel": "Less: allowance for doubtful accounts" } } }, "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfFinancingCosts": { "auth_ref": [ "r97", "r342", "r476", "r674" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization expense attributable to debt issuance costs.", "label": "Amortization of Debt Issuance Costs", "terseLabel": "Amortization of debt issuance costs" } } }, "localname": "AmortizationOfFinancingCosts", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS", "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfIntangibleAssets": { "auth_ref": [ "r12", "r52", "r57" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.", "label": "Amortization of Intangible Assets", "terseLabel": "Amortization expense" } } }, "localname": "AmortizationOfIntangibleAssets", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "auth_ref": [ "r225" ], "lang": { "en-us": { "role": { "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "terseLabel": "Antidilutive securities (in shares)" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/EarningsperShareNarrativeDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": { "auth_ref": [ "r44" ], "lang": { "en-us": { "role": { "documentation": "Information by type of antidilutive security.", "label": "Antidilutive Securities [Axis]", "terseLabel": "Antidilutive Securities [Axis]" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/EarningsperShareNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]", "terseLabel": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/EarningsperShareNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AntidilutiveSecuritiesNameDomain": { "auth_ref": [ "r44" ], "lang": { "en-us": { "role": { "documentation": "Incremental common shares attributable to securities that were not included in diluted earnings per share (EPS) because to do so would increase EPS amounts or decrease loss per share amounts for the period presented.", "label": "Antidilutive Securities, Name [Domain]", "terseLabel": "Antidilutive Securities, Name [Domain]" } } }, "localname": "AntidilutiveSecuritiesNameDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/EarningsperShareNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_Assets": { "auth_ref": [ "r127", "r155", "r178", "r234", "r249", "r255", "r267", "r307", "r308", "r310", "r311", "r312", "r314", "r316", "r318", "r319", "r445", "r447", "r464", "r498", "r562", "r643", "r654", "r702", "r703", "r740" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets", "totalLabel": "Total assets" } } }, "localname": "Assets", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Assets [Abstract]", "terseLabel": "Assets" } } }, "localname": "AssetsAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r149", "r159", "r178", "r267", "r307", "r308", "r310", "r311", "r312", "r314", "r316", "r318", "r319", "r445", "r447", "r464", "r643", "r702", "r703", "r740" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 3.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets, Current", "totalLabel": "Total current assets" } } }, "localname": "AssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Assets, Current [Abstract]", "terseLabel": "Current assets:" } } }, "localname": "AssetsCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "stringItemType" }, "us-gaap_AwardTypeAxis": { "auth_ref": [ "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409" ], "lang": { "en-us": { "role": { "documentation": "Information by type of award under share-based payment arrangement.", "label": "Award Type [Axis]", "terseLabel": "Award Type [Axis]" } } }, "localname": "AwardTypeAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails", "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "auth_ref": [ "r439", "r638", "r639" ], "lang": { "en-us": { "role": { "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree.", "label": "Business Acquisition, Acquiree [Domain]", "terseLabel": "Business Acquisition, Acquiree [Domain]" } } }, "localname": "BusinessAcquisitionAcquireeDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "domainItemType" }, "us-gaap_BusinessAcquisitionAxis": { "auth_ref": [ "r65", "r67", "r439", "r638", "r639" ], "lang": { "en-us": { "role": { "documentation": "Information by business combination or series of individually immaterial business combinations.", "label": "Business Acquisition [Axis]", "terseLabel": "Business Acquisition [Axis]" } } }, "localname": "BusinessAcquisitionAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessAcquisitionEquityInterestIssuedOrIssuableValueAssigned": { "auth_ref": [ "r124" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value of equity interests (such as common shares, preferred shares, or partnership interest) issued or issuable to acquire the entity.", "label": "Business Acquisition, Equity Interest Issued or Issuable, Value Assigned", "terseLabel": "Consideration of common stock" } } }, "localname": "BusinessAcquisitionEquityInterestIssuedOrIssuableValueAssigned", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessAcquisitionLineItems": { "auth_ref": [ "r439" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Business Acquisition [Line Items]", "terseLabel": "Business Acquisition [Line Items]" } } }, "localname": "BusinessAcquisitionLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic": { "auth_ref": [ "r663", "r664" ], "lang": { "en-us": { "role": { "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.", "label": "Business Acquisition, Pro Forma Earnings Per Share, Basic", "terseLabel": "Basic earnings per share (in dollars per share)" } } }, "localname": "BusinessAcquisitionProFormaEarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsProFormaConsolidatedResultsofOperationsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted": { "auth_ref": [ "r663", "r664" ], "lang": { "en-us": { "role": { "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.", "label": "Business Acquisition, Pro Forma Earnings Per Share, Diluted", "terseLabel": "Diluted earnings per share (in dollars per share)" } } }, "localname": "BusinessAcquisitionProFormaEarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsProFormaConsolidatedResultsofOperationsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_BusinessAcquisitionProFormaInformationTextBlock": { "auth_ref": [ "r663", "r664" ], "lang": { "en-us": { "role": { "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.", "label": "Business Acquisition, Pro Forma Information [Table Text Block]", "terseLabel": "Schedule Of Pro Forma Consolidated Results Of Operations" } } }, "localname": "BusinessAcquisitionProFormaInformationTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount": { "auth_ref": [ "r77" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of goodwill arising from a business combination that is expected to be deductible for tax purposes.", "label": "Business Acquisition, Goodwill, Expected Tax Deductible Amount", "terseLabel": "Goodwill" } } }, "localname": "BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss": { "auth_ref": [ "r437", "r438" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Business Acquisition, Pro Forma Net Income (Loss)", "terseLabel": "Net income" } } }, "localname": "BusinessAcquisitionsProFormaNetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsProFormaConsolidatedResultsofOperationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessAcquisitionsProFormaRevenue": { "auth_ref": [ "r437", "r438" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The pro forma revenue for a period as if the business combination or combinations had been completed at the beginning of the period.", "label": "Business Acquisition, Pro Forma Revenue", "terseLabel": "Gross revenues" } } }, "localname": "BusinessAcquisitionsProFormaRevenue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsProFormaConsolidatedResultsofOperationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationAndAssetAcquisitionAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Business Combination and Asset Acquisition [Abstract]" } } }, "localname": "BusinessCombinationAndAssetAcquisitionAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_BusinessCombinationConsiderationTransferred1": { "auth_ref": [ "r2", "r3", "r15" ], "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Business Combination, Consideration Transferred", "totalLabel": "Total Consideration", "verboseLabel": "Aggregate purchase price" } } }, "localname": "BusinessCombinationConsiderationTransferred1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable": { "auth_ref": [ "r2", "r3" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of equity interests of the acquirer, including instruments or interests issued or issuable in consideration for the business combination.", "label": "Business Combination, Consideration Transferred, Equity Interests Issued and Issuable", "terseLabel": "Potential earn-out in cash and stock" } } }, "localname": "BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred": { "auth_ref": [ "r2", "r3", "r75", "r442" ], "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 2.0, "parentTag": "us-gaap_BusinessCombinationConsiderationTransferred1", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities incurred by the acquirer as part of consideration transferred in a business combination.", "label": "Business Combination, Consideration Transferred, Liabilities Incurred", "terseLabel": "Contingent earn-out liability (Cash and stock)" } } }, "localname": "BusinessCombinationConsiderationTransferredLiabilitiesIncurred", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1": { "auth_ref": [ "r444", "r673" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 10.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in the value of a contingent consideration liability, including, but not limited to, differences arising upon settlement.", "label": "Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability", "terseLabel": "Change in fair value of contingent consideration" } } }, "localname": "BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationContingentConsiderationLiability": { "auth_ref": [ "r4", "r76", "r443" ], "calculation": { "http://www.nv5.com/role/ContingentConsiderationDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liability recognized arising from contingent consideration in a business combination.", "label": "Business Combination, Contingent Consideration, Liability", "periodEndLabel": "Total contingent consideration, end of the period", "periodStartLabel": "Contingent consideration, beginning of the year", "terseLabel": "Earn-out of cash fair value" } } }, "localname": "BusinessCombinationContingentConsiderationLiability", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/ContingentConsiderationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent": { "auth_ref": [ "r5", "r76" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 4.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 }, "http://www.nv5.com/role/ContingentConsiderationDetails": { "order": 1.0, "parentTag": "us-gaap_BusinessCombinationContingentConsiderationLiability", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liability recognized arising from contingent consideration in a business combination, expected to be settled within one year or the normal operating cycle, if longer.", "label": "Business Combination, Contingent Consideration, Liability, Current", "terseLabel": "Current portion of contingent consideration", "verboseLabel": "Current portion of contingent consideration" } } }, "localname": "BusinessCombinationContingentConsiderationLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/ContingentConsiderationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent": { "auth_ref": [ "r5", "r76" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 2.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 }, "http://www.nv5.com/role/ContingentConsiderationDetails": { "order": 2.0, "parentTag": "us-gaap_BusinessCombinationContingentConsiderationLiability", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liability recognized arising from contingent consideration in a business combination, expected to be settled beyond one year or the normal operating cycle, if longer.", "label": "Business Combination, Contingent Consideration, Liability, Noncurrent", "terseLabel": "Contingent consideration, less current portion", "verboseLabel": "Contingent consideration, less current portion" } } }, "localname": "BusinessCombinationContingentConsiderationLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/ContingentConsiderationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationDisclosureTextBlock": { "auth_ref": [ "r122", "r440" ], "lang": { "en-us": { "role": { "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).", "label": "Business Combination Disclosure [Text Block]", "terseLabel": "Business Acquisitions" } } }, "localname": "BusinessCombinationDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitions" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual": { "auth_ref": [ "r66" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Business Combination, Pro Forma Information, Revenue of Acquiree since Acquisition Date, Actual", "terseLabel": "Gross revenues" } } }, "localname": "BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsResultsofOperationsFromanyBusinessAcquiredDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets": { "auth_ref": [ "r69" ], "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 1.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of assets acquired at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets", "totalLabel": "Total Assets" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": { "auth_ref": [ "r69" ], "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 1.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions, 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.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents", "terseLabel": "Cash" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": { "auth_ref": [ "r69" ], "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 4.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Receivables", "terseLabel": "Billed and unbilled receivables, net" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities": { "auth_ref": [ "r69" ], "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 3.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred tax liability attributable to taxable temporary differences assumed at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Liabilities", "negatedTerseLabel": "Deferred tax liabilities" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles": { "auth_ref": [ "r68", "r69" ], "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 3.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of identifiable intangible assets recognized as of the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Finite-Lived Intangibles", "terseLabel": "Intangible assets:" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities": { "auth_ref": [ "r69" ], "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 2.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities assumed at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities", "negatedLabel": "Liabilities" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet": { "auth_ref": [ "r68", "r69" ], "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount recognized as of the acquisition date for the identifiable assets acquired in excess of (less than) the aggregate liabilities assumed.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Net", "totalLabel": "Net assets acquired" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets": { "auth_ref": [ "r69" ], "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 5.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Other Noncurrent Assets", "terseLabel": "Other assets" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": { "auth_ref": [ "r68", "r69" ], "calculation": { "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails": { "order": 7.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment", "terseLabel": "Property and equipment" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": { "auth_ref": [ "r69" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.", "label": "Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net", "terseLabel": "Excess consideration over the amounts assigned to the net assets acquired (Goodwill)" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CapitalLeaseObligationsIncurred": { "auth_ref": [ "r41", "r42" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in lease obligation from new lease.", "label": "Lease Obligation Incurred", "terseLabel": "Finance leases" } } }, "localname": "CapitalLeaseObligationsIncurred", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "auth_ref": [ "r40", "r151", "r619" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 1.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.", "label": "Cash and Cash Equivalents, at Carrying Value", "terseLabel": "Cash and cash equivalents" } } }, "localname": "CashAndCashEquivalentsAtCarryingValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r40", "r103", "r174" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents", "periodEndLabel": "Cash and cash equivalents \u2013 end of period", "periodStartLabel": "Cash and cash equivalents \u2013 beginning of period" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "auth_ref": [ "r6", "r103" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "totalLabel": "Net decrease in cash and cash equivalents" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_CommitmentsAndContingencies": { "auth_ref": [ "r31", "r82", "r501", "r549" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.", "label": "Commitments and Contingencies", "terseLabel": "Commitments and contingencies" } } }, "localname": "CommitmentsAndContingencies", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies Disclosure [Abstract]", "terseLabel": "Commitments and Contingencies Disclosure [Abstract]" } } }, "localname": "CommitmentsAndContingenciesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "auth_ref": [ "r116", "r295", "r296", "r605", "r701" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for commitments and contingencies.", "label": "Commitments and Contingencies Disclosure [Text Block]", "terseLabel": "Commitments and Contingencies" } } }, "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CommitmentsandContingencies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [ "r645", "r646", "r647", "r649", "r650", "r651", "r652", "r678", "r679", "r735", "r752", "r755" ], "lang": { "en-us": { "role": { "documentation": "Stock that is subordinate to all other stock of the issuer.", "label": "Common Stock [Member]", "verboseLabel": "Common Stock" } } }, "localname": "CommonStockMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r87" ], "lang": { "en-us": { "role": { "documentation": "Face amount or stated value per share of common stock.", "label": "Common Stock, Par or Stated Value Per Share", "terseLabel": "Common stock, par value (in dollars per share)" } } }, "localname": "CommonStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r87", "r550" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.", "label": "Common Stock, Shares Authorized", "terseLabel": "Common stock, shares authorized (in shares)" } } }, "localname": "CommonStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r87" ], "lang": { "en-us": { "role": { "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.", "label": "Common Stock, Shares, Issued", "terseLabel": "Common stock, shares issued (in shares)" } } }, "localname": "CommonStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r18", "r87", "r550", "r568", "r755", "r756" ], "lang": { "en-us": { "role": { "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.", "label": "Common Stock, Shares, Outstanding", "terseLabel": "Common stock, shares outstanding (in shares)" } } }, "localname": "CommonStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r87", "r503", "r643" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Common Stock, Value, Issued", "terseLabel": "Common stock, $0.01 par value; 45,000,000 shares authorized, 15,890,908 and 15,523,300 shares issued and outstanding as of July 1, 2023 and December 31, 2022, respectively" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTax": { "auth_ref": [ "r36", "r162", "r164", "r169", "r495", "r509" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.", "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "totalLabel": "Comprehensive income" } } }, "localname": "ComprehensiveIncomeNetOfTax", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComputerEquipmentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Long lived, depreciable assets that are used in the creation, maintenance and utilization of information systems.", "label": "Computer Equipment [Member]", "terseLabel": "Computer equipment" } } }, "localname": "ComputerEquipmentMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLossCurrent": { "auth_ref": [ "r272", "r364" ], "calculation": { "http://www.nv5.com/role/BilledandUnbilledReceivablesDetails": { "order": 2.0, "parentTag": "us-gaap_ContractWithCustomerAssetNetCurrent", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Contract with Customer, Asset, Allowance for Credit Loss, Current", "negatedLabel": "Less: allowance for doubtful accounts" } } }, "localname": "ContractWithCustomerAssetAccumulatedAllowanceForCreditLossCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerAssetGrossCurrent": { "auth_ref": [ "r706", "r707" ], "calculation": { "http://www.nv5.com/role/BilledandUnbilledReceivablesDetails": { "order": 1.0, "parentTag": "us-gaap_ContractWithCustomerAssetNetCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Contract with Customer, Asset, before Allowance for Credit Loss, Current", "terseLabel": "Unbilled receivables" } } }, "localname": "ContractWithCustomerAssetGrossCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerAssetNetCurrent": { "auth_ref": [ "r362", "r364", "r375" ], "calculation": { "http://www.nv5.com/role/BilledandUnbilledReceivablesDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 3.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.", "label": "Contract with Customer, Asset, after Allowance for Credit Loss, Current", "terseLabel": "Unbilled receivables, net", "totalLabel": "Unbilled receivables, net" } } }, "localname": "ContractWithCustomerAssetNetCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesDetails", "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerBasisOfPricingAxis": { "auth_ref": [ "r634", "r708" ], "lang": { "en-us": { "role": { "documentation": "Information by basis of pricing for contract representing right to consideration in exchange for good or service transferred to customer.", "label": "Contract with Customer, Basis of Pricing [Axis]", "terseLabel": "Contract with Customer, Basis of Pricing [Axis]" } } }, "localname": "ContractWithCustomerBasisOfPricingAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ContractWithCustomerBasisOfPricingDomain": { "auth_ref": [ "r634", "r708" ], "lang": { "en-us": { "role": { "documentation": "Basis of pricing for contract with customer. Includes, but is not limited to, fixed-price and time-and-materials contracts.", "label": "Contract with Customer, Basis of Pricing [Domain]", "terseLabel": "Contract with Customer, Basis of Pricing [Domain]" } } }, "localname": "ContractWithCustomerBasisOfPricingDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ContractWithCustomerLiability": { "auth_ref": [ "r362", "r363", "r375" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 3.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.", "label": "Contract with Customer, Liability", "terseLabel": "Billings in excess of costs and estimated earnings on uncompleted contracts" } } }, "localname": "ContractWithCustomerLiability", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_CorporateNonSegmentMember": { "auth_ref": [ "r19", "r248", "r249", "r250", "r251", "r257", "r683" ], "lang": { "en-us": { "role": { "documentation": "Corporate headquarters or functional department that may not earn revenues or may earn revenues that are only incidental to the activities of the entity and is not considered an operating segment.", "label": "Corporate, Non-Segment [Member]", "terseLabel": "Corporate" } } }, "localname": "CorporateNonSegmentMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CostDirectLabor": { "auth_ref": [ "r672" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": 1.0, "parentTag": "us-gaap_DirectOperatingCosts", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Cost of labor directly related to good produced and service rendered. Includes, but is not limited to, payroll cost and equity-based compensation.", "label": "Cost, Direct Labor", "terseLabel": "Salaries and wages" } } }, "localname": "CostDirectLabor", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_CreditFacilityAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.", "label": "Credit Facility [Axis]", "terseLabel": "Credit Facility [Axis]" } } }, "localname": "CreditFacilityAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CreditFacilityDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.", "label": "Credit Facility [Domain]", "terseLabel": "Credit Facility [Domain]" } } }, "localname": "CreditFacilityDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CustomerListsMember": { "auth_ref": [ "r73" ], "lang": { "en-us": { "role": { "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.", "label": "Customer Lists [Member]", "terseLabel": "Customer backlog", "verboseLabel": "Customer backlog" } } }, "localname": "CustomerListsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CustomerRelationshipsMember": { "auth_ref": [ "r74" ], "lang": { "en-us": { "role": { "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships.", "label": "Customer Relationships [Member]", "terseLabel": "Customer relationships", "verboseLabel": "Customer relationships" } } }, "localname": "CustomerRelationshipsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtDisclosureTextBlock": { "auth_ref": [ "r117", "r176", "r320", "r326", "r327", "r328", "r329", "r330", "r331", "r336", "r343", "r344", "r346" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.", "label": "Debt Disclosure [Text Block]", "terseLabel": "Notes Payable and Other Obligations" } } }, "localname": "DebtDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligations" ], "xbrltype": "textBlockItemType" }, "us-gaap_DebtInstrumentAxis": { "auth_ref": [ "r22", "r84", "r85", "r128", "r129", "r180", "r321", "r322", "r323", "r324", "r325", "r327", "r332", "r333", "r334", "r335", "r337", "r338", "r339", "r340", "r341", "r342", "r477", "r625", "r626", "r627", "r628", "r629", "r675" ], "lang": { "en-us": { "role": { "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities.", "label": "Debt Instrument [Axis]", "terseLabel": "Debt Instrument [Axis]" } } }, "localname": "DebtInstrumentAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentCarryingAmount": { "auth_ref": [ "r22", "r129", "r347" ], "calculation": { "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails": { "order": 1.0, "parentTag": "us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt.", "label": "Long-Term Debt, Gross", "terseLabel": "Long-term debt, gross" } } }, "localname": "DebtInstrumentCarryingAmount", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtInstrumentLineItems": { "auth_ref": [ "r180", "r321", "r322", "r323", "r324", "r325", "r327", "r332", "r333", "r334", "r335", "r337", "r338", "r339", "r340", "r341", "r342", "r345", "r477", "r625", "r626", "r627", "r628", "r629", "r675" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Debt Instrument [Line Items]", "terseLabel": "Debt Instrument [Line Items]" } } }, "localname": "DebtInstrumentLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentNameDomain": { "auth_ref": [ "r29", "r180", "r321", "r322", "r323", "r324", "r325", "r327", "r332", "r333", "r334", "r335", "r337", "r338", "r339", "r340", "r341", "r342", "r477", "r625", "r626", "r627", "r628", "r629", "r675" ], "lang": { "en-us": { "role": { "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities.", "label": "Debt Instrument, Name [Domain]", "terseLabel": "Debt Instrument, Name [Domain]" } } }, "localname": "DebtInstrumentNameDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtInstrumentTable": { "auth_ref": [ "r29", "r59", "r60", "r78", "r79", "r81", "r83", "r119", "r120", "r180", "r321", "r322", "r323", "r324", "r325", "r327", "r332", "r333", "r334", "r335", "r337", "r338", "r339", "r340", "r341", "r342", "r345", "r477", "r625", "r626", "r627", "r628", "r629", "r675" ], "lang": { "en-us": { "role": { "documentation": "A table or schedule providing information pertaining to long-term debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer.", "label": "Schedule of Long-Term Debt Instruments [Table]", "terseLabel": "Schedule of Long-term Debt Instruments [Table]" } } }, "localname": "DebtInstrumentTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails", "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtWeightedAverageInterestRate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Weighted average interest rate of debt outstanding.", "label": "Debt, Weighted Average Interest Rate", "terseLabel": "Weighted average interest rate (as a percent)" } } }, "localname": "DebtWeightedAverageInterestRate", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DeferredFinanceCostsGross": { "auth_ref": [ "r80" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, before accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.", "label": "Debt Issuance Costs, Gross", "terseLabel": "Debt issuance costs" } } }, "localname": "DeferredFinanceCostsGross", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredFinanceCostsNet": { "auth_ref": [ "r80", "r705" ], "calculation": { "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails": { "order": 3.0, "parentTag": "us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.", "label": "Debt Issuance Costs, Net", "negatedLabel": "Debt issuance costs, net of amortization" } } }, "localname": "DeferredFinanceCostsNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "auth_ref": [ "r420", "r421", "r499" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 5.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.", "label": "Deferred Income Tax Liabilities, Net", "terseLabel": "Deferred income tax liabilities, net", "verboseLabel": "Deferred income tax liabilities, net" } } }, "localname": "DeferredIncomeTaxLiabilitiesNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/IncomeTaxesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxesAndTaxCredits": { "auth_ref": [ "r105" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred income tax expense (benefit) and income tax credits.", "label": "Deferred Income Taxes and Tax Credits", "terseLabel": "Deferred income taxes" } } }, "localname": "DeferredIncomeTaxesAndTaxCredits", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_Depreciation": { "auth_ref": [ "r12", "r58" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Depreciation", "terseLabel": "Depreciation expense" } } }, "localname": "Depreciation", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DepreciationAndAmortization": { "auth_ref": [ "r12", "r58" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": 4.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.", "label": "Depreciation, Depletion and Amortization, Nonproduction", "terseLabel": "Depreciation and amortization" } } }, "localname": "DepreciationAndAmortization", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_DepreciationDepletionAndAmortization": { "auth_ref": [ "r12", "r239" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.", "label": "Depreciation, Depletion and Amortization", "verboseLabel": "Depreciation and amortization" } } }, "localname": "DepreciationDepletionAndAmortization", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_DirectOperatingCosts": { "auth_ref": [ "r99" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": 2.0, "parentTag": "us-gaap_GrossProfit", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate direct operating costs incurred during the reporting period.", "label": "Direct Operating Costs", "totalLabel": "Total direct costs" } } }, "localname": "DirectOperatingCosts", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_DirectOperatingCostsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Direct Operating Costs [Abstract]", "terseLabel": "Direct costs:" } } }, "localname": "DirectOperatingCostsAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTable": { "auth_ref": [ "r374", "r631", "r632", "r633", "r634", "r635", "r636", "r637" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation of Revenue [Table]", "terseLabel": "Disaggregation of Revenue [Table]" } } }, "localname": "DisaggregationOfRevenueTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "auth_ref": [ "r378", "r383", "r411", "r412", "r414", "r641" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for share-based payment arrangement.", "label": "Share-Based Payment Arrangement [Text Block]", "terseLabel": "Stock-Based Compensation" } } }, "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensation" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement [Abstract]", "terseLabel": "Share-based Payment Arrangement [Abstract]" } } }, "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Earnings Per Share [Abstract]", "terseLabel": "Earnings per share:" } } }, "localname": "EarningsPerShareAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasic": { "auth_ref": [ "r170", "r190", "r191", "r192", "r193", "r194", "r201", "r204", "r222", "r223", "r224", "r228", "r459", "r460", "r496", "r510", "r620" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.", "label": "Earnings Per Share, Basic", "terseLabel": "Basic (in dollars per share)" } } }, "localname": "EarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareDiluted": { "auth_ref": [ "r170", "r190", "r191", "r192", "r193", "r194", "r204", "r222", "r223", "r224", "r228", "r459", "r460", "r496", "r510", "r620" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.", "label": "Earnings Per Share, Diluted", "terseLabel": "Diluted (in dollars per share)" } } }, "localname": "EarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareTextBlock": { "auth_ref": [ "r200", "r225", "r226", "r227" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for earnings per share.", "label": "Earnings Per Share [Text Block]", "terseLabel": "Earnings per Share" } } }, "localname": "EarningsPerShareTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/EarningsperShare" ], "xbrltype": "textBlockItemType" }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r468" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 3.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations", "terseLabel": "Effect of exchange rate changes on cash and cash equivalents" } } }, "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "auth_ref": [ "r423" ], "lang": { "en-us": { "role": { "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Effective Income Tax Rate Reconciliation, Percent", "terseLabel": "Effective income tax rate (as a percent)" } } }, "localname": "EffectiveIncomeTaxRateContinuingOperations", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/IncomeTaxesDetails" ], "xbrltype": "percentItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "auth_ref": [ "r413" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.", "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount", "terseLabel": "Weighted average vesting period (in years)" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "auth_ref": [ "r413" ], "lang": { "en-us": { "role": { "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition", "terseLabel": "Cost not yet recognized, term (in years)" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "durationItemType" }, "us-gaap_EquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Equity [Abstract]" } } }, "localname": "EquityAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r18", "r145", "r165", "r166", "r167", "r181", "r182", "r183", "r187", "r195", "r197", "r229", "r268", "r271", "r361", "r415", "r416", "r417", "r427", "r428", "r449", "r450", "r451", "r452", "r453", "r455", "r458", "r469", "r470", "r471", "r472", "r473", "r474", "r483", "r524", "r525", "r526", "r535", "r589" ], "lang": { "en-us": { "role": { "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.", "label": "Equity Component [Domain]", "terseLabel": "Equity Component [Domain]" } } }, "localname": "EquityComponentDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY", "http://www.nv5.com/role/StockholdersEquityScheduleofAccumulatedOtherComprehensiveIncomeLossDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FinanceLeaseLiability": { "auth_ref": [ "r481", "r482" ], "calculation": { "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails": { "order": 2.0, "parentTag": "us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease.", "label": "Finance Lease, Liability", "verboseLabel": "Finance leases" } } }, "localname": "FinanceLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetUsefulLife": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Finite-Lived Intangible Asset, Useful Life", "terseLabel": "Useful life (in years)" } } }, "localname": "FiniteLivedIntangibleAssetUsefulLife", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "durationItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "auth_ref": [ "r153", "r288" ], "calculation": { "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails": { "order": 2.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "negatedLabel": "Accumulated Amortization" } } }, "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable": { "auth_ref": [ "r53" ], "lang": { "en-us": { "role": { "documentation": "A table containing detailed characteristics of finite-lived intangible assets acquired during a business combination. Finite-lived intangible assets are assets that have no physical form, but have expected future economic benefit, and are expected to be used over a defined period. Acquired finite-lived intangible assets are disclosed by major class (assets that can be grouped together because they are similar, either by their nature or by their use in operations of the Entity) and in total. Additionally, any significant residual value (the expected value of the asset at the end of its useful life) and the weighted-average amortization period are also disclosed.", "label": "Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table]", "terseLabel": "Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table]" } } }, "localname": "FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "auth_ref": [ "r286", "r287", "r288", "r289", "r489", "r493" ], "lang": { "en-us": { "role": { "documentation": "Information by major type or class of finite-lived intangible assets.", "label": "Finite-Lived Intangible Assets by Major Class [Axis]", "terseLabel": "Finite-Lived Intangible Assets by Major Class [Axis]" } } }, "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "auth_ref": [ "r113", "r493" ], "calculation": { "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails": { "order": 1.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Gross", "terseLabel": "Gross Carrying Amount" } } }, "localname": "FiniteLivedIntangibleAssetsGross", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "auth_ref": [ "r489" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Finite-Lived Intangible Assets [Line Items]", "terseLabel": "Finite-Lived Intangible Assets [Line Items]" } } }, "localname": "FiniteLivedIntangibleAssetsLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "auth_ref": [ "r53", "r56" ], "lang": { "en-us": { "role": { "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company.", "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "terseLabel": "Finite-Lived Intangible Assets, Major Class Name [Domain]" } } }, "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "auth_ref": [ "r113", "r489" ], "calculation": { "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Net", "totalLabel": "Net Amount" } } }, "localname": "FiniteLivedIntangibleAssetsNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsNetAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Net [Abstract]", "terseLabel": "Finite-lived intangible assets:" } } }, "localname": "FiniteLivedIntangibleAssetsNetAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FixedPriceContractMember": { "auth_ref": [ "r634" ], "lang": { "en-us": { "role": { "documentation": "Contract with customer in which amount of consideration is fixed.", "label": "Fixed-Price Contract [Member]", "terseLabel": "Fixed-unit price contracts" } } }, "localname": "FixedPriceContractMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FurnitureAndFixturesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases.", "label": "Furniture and Fixtures [Member]", "terseLabel": "Office furniture and equipment" } } }, "localname": "FurnitureAndFixturesMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_GainLossOnDispositionOfAssets1": { "auth_ref": [ "r674" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Gain (Loss) on Disposition of Assets", "negatedTerseLabel": "Gain on disposals of property and equipment" } } }, "localname": "GainLossOnDispositionOfAssets1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_GeneralAndAdministrativeExpense": { "auth_ref": [ "r100", "r572" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": 2.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "General and Administrative Expense", "terseLabel": "General and administrative" } } }, "localname": "GeneralAndAdministrativeExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_Goodwill": { "auth_ref": [ "r152", "r274", "r494", "r624", "r643", "r687", "r694" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 1.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Goodwill", "periodEndLabel": "Ending balance", "periodStartLabel": "Beginning balance", "terseLabel": "Goodwill" } } }, "localname": "Goodwill", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillAcquiredDuringPeriod": { "auth_ref": [ "r277", "r624" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Goodwill, Acquired During Period", "terseLabel": "2023 Acquisitions" } } }, "localname": "GoodwillAcquiredDuringPeriod", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Goodwill and Intangible Assets Disclosure [Abstract]", "terseLabel": "Goodwill and Intangible Assets Disclosure [Abstract]" } } }, "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": { "auth_ref": [ "r111" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for goodwill and intangible assets.", "label": "Goodwill and Intangible Assets Disclosure [Text Block]", "terseLabel": "Goodwill and Intangible Assets" } } }, "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssets" ], "xbrltype": "textBlockItemType" }, "us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock": { "auth_ref": [ "r14", "r50" ], "lang": { "en-us": { "role": { "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.", "label": "Goodwill and Intangible Assets, Policy [Policy Text Block]", "terseLabel": "Goodwill and Intangible Assets" } } }, "localname": "GoodwillAndIntangibleAssetsPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": { "auth_ref": [ "r281" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Goodwill, Foreign Currency Translation Gain (Loss)", "terseLabel": "Foreign Currency Translation of non-USD functional currency goodwill" } } }, "localname": "GoodwillForeignCurrencyTranslationGainLoss", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillLineItems": { "auth_ref": [ "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r285", "r624" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Goodwill [Line Items]", "terseLabel": "Goodwill [Line Items]" } } }, "localname": "GoodwillLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_GoodwillPurchaseAccountingAdjustments": { "auth_ref": [ "r1", "r693" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Goodwill, Purchase Accounting Adjustments", "terseLabel": "Adjustments" } } }, "localname": "GoodwillPurchaseAccountingAdjustments", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillRollForward": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Goodwill [Roll Forward]", "terseLabel": "Goodwill [Roll Forward]" } } }, "localname": "GoodwillRollForward", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_GrossProfit": { "auth_ref": [ "r98", "r178", "r234", "r248", "r254", "r257", "r267", "r307", "r308", "r310", "r311", "r312", "r314", "r316", "r318", "r319", "r464", "r622", "r702" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": 2.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeInterestExpenseInterestIncomeIncomeTaxesExtraordinaryItemsNoncontrollingInterestsNet", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.", "label": "Gross Profit", "totalLabel": "Gross profit" } } }, "localname": "GrossProfit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "auth_ref": [ "r0", "r95", "r131", "r234", "r248", "r254", "r257", "r497", "r507", "r622" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": 2.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.", "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "totalLabel": "Income before income tax expense", "verboseLabel": "Segment income before taxes" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeInterestExpenseInterestIncomeIncomeTaxesExtraordinaryItemsNoncontrollingInterestsNet": { "auth_ref": [], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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).", "label": "Income (Loss) from Continuing Operations before Interest Expense, Interest Income, Income Taxes, Noncontrolling Interests, Net", "totalLabel": "Income from operations" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeInterestExpenseInterestIncomeIncomeTaxesExtraordinaryItemsNoncontrollingInterestsNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeStatementAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Income Statement [Abstract]", "terseLabel": "Income Statement [Abstract]" } } }, "localname": "IncomeStatementAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationAxis": { "auth_ref": [ "r290", "r292", "r573" ], "lang": { "en-us": { "role": { "documentation": "Information by location in the income statement.", "label": "Income Statement Location [Axis]", "terseLabel": "Income Statement Location [Axis]" } } }, "localname": "IncomeStatementLocationAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationDomain": { "auth_ref": [ "r292", "r573" ], "lang": { "en-us": { "role": { "documentation": "Location in the income statement.", "label": "Income Statement Location [Domain]", "terseLabel": "Income Statement Location [Domain]" } } }, "localname": "IncomeStatementLocationDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeTaxDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Abstract]", "terseLabel": "Income Tax Disclosure [Abstract]" } } }, "localname": "IncomeTaxDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxDisclosureTextBlock": { "auth_ref": [ "r179", "r419", "r424", "r425", "r426", "r432", "r434", "r435", "r436", "r534" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.", "label": "Income Tax Disclosure [Text Block]", "terseLabel": "Income Taxes" } } }, "localname": "IncomeTaxDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/IncomeTaxes" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r134", "r142", "r196", "r197", "r242", "r422", "r433", "r511" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": 1.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Income Tax Expense (Benefit)", "negatedLabel": "Income tax expense" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "auth_ref": [ "r11" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.", "label": "Increase (Decrease) in Accounts Payable", "verboseLabel": "Accounts payable" } } }, "localname": "IncreaseDecreaseInAccountsPayable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "auth_ref": [ "r11" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 11.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.", "label": "Increase (Decrease) in Accounts Receivable", "negatedLabel": "Billed receivables" } } }, "localname": "IncreaseDecreaseInAccountsReceivable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "auth_ref": [ "r487", "r673" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 14.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable.", "label": "Increase (Decrease) in Contract with Customer, Liability", "verboseLabel": "Billings in excess of costs and estimated earnings on uncompleted contracts" } } }, "localname": "IncreaseDecreaseInContractWithCustomerLiability", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Operating Capital [Abstract]", "terseLabel": "Changes in operating assets and liabilities, net of impact of acquisitions:" } } }, "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInOtherCurrentLiabilities": { "auth_ref": [ "r673" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in current liabilities classified as other.", "label": "Increase (Decrease) in Other Current Liabilities", "terseLabel": "Other current liabilities" } } }, "localname": "IncreaseDecreaseInOtherCurrentLiabilities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "auth_ref": [ "r11" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.", "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "negatedLabel": "Prepaid expenses and other assets" } } }, "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "terseLabel": "Increase (Decrease) in Stockholders' Equity [Roll Forward]" } } }, "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "xbrltype": "stringItemType" }, "us-gaap_IncrementalCommonSharesAttributableToContingentlyIssuableShares": { "auth_ref": [ "r206", "r207", "r213", "r214", "r215", "r216", "r217", "r218", "r219", "r224" ], "calculation": { "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails": { "order": 3.0, "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of contingently issuable shares. Contingently issuable shares are those shares that are issuable for little or no cash contingent on certain conditions being met.", "label": "Incremental Common Shares Attributable to Dilutive Effect of Contingently Issuable Shares", "terseLabel": "Effect of issuable shares related to acquisitions (in shares)" } } }, "localname": "IncrementalCommonSharesAttributableToContingentlyIssuableShares", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "auth_ref": [ "r205", "r206", "r208", "r224", "r382" ], "calculation": { "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails": { "order": 2.0, "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.", "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements", "terseLabel": "Effect of dilutive non-vested restricted shares and units (in shares)" } } }, "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_IndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable": { "auth_ref": [ "r54", "r70" ], "lang": { "en-us": { "role": { "documentation": "A table containing detailed information about the characteristics and cost, by total and major class, of indefinite-lived intangible assets acquired as part of a business combination. Indefinite-lived intangible assets are assets that have no physical form, but have expected future economic benefit. The future benefit is not expected to diminish over a stated period of time. Acquired indefinite-lived intangible assets are disclosed by major class (assets that can be grouped together because they are similar, either by their nature or by their use in operations of the entity) and in total.", "label": "Indefinite-Lived Intangible Assets Acquired as Part of Business Combination [Table]", "terseLabel": "Indefinite-lived Intangible Assets Acquired as Part of Business Combination [Table]" } } }, "localname": "IndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "auth_ref": [ "r51", "r55" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 6.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.", "label": "Intangible Assets, Net (Excluding Goodwill)", "verboseLabel": "Intangible assets, net" } } }, "localname": "IntangibleAssetsNetExcludingGoodwill", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestExpense": { "auth_ref": [ "r80", "r133", "r168", "r238", "r475", "r574", "r653", "r754" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": 2.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.", "label": "Interest Expense", "negatedLabel": "Interest expense" } } }, "localname": "InterestExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_LeaseholdImprovementsMember": { "auth_ref": [ "r115" ], "lang": { "en-us": { "role": { "documentation": "Additions or improvements to assets held under a lease arrangement.", "label": "Leasehold Improvements [Member]", "terseLabel": "Leasehold improvements" } } }, "localname": "LeaseholdImprovementsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_Liabilities": { "auth_ref": [ "r26", "r178", "r267", "r307", "r308", "r310", "r311", "r312", "r314", "r316", "r318", "r319", "r446", "r447", "r448", "r464", "r548", "r621", "r654", "r702", "r740", "r741" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.", "label": "Liabilities", "totalLabel": "Total liabilities" } } }, "localname": "Liabilities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r92", "r130", "r506", "r643", "r676", "r685", "r736" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.", "label": "Liabilities and Equity", "totalLabel": "Total liabilities and stockholders\u2019 equity" } } }, "localname": "LiabilitiesAndStockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Liabilities and Equity [Abstract]", "terseLabel": "Liabilities and Stockholders\u2019 Equity" } } }, "localname": "LiabilitiesAndStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r28", "r150", "r178", "r267", "r307", "r308", "r310", "r311", "r312", "r314", "r316", "r318", "r319", "r446", "r447", "r448", "r464", "r643", "r702", "r740", "r741" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 1.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.", "label": "Liabilities, Current", "totalLabel": "Total current liabilities" } } }, "localname": "LiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Liabilities, Current [Abstract]", "terseLabel": "Current liabilities:" } } }, "localname": "LiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityInterestRateDuringPeriod": { "auth_ref": [ "r25" ], "lang": { "en-us": { "role": { "documentation": "The effective interest rate during the reporting period.", "label": "Line of Credit Facility, Interest Rate During Period", "terseLabel": "Interest rate during period (as a percent)" } } }, "localname": "LineOfCreditFacilityInterestRateDuringPeriod", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "xbrltype": "percentItemType" }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "auth_ref": [ "r25" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.", "label": "Line of Credit Facility, Maximum Borrowing Capacity", "terseLabel": "Maximum borrowing capacity" } } }, "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditMember": { "auth_ref": [], "lang": { "en-us": { "role": { "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.", "label": "Line of Credit [Member]", "terseLabel": "Line of Credit" } } }, "localname": "LineOfCreditMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock": { "auth_ref": [ "r684" ], "lang": { "en-us": { "role": { "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.", "label": "Loans, Notes, Trade and Other Receivables Disclosure [Text Block]", "terseLabel": "Billed and Unbilled Receivables" } } }, "localname": "LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LongTermDebtAndCapitalLeaseObligations": { "auth_ref": [ "r22", "r500" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 4.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 }, "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails_1": { "order": 2.0, "parentTag": "us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt and lease obligation, classified as noncurrent.", "label": "Long-Term Debt and Lease Obligation", "terseLabel": "Notes payable and other obligations, less current portion", "verboseLabel": "Notes payable and other obligations, less current portion" } } }, "localname": "LongTermDebtAndCapitalLeaseObligations", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent": { "auth_ref": [ "r27" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 5.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 }, "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails_1": { "order": 1.0, "parentTag": "us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt and lease obligation, classified as current.", "label": "Long-Term Debt and Lease Obligation, Current", "terseLabel": "Current portion of notes payable and other obligations", "verboseLabel": "Current portion of notes payable and other obligations" } } }, "localname": "LongTermDebtAndCapitalLeaseObligationsCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities": { "auth_ref": [], "calculation": { "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails_1": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of long-term debt and lease obligation, including portion classified as current.", "label": "Long-Term Debt and Lease Obligation, Including Current Maturities", "totalLabel": "Total notes payable and other obligations" } } }, "localname": "LongTermDebtAndCapitalLeaseObligationsIncludingCurrentMaturities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsSummaryofNotesPayableandOtherObligationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LossContingencyDisclosures": { "auth_ref": [ "r297", "r298", "r299", "r301", "r303", "r304", "r305", "r306" ], "lang": { "en-us": { "role": { "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.", "label": "Contingencies Disclosure [Text Block]", "terseLabel": "Contingent Consideration" } } }, "localname": "LossContingencyDisclosures", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ContingentConsideration" ], "xbrltype": "textBlockItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r173" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 2.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.", "label": "Net Cash Provided by (Used in) Financing Activities", "totalLabel": "Net cash provided by (used in) financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]", "terseLabel": "Cash flows from financing activities:" } } }, "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r173" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 4.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.", "label": "Net Cash Provided by (Used in) Investing Activities", "totalLabel": "Net cash used in investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]", "terseLabel": "Cash flows from investing activities:" } } }, "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r103", "r104", "r105" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 1.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.", "label": "Net Cash Provided by (Used in) Operating Activities", "totalLabel": "Net cash provided by operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "Cash flows from operating activities:" } } }, "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r96", "r105", "r132", "r148", "r160", "r163", "r167", "r178", "r186", "r190", "r191", "r192", "r193", "r196", "r197", "r220", "r234", "r248", "r254", "r257", "r267", "r307", "r308", "r310", "r311", "r312", "r314", "r316", "r318", "r319", "r460", "r464", "r508", "r570", "r587", "r588", "r622", "r653", "r702" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 15.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": 1.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.", "label": "Net Income (Loss)", "totalLabel": "Net income", "verboseLabel": "Net income" } } }, "localname": "NetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS", "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY", "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic": { "auth_ref": [ "r172", "r190", "r191", "r192", "r193", "r201", "r202", "r221", "r224", "r234", "r248", "r254", "r257", "r622" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities; of income (loss) available to common shareholders.", "label": "Net Income (Loss) Available to Common Stockholders, Basic", "terseLabel": "Net income \u2013 basic" } } }, "localname": "NetIncomeLossAvailableToCommonStockholdersBasic", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersDiluted": { "auth_ref": [ "r172", "r203", "r209", "r210", "r211", "r212", "r221", "r224" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities, and addition from assumption of issuance of common shares for dilutive potential common shares; of income (loss) available to common shareholders.", "label": "Net Income (Loss) Available to Common Stockholders, Diluted", "terseLabel": "Net income \u2013 diluted" } } }, "localname": "NetIncomeLossAvailableToCommonStockholdersDiluted", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Accounting Standards Update and Change in Accounting Principle [Abstract]", "terseLabel": "Accounting Standards Update and Change in Accounting Principle [Abstract]" } } }, "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": { "auth_ref": [ "r140", "r141", "r143", "r146", "r184", "r185", "r188", "r189", "r198", "r199", "r269", "r270", "r429", "r430", "r431", "r454", "r457", "r461", "r462", "r463", "r465", "r466", "r467", "r478", "r479", "r484", "r490", "r491", "r492", "r527", "r528", "r529", "r530", "r531" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle.", "label": "Accounting Standards Update and Change in Accounting Principle [Text Block]", "terseLabel": "Recent Accounting Pronouncements" } } }, "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/RecentAccountingPronouncements" ], "xbrltype": "textBlockItemType" }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.", "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "terseLabel": "Recent Accounting Pronouncements" } } }, "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_NonUsMember": { "auth_ref": [ "r757", "r758", "r759", "r760" ], "lang": { "en-us": { "role": { "documentation": "Countries excluding the United States of America (US).", "label": "Non-US [Member]", "terseLabel": "Foreign" } } }, "localname": "NonUsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenueFromContractsWithCustomersbyGeographicLocationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NoncashInvestingAndFinancingItemsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Noncash Investing and Financing Items [Abstract]", "terseLabel": "Non-cash investing and financing activities:" } } }, "localname": "NoncashInvestingAndFinancingItemsAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "stringItemType" }, "us-gaap_NoncashOrPartNoncashAcquisitionPayablesAssumed1": { "auth_ref": [ "r41", "r42", "r43" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Noncash or Part Noncash Acquisition, Payables Assumed", "terseLabel": "Notes payable and other obligations issued for acquisitions" } } }, "localname": "NoncashOrPartNoncashAcquisitionPayablesAssumed1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_NoncompeteAgreementsMember": { "auth_ref": [ "r72" ], "lang": { "en-us": { "role": { "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party.", "label": "Noncompete Agreements [Member]", "terseLabel": "Non-compete" } } }, "localname": "NoncompeteAgreementsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NotesPayable": { "auth_ref": [ "r22", "r129", "r748" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Notes Payable", "terseLabel": "Notes payable outstanding balance" } } }, "localname": "NotesPayable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_NumberOfBusinessesAcquired": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The number of businesses acquired by the entity during the period.", "label": "Number of Businesses Acquired", "terseLabel": "Number of businesses acquired" } } }, "localname": "NumberOfBusinessesAcquired", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails" ], "xbrltype": "integerItemType" }, "us-gaap_NumberOfOperatingSegments": { "auth_ref": [ "r682" ], "lang": { "en-us": { "role": { "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.", "label": "Number of Operating Segments", "terseLabel": "Number of operating segments" } } }, "localname": "NumberOfOperatingSegments", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsNarrativeDetails" ], "xbrltype": "integerItemType" }, "us-gaap_NumberOfReportableSegments": { "auth_ref": [ "r682" ], "lang": { "en-us": { "role": { "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.", "label": "Number of Reportable Segments", "terseLabel": "Number of reportable segments" } } }, "localname": "NumberOfReportableSegments", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsNarrativeDetails" ], "xbrltype": "integerItemType" }, "us-gaap_OperatingExpenses": { "auth_ref": [], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeInterestExpenseInterestIncomeIncomeTaxesExtraordinaryItemsNoncontrollingInterestsNet", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.", "label": "Operating Expenses", "totalLabel": "Total operating expenses" } } }, "localname": "OperatingExpenses", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingExpensesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Operating Expenses [Abstract]", "terseLabel": "Operating expenses:" } } }, "localname": "OperatingExpensesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingLeaseExpense": { "auth_ref": [ "r739" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": 3.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of operating lease expense. Excludes sublease income.", "label": "Operating Lease, Expense", "terseLabel": "Facilities and facilities related" } } }, "localname": "OperatingLeaseExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityCurrent": { "auth_ref": [ "r481" ], "calculation": { "http://www.nv5.com/role/AccruedLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.", "label": "Operating Lease, Liability, Current", "verboseLabel": "Current portion of lease liability" } } }, "localname": "OperatingLeaseLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/AccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseRightOfUseAsset": { "auth_ref": [ "r480" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 5.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's right to use underlying asset under operating lease.", "label": "Operating Lease, Right-of-Use Asset", "verboseLabel": "Right-of-use lease assets, net" } } }, "localname": "OperatingLeaseRightOfUseAsset", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingSegmentsMember": { "auth_ref": [ "r247", "r248", "r249", "r250", "r251", "r257" ], "lang": { "en-us": { "role": { "documentation": "Identifies components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.", "label": "Operating Segments [Member]", "terseLabel": "Operating Segments" } } }, "localname": "OperatingSegmentsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock": { "auth_ref": [ "r106", "r107", "r108", "r125" ], "lang": { "en-us": { "role": { "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.", "label": "Organization, Consolidation, Basis of Presentation, Business Description and Accounting Policies [Text Block]", "terseLabel": "Organization and Nature of Business Operations" } } }, "localname": "OrganizationConsolidationBasisOfPresentationBusinessDescriptionAndAccountingPoliciesTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/OrganizationandNatureofBusinessOperations" ], "xbrltype": "textBlockItemType" }, "us-gaap_OtherAccruedLiabilitiesCurrent": { "auth_ref": [ "r27" ], "calculation": { "http://www.nv5.com/role/AccruedLiabilitiesDetails": { "order": 5.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.", "label": "Other Accrued Liabilities, Current", "terseLabel": "Other" } } }, "localname": "OtherAccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/AccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsNoncurrent": { "auth_ref": [ "r154" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 2.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of noncurrent assets classified as other.", "label": "Other Assets, Noncurrent", "terseLabel": "Other assets" } } }, "localname": "OtherAssetsNoncurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherCommitment": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Other Commitment", "terseLabel": "Other obligations" } } }, "localname": "OtherCommitment", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": { "auth_ref": [ "r10", "r16", "r126" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": 2.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent", "terseLabel": "Foreign currency translation losses, net of tax" } } }, "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Net of Tax [Abstract]", "terseLabel": "Comprehensive income:" } } }, "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME" ], "xbrltype": "stringItemType" }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": { "auth_ref": [ "r10", "r16", "r126", "r161", "r164" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of other comprehensive income (loss) attributable to parent entity.", "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent", "terseLabel": "Other comprehensive income (loss)" } } }, "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY", "http://www.nv5.com/role/StockholdersEquityScheduleofAccumulatedOtherComprehensiveIncomeLossDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherLiabilitiesCurrent": { "auth_ref": [ "r27", "r643" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 6.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer.", "label": "Other Liabilities, Current", "terseLabel": "Other current liabilities" } } }, "localname": "OtherLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherLiabilitiesNoncurrent": { "auth_ref": [ "r30" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 3.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.", "label": "Other Liabilities, Noncurrent", "terseLabel": "Other long-term liabilities" } } }, "localname": "OtherLiabilitiesNoncurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_PayablesAndAccrualsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Payables and Accruals [Abstract]", "terseLabel": "Payables and Accruals [Abstract]" } } }, "localname": "PayablesAndAccrualsAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities": { "auth_ref": [ "r9" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Payment for Contingent Consideration Liability, Financing Activities", "negatedLabel": "Payments of contingent consideration" } } }, "localname": "PaymentForContingentConsiderationLiabilityFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireBusinessesGross": { "auth_ref": [ "r37", "r441" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price.", "label": "Payments to Acquire Businesses, Gross", "terseLabel": "Payments to acquire businesses" } } }, "localname": "PaymentsToAcquireBusinessesGross", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": { "auth_ref": [ "r37" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.", "label": "Payments to Acquire Businesses, Net of Cash Acquired", "negatedLabel": "Cash paid for acquisitions (net of cash received from acquisitions)", "verboseLabel": "Aggregate cash purchase price" } } }, "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r102" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.", "label": "Payments to Acquire Property, Plant, and Equipment", "negatedLabel": "Purchase of property and equipment" } } }, "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_PlanNameAxis": { "auth_ref": [ "r709", "r710", "r711", "r712", "r713", "r714", "r715", "r716", "r717", "r718", "r719", "r720", "r721", "r722", "r723", "r724", "r725", "r726", "r727", "r728", "r729", "r730", "r731", "r732", "r733", "r734" ], "lang": { "en-us": { "role": { "documentation": "Information by plan name for share-based payment arrangement.", "label": "Plan Name [Axis]", "terseLabel": "Plan Name [Axis]" } } }, "localname": "PlanNameAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PlanNameDomain": { "auth_ref": [ "r709", "r710", "r711", "r712", "r713", "r714", "r715", "r716", "r717", "r718", "r719", "r720", "r721", "r722", "r723", "r724", "r725", "r726", "r727", "r728", "r729", "r730", "r731", "r732", "r733", "r734" ], "lang": { "en-us": { "role": { "documentation": "Plan name for share-based payment arrangement.", "label": "Plan Name [Domain]", "terseLabel": "Plan Name [Domain]" } } }, "localname": "PlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "auth_ref": [ "r86", "r349" ], "lang": { "en-us": { "role": { "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.", "label": "Preferred Stock, Par or Stated Value Per Share", "terseLabel": "Preferred stock, par value (in dollars per share)" } } }, "localname": "PreferredStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals" ], "xbrltype": "perShareItemType" }, "us-gaap_PreferredStockSharesAuthorized": { "auth_ref": [ "r86", "r550" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.", "label": "Preferred Stock, Shares Authorized", "terseLabel": "Preferred stock, shares authorized (in shares)" } } }, "localname": "PreferredStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesIssued": { "auth_ref": [ "r86", "r349" ], "lang": { "en-us": { "role": { "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.", "label": "Preferred Stock, Shares Issued", "terseLabel": "Preferred stock, shares issued (in shares)" } } }, "localname": "PreferredStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesOutstanding": { "auth_ref": [ "r86", "r550", "r568", "r755", "r756" ], "lang": { "en-us": { "role": { "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.", "label": "Preferred Stock, Shares Outstanding", "terseLabel": "Preferred stock, shares outstanding (in shares)" } } }, "localname": "PreferredStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETSParentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockValue": { "auth_ref": [ "r86", "r502", "r643" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 1.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Preferred Stock, Value, Issued", "terseLabel": "Preferred stock, $0.01 par value; 5,000,000 shares authorized, no shares issued and outstanding" } } }, "localname": "PreferredStockValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "auth_ref": [ "r668" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 4.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.", "label": "Prepaid Expense and Other Assets, Current", "terseLabel": "Prepaid expenses and other current assets" } } }, "localname": "PrepaidExpenseAndOtherAssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromLinesOfCredit": { "auth_ref": [ "r38", "r675" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow from contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.", "label": "Proceeds from Lines of Credit", "verboseLabel": "Aggregate credit agreement" } } }, "localname": "ProceedsFromLinesOfCredit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromLongTermLinesOfCredit": { "auth_ref": [ "r38" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Proceeds from Long-Term Lines of Credit", "terseLabel": "Borrowings from Senior Credit Facility" } } }, "localname": "ProceedsFromLongTermLinesOfCredit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromSaleOfProductiveAssets": { "auth_ref": [ "r101" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The cash inflow from the sale of property, plant and equipment (capital expenditures), software, and other intangible assets.", "label": "Proceeds from Sale of Productive Assets", "terseLabel": "Proceeds from sale of assets" } } }, "localname": "ProceedsFromSaleOfProductiveAssets", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Abstract]", "terseLabel": "Property, Plant and Equipment [Abstract]" } } }, "localname": "PropertyPlantAndEquipmentAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization": { "auth_ref": [ "r662", "r665", "r699" ], "calculation": { "http://www.nv5.com/role/PropertyandEquipmentnetDetails": { "order": 2.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accumulated depreciation and amortization from plant, property, and equipment and right-of-use asset from finance lease.", "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, Accumulated Depreciation and Amortization", "negatedLabel": "Less: accumulated depreciation" } } }, "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAccumulatedDepreciationAndAmortization", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization": { "auth_ref": [ "r665", "r697" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 4.0, "parentTag": "us-gaap_Assets", "weight": 1.0 }, "http://www.nv5.com/role/PropertyandEquipmentnetDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset.", "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, after Accumulated Depreciation and Amortization", "terseLabel": "Property and equipment, net", "totalLabel": "Property and equipment, net" } } }, "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/PropertyandEquipmentnetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization": { "auth_ref": [ "r661", "r667", "r698" ], "calculation": { "http://www.nv5.com/role/PropertyandEquipmentnetDetails": { "order": 1.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, before accumulated depreciation and amortization, of property, plant, and equipment and finance lease right-of-use asset.", "label": "Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, before Accumulated Depreciation and Amortization", "terseLabel": "Total" } } }, "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetBeforeAccumulatedDepreciationAndAmortization", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "auth_ref": [ "r13" ], "lang": { "en-us": { "role": { "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.", "label": "Long-Lived Tangible Asset [Axis]", "terseLabel": "Long-Lived Tangible Asset [Axis]" } } }, "localname": "PropertyPlantAndEquipmentByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": { "auth_ref": [ "r114", "r135", "r138", "r139" ], "lang": { "en-us": { "role": { "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.", "label": "Property, Plant and Equipment Disclosure [Text Block]", "terseLabel": "Property and Equipment, net" } } }, "localname": "PropertyPlantAndEquipmentDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnet" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Property, Plant and Equipment [Line Items]", "terseLabel": "Property, Plant and Equipment [Line Items]" } } }, "localname": "PropertyPlantAndEquipmentLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetDetails", "http://www.nv5.com/role/PropertyandEquipmentnetNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "auth_ref": [ "r13" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.", "label": "Property, Plant and Equipment [Table Text Block]", "terseLabel": "Schedule Of Property And Equipment" } } }, "localname": "PropertyPlantAndEquipmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "auth_ref": [ "r115" ], "lang": { "en-us": { "role": { "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software.", "label": "Long-Lived Tangible Asset [Domain]", "terseLabel": "Long-Lived Tangible Asset [Domain]" } } }, "localname": "PropertyPlantAndEquipmentTypeDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ProvisionForDoubtfulAccounts": { "auth_ref": [ "r171", "r273" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable.", "label": "Accounts Receivable, Credit Loss Expense (Reversal)", "terseLabel": "Provision for doubtful accounts" } } }, "localname": "ProvisionForDoubtfulAccounts", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_ReceivablesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Receivables [Abstract]", "terseLabel": "Receivables [Abstract]" } } }, "localname": "ReceivablesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_RepaymentsOfLongTermLinesOfCredit": { "auth_ref": [ "r39" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Repayments of Long-Term Lines of Credit", "negatedTerseLabel": "Payments of borrowings from Senior Credit Facility" } } }, "localname": "RepaymentsOfLongTermLinesOfCredit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_RepaymentsOfNotesPayable": { "auth_ref": [ "r39" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow for a borrowing supported by a written promise to pay an obligation.", "label": "Repayments of Notes Payable", "negatedLabel": "Payments on notes payable" } } }, "localname": "RepaymentsOfNotesPayable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_RestrictedStockMember": { "auth_ref": [ "r44" ], "lang": { "en-us": { "role": { "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.", "label": "Restricted Stock [Member]", "terseLabel": "Restricted Stock" } } }, "localname": "RestrictedStockMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/EarningsperShareNarrativeDetails", "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails", "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r89", "r121", "r505", "r527", "r531", "r533", "r551", "r643" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 5.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accumulated undistributed earnings (deficit).", "label": "Retained Earnings (Accumulated Deficit)", "terseLabel": "Retained earnings" } } }, "localname": "RetainedEarningsAccumulatedDeficit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [ "r145", "r181", "r182", "r183", "r187", "r195", "r197", "r268", "r271", "r415", "r416", "r417", "r427", "r428", "r449", "r451", "r452", "r455", "r458", "r524", "r526", "r535", "r755" ], "lang": { "en-us": { "role": { "documentation": "Accumulated undistributed earnings (deficit).", "label": "Retained Earnings [Member]", "terseLabel": "Retained Earnings" } } }, "localname": "RetainedEarningsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "auth_ref": [ "r235", "r236", "r247", "r252", "r253", "r259", "r261", "r263", "r373", "r374", "r488" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.", "label": "Revenue from Contract with Customer, Excluding Assessed Tax", "terseLabel": "Revenue from contract liability" } } }, "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesContractBalancesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": { "auth_ref": [ "r235", "r236", "r247", "r252", "r253", "r259", "r261", "r263", "r373", "r374", "r488" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME": { "order": 1.0, "parentTag": "us-gaap_GrossProfit", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Revenue from Contract with Customer, Including Assessed Tax", "terseLabel": "Gross revenues" } } }, "localname": "RevenueFromContractWithCustomerIncludingAssessedTax", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME", "http://www.nv5.com/role/ReportableSegmentsRevenueFromContractsWithCustomersbyGeographicLocationDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": { "auth_ref": [ "r144", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r617" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for revenue from contract with customer.", "label": "Revenue from Contract with Customer [Policy Text Block]", "terseLabel": "Performance Obligations" } } }, "localname": "RevenueFromContractWithCustomerPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock": { "auth_ref": [ "r20" ], "lang": { "en-us": { "role": { "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.", "label": "Revenue from External Customers by Geographic Areas [Table Text Block]", "terseLabel": "Schedule Of Revenue From External Customers By Geographic Areas" } } }, "localname": "RevenueFromExternalCustomersByGeographicAreasTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueRemainingPerformanceObligation": { "auth_ref": [ "r136" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue.", "label": "Revenue, Remaining Performance Obligation, Amount", "terseLabel": "Remaining revenue performance obligation amount" } } }, "localname": "RevenueRemainingPerformanceObligation", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "auth_ref": [ "r137" ], "lang": { "en-us": { "role": { "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period", "terseLabel": "Remaining performance obligation expected timing of satisfaction" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "xbrltype": "durationItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "auth_ref": [ "r137" ], "lang": { "en-us": { "role": { "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in YYYY-MM-DD format.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]", "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]", "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPoliciesRevenueRecognitionDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenuesFromExternalCustomersAndLongLivedAssetsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Revenues from External Customers and Long-Lived Assets [Line Items]", "terseLabel": "Revenues from External Customers and Long-Lived Assets [Line Items]" } } }, "localname": "RevenuesFromExternalCustomersAndLongLivedAssetsLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenueFromContractsWithCustomersbyGeographicLocationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevolvingCreditFacilityMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount.", "label": "Revolving Credit Facility [Member]", "terseLabel": "Revolving Credit Facility" } } }, "localname": "RevolvingCreditFacilityMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": { "auth_ref": [ "r33" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]", "terseLabel": "Schedule Of Accounts, Notes, Loans And Financing Receivable" } } }, "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BilledandUnbilledReceivablesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the components of accrued liabilities.", "label": "Schedule of Accrued Liabilities [Table Text Block]", "terseLabel": "Schedule Of Accrued Liabilities" } } }, "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/AccruedLiabilitiesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock": { "auth_ref": [ "r35", "r737", "r738" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the components of accumulated other comprehensive income (loss).", "label": "Schedule of Accumulated Other Comprehensive Income (Loss) [Table Text Block]", "terseLabel": "Schedule of Accumulated Other Comprehensive Income (Loss)" } } }, "localname": "ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockholdersEquityTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": { "auth_ref": [ "r44" ], "lang": { "en-us": { "role": { "documentation": "Schedule for securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by Antidilutive Securities.", "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]", "terseLabel": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]" } } }, "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/EarningsperShareNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionContingentConsiderationTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Business Acquisitions by Acquisition, Contingent Consideration [Table Text Block]", "terseLabel": "Schedule Of Changes Carrying Value Of Estimated Contingent Consideration" } } }, "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionContingentConsiderationTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ContingentConsiderationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfDebtInstrumentsTextBlock": { "auth_ref": [ "r29", "r59", "r60", "r78", "r79", "r81", "r83", "r119", "r120", "r626", "r628", "r677" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of long-debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the entity, if longer.", "label": "Schedule of Long-Term Debt Instruments [Table Text Block]", "terseLabel": "Schedule Of Notes Payable And Other Obligations" } } }, "localname": "ScheduleOfDebtInstrumentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/NotesPayableandOtherObligationsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "auth_ref": [ "r681" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.", "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "terseLabel": "Schedule Of Reconciliation Of The Net Income And Weighted Average Shares Outstanding For The Calculation Of Basic And Diluted Earnings Per Share" } } }, "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/EarningsperShareTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock": { "auth_ref": [ "r48" ], "lang": { "en-us": { "role": { "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.", "label": "Revenue from External Customers by Products and Services [Table Text Block]", "terseLabel": "Schedule Of Revenue From External Customers By Products And Services" } } }, "localname": "ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable": { "auth_ref": [ "r109" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure about the extent of the entity's reliance on its major customers.", "label": "Schedule of Revenue by Major Customers, by Reporting Segments [Table]", "terseLabel": "Schedule of Revenue by Major Customers, by Reporting Segments [Table]" } } }, "localname": "ScheduleOfEntityWideRevenueByMajorCustomersByReportingSegmentsTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "auth_ref": [ "r53", "r56", "r489" ], "lang": { "en-us": { "role": { "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Schedule of Finite-Lived Intangible Assets [Table]", "terseLabel": "Schedule of Finite-Lived Intangible Assets [Table]" } } }, "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": { "auth_ref": [ "r53", "r56" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.", "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]", "terseLabel": "Schedule Of Finite-lived Intangible Assets" } } }, "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfGoodwillTable": { "auth_ref": [ "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r285", "r624" ], "lang": { "en-us": { "role": { "documentation": "Schedule of goodwill and the changes during the year due to acquisition, sale, impairment or for other reasons.", "label": "Schedule of Goodwill [Table]", "terseLabel": "Schedule of Goodwill [Table]" } } }, "localname": "ScheduleOfGoodwillTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfGoodwillTextBlock": { "auth_ref": [ "r624", "r686", "r687", "r688", "r689", "r690", "r691", "r692", "r693", "r694", "r695", "r696" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.", "label": "Schedule of Goodwill [Table Text Block]", "terseLabel": "Schedule Of Goodwill" } } }, "localname": "ScheduleOfGoodwillTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "auth_ref": [ "r13" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.", "label": "Property, Plant and Equipment [Table]", "terseLabel": "Property, Plant and Equipment [Table]" } } }, "localname": "ScheduleOfPropertyPlantAndEquipmentTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/PropertyandEquipmentnetDetails", "http://www.nv5.com/role/PropertyandEquipmentnetNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": { "auth_ref": [ "r123" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]", "terseLabel": "Schedule Of The Fair Values Of The Assets Acquires And Liabilities Assumed" } } }, "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Revenue by Major Customers by Reporting Segments [Table Text Block]", "terseLabel": "Schedule Of Revenue By Major Customers By Reporting Segments" } } }, "localname": "ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable": { "auth_ref": [ "r49", "r94" ], "lang": { "en-us": { "role": { "documentation": "Schedule of material long-lived assets (excluding financial instruments, customer relationships with financial institutions, mortgage and other servicing rights, deferred policy acquisition costs, and deferred taxes assets) located in identified geographic areas and/or the amount of revenue from external customers attributed to that country from which revenue is material. An entity may also provide subtotals of geographic information about groups of countries.", "label": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]", "terseLabel": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]" } } }, "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenueFromContractsWithCustomersbyGeographicLocationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "auth_ref": [ "r45", "r46", "r47", "r50" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.", "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]", "terseLabel": "Schedule Of Segment Reporting Information, By Segment" } } }, "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "auth_ref": [ "r379", "r381", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about share-based payment arrangement.", "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]", "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]" } } }, "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails", "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock": { "auth_ref": [ "r62" ], "lang": { "en-us": { "role": { "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.", "label": "Share-Based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block]", "terseLabel": "Share-based Payment Arrangement, Restricted Stock Unit, Activity" } } }, "localname": "ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_SegmentDomain": { "auth_ref": [ "r231", "r234", "r235", "r236", "r237", "r238", "r239", "r240", "r241", "r242", "r243", "r244", "r245", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r257", "r263", "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r293", "r294", "r512", "r513", "r514", "r515", "r516", "r517", "r518", "r519", "r520", "r521", "r522", "r624", "r666", "r750" ], "lang": { "en-us": { "role": { "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.", "label": "Segments [Domain]", "terseLabel": "Segments [Domain]" } } }, "localname": "SegmentDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails", "http://www.nv5.com/role/ReportableSegmentsRevenueFromContractsWithCustomersbyGeographicLocationDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SegmentReportingAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Segment Reporting [Abstract]", "terseLabel": "Segment Reporting [Abstract]" } } }, "localname": "SegmentReportingAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_SegmentReportingDisclosureTextBlock": { "auth_ref": [ "r230", "r231", "r232", "r233", "r234", "r246", "r251", "r255", "r256", "r257", "r258", "r259", "r260", "r263" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.", "label": "Segment Reporting Disclosure [Text Block]", "terseLabel": "Reportable Segments" } } }, "localname": "SegmentReportingDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegments" ], "xbrltype": "textBlockItemType" }, "us-gaap_SegmentReportingRevenueReconcilingItemLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Segment Reporting, Revenue Reconciling Item [Line Items]", "verboseLabel": "Segment Reporting, Revenue Reconciling Item [Line Items]" } } }, "localname": "SegmentReportingRevenueReconcilingItemLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember": { "auth_ref": [ "r67" ], "lang": { "en-us": { "role": { "documentation": "Represents the aggregation and reporting of combined amounts of individually immaterial business combinations that were completed during the period.", "label": "Series of Individually Immaterial Business Acquisitions [Member]", "terseLabel": "Series of Individually Immaterial Business Acquisitions" } } }, "localname": "SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsNarrativeDetails", "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensation": { "auth_ref": [ "r11" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS": { "order": 12.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of noncash expense for share-based payment arrangement.", "label": "Share-Based Payment Arrangement, Noncash Expense", "terseLabel": "Stock-based compensation" } } }, "localname": "ShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": { "auth_ref": [ "r641" ], "lang": { "en-us": { "role": { "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.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period", "terseLabel": "Award vesting period (n years)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "durationItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": { "auth_ref": [ "r400" ], "lang": { "en-us": { "role": { "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period", "negatedLabel": "Forfeited (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": { "auth_ref": [ "r400" ], "lang": { "en-us": { "role": { "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.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value", "terseLabel": "Forfeited (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "auth_ref": [ "r398" ], "lang": { "en-us": { "role": { "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period", "terseLabel": "Granted (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r398" ], "lang": { "en-us": { "role": { "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).", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value", "terseLabel": "Granted (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": { "auth_ref": [ "r395", "r396" ], "lang": { "en-us": { "role": { "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number", "periodEndLabel": "Ending (in shares)", "periodStartLabel": "Beginning (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]", "terseLabel": "Number of Unvested Restricted Shares of Common Stock and Restricted Stock Units" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": { "auth_ref": [ "r395", "r396" ], "lang": { "en-us": { "role": { "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value", "periodEndLabel": "Ending (in dollars per share)", "periodStartLabel": "Beginning (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": { "auth_ref": [ "r399" ], "lang": { "en-us": { "role": { "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period", "negatedLabel": "Vested (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue": { "auth_ref": [ "r402" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value", "terseLabel": "Fair value of restricted shares vested" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r399" ], "lang": { "en-us": { "role": { "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.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value", "terseLabel": "Vested (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "auth_ref": [ "r379", "r381", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails", "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": { "auth_ref": [ "r642" ], "lang": { "en-us": { "role": { "documentation": "Number of shares authorized for issuance under share-based payment arrangement.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized", "terseLabel": "Number of shares authorized (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "auth_ref": [ "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409" ], "lang": { "en-us": { "role": { "documentation": "Award under share-based payment arrangement.", "label": "Award Type [Domain]", "terseLabel": "Award Type [Domain]" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails", "http://www.nv5.com/role/StockBasedCompensationRestrictedStockAwardsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Intrinsic value of outstanding award under share-based payment arrangement. Excludes share and unit options.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value, Outstanding", "terseLabel": "Total estimated fair value" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_SharesOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.", "label": "Shares, Outstanding", "periodEndLabel": "Ending balance (in shares)", "periodStartLabel": "Beginning balance (in shares)" } } }, "localname": "SharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "xbrltype": "sharesItemType" }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "auth_ref": [ "r106", "r175" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.", "label": "Significant Accounting Policies [Text Block]", "terseLabel": "Summary of Significant Accounting Policies" } } }, "localname": "SignificantAccountingPoliciesTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/SummaryofSignificantAccountingPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_StatementBusinessSegmentsAxis": { "auth_ref": [ "r147", "r231", "r234", "r235", "r236", "r237", "r238", "r239", "r240", "r241", "r242", "r243", "r244", "r245", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r257", "r263", "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r291", "r293", "r294", "r512", "r513", "r514", "r515", "r516", "r517", "r518", "r519", "r520", "r521", "r522", "r624", "r666", "r750" ], "lang": { "en-us": { "role": { "documentation": "Information by business segments.", "label": "Segments [Axis]", "terseLabel": "Segments [Axis]" } } }, "localname": "StatementBusinessSegmentsAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofGoodwillDetails", "http://www.nv5.com/role/ReportableSegmentsRevenueFromContractsWithCustomersbyGeographicLocationDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyContractTypeDetails", "http://www.nv5.com/role/ReportableSegmentsRevenuebyCustomerTypeDetails", "http://www.nv5.com/role/ReportableSegmentsSummarizedFinancialInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r18", "r32", "r145", "r165", "r166", "r167", "r181", "r182", "r183", "r187", "r195", "r197", "r229", "r268", "r271", "r361", "r415", "r416", "r417", "r427", "r428", "r449", "r450", "r451", "r452", "r453", "r455", "r458", "r469", "r470", "r471", "r472", "r473", "r474", "r483", "r524", "r525", "r526", "r535", "r589" ], "lang": { "en-us": { "role": { "documentation": "Information by component of equity.", "label": "Equity Components [Axis]", "terseLabel": "Equity Components [Axis]" } } }, "localname": "StatementEquityComponentsAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY", "http://www.nv5.com/role/StockholdersEquityScheduleofAccumulatedOtherComprehensiveIncomeLossDetails" ], "xbrltype": "stringItemType" }, "us-gaap_StatementLineItems": { "auth_ref": [ "r181", "r182", "r183", "r229", "r488", "r532", "r536", "r542", "r543", "r544", "r545", "r546", "r547", "r550", "r553", "r554", "r555", "r556", "r557", "r558", "r559", "r560", "r561", "r563", "r564", "r565", "r566", "r567", "r569", "r571", "r572", "r575", "r576", "r577", "r578", "r579", "r580", "r581", "r582", "r583", "r584", "r585", "r586", "r589", "r648" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Statement [Line Items]", "terseLabel": "Statement [Line Items]" } } }, "localname": "StatementLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "xbrltype": "stringItemType" }, "us-gaap_StatementOfCashFlowsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Cash Flows [Abstract]", "terseLabel": "Statement of Cash Flows [Abstract]" } } }, "localname": "StatementOfCashFlowsAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_StatementOfFinancialPositionAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Financial Position [Abstract]", "terseLabel": "Statement of Financial Position [Abstract]" } } }, "localname": "StatementOfFinancialPositionAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_StatementOfStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Stockholders' Equity [Abstract]", "terseLabel": "Statement of Stockholders' Equity [Abstract]" } } }, "localname": "StatementOfStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [ "r181", "r182", "r183", "r229", "r488", "r532", "r536", "r542", "r543", "r544", "r545", "r546", "r547", "r550", "r553", "r554", "r555", "r556", "r557", "r558", "r559", "r560", "r561", "r563", "r564", "r565", "r566", "r567", "r569", "r571", "r572", "r575", "r576", "r577", "r578", "r579", "r580", "r581", "r582", "r583", "r584", "r585", "r586", "r589", "r648" ], "lang": { "en-us": { "role": { "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.", "label": "Statement [Table]", "terseLabel": "Statement [Table]" } } }, "localname": "StatementTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "xbrltype": "stringItemType" }, "us-gaap_StockIssued1": { "auth_ref": [ "r41", "r42", "r43" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The fair value of stock issued in noncash financing activities.", "label": "Stock Issued", "terseLabel": "Stock issuance for acquisitions" } } }, "localname": "StockIssued1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWS" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodSharesAcquisitions": { "auth_ref": [ "r86", "r87", "r121" ], "lang": { "en-us": { "role": { "documentation": "Number of shares of stock issued during the period pursuant to acquisitions.", "label": "Stock Issued During Period, Shares, Acquisitions", "terseLabel": "Stock issuance for acquisitions (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesAcquisitions", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures": { "auth_ref": [ "r18", "r86", "r87", "r121" ], "lang": { "en-us": { "role": { "documentation": "Number of shares issued during the period related to Restricted Stock Awards, net of any shares forfeited.", "label": "Stock Issued During Period, Shares, Restricted Stock Award, Net of Forfeitures", "terseLabel": "Restricted stock issuance, net (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures": { "auth_ref": [ "r18", "r121" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value of stock related to Restricted Stock Awards issued during the period, net of the stock value of such awards forfeited.", "label": "Stock Issued During Period, Value, Restricted Stock Award, Net of Forfeitures", "terseLabel": "Restricted stock issuance, net" } } }, "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r87", "r90", "r91", "r110", "r552", "r568", "r590", "r591", "r643", "r654", "r676", "r685", "r736", "r755" ], "calculation": { "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS": { "order": 3.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.", "label": "Equity, Attributable to Parent", "periodEndLabel": "Ending balance", "periodStartLabel": "Beginning balance", "totalLabel": "Total stockholders\u2019 equity" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS", "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFCHANGESINSTOCKHOLDERSEQUITY", "http://www.nv5.com/role/StockholdersEquityScheduleofAccumulatedOtherComprehensiveIncomeLossDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Equity, Attributable to Parent [Abstract]", "terseLabel": "Stockholders\u2019 equity:" } } }, "localname": "StockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDBALANCESHEETS" ], "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquityNoteDisclosureTextBlock": { "auth_ref": [ "r118", "r177", "r348", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r456", "r592", "r593", "r603" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for equity.", "label": "Equity [Text Block]", "terseLabel": "Stockholders' Equity" } } }, "localname": "StockholdersEquityNoteDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/StockholdersEquity" ], "xbrltype": "textBlockItemType" }, "us-gaap_TechnologyBasedIntangibleAssetsMember": { "auth_ref": [ "r21" ], "lang": { "en-us": { "role": { "documentation": "Technology-based intangible assets, including, but not limited to, patented technology, unpatented technology, and developed technology rights.", "label": "Technology-Based Intangible Assets [Member]", "terseLabel": "Developed technology" } } }, "localname": "TechnologyBasedIntangibleAssetsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TradeNamesMember": { "auth_ref": [ "r71" ], "lang": { "en-us": { "role": { "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof.", "label": "Trade Names [Member]", "terseLabel": "Trade name", "verboseLabel": "Trade name" } } }, "localname": "TradeNamesMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/BusinessAcquisitionsSummaryoftheFairValuesofAssetsAcquiredandLiabilitiesAssumedDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsNarrativeDetails", "http://www.nv5.com/role/GoodwillandIntangibleAssetsScheduleofFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "auth_ref": [ "r203", "r224" ], "calculation": { "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "lang": { "en-us": { "role": { "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.", "label": "Weighted Average Number of Shares Outstanding, Diluted", "terseLabel": "Diluted (in shares)", "totalLabel": "Diluted weighted average shares outstanding (in shares)" } } }, "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME", "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "auth_ref": [ "r201", "r224" ], "calculation": { "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails": { "order": 1.0, "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.", "label": "Weighted Average Number of Shares Outstanding, Basic", "terseLabel": "Basic (in shares)", "verboseLabel": "Basic weighted average shares outstanding (in shares)" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.nv5.com/role/CONSOLIDATEDSTATEMENTSOFNETINCOMEANDCOMPREHENSIVEINCOME", "http://www.nv5.com/role/EarningsperShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "sharesItemType" } }, "unitCount": 6 } }, "std_ref": { "r0": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "940", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r1": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479405/805-10-25-16", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r10": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-20", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r100": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.4)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r101": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r102": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r103": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r104": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r105": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r106": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "235", "URI": "https://asc.fasb.org//235/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r107": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "250", "URI": "https://asc.fasb.org//250/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r108": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "275", "URI": "https://asc.fasb.org//275/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r11": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r110": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 4.E)", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r111": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "350", "URI": "https://asc.fasb.org//350/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r112": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(3)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r113": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r114": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "360", "URI": "https://asc.fasb.org//360/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r115": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r116": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "440", "URI": "https://asc.fasb.org//440/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r117": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "470", "URI": "https://asc.fasb.org//470/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r118": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "505", "URI": "https://asc.fasb.org//505/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r119": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-6", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r12": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r120": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-7", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r121": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r122": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "805", "URI": "https://asc.fasb.org//805/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r124": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)(4)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r125": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "810", "URI": "https://asc.fasb.org//810/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r126": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-19", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r127": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(11))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r128": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(13))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r129": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(16))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r13": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r130": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(23))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r131": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(15))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r132": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(22))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r133": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04.9)", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r134": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r135": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Subparagraph": "(d)", "Topic": "958", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r136": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r137": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r138": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "958", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r139": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "958", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r14": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r140": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(d)(1)", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r141": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(d)(2)", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r142": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r143": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "250", "URI": "https://asc.fasb.org//250/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r144": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "https://asc.fasb.org//606/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r145": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "105", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r146": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "105", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r147": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "205", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r148": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r149": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r15": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r150": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r151": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(1))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r152": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(15))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r153": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(16))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r154": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(17))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r155": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(18))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r156": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3)(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r157": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r158": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(4))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r159": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(9))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r16": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(3)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r160": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r161": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r162": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r163": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r164": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r165": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r166": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r167": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r168": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(210.5-03(11))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r169": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(24))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r17": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c),(3)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r170": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(25))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r171": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(5))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r172": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.B)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r173": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r174": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r175": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r176": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(c))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r177": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(e)(1))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r178": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r179": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(2))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r18": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r180": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.12-04(a))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r181": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r182": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r183": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r184": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r185": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r186": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r187": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(3)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r188": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(4)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r189": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r19": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-4", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r190": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r191": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r192": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r193": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r194": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r195": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r196": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r197": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r198": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.M.Q2)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r199": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r2": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "30", "SubTopic": "30", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479637/805-30-30-7", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r20": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "a", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r200": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "260", "URI": "https://asc.fasb.org//260/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r201": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r202": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r203": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r204": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r205": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r206": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-23", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r207": { "Name": "Accounting Standards Codification", "Paragraph": "26", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-26", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r208": { "Name": "Accounting Standards Codification", "Paragraph": "28A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-28A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r209": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-40", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r21": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-13", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r210": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-40", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r211": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-40", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r212": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)(3)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-40", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r213": { "Name": "Accounting Standards Codification", "Paragraph": "44", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-44", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r214": { "Name": "Accounting Standards Codification", "Paragraph": "48", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-48", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r215": { "Name": "Accounting Standards Codification", "Paragraph": "48", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-48", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r216": { "Name": "Accounting Standards Codification", "Paragraph": "51", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-51", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r217": { "Name": "Accounting Standards Codification", "Paragraph": "52", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-52", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r218": { "Name": "Accounting Standards Codification", "Paragraph": "53", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-53", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r219": { "Name": "Accounting Standards Codification", "Paragraph": "54", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-54", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r22": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(22))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r220": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r221": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r222": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r223": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r224": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r225": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r226": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r227": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r228": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r229": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "272", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r23": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r230": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "280", "URI": "https://asc.fasb.org//280/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r231": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r232": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r233": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r234": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r235": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r236": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r237": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r238": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r239": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r24": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a),20,24)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r240": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r241": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r242": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r243": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(j)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r244": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r245": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r246": { "Name": "Accounting Standards Codification", "Paragraph": "26", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-26", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r247": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r248": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r249": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r25": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r250": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r251": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r252": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r253": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r254": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r255": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r256": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r257": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r258": { "Name": "Accounting Standards Codification", "Paragraph": "34", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-34", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r259": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r26": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19-26)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r261": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r262": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r265": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r266": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r267": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r268": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r269": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r27": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.20)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r270": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r271": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r272": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479344/326-20-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r273": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r274": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r275": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r276": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r277": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r278": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r279": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r28": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.21)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r280": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r281": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r282": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r283": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r284": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r285": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r286": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r287": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r288": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r289": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r29": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r290": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r292": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "420", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r293": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "420", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r294": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 5.P.4(d))", "Topic": "420", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r295": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "440", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r296": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "440", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r297": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "20", "Topic": "450", "URI": "https://asc.fasb.org//450-20/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r298": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r299": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r3": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "30", "SubTopic": "30", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479637/805-30-30-8", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r30": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.24)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r300": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r301": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r302": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r303": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r304": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r305": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "30", "Topic": "450", "URI": "https://asc.fasb.org//450-30/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r306": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483049/450-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r307": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r308": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r309": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r31": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.25)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r310": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r311": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(5))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r312": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r313": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r314": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r315": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r316": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r317": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r318": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r319": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(5))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r32": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29-31)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r320": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r321": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r322": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r323": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r324": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r325": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r326": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r327": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r328": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(i)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r329": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r33": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.3,4)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r330": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r331": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r332": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r333": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r334": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r335": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r336": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r337": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r338": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r339": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r34": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r340": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r341": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r342": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r343": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r344": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r345": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r346": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r347": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r348": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r349": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r35": { "Name": "Accounting Standards Codification", "Paragraph": "14A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r350": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r351": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r352": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r353": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(i)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r354": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r355": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r356": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r357": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-16", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r358": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r359": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r36": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-5", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r360": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r361": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r362": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r363": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r364": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r365": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-17", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r366": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r367": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-18", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r368": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-19", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r369": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r37": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r370": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r371": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r372": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r373": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r374": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r375": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r376": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(i)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r377": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(d)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r378": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "718", "URI": "https://asc.fasb.org//718/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r379": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-1D", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r38": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r380": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r381": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r382": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480454/718-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r383": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r384": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r385": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r386": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(3)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r387": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r388": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r389": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r39": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r390": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r391": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(01)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r392": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(02)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r393": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(03)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r394": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(04)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r395": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r396": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r397": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r398": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(01)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r399": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(02)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r4": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "35", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479613/805-30-35-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r40": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r400": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(03)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r401": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r402": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r403": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r404": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r405": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r406": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r407": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r408": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iv)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r409": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(v)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r41": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r410": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(1)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r411": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r412": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r413": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r414": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(l)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r415": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r416": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r417": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r418": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 14.F)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r419": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "740", "URI": "https://asc.fasb.org//740/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r42": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-4", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r420": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r421": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r422": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r423": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r424": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r425": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r426": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r427": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r428": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(3)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r429": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r43": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-5", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r430": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r431": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(3)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r432": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r433": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.7)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r434": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.C)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r435": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "270", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r436": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r437": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r438": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(3)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r439": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r44": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r440": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r441": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)(1)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r442": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)(3)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r443": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(c)(1)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r444": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r445": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r446": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r447": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r448": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r449": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r45": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r450": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r451": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)(i)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r452": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)(iii)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r453": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)(iv)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r454": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(i)(1)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r455": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(i)(3)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r456": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r457": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(1)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r458": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r459": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(4)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r46": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r460": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r461": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(c)(1)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r462": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(c)(2)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r463": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(c)(3)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r464": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r465": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r466": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r467": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(3)", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r468": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r469": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r47": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r470": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r471": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r472": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r473": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r474": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r475": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147483013/835-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r476": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r477": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482900/835-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r478": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r479": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(3)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r48": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r480": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r481": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r482": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r483": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(03)", "Topic": "848", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r484": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "848", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r485": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(1)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r486": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "910", "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r487": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "310", "Subparagraph": "(b)", "Topic": "912", "URI": "https://asc.fasb.org//1943274/2147482312/912-310-45-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r488": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.L)", "Topic": "924", "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r489": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "926", "URI": "https://asc.fasb.org//1943274/2147483154/926-20-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r49": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r490": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(f)(1)", "Topic": "926", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r491": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(f)(2)", "Topic": "926", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r492": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(f)(3)", "Topic": "926", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r493": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "340", "Topic": "928", "URI": "https://asc.fasb.org//1943274/2147483147/928-340-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r494": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(10)(1))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r495": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(26))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r496": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(27))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r497": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.9-05(b)(2))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r498": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(12))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r499": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(15)(b)(2))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r5": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "35", "SubTopic": "30", "Subparagraph": "b", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479613/805-30-35-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r50": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r500": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r501": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(19))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r502": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(21))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r503": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(22))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r504": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r505": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r506": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(25))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r507": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(11))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r508": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(18))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r509": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(22))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r51": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r510": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(23))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r511": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(9))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r512": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column A))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r513": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column B))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r514": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column C))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r515": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column D))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r516": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column E))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r517": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column F))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r518": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column G))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r519": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column H))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r52": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r520": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column I))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r521": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column J))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r522": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column K))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r523": { "Name": "Accounting Standards Codification", "Paragraph": "7A", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(d)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-7A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r524": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r525": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(1)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r526": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(2)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r527": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(i)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r528": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(ii)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r529": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(iii)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r53": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r530": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(iv)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r531": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(2)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r532": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.6-03(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r533": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r534": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r535": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "205", "Subparagraph": "(a)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r536": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "210", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r537": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(b)(2)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r538": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r539": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(a)(2)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r54": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r540": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(e)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r541": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(f)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r542": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r543": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r544": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r545": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r546": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r547": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r548": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(14))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r549": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(15))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r55": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "((a)(1),(b))", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r550": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(16)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r551": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(17))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r552": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(19))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r553": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(2)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r554": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(2)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r555": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(3)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r556": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(3)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r557": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(3)(c))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r558": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r559": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(c))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r56": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r560": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r561": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(e))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r562": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(8))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r563": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r564": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(c))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r565": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r566": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(e))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r567": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-05(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r568": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-05(4))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r569": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "220", "Subparagraph": "(b)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r57": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(2)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r570": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "220", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r571": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r572": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(2)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r573": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r574": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r575": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r576": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r577": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r578": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r579": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r58": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r580": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r581": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r582": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r583": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r584": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r585": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r586": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r587": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(9))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r588": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(1)(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r589": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(4)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r59": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r590": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(6))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r591": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r592": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(a)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r593": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(d)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r594": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r595": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r596": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r597": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r598": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r599": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r6": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r60": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-8", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r600": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r601": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r602": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r603": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "505", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r604": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "310", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Topic": "948", "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r605": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "440", "Subparagraph": "(a)", "Topic": "954", "URI": "https://asc.fasb.org//1943274/2147480327/954-440-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r606": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column B))", "Topic": "970", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r607": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column C))", "Topic": "970", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r608": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column D))", "Topic": "970", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r609": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column E))", "Topic": "970", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r61": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Topic": "710", "URI": "https://asc.fasb.org//1943274/2147483070/710-10-25-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r610": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column F))", "Topic": "970", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r611": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column G))", "Topic": "970", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r612": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column H))", "Topic": "970", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r613": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column I))", "Topic": "970", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r614": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Footnote 2))", "Topic": "970", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r615": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(c)", "Topic": "976", "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r616": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(b)", "Topic": "978", "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r617": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r618": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(b)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r619": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r62": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r620": { "Name": "Accounting Standards Codification", "Paragraph": "52", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r621": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r622": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r623": { "Name": "Accounting Standards Codification", "Paragraph": "12A", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481933/310-10-55-12A", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r624": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r625": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r626": { "Name": "Accounting Standards Codification", "Paragraph": "69B", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69B", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r627": { "Name": "Accounting Standards Codification", "Paragraph": "69C", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69C", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r628": { "Name": "Accounting Standards Codification", "Paragraph": "69E", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69E", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r629": { "Name": "Accounting Standards Codification", "Paragraph": "69F", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69F", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r63": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-12", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r630": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r631": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r632": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r633": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r634": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r635": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r636": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r637": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r638": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r639": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r64": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-13", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r640": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "80", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480547/715-80-55-8", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r641": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r642": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(3)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r643": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "852", "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r644": { "Name": "Accounting Standards Codification", "Paragraph": "29F", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-29F", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r645": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(b)(1)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r646": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(a)(1)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r647": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "55", "SubTopic": "210", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r648": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "310", "Subparagraph": "(d)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r649": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r650": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r651": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r652": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r653": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "830", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r654": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "830", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r655": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r656": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r657": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r658": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "308", "Subsection": "a", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r659": { "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r66": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(1)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r660": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r661": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r662": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r663": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r664": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(3)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r665": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r666": { "Name": "Accounting Standards Codification", "Paragraph": "4H", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r667": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(18))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r668": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(9))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r669": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r67": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r670": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r671": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r672": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(b)(2))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r673": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r674": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r675": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(f))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r676": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r677": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.12-04(a))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r678": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r679": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r68": { "Name": "Accounting Standards Codification", "Paragraph": "37", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479303/805-10-55-37", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r680": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r681": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r682": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-18", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r683": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r684": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//310-10/tableOfContent", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r685": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r686": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r687": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r688": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r689": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r69": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r690": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r691": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r692": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r693": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r694": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r695": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1A", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r696": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r697": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r698": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r699": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r7": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r70": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r700": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "410", "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r701": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "https://asc.fasb.org//450/tableOfContent", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r702": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r703": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r704": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r705": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r706": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r707": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r708": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r709": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r71": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-14", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r710": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r711": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(3)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r712": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r713": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r714": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r715": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r716": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(01)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r717": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(02)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r718": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(03)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r719": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(04)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r72": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-14", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r720": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r721": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r722": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r723": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(01)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r724": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(02)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r725": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(03)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r726": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r727": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r728": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r729": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r73": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-20", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r730": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r731": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r732": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r733": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iv)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r734": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(v)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r735": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r736": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r737": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r738": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r739": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r74": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-20", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r740": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "852", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r741": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "852", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r742": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(1)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r743": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(2)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r744": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(3)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r745": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r746": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r747": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r748": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r749": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(5))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r75": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "25", "SubTopic": "30", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479668/805-30-25-5", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r750": { "Name": "Accounting Standards Codification", "Paragraph": "2B", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r751": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(c)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r752": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "205", "Subparagraph": "(a)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r753": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(18))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r754": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "220", "Subparagraph": "(i)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r755": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(4)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r756": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r757": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(ii))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r758": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r759": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r76": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "25", "SubTopic": "30", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479668/805-30-25-6", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r760": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r77": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r78": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-1A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r79": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r8": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a),(b),(c)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r80": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r81": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482949/835-30-55-8", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r82": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.17)", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r83": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "470", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147480848/942-470-50-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r84": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(19))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r85": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(20))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r86": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(28))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r87": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(29))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r88": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r89": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r9": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r90": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r91": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(31))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r92": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(32))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r93": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-11", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r94": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(1))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r95": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(10))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r96": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(20))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r97": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(8))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r98": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.1,2)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r99": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.2)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" } }, "version": "2.2" } ZIP 80 0001628280-23-028805-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001628280-23-028805-xbrl.zip M4$L#!!0 ( (MT"E-F\A0! .$Q$@ 1 ;G9E92TR,#(S,#Q([Q@/[ ]]]>: MW)!JPO]M__+_U>O_\^WQ5KCR!M$8NZ%PZ6,48DMXM<.1$(ZP\$_/_\-^0<*# M@\*AYX_K=?JM2V_R[MO/HU!0)$5-[THN^A>69/3EECFHMYI]K:Y9@V&]B?K- MNH'EOB'IDHZ&DOA\H/[S%T62C"_QQ5IRJV.[?TQO?'U];Z+WAAX8SI*R93DZ4C?U@U2AD&Z\&),H#2[/:P'>+#P M'?B[\>R]S-W])?21&Q!7T X=W"9,KZ<,_N5+_.$O7^)']SWK MO?V+9;\(0?CN #@L.Y@XZ/W"]5P, [#?+LB-V(]_M2T+N_17N'X'6L2W!_'[ MW\)'//RU-J@#,UTT)D_"]D77A=>]7\+H?.3,6EL" MUNJJTC)@9 M/S?"25)]=V\$ .?_"R+^&3X+I:\Q:FTP_KQ<\P.V>M?B*9JW] M#V7_%W3@Z19]@X.>:T(,OU]K@->+H?V&K?H0.40Q)6]KU=KT@_U?>!GY_@+% MNJYU!6O!XKLM^*0^AJ>,ZA::LDV5:FU9^:)*V5YO:.D $M5XT1LA'W\#C6M= M>N,)=@,JY_=\H#>R4>=5^1;],=O. AM]SGFAIP.SM246OM! M^=?2V+XLPM?'0PP4&.!@A=01O7H14&4#HQ>HGKT(0=9^K07V>.(04:6?C7PR MN04!:[P%%CSBR^(SXO?/7IJ,(? BG_Y%=<1%0C$Z%<*P]'-,I2C]R[;(WT,; M^P)]/EZI=B]O_KXH71^_W$X_6GSZA-(S_0LTDQ\28% )JDMR79H^:G9M.DQK M[E9S[M;T2OIW^I(O"_->30:% 3+$*CI,9M:L2]KT0U?9J:2Q M125B6H %=#B50!%2;3F='BSJ,*SY6ZDR1*'G[TG0I>^3#Z^PZXUM=]5C=X7S MPB.^+(Y^*S]U!OCY44UJ8#*>6$T:K)%!H610=R�LF@Y$$&DT$RR#NB(4+8 SO\@<=]>(5EP]4X!C&U^4*8$OE.%SP9\ S M\ -'PPV#SIL-ZV%Z&WP.=F/[N>5?FEE0;R.[H:66?\M&@AF7@9"V7W>@ARP MW.A?>@>X> &3^V Y49X%C;MCC2UH_N6%5G3XOC_GCLZ'VC.G=YB MZ5]V/[;H-2U/7I3=93WIFI8GX5G86CS2U,KNIQ435"QFAULINX-WNJ!B00SB M'F Y&:=R=[$,7"K[KNH)';#]$P\_T+SL3F]!#EAN]"^] UR\ Y8;+\KN#)_: M CS>[DFW-HM@4-E=8":V-HM@7-GWI$^_ MM5D E_2"H@&DIH^UGD6/^ 6[$7[$8V!!7&N(ED=R!_B^[]C/M%Y1]VV"!R!6 M3_88;KD?]N#38(@&Y%HO)5_,TU^.\^"&Y9'G+/#DN&^:PF^.@ QMF.@%Q2LX MG/*$TU9-2NIN[3:B^1'$!<-B"M(GQ!_)<7WD^O7FG@S6R8 MK -/L&PG"L%F[N%!Y(.#BH/NV\")+&Q=^]Z86'%12)ER/TQ-MK0RU[?WU0_X M:/ %H6\3@%77G=*9CWE\?GCE)7 M=DWYG;_U(.XP&Q>\POWP!A9YGQ9&GF/,3W?@.23.Y"/'_A-;#Z R[2#P_/<[ M+]QF8I<''(NFSSR_#S)]F TS5I7@S(8'-Q.N+0@,9B&SOO->$S6 M-]!T*[[.5.K*PF[R0=6%F4TP8M4080E Q\DP,)B-TYPS4YB-K+#C=A]ID2MI MP./DMGMN!"]?Z()1_9,G4YB-6%S;X _@6_L%6S_ZE@X*/>4U1$'IC[#]BAVJE8&1/MO&":\04"\Q&,\J&A?+J:&;C*V6#0%E] M?Y/96$N)$%!]N\%D-D3$8<*0>VLR&X?:"R9//K+P'1IC;E/N"@!F@TZE $!I M#4F3V;A6*?A>6NN1V: :ZVQGU!;($QO,QO\X-@JW$ZL9AKRU@Y";BKMBH)KA MQQ-BH+S68C7#CB=D?5D-QF8UPXVGX3RC=D&>\*AFF/&LX9&CV=BL6'@1#T:N MYWC/[]]0L/Q%;DCNB(J*Q1Q90$5I3/D*#F*9=EB-M3)3CB1@4I9+69CCX7' M]UC@#K/!P%)H-A8XR&P([\'W8"+A^X,#*K[C6J1,](0\X]O[T_L$+W+S.O)A M:8U\##=>VV_DM_+8*\P&Q=AF09[& +-AIDPLB$LS8G]Z4VE$@-G8#L/TSQ/_ MS$96=J(_M;AZD?^"WZGRP8Y5.A&0)6:#&VSS($9]- M1@$>>8YU M,Y[XWDNYHKRRQ*QGSC@3M[L\BA EQK63JZ;YV5$-E*H6LYE4*7)68]7.:@6A2'F'6 M2\ZAO-H)R!*S+O*4-VG0M!<_(ICCT_=^_*H&F8W M>@NC-!.JAEG7F 4!R%75,.OBGJS"(D/,8-:;+0DS!%KG+!K .= MB1?4;[O"+]CQ)MB:G6 OCTPPZS&SSX=>ML!> RQF;D8 */2?+KH0FZ\5<\TNG .;]SB M>!J$(?:>;T3D+*27N5@+HZMN$5&<_+A\]E&T@\/SW.R_$Y4$Z\V*[SYFH?N:LUIEU[MED-9#/ZCS&KYW&#XZJ MN,$);=9E-1]N,QL1.&MN+\0=/O![4]SAPZT'Q1UT9N,.;$*CQ"$/G=F0!V=U MSI:ZSFRTA4U6%Z'P3Q5HCEP[QH4;D8%/@3'&*(A\W$Z> ;^F#TBOI'^3)ZP# M&K/!I;,&VK%6D!(&M,I.\O+%MDI,;&8#7$42FX7:USJSH2F6.%/$QK7!;"2) M&<[$=9MW=#DJ(1;\U,,(P6Q(@G3\(.F8<^ D MS3_B5B"*),NE,6H,YF(!QS^FT'E%OK741@\ZQ!R&VZ/YK7F\K "M,K/S, M^?Y['TC@P&(*6,R&&7)A/SMA8H/9X$)1A#X _EIN\&Q:V- M^G3[\QL*L$7OJ&@#39.Y2 A[?"ED;6$ND, 87XI:7,A8*,FB:S@8PSQD)!CD>3 MV?#)&6.A(*.ZR5S0YAC,R16 )VD'7(B]P%R@B&.A,'N!N> 4QT)A]@)S 3&. MA<+L!>:"<,QCX20]O0NQ%YB+$G(L%&8O,!=WY%@HREYH,1=WY%@HREYH,1=W M9#'X4] "WF(N$,@B0J2GD)6GE$&70J2GD+6'N3A( 7OKTU=]Q]ZSCR8C M>X"<^#4#+W)#__WB9Z]BRYHB,1?UR'?#@G-^+>>9C'$%MP"+6)&8B\69#/29C"&=IQ R%R]B:^&= MZ\3ZLYK[B(K$7$R*K17X'"!0ZKC7]G620V K!&3F F"<)S)SH:FS7IR+L,]D MYF)49[TX%P*!4L?&*K9BR>=KQ"6.JY3 ME86W@!QC12EU.*2"V\AG&>)RESXBJV$EZ)L)N9B2VPEO!3%EE+'F2J[!:J6.O9S$B56R-I2 MZGA,5>O%*RIS,1+FE%@1;-%XF"2\^(%^]_S+* B],?;GG_\0]>%K'=?Z1X0" M._ZKAP>AYULE":F>FN@WF EY\(2\N)=$H6?2+"=5=V;QA@[G(6PG04-ET M9:-D8;AS4]W,!E(L @,E)"]AQD.P $F9C;B?A6LD,@*) PEQSQS(R" M0@#";-R1P/72ATZ$H@# ;A^0<6\DQ56(V*,B- A:L1E5B-B#( MC0(V %+JV..9&06% (39N"/GV!J.,1L$G(IT]]\1C.O2&T\\=R;2Z6V=P2 : M1P[<:SWYR W@-WA,Q_H=F$R^G3_;;!>8 _=23LA*79U-.[FR'R>8C;25@1,? M\G!VY<07^^W"QX$7^0,"S[I?T+_* ,LI6FB57%:C4MA#5D:2VU MJ2-YJ!K#5E/N2_W_)<;3[#M!^.X H\:V6Q]A^WD47JC&)/SZ:EOAZ$*6I/^H MT?O:OP03Y+9_Z?M?X-OQ[_%#EAY%!EQ'COWL7@R *-BOQ5].KP\\Q_,O_B+1 M_[X.88;U(1K;SOO%?ST!3P/A#K\*C]X8N?\E!L">>@ T&<8W!O:?^$)68(#T MS]=XQ"8\QX'5-)V!K)!A_[R[>>I>";VGSE.WMSAF!D?;ZU[^?+QYNNGVA,[= ME=#]G\N_=>Z^=X7+^Q\_;GJ]F_N[ J<@[32%?Z)@!.M3Z+GB?_Y%-J2O5XW+ MAJ!(NM8J;NS-G8;^O_O]MW9:8^0_@T2%WB0F'BLHN[Y__"'\ LK#]=R["$P+ M>R D.N81#XEZEVN"BXCJMK!]<>6!IH3Q/KU/<(VJER'?]$4\\/ZP)0\\?HQ!6];?P8D@L_7KH1U-1!"_W/__2,C7CZT=IG*(VX<+I M:;F;Z"Z3A*=[ 9;.)U@? MXS5'5H7[1T'6/UF?XP_NKX6GOW6%N?5UNK9V+I\$N"RW5&V!8!297ZAHS@G^ MZ:=.]99 _[OV?"$<8>'?*4*$V%(4P*G"UAXJ_8%^O1N[9(M L^"3^A@>,2)? MJUOHO?Z.D5_';@H\\)[_.X(QR*) 3-IUZ#LRO9:D+J97<0O1KBR]?UP:(U\^ M^/)Q\/)!O5F;.+/KUX\AW7WUZ-+ )?EN_-5T<=!)F%:NJWJ3Q&^X MMW_B@(ZVTSRSLOD1/]L!4<+A'5Q)66W4VG>_Z<)WQ^LC1Q1NW$&#(8[O*@F? MNF]H$-(I"]Y0\*=3%5 @!!,\(-L+EF"[@AT&PF!$/:G/9XQD?0V03^N*M%J- MIF[\QWI/Y#_6^0-*LZ&VC+67I8:\]MJFQ\IZ0]:;N3_6;.BJFOM3%;W1TM=? MWIL&9D,S=AMMXH@MN@E&[0-^$D2 HR $GF-;0BHX&]R(&)!L.1)9%2[H4L^? M).8=W:"\]"(W]-\OP4E<<-!@2 .RG1[BB>^]D.?, BYFK7V%'?2*?'R IR81 M M=6W,JYE7#K";W=)!O1 \JQ19.H66MK>EW5]*8DFQL9L9M04'.B/#1>':?X M1%$M@(/G@8?G"[]'OAU8]H Z>; .V_,20&_SGY%K_TG__GP4^%:#KC>-QT:O M(73'$\=[!\(N(E.X\QJ?5V'N0T1,W2$@MI:RK=UOW?+4E0*Q4S"I"GJE8UD^ M#H+DGUMXGISJE%:MK4B2T/.B<"0\(/\/&""RQ'P#FX"V2)P;T]C>,0OES"K_?^D_MQ>@2V*,')>N='6] M]Q_ )H25='>3459J[6N8F6TA;C(>7RT]>, 'Y_^W)[%=G_! K;5555)D=FS% ML6U9#B[,IDFH1>S"B0]XMB?($? ;'D2A_4+"-F#>X(!IJQ >4QCY %\" =@* MPV\I7V%;'&M5,B>38;W=)9*L01T?HP49U&KMEJY]E,!D;V_W9]]Z (&'D>=^ M")/+.CB%+;VNR+)2QJ#I+"+\GW]I*K+Y-1!"[. )F:G@TJF*Q(=S(B(F @+R M"H,%"#([M])O NPZT1[H3]\.;7AD'/7&/K:$2>0'$0E_AYY 6F 2IU%6/O4_ M$^U+-F,[@_""U?S&_:/":JO1DLR](J);HJ4M+?\XJ]9HFOL-:/,U76[E/EA* MV=T>F[='5."B^V2'#MU0PF@P$@8."H(\S).2$L-'=!GHO8_[GO,I'TNMG*2X M2_89*2SPVV"$W&?XP!5>1S9\,E/$VXW])9>W3*;JH6Y4LGB]RTJ?BMK4L#+B MY :@:"_T!G^(PE^EAB0+$^0++\B)CK(3YAAK9?XP;8M0*E2 M2_;&M%\$E._+@1"H2A[8#5BQP' M;B'IK\08_G=D$U,8+. ^3FZ )R?6\#3?T_/G\ST3ZWC.J$Y91"QFHO))OJ=@ MP558""LP4@@@6@V#DD623-.&W5VO_"P5K?^.39U11HTX,S M!28[KJ._<.?ME8IY#!)I7W=UATNA,@0B-2 P8SL,0RY9.YQW <,Z M\B[?+A5[]2?A$ M+II?!455&LD=X16!?P.%B("96>A6??>PU'Z>4&V!E8L/#0=NFQ"+HU0B*Q"DQQ MS>CH9?EK>MO6&]:/+;V1&!;)S6O&F=YINW-*#ERVNI)&$^>-I ;#84535O9* M-@7GL[EWZ'#M-:VAJ/D_558;FIY_LNF1!MML2$;^H=7C#%91&H:I'V6PNY%@ M_\AJD:?R#CWB.#NDXE^"HGOV_/<5OC*]B:K 07+3S&U6Y%K[=K5"/>'AQSQ6 MS9S/F7ZP?Y*J/J4[][EZK(K(T#@M+N.O1,&H48'H70#&N;[2B;(3G MTW5P0T6MBXJ&8X+1MAQ4@@)GP 8-# 6']K>(>RT*IK]+QPP&$-E M),I\YQ6,Y;N>L4F+DVUH=D$/?J(^RBD MFA)4YB*EW6AMBLR6)RBSS.AUJ6XB'*'BS M%Z3"["\G(P_B%*!@90H0LW%FL*X:4FQA90TTMYJ-EK3;B?[L)SX7#^LH:U-M M=C!'=CI%,%]3>N+%2_B%C\F6Z M>JC(]&R4=GC3["NK#.*-P^2O;"E-GK8Y- M^HW%WQGY,QOM&=?[/D9_U-$PQ/X%U#[LJZ$MJ8?5D)[:Z)Y_ F86/#7 MA9&6XSOQJ3:JJ&C=F-O[;YU;4;BYNVQD./+ SB1N[JZZ_[-^Y.75);+44(^0 MM=Z4&\81*J1H#4/;[:D[QB&.XZJ5X[CI RBM8Y<'R-GC77\&,F/$)<[_W%3S M<#@\&NDWU?3[!3$S%F'D$]/P+SLTC) 39W')^&&Y@C(\E?A^N:N>:(,"=& XIWP0W3LH.(7HA^_7R.O$K0JJ_#";D.N/4^B/2\^E$0R: ? -.<@=8*$WPCA,PKZ?(A=%E@V7 M/W.]4A*]8G"]PO5*<7J%Y$0LZ)5I8T$:E;_#(2F1[(TQS9LFNQ$^'I%FA"\X MO<"U3NFT#N&ZPK4.USI%:1U]G=8A2N>2;G('9".<[M&-/ =>$23;9$+<\91; M/&75/L>KGN*TCW-C1;/)0I&PK7CO7*?JK0:ILDU#-IJC.:=TN(8IG88A'#8JK&'XQMZI$=72YC?VUOGF7-DSI^P)XWYT M[CK?Z7Y>XJ/VA*N;WN7/7H\TX>S<7<'_.[?_ZMWT2 ?-V3;@Y?W=5=RHD]SS MV.W]O'VBM]P_=!]IG@'?'RR1_"K2YB6!:UW6N":3BM8SM;O.:>!JESFU2SGW M#]+4^.8)-.5O7:I"X8/;]&^B@6_O>S]!K0J=;_<_GX0?G<>_=Y^$QYO>W[E: M+9& *DVN5\O&MN:\7M6X7BV/7B7AT?N[I\?[VQ[5J0^/]Y?=*Z)&N=(LD?1M M4YHEBD_PW'@V[/EU)2$L99)0KEC+QS:5[[Z65+$"YZZZUQV:L/+SX?X. M-.G=S?WCG$+ERK-$4LB59_G89O MUI(J3^#.:LG1LTY1Y\W+=82>N+ME3EX1S MW?_YV\VW&UY>KE3BIFXY/U*BC"CV4_;.1!?HM7;OYOM=YXE[EV72!J1&RL:R M< >U** U^TO1HH#48SY2CX+I?=L:$!P=M*L+]>]6AGJ9Q%NQL"/EU=K2$T]- M NJIRRL:'<4_5]737=$E9F*&@&E_=WO?O;FRM@W)7PK7,+G.P*O;]UN\1H97SLGW[>=7Y> M 3JO/K,_5ML5PI$7P3.L0!3PVP"33CBD+9%@H1!-9U":1A^&VC!:^7?DD(V& MK.W71'WS-5T^TF!W:WI_DJ)"##8%^>_(>1?DN)U8AD:GE:/#%1[@<1_[@AH3 M0UG5*26WJ<;^6Q'S[ 0!#H,=.)WH-KJF[]84[&#$9'_E,0*C1;A>EY'OD[*> MB'+G(O^.P\5-;;'5YM%5"_.3WP+9/AK\\>Q[D6O5DT$.!A@/AU\_S%F@_[98 MGCRM$4DL[@'Y!?\[LE^00VJY?01#EJE+ O-,_^M!\YN?ET^>RL[$UG88C0+K M8WM1=;Z]*/DK[BX:!?5GA"87!!L=UR+_=&? Z(27R/=)_^;?2"_/W9J,JFF3 M45)N3FF*3<5<:C"Z6@GM(W*[\F?3,K?M?1\U()>/ZLF'5H!\D,V3IJAK,BOR MD7DM'-+_2K@6?K,=!UN"#UX&,+/OX$ 47!RN-8N4;$18*?4EEHXMJT=G, "" MA,'CE)QW.$QLZ*Q"03I6:2U1EJ5#I6(#.(^R:GQXWUJ[^"$OMV8O. ,WA/:QO'[/:6%%%:01%TZV 'DIBZ3 MB-JB?X^ J"8LZ2H8O 8KB#H?@_?)"Y&3AZI-*+#3[ELVJ3G1CN[QXPV'B$B+ MI"P3I_#@ $-61NTN0%-&%645'P%\E5#9AR!/H^4^)-$P#];.QT->_J8SNQK[ MP?9[W:CI-5)$@S*DT5=;/% MBLW!C>!3ZM=C8,JHM0$YHJ8RLW=1>3LV916W6/?2K/LBW:RU=<40FQJW3JN) MFRW:&.-IE(6KI%5 \C@88JR88K-W.+"9CT88X"5HGE=C_I4FKMEJJ+)JDR MPJIL+2^_Z2@26C;SJ24Y-W05!F=Y$8EEGZRVQJ[OK$[1DUL;]6W'#NTD2[T7 M>H,_1IX#% EHY3CSJT!VZL/WX]2I8*F-K%K;F E$]@=CQ3/AA M J&!0)BB:?)R&T4L5!^A.K MU'QP9-3:FB:J\L%QA!-%ZM-2P+2X_4;HG>K.\_%U2-4E&'$@V"XMZ1P$@C>$ M.0=A' ? 00@H"V&AP,AWZ9T4Y0-O/'$P^9Q@G.#KH).551;[/:J(I#K@/:OH MF[6V2LJ''+R$,.9A<"SM73YD;RPU2>L046[F%8[FQGG&K)G!#R)#()KK>XO7O"MMCF9"CHH %:NBZY)03^11^ M#6P+QXVVN"V[EY[]%@7P^""X],9]VZ64O)Q2^'*>P%.K9$\I(H?(15D[^/@, MMW.9Q-D657PZG"FD(*/8U*MV=K&X']*JZA,[1 X]_7L_(^Z>0D0+2(M-B9D""]QP/J6V/BJV2$%I790/ M+^#$[>G]YFS;0KZ8,>3U)8V#%%7\C*:CYM?RDOLL:/ #\9>^S$B\'>B &U4/P8_*R]2NLKQDW!#<7QA:M*.BKN150+B, M=G.5@91Q4W!O()FT%+6H:U7KT\*N6KW;'DWF]O#)8\Q9Y8:TM)5:HG)XSTYN M^C*)JERBRUE1I=":I899EASJ\ANY5WB(0MNZS"H=?:FF*(1C.OU DV]NQRM'S/%G2[[]EE!9U!BI/+L,#G9?Q6 MHQ#1^J$?K0[1CJ^LO&]PZ8W'=DB:!,6G$J=IVX--2]8>IF VI?\6V!>N[?Q: M"_T(+Y_%FHZ9N*7S(YY*FDDX^$'$CF/2'I<66@ZT:*ZEQ5$%G)T*2J61QE6U MP3"M#5;-DE6[<<*R7SX,IDYNOE#,] FV:X$$7-1;=(1%<.[!3X,L >&A*/QU MDY0_8+\W0C[>:.[>W%VO:*(.L%-,,VI;:-\+30P67C;\8IC M:&NSVD,PU&010R=-ZUAG%,O-PFQ@XHMZ[D$&\+;5.7Y%5FMS3^MWVY*WUV!: MIS!],XS\0+NRE=WNS<#C0P='^D^?UNK-3/FU]MOVV64W?C./;I4%MWU@\,@$PS-?L/-^@"U]4(95:>R@K47JIE!( MC*"/QDZ+'$#1BVUGNY^Q7'@:7FE LK7ZW%:0- E(BJUO>Z U7-K3VAT8,"$V M29]7M5_=Y2M 'H.>-FV2>9MQM;X'9K[5,43J\[#-/IV,2 M1MO*/N<"(Q@6X,B45]I8%3X# FIC^SC$78#L#_3E.9/ MCA<$GX5S.C[RZ2"%&\#@X;<5E=)3G83<@X)RY7>&@/[*S9_;)$#HMHI%0G-V^K":DM&O<(D-( 4HHBFDUF()6G MI6N6XLA(L#8'D)\@R5\OSV=I*F('MK] M&&7'M7+02K1DGFR88E/)JR-O3APMTJ_A\LSE^=0G5/.1YV:MW5)UT53RJB50 MI#13&^1+2$I3I6DK<\F48^0_VV[\8FE1A@88>. ?#Q[TB1=DB\H>; :,0@^+ M82R@ =D.0>X[2>")>SB$'BT\2PA&=TV&MHO<@4T]2_@@/NKY*7)19-EP_7-C M,8-GCA3)VS1B9$V\@.ZE7?C8023SY^NK;86C%+MSWTIX*LV^@OHPFBA<_Y43 MTG@C1>4/R4QS/\EHB3382M/$JF*UFA;"&K*TEMK4D3Q4C6&K*?>E_O\J2BW] MTFAZLG*"GG&][V/T1QT-88(7R'E%[T'MRR+V 'CS1/](KY@J[5_Z/GQOQ5#9 M@/%&$M_]I@O?':^/'%&X<0<-:A+WHGY@6S;RY\\7'6> MNE="[PG^^=&]>^H)]]?"7?=)N+F[O/_1%3IW5P+\\O#8_5OWKG?S6S>YP/ST M/OV\Z_R\NH')?69_K+8KA",O@F=8@4B[[)*U@F0Y"J#\T/H9S(F''I]VII4* M%^L$P#0<- GP1?K+U[2CL>W2P= O?4V>E>@](KT UCK\=NOJ::&A]LJ09K[C:@ M'<_VCP>D,VX0!HR5M"W3 MK=6*0*VIA8PT7,1'3E+LYAM";Y<@KS%HG>+8(W(O%"IM;9NBI*9 M5W][ADQ##J)=(P:'@D@C911$4\JK43T'$8L@VN+F'@HBO=:6)5W4C&*[6G$4 M%>J<'8HB@^0SB\;AC=9/5SVV5*9;U*^3'.3("9$+;BCV7^S!3O9;Q6&]QDQS M7S"^ *)=3FG62TB6&=EFW%VUE?$XX/&T8 9E5W'FKS&O\ MY+&HO8P<2LC8\-[9 '5?GSK- GZ;8#? _)P6/Z>5[9R6*$S0N^\YCA"B-_(GN=+' M+@;%SA-G]LP.3JC<<:U_$AH_Q!1^(@2&S[XEU,V\;I*374VQI?%DB"HC:V/J M\9&0%1_W4IHL;7!S9)TTK_E(R*+;R+)H*"P=W^'0.FG6])&@10Z&F:+$U')8 M2N=B-?N_ U]\Y%"#$%ECV[6#T*?M)/C9L&T1_IAT .[. N&ZL9>6&>FD19,L MZGI&'ZT-+26X6[#%3IK&KV\Q"O;& MOUQKZV(SMW9WW,%D$4E;[*Q\D*00),FMO"H\Z=IVU&R. M>L2AF:-=9J"3K0)5U%5>$8/%% #W6)AE1 B/,< EOQL7MO*8?PD'C6.9]SW#78E3@"F3>\ MM5:MW6R)3>/<.C1Q .8;(]L7@#JI7&>(1FYGAS@ JP7 74-K>P.05)0#!#;- MTC3AX0ADR3H]'(&T()TIMN2\MIMX!0+^2EZ!8-<33S?NP!MC8>A[X]1S\5Q^ M3F5OIR2FYZT7!&GS/-N-@!SW4]I^PZ A\0WI^(Z#,-&;Z9_QU^.?-)^W^Q;Z M")!KN\A_OPGQ.+CS7#(BDO$+STV_&-SAS.=&=5+)41*UW#I&EW1]KSABMW@Q MI4*L1IJTJ%6#U.*^795)5&[!8WJ52(-6IM51?!.F (L=SG M.I-7GH?/%4MGND%T9M[6IUS=K06%F5G7D8YAHJ$M.T"?^;I<"?QL=7X^X&<9 M(LU:N]E<3COE *D&0+;Z&H4Y10\CI]JX&>KY7\0?@RIUI;%IK2< MJUP(?HYKAO-;S\ D7BURR39$GWK!@AW_%:*W,S61"]F0R!Q=R*S,2+:!(9J\ M;IRUG+D7! E@J0N>T6 M'!^0I%.?*JIZ7BG2_+#D*KLWFZ5;0NG(-^:;P#[QJ9-Z=YFA38Y'BJJY>VB/ MGX9B(6";#_.-6EL3-6TY[9DSG^5@;#[,)ZR9,^K^>KSYLRWN.1IY *:9&Y19QDE7 M-UW4RG.F)"TC([B88)&M@1UL2671M!.EAJOP@ M+^H[^'19X_R=!^8"#>E_ MI8HC=)'OPE@#88(!U2/DXUV:,&Z=^BX,X<\H^!DYQO>M]0 M8 \.V4*MJ%53$3?D"M:$YQ)0=0F0\Y$ DL32T/@:P"6@=!)@YB,!!I$ TV!( M G)RTLOBQ%S93K2B:U>6V59-@%=-L7H"G,V-26"R2H1-ZL@<'''=($;'6L2V MQ$.X#%1=!K(Y,AMDH$E=F8,-.2X#7 ;8=F4VR !)VVID;5?$98#+0/$RD,V9 M62\#38FZ,RS90KSH0P&WGL-&[S_I']@2$(P*/6.8Z'@,\D;W? /!B\(@1"Z= M#M\ /I-G\ W@\STI')F9"V25Q MR2PI>GQ859=%LWGP.3KV8I\<:@<;F;E!S:!04U1%E/6#S4P.-;:AMI>9F1O4 MS%BK*;*HJP>O_QQJ;$-M+T,S-Z@U8ZTFRV*3*:BMV3C1^,8)WS@Y:./DTAM/ M?#S";F"_I-6R+P2^1W(FSZA6,:G5"]#^Q:2JG$M1K<3P4Y:$:N9=$HJAH">7 MB*I*Q#%K-[7RKMW$)8)+1*F+++7R+K+$)8)+1*FK(;7RKH;$T X>T^"^]GSX MTQ4&D>]C=_ NA#X\S:'='P0'.(D#47#!1_*&I'G F6WO'=9-((#QPV\?!>4^ M'&%_(;(2RTW"BLN$$T^$$?%K.Z[U-&-+Q_H]"L(Q=D,0N?OA$WI[\'QZ(0Q] MNQ^%J._@)^\!P6/"5;)&4C-:AS3ZXU%RAM7T%E/^Q.B;7P:&]ANVZG]BWUN% M2JT&JKZIR,I7AB+K')[';[W JIK4N9HL&0YSM&:959,&BVJR6AL%N^^%[5FC M-9['JEJS&QXGTRA*7EWX\N,GXV$M+ME:2S24[\_91GI+=HIM)LG%P.1,NV5RRN60?&#C(3[(523I. MBY ")9L&"K[0X ?\:]DO[5_@1SKP,?*?;3=^O;0H3 -,&HL?#Q[TB1=V"&\; M; :,0@#3PUA V NC.8=B"*X7@CO"ST"%DHV1.J-#&T7N0,;.3!B^("$@P+A M4^2BR++A^N?&E(,?29&\32/'_B9>8!.N7_B8!)=>\-=7VPI'*7;GOI5P5II] M!?5A-%&X_BLGI/%&BBJ+I)C_249+1,)6FB96%:O5M!#6D*6UU*:.Y*%J#%M- MN2_U_U?1:^F71M-T^ EZQO6^C]$?=32$"5X@YQ6]![4OB]@#X,T3_2.]8JJT M?^G[\+T50V4#QAM)?/>;+GQWO#YR1 $T4T- KB7THGY@6S;R;1RL12,K,[B\ MO^O=W]Y<=9ZZ5T+O"?[YT;U[Z@GWU\+EWSIWW[L]X>8.+MQ?_OUO][=7W<<> MC96:7X7N/W[>//V+^0E^^GG7^7EU ]/[S/Y8;5<(1UX$S[ "49$&8*3&Z",$T'#0)\$7ZRU?+#B8.>K^P73H8^J6OR;,2 MS4>UEJK+^VZ;&R MU%!;VEZ/W7Q-EYM\L.49K-K0=;TL@RT59 MX(]=SLEMG?:F0UV^][JTG5\1.G9@L,2!00ZUN!^0;=5O7/K[)9H0/XU3]P#J M#@;1.'*HCTHS'83%W>TX;B%\(JF\2_DNG-"[$_H1AP@^M"APT^*\1R?H?@\Y M[BGR+*$EQID:%Q(XA(MY,;)\M.N,O<@-=Z =FX?^-]]:#A8\>1]7SW-(W_J& M'.0.L"AT)K[M"(HH*)*B['6>(9>.\$5N@JRF4,92+,WY?9";N^N/&R&'EEM1 MI+@HKM:B-[WW18MT:YG1H%?L>O9W+SK M2?W=D>< 78+NOR,[?%^UGTF*#^O+A9.X)'-)YI)\*DEN99?DC&D+:JVMZ:;8 M;&EC82SB;/IM*?IU,VKWJS:1O#DS5*'2-;0C9OD"]']**K#+N=4V".& M13*P0]S#_HL]P \P&<]ZQ /OV:5/^0TY$P0BMX 0;%U%?E C%A6XE2>&>7I;9U7Y%OT:/.UYP^Q'4;TC1ES?%H@ M1;)H-"O8+>%MF8T]EL<$"QT_N^#EBRU-%UO*JMLTQQ#"& MC@HAG4$(56N#<4NA@/^.G'=>)^#P34?SV(4"0)630@&Z:HJRR@\H\ ,*_(!" M@0<4MM1'WZE2@&SR2@%Q3]R&CDDB0Z0Q$EP^"RSF6=RWIQLGY@ M69#-,;46+Q7 Q9R+>?%BKAQ8$63[D@YO:,NMIFBNZ"'*99W+.I?UD\GZTIX.9-I,9T.![?UW9W9XQMR$5_2"R^,-?)1\E'R4'ROL MG\?V65QG6Z;[9VIES^7ELD6F*,?>(E-HZ5W1E)JBW*K"8ETBV_L,S.NJ6M![ M%-M:-I)5(GHFESDN'WFR&(56;Q +V<39Q.#GMT)ZRBK^976XW64^9V\CG(6OWW@H""PAS @ MJC&\H>#8J&\[=OA>3Z^!5X^(C ="Z F8;E$O7^/;CCS6R=G$V538MJ/[@O%% MY^'FD@;&OI& \P-Z)['ICN\C]QF37S\JO.#&'?@8[@73Y=(+PKD =-;8LTJ* MNXI&:_E(!TT<%6NLZ?*SV$;\3X<89\F,_IXA-W ?L%) MFQ?AD^,%P5(@M^+Q'!YVXVSB;.)L.BLV9=ML7*I/N6:SD2XME_,KRZP' XU= M/Z&W!\\G+^R$H6_WHQ#U'?SD/8 %XH:KC 127KZU?%:8[S8R"RVN 4K!IDP: M8,F%.)T",!E2 .>P6\&[/O+(!V<39Q-GTSFPZ3 W()^NCVJ3=WT\!_RH6^J? M']2R3VW1(HN:O%Q@D6.H.AC:O_'L=@AI$H,0JM:.Q"Y='W.H6IN4!XXGM:I" M\)FWA53E8]>\U60J2TU2ZD]:[J):OH(I^4&*\1I(1Y8=YI3/ONTL\B!0297* M*MMNCWX7RPLP+92]?*R8:PNN+1B1":XM]3VSFC+JZ3.L"E*:H4:V7)U MPM7)N:B33-N3ZE+=\DVGH;>:(5I.6XY<;+G8GIG89I+: PN;[V %Z+4VB+,H M:]P*X.J$JY-JJY.C:Q.CUC8U&;0)#VCFMK7QA2: P;^6_=+^!7ZD Q\C_]EV MZ>OUN$DGN7$ZK7AP,"4'30)\D?[R-3UD;KN44/1+7Y-G)7.%QWT<&!UX?/GK MJVV%(T+:AA1C,-E]2=Z<7&[02Q^('5]3U(:DFFLO2PUY[;5-CY6EAMK2]GKL MYFNZW.2#+<]@U8;1VN^QG++;!]O:Z;%;=F6W;N2KR_>N,%0&&-8WGZD%N6>_ M"3_@KE$@=%T+6PNKSNH>RZJTH74/8"Z@T$TCAQ$ MJLW&)T87TOJ%F^3$Z.W&$Z.T0!;_#8,K'U#A_YA NYL7(\M&N,P9O=7TYZ[V@QY-( MM,9%F8LR%^7B1/GH#54UTD9(ET63RSJ7=2[K175I_NI>+ M.1=S+N8G$_-=.E$=M*3KY-2?J8A->;D_$)=U+NM0@ZTJM;2B: M:"H2E_4CG.,O8>DP"JHZ[4)+ZPNG;6AY(;'3UHS@94UR\/KNLFK6^,V;M:%O+@ZWN6QLG\V1O7+L]RTRF-O;&.,ATA+P:8\ML%HQ^=-R^B\"J#+YTVBB$FK MY\S]% S23T%4]>5<, XVML'&=0)G$V<30S[0J36WS)[F/H=-JP-[;Y8W3,"C M.9Q-G$V<39Q-G$VLL2F3Y[VEL?XEE?@5:Z*\1X6*Y<6/))'JI:X1QT69BW+91?GH52@,H];6#$64#(/+ M.I=U+NO%R?J!52@V)ND99B4*2W$QYV)>6R?7>$!'O>Q+ZB'-&=^EBE793^+RQR7N>/+G'9LS]54:FW- ME/E"R(7RG(5RNBG#$<\1?Q:(S[0,[=$C+^,R1))\%44TF]PVY$+)A7(7H3RZ M3&JUMM'21$7CIN'YG.?-M2%&>4^_\(-NG$V<386<1]S2Q96U:NFF7FNW1-WD M!7G+ADJN/#B;.)N*T/%;$K*84_$&>RJ^6BD4)VN(488TBGP*JVX];7SJAABF M66LKFB$JQG*29.GC;.<*OE4&_-&+8B\KZ&:MS4%5-E!E:XBQY!:>KB&&V5H% MK]T;8G!DE<)EX&SB;.)L.JIG=\*&&$TIMX88? NI\(88%8R+',-O.Z0A1I/D MYBJRJ&K+.1@\^,8VR&3.(+89E,<.V(DKJC<5P)4F:B9+A1$#O)"NCX_O(?<;DUX\* M+[AQ!SZ&>Z\]GRQ=6;W(\B5;G. MGBH_AYV8^W"$?7J,Q\#YY82<,?;L?A:COX"?O 2P0-UQE M)!BD8/)RQ'+W/#L.+:X!.)L.U !++L3I%(#)D (XA]V* WMWE]>EYI$/SB;. M)LXFSB;.)M;8E,E;V]*LZJ#&R\UFK4W2@8V#\_\XAAC&T)83&X=!J,4@A*H5 M^-^E=W?<=T ])-B?-'F()[6JS\.9-_=6Y6-W+6C%70N:+4EL2%ULNMF*GB?**(A'<"N#JA!&AX>HD%W5R=&VBU]JF)H,VX0'-W+8VOM \ M*_C7LE_:O\"/=.!CY#_;;OQZ:5& !QCX[A\/DO2)%Z1NLSW83'^%5I#"6$ # M] %,'U0DQ/2P- *=D0*0H\M%WD#FSDP(CA UHP6O@4N2BR;+C^N3'E MX)04!'BVTC2QJEBMIH6PABRMI39U) ]58]AJRGVI_[]*L[:"?NOHU?ZE[W]I M+[\K^5HR,TT'8DR\^(S_A8\=%-HO^.NK;86C5#;GOI6@2)I]!?5AYE&X_BLG MY.=&[JF+I)C_.?+3P4S0,Z[W?8S^J*,AC/4".:_H/:A]680LX'6>?A^GOIX! M.W/OU-2Y^TT7OCM>'SFB<.,.&@)R+:$7]0/;LI%OXV MD%B9P>7]7>_^]N:J M\]2]$GI/\,^/[MU33[B_%BX[O;\)U[?W_^PQ/XM//^\Z/Z]N8 Z?V1^K[0KA MR(O@&5:P?KAS"EZGYB%="68:A:X^,&8'30)\D?[RU;*#B8/>+VR7OIE^Z6OR MK$0-$=G[L/)0VL279V+9D&+13+;7DSJQL-&1M_5>_2;\@+M& M@=!U+6PM6&B'$F7._A[8\&;8!_,4S"\B3/V O8G#BY.")^\D;;PG&KE?V4]V7'P\2;FYIHYUL-D MM(;M1,Z6D5 M#VQP<]WIFD<^)W\-B%DS\;T7&WP%H?^^OUVS]_F"(I^1DZ%#D6@V3)UQ8%SA M"8#!CNMNDJ :&I/CQW^>8_OJ'.V&>;+"[PZF)[I=JS-'WOO49!%3APIHJ0O;RB6?EDNBR*^\]PZ77H=4CU.P&^D/>NYE1C(JVH? M&*F7(U*B[\:]3ZV76T+7K!:K*DFUMB&:38VALWC\..>)=&[>6)()EA3CX/6; MO7.=9=&R#\2O"0@<2(,MDFD2#B.'IDU$X!MQ@W=?@W=*V&O/OTK(VDFHNDH4 M%! %Z>#*IMR091@Q6PS9K(A1:VV]=? RS W4@QH4UOND##(MC@OFZ?Y!@O,P M*[8=1IW6E;Z>,F*L-8VM8?/A\LZ;5V2S1D;J$6AHG8 MUQ!LL%"1[0LOI,\5:8A$T #3P6Y(TWEMB[HB9Q>C/4I5SF]1 "\* A"=ONU2 MLEY.R7TY3^VYRO]!ZA5VQL1FN1^N^HUC,*6'C5+ G0M:. M:\&_E_"AG;GWKBI+Q-0U3)4-0X.;NH69NKDC2ZZU55%BQ8DZ,Q-V/BN%6*\6 M[H>"G73I!@($>^ZYE=<4R=%RG2?N_? Z/M?M/B?-SY1GJ(B+ 0D!SZ5>4_>".OU.$J^Q<2#2C&W0J_9X KPAOZ'!OR,[ M=DKVS-+>U:@I\AEGMHQ^LQT'O!@?#[#]0DZ:\U7S-_;]PT_>!Q M2N?,UF:\&=ML*@PI3;[,'GV9/27$=%K27M99@MB9Q95^NOU\-/*9./^;S3 ( D.36U9=GB&;>*"]M]S1]:,EG%56VYFQ:W@D^B M??T(+VP9S!G"CN<^UT/LC^>O<[MX?P6]QLE,N' [(W)JLMP"!YZ 7.7,@N8 M L8-F,D\'[&JJ-NFNPM!G4J.LJO2(6K]=$9U6JL9QHDW _54=YZ9%T#V+V'8 M=$\;OPUP$,1'FH)D2QL'(0"-="? R'?IG50HR#E3!X?TQ&DWP3@6,N5:6]=$Y?!BW*="9K(2I -) M21[CKH!>5>RUQV)SS=NMK9D-3F.P1_N/X[#F;)N34;;0E%92N7C^E)_P*3D$ M2"V5^$0"Z?-,F#=_WY*5R,WWWK\H\$,Q*%M &$)/9I_C MN8-\2\Q3JI+S.3V@Z?T0/K$B8I3@M;G?J@9^7HL7O:@R;K87FM\#-SIH398J M:I^#C?L0^8,1Z7Z4;YW+,[$QLIJP#PF%'QSDAAW7ZJ9$SFQA&+3H@:(RDN3- M[=?"[=?\L&52;*DF(]@Z!_-UNNL1!;1TYLH0$-_Q.'*2YIH(\TW*BP,BS$V0 MJ98ARLU#MA+YOD M?6$$1VL.O'B^[[W2@RP41SWLVIXOQ#6,A6LTH'F59^;-'BD6.#O.YN+@?AC3 M..N:HTED$T:"1>?@ MB ^K/E+>('J>X<-'/$FH>C^\(S3=LR"$1L^KRRHCY7CX;LRI8X6Y 8D>05<. MZDW&]V?VU*N\'^7Q=FBN/7_;@:QIY?[Y(,NRA)!SV"W>4J>J<-IM4V9?.&74 MQJ0JM:BWJG44NS3:N'^\>,.96"T9S-]\ @YDTUQ=&6_@AG U()7!$,X'4J3B MM,X.I*H6F>8#YK'_?0^-?DIR*3ZOW%(ZQ&E:NU]71OUZ_+.C>=BZ)'_"D$5I MQ5'L_0*[N_&P1*Y7I4!YRO2)/.#9JK4U16S*RUGOF7VQXP*SH-R)4R=.Y-3" MKH1+87>U7*SYLIKGND):$)HR;[9259SNZ@(RCE/2_%W45Y0A M8G%'KTR+P>4ZY2]02T;^*O3QL^V2.OCT)"SE] X+0PGE*HM8:9OMT!PMSAV$ M0P/A:(JZMIS&MM'J/)[&SJ"8*XX3M<424$@= 5-L-3.FE?.4M+QT*2;]KM9I MT1WCG_$4+U1@A.5%?0=/#T0==E20N8#=7PLD4(4T$$L*R*BUE:;85)8SLP[: MJ\J!XP6[+%SVN>SG+_O*EFWITPJ_"=:')FK*P56.F1%^:M1\"6I2W 1 0^\=#$'WBA1W"VP:;,:403/4P%M" -#A#[COQ M].*#2J%'T^D)V6@_M"1;!#DP8O@@3OC\%+D(O'RX_KDQY>!'4B1OTTBSBHD7 MUP"]\+-VKKZ^V%8Y2>,]]*^&L-/L*ZL-HHG#]5TY(XXT4U19),?]SY,_L MZF=<[_L8_5%'0QCK!7)>T7M0^[(((\#0//T^3CV>8/N7O@_?6_%6!JES]YLN M?'>\/G)$X<8=-*C1W(OZ@6W9R)_/06)U!I?W=[W[VYNKSE/W2N@]P3\_NG=/ M/>'^6KCL]/XF7-_>_[/'_"P^_;SK_+RZ@3E\9G^LMBN$(R^"9UC!^N'.*5U] MC>VU38^5C8:LK?_JIL=NOJ;+1QJL MNM-C=XS*K@U*M78)X,8H8BKLT+/?A!]PUR@0NJZ%%^,*AQ(E8RV6Z%X4';2I6-,!2T1#)F@@);4ZYYJAJ%U!R'X6@'DA$9%6D MHUEKJ\K!=;[92ZS@8E!5,=C4HW5',<@8#6R1BAGZBE*ZA6=*5OJ@]MU\"2)J MSWBT0:O7A[&AN(>/'0017N[M<\BQS:II@U53K(XVV'::S7.)77SO/R _3/[H MS("2U- ).@"C,;;DK*K!D&IM4]2D@YO4LG)! J*>^EZGGED7#7<3?V/^*!@X+ 'L* */^]H>"D9=OJZ35P M'-$K\BV:/D)R8%==XZ[DN=C%F^*KG8>;R]X(^?@;"K"5E)#K^#XY*T1^_0BX M(#UA1,L(!N2Z]^Q24RNS#M&(#C%6E CD/B:7)49E:5.0]FBRM/'$NZ'G=N*= M>YZ9^;1?][((DS,9*DNV M-/XN[^J=L3 MGNZ%A8,5US=WG;O+F\[MW!$+YJ=2VD,5(BF,B$F>*/$C!5!T:,4,=I17K;9= M?DZ?UZND*3""/#V3GU@>=]$8'C=8-K<7C8M[_QFY]I_4I+B(,_9@9) MLY8TM8FPU0F3S\AHX%%H0A#D1[#VSH^&"OT="B/@G3<4TI<+]Y,D82M([9MD MJA^T'5Q+7AD_;CJ4NEPKAHL9E^YTQKN<#9*55'W;K@7\NE"-$^ Q@_:VP9X( MYC2X\(F<3,(DXQP[[R)(+:8(5J2OE[&Q0O\"/'M^>F'VX.3:9\$.!)36 O<) M3$(\&+DPT6=X)K"?1'[L\%U 00"4)&:-&%>T /A$#LV!IV8'S1,#HV@2@8$] MH+=,?/N%U%,-8) PAH%C4Z.(:AA29V[HHP!0.R %05X!-DV@+O]%WN _KV M^#H\6Q1@57< [,2X KWDOMB^YY+A$"*1MSUC#W@5$@L,V/H'#N$)7HQT8K11 M",-*'Z>XH;[O(:LA/,% YJ@EFU^#N7&2:E68#O9GH]<0KC')=(37T4'0YX", MPON>/3#=Z6"">"SD*XNS;P@SVJ?D)I2G(Z(Q.4+[V=SMM%26*/2CD-B<@F./ MB24)1+[8!=#4G(P=CSIQ7"_,CPBO$Y/SY,??6EJCJ9C[G'[3&KIDY'Z>3-,: M+6/]Y;T?VVA*K?R?*C=41<_S\-NN!98 4@4% O[S+RW#;"TYW8>?)2IN2C\_ MZ+K#YL;Y=>PI_>@^"/^)QI.OWDO *3+*Q M'01@L<%PN825A&M=%VQ!#-_]P#/.*N98]2VR'3)2XHH\^V@,+I.+XKP +FXE MX>&E_6([VQC(^<8[+L#1P,@\'Q52Z3)>/JI6=A@>3'.#9-0)WM#'%Y9)MSZM7\KAG9 MWA?&P$R'!UW*P\-KS\=N8 ]X;+,D#%MT_^(%T"5)&O"7CP,O\OGB5QYNWMIA MDDXL!-%DXOD\_,(XQQZ]OA<2?4F=]UGR"A>YDC"P2U[T3(8";XXLFR]YK'/L M^P$_!#3KWTX$?'E0[IIIN1BD_'D8B5-+D[G7 1WA=.\?#49LB55 M]T!AT9/);KA3=G1K179T:SD[NA>- 13O)-5R[@W"[!5"^@YAO]1H^LX5(U%V M)0 ]NKTB<[SC6@^^[0[LB8/ATD*B.1WS^S)53.GC_,N@/NGD"8?FIT^S:F<$ M()<72+"3HI4^*EJU8>J%ZMKM)\A(0O:<4B;',"8Q7> ;MALG)ELD1]>GF=5S M&=NO=CBB)]<2:$]FY'LFL5;D.._D.IXDSZ*)SB[-,>Z%5/5_2O+&Z5N^=SH/ MT[1QPH\1>L%"'V.7#&D"0[.$2>23RF=3O>]'Y'7D9A\_1TZRY">3ZN%!Y--J MZ?2.M"FP,,O^$3[-9;7WNI?3UY.Z:O!.<+>2-K0V.3-CC^>(:+MQT0)X3$-X MF!M7$ U&JP""XY!9"Q"13G!)Q M)1>G]($;"$=@B2214LJA*6WGZ EK;$3.?MIYP?QE& M*\X3-(2.X\1T3 X[SF^5Q;3J(X<,/)@;*B9IZ2Y*(#28%\J&4$*QO(GEP)O8 M;E+1:)99(4Z).CT,.CW@.45@9IDF*P'!'$!)0-;O41#&M[D8*!V0Y8H_/GIT> 4WP3*+O]"W>]*#/$@"FGUA4T&.,^_'!!=J+-)CIF09= M('UBYR4'30(\/Y]@Y$4.@ .3,QHI#'Z/W'B7CH(\W FZ9!3QZ=J$)C.]]/&0 M1L>%I=<1'JD.(-;G-0BC($OUOT_GD9JG\) K(.6XC_WX^+8:-_I0%K0+_6#Z MD%31Q$*WFJ33OJY#QWL-IJ]-<;!$1JJ\R4&.E+$V51T6]81><,J0]&7 =* H M?IO@09C67@;.#2-ZGFOQ+41-I.\?1H CTL=DWDQ?86LOV#8K;>]$\L[N?+)Q ME%9M&XX:KYC@<'BT"<;*UL(@TI39%Q'(B$_N@C$A9L8BC'QB&_]EN_<'SM\3 M/<(46X4AT26_?$'MM:L/*T#CI[09FDJ%3VEO\UF5E3ZKFM5I?\0O&!YQ[7MC M(H:D9LH_8?&_!(O&@P>L=5-7N,RFO.R\E\%Y?< ^=1R(=3]7:::,AO"3)U@8 M( Y+&$X.M!+C!^P3RF7X=UH?3AAC0*,E+IB8^ 4Y$34N7T>8=I0(7SUBJ(P] MGQJ#%"#SUB.8U7UJ\]$3NK'KDEH^) P)1BP)\Y>.]L_G#3R2-XQ/7@]&VER5!G668^"2XNR.(@+*7[MNI ]VH6!-0>#^#W M(*Y#"T#U_#_BA'I,3KL3H@.E$?A78&Y3\L%0&T*BY]*8]SP&@K#N8WO@0]H(E7 M*/F,C(;TI1NC^)PX23!8> #!^SIJ]/$ 10!%&Q" )S89,WG>%): >#H;SYD& M]1/%WA!2=3\;)PU!.*CO^2*),M23I# 2@ID=S"[KOO!<%4 M-5+AFXEK0L&$22G5@A78^H 24&WN J6!8<0M#J:<2-00*]$$4$I2N@!P[ZEB!6.!LK___N'IJ0=*G&JJ'KY0KQ,Y[R0FFR '?]RY*06' M.M1])UTJXR! TNQS<M-TC5ZR/))0;*99*D7.4J^U%6W-+&"DRS&* MP+3TDXI&\X%GX#0&K1:'U>8C\&M0WQ >UJQ\Z7+EN32RZL$BB,9QW)R:6K-W M#B,:3J1J-!E7\J?EX=AZ F.*%.69A>)FCYKIF3%Z3\<_8R"QM6D1&+(_,34< M&D(2D1Z@@$8X@'KU6<&9#]8<&"^_D[?'1?7%M8M].N4DFI@N7&CV/&)\Q L# MB4#33 #J:,95:6:W^;#4O()"(/<#U$@N*JT$1 A'.(-B4I!]$Q^G30+H?&B9 MG0:)N-HG)!R464G,_FX^"[0< ,JIF83&7HX M6P%3%3HSI^*7[VX4,^.33HVS;\GNS>98<"E6\W7!#!HWH$Y 2+55O!XN.:RB MT+<=DN8^%\5/JVD14*0Q>, -N1%;B;32EEPB+)++GY)R7*E72JRQX'-LWTY? M!,\B< Z"V)(.$HF= 8ST&J9WTF68'JC Y/,9C&>O2+MLV#CX//-#YO97$EX+ MO1'&8>R[3CMSI%L>W_(;6EIJ#$S'>+LC6#/QA!F+SI";["G-Z;)@T1BE/A(, MAZ/[Y*WN*E#;_901CC M#+Z^>G]QV4U:7UDV4Z#UN^=9KR!>'=>Z<<&5>[9! W6HUED;9%U1/])<43]R MXZ;4B1>N=)H4?K.)"O%,RY9;.9V-'206QTSCSO>V-6P>2N &)[!'; M/[454Z.2Z+MG-P9LO.Q,OS-70S )LBP$".T9/=,ODGJ&M)FK,B]-/B MH7&(-0V)?HP1Q^,BDWI.IQNOI604U#);_2AQE6H-* FF=2=IU&OQ;;/.BG$\ MC&1'""3N/-U-GU)P\"$H.)L]R87)1)D--B C6/M0II[14",NF/PTO@U--_%325NE 3J/5JLEXQN:/M!F, R.8(>YV\0E]CS@T68 MSN].Q&L&=4"&\R-=&)Z#4=PI#4V?$NN%..I/ _]TO\*Q_\#47P5Z$,>37J=> MYX(0H#D+BJS8Y/L.&3K](EWDD._37*;4PWFBQMBJJ:5NXQ@-? \,'=<;)[5> M@:JP>/LTF\FRTVPZ,"73[XI4>9$<2S;"8NFQ Y2&E -"WIGY#D6I1>.G<:%>'U\"H$68?4 F<"9"9DS>68\ MZ9#DKZ6U9)E6#B*KP)OT?6$F< M\7G)GYLTD4IO$&^&S*]S=,F:S-*S4@\F$*(@V3996$ 6185P89%ZP2+YR&NQ M,PTW)O"EWTLTTBI4@&UI@\*,+<5.] QR(LA4!:#!*,[.6G@+D:"(1BUFSYU[ M'(%ED/I\T_?%VTCDHP4,QQNSL;Z)F0IWI5\Z)"EL?@E1S.D2LLJT/>=4,I.G MDC$P%IY*QE/)>"K925+)U)6I9-H*[5R\_[$VB-Q<=8H+/E72;>1T%8_C/(O. M:[)\8VOC^KW7>BW05I[IVK_PQ7B3'B]N,TV-'6N%M4.MCZ4@*[5Z$L,SF<+4 M8J5?I;9*FC&T8(*\HG@'+'6CIEN7T^'85K)%EH1(B:DW1QEPV?SG) 9'J>/- MF;DKZ-X0KB.?F(SC=#" V5=,L^Q3-X]Z'CMXA=1S>*498E,'<6%FTUE9L]AQ MDGQ/XQK)T)3D:$%J4R_%D%>$H\L6R?I_['UK<^+(DO9?47!NW1$RH_O%?8(( MVN[N]4:/W3'VS(GWTX: PNB,+'$D8;?/KW\SJR002%P$ DE0&[NS,P:DNCR9 ME967)S?(#4C(W69?RC0$BSPI?6"7R7GZ"?;/\X)GQE^WV*G R _T&J MS!VA:.B,BBM1MU6JM3STZ<.+%-SVD%A1= T[)M*J=TL\=LGY42(*=>A4D6J* M,3O/ELI/X7^?L\-.?=6LY#"9P6K2Y,:[^\:P?O..%68_,C%8I.* +*#."M&/ MF('_)C6< M#T/=L]D>C"'#!Q$&/OSKD&T/BWRNC7\6,$28!0P1E0VG[X]N&"SO_.QWTAK\ M_! M*3]$2\H/\3>"%\8ETHJE-QFK0C7?$H7#_#FDR*;>_4O M!4G-.PJ;VG!ATSCY3"FI_I)D._T@X2/Z00I$M< _8!64K*5/PINB0)^U%ZT, M?71+1!7I6X:+A#&<.',FN>A)\(8SEF S0'? JTNC-C[! @BXDLPK$M@;T.S& MF.$S6+XS/#!9LL3+"Y(M3NCU)9C%:.K2Q^0NYME\U9D/5[.8INS!K#D)PF';L+Z ;] _C9FY07+WZ;D)QA\6]@B^$PG"2TO M?3>]/"9+-O_!(J5OJ9*-A:((W'*&-.0VG[/WGLSZE61GF-2,I2DLB^M#2G\ MS_"P-B:@:Q,O'HZ-1^')5^E3VUA4\K09JP4@Q1M:(@7XGX-UTI*:C3LD)>*E M8/'7U '%H$^$M5E[;'"Y-,2EBA9I537V8#5Q.K*F195&WM$H@(S=PBGJGI\$,U8)\W9Q.6FCLU>17 M5FJ34M.L7G'GNHK5;8R2DS+__+RF2^M)F:\4O4L%2E\(4F=JMCYCD4/$+OPX M,GKI?T$W8EF$*YDHS9X(-QJX_4:GITBBI5<#<+.!,V09W(:N7AC #\@,?QQ. MR&CFD?P>4+N\[X\28Y=F.11<;*P2K!L-,\3&@><%;U0UT!!/IA;%H3%'?^AZ M[GRK6UKF*J>SUV\V>Z;/'!MFNP9I4][R6D2\\\;_Y5>Q=N=9:N MLRI03)9.[^:3F/I#.^A79O]\0?NG!'W\V:W&(]B":]?B4(@LOIIH9'H:8LH4 MUEX*Z>S:M6)H+"=9->H.R-EIYA>X@LE-HPK9.]]%XC [!LSV;UA3U"JDUCG2 MJPZFN%R?$"-5P^D"7[D%@IC=]QP&,W]TE2!I."1D/-XD@35BL[B3S?WBPI@F M,.1N?JNH+3-_26C#*OSUH"EN[;U4Z]PJY&P L-Q1K'P/HJC_ZK@>=;H$-S0^ M]XCA.:Q0)&&4.&7* V:HM$K" M;9,VW/;*58W*A?YZGI+1.3Y%%U9"XT'.A;]3BIVBMP2YEOQ=W:+'V8+6?_42 M7)0L 7^'5):U,%+*+4BA4=.BDW^?I-9_)18K1\&5>'#A/#\_R%8[-=>><^BVA9<\?+YO-PQKPH@!>+%FTY)+JE>.E M 59>#7A1 2^:*>H%C3@X7NK'RV9CK0:\:$R_J&:^$/KH>+D$_^#"?*.<$;3$ MC!EJF>8WFNZ&4+\_P+>_]+MF3Q^1E)84'FRR"+:?P._:9 MPZX"L[!"V!GTUBV;3;IQ<]@UT[JL$':,($"V\PG%''9G!;L*C-0*86?1\)PI MRPV"W1GY%V]WY^#8Q31E:2,)$T)!YLC.U8'G*5I[Q;F3+.S;VBZ95A4V9Z M4T'^M[*7+H[-<\?F7@'XRK"I,+TIRZ+5/FQ2._H7>F?H[=,7\>(Z'%KK.QR6 MH%#'0F;>%I&W1>1M$7E;Q&:,=9^VB(UL_W"Q31_TBYWY?KUU/F-/2A)%-\'+ M(&DZ?^M&0R_ #F@YJEA-SK?ZA+_E>V"DCQ7ZF9BRL$\?C.3Q!2]5.LUJ<%6\ M+92MOU\462_5\:"^#ET/OM"?AJXG&!G2^'E/09HS0'OE>5Y*L)MESL6F[S&V M?02M3GN@)A3,?[@1-L^ZR_0\>PQ8?XV(]K+ KAC86YT$,&G:?V/1U9&1?P?C M^ TU\R#%VH?.'W>/G8^L->=W]7^<,'2CK@!_I S-PC0,7K%?!>W2 .; ,'1I MV_@KUI1O_L!H/I"4]YC[^".X=$38 M1] 1'DGXZ@Z)\*'O.(\?%R]9[@,_7T\<-;[>8R.:^,C=< M.]9 )* L $C1)@?T7*!1\"LI/Y4XYWUL.--GUDO5B7>[;!I"E1 M/&O72=N\P>-A4FZ\Z"_.R_33;\(-^U8__18 C0[CL^/_ M2=O44IWFB,)]M]_-3,+#-X:1,'7"^)W1T<=!=]$O49::UC 1AQ4) EJ_>-, M'NA,'@9@HCE+2JP.A;3<-7%$8@>44](>>=4'A"-2;@/E.\T[)*XV267N< M>;M,?U34.':N]^!CSW4&KL=ZX\#G<+J-EK4D\9]!98R2AJUD2JA6AZ^XX>B* M 2/I_(PM?*8$59\;Q30I*XKPWQ*UF0YY3D&>&343)A0 +_^]?"OH="(KXZT4]'4(ZFP):\/8"]H3\.D12J5EJ0ALH.Y9,FB#-Z%_N.-8$DZ&U0FLXR] MP"=#4"[8QYHM/E+JTU$NVJ]FGXWK,(*'P]>]=Z:-_\MV!F<115'%(8D!(CZL#,_R6CQ5;^H/S=3&6NV)L5_?;YCP MPV.CC/<@BX'^3_=%^#:W4=B//L#Z>6DO"J&#W^E\%%<,$)2OD$R('V$M3<;, MB9B=$"5&3FJ*.*-1B"(#+QUBSPLX9847%_X ,TKDCC4L1>68]M)&S(1!(A\C M,H:WS14:\4";TZ;&]$54%"GB GST,[:\]JD,1H3*52+)SZ!+G_&[>8LD7I5T M$*AR5LH6XK*"R\I-TH.,_L<36@-C$@)@Y-)6BH[I;+(H%5"99'>\T@EM,+N^ MX;Z5G@3FY"E2804YZT(631"(Y2:QC6(&S87$6B@]8!-L0U&3"OK9@+ @O@/0 M#7Z FA?!66[@UFYPRBB'+U2?W"7J!%.&R.@A3%.'_D UW8^PP? >9C!F$*FB M+N7QM=*.[Q_14C>_DQO)6XPH;O9RLY>;O=SL/;G9VS;S-NO7 =6=P=;:4RRS M\+G3S,Z>9G?W7W/G*:D'Y[OZV[9;I5&W; M*DJGIXAVD?DTMVQ+3<"0CFL>YF>@=GIV6>N/J4PGTX<:>\Q=P248?S>;XB%1 M%PR7ER-BZ]'W1^F"%*V!!D#4"A9AFMA=\[UD+1Q1;](FB=C++Z2N6SS+\)2# M&: N73Y)CH* Y:5(*@J6%N5[>K(631ENEJJ2E[RNT,=+SB#YY=4B]7T*?W9@ M\JABZ+&^P6I+T9.B(ETX&O& <<( L8TW'-%DB@]?&%PTGN+^9T98NW#R,@A& M]+P%0P4Q[([!KD=C $V[*?O)^[31!A=KC;VDI<_6[&(#REM>AWD'FQ4Y50HC MIW78NGMB 5I&V2BWH#+Z#!9VWGZ,]#>@*!6B[ 5URNUD:OJ5O-["3J ]= M'V8QOE'+Z@A6]HXP*65EEUP7N'D9HF+GV67 " >[-9L&]!*,B+>7Z1V=PO;F MGMR:+A9*^RX65;AQ\3U%KMRN\&,E(N5AY)B^RQG]>Q;%+!P]UR@9/R&+0KDO MJ%I"0$I76$FLYL4V&9/=7E]LP^MF>-T,KYOA=3-UCW6?NIGUZ?Y*8;K_HAG: MCJ4-C\,)&\Z\;$G[^$7TV$437Z"6'/ON+9@LZ'AA MWU?9#Y3K7=QS21LHMAY+)?]VO7I^M(??4J>E9@8 M:)>L5!M3#+"/%T=N5V+';L+?D[PY^;A+/UHIE&:? 8ATQ5C[L=25UWZVZ;&R MW-6D]1]O>NSFSW39XH/E@SW:8)6='KLC5=9Z'@IY%UHM=@HWJH<8ZLWC] YK MS?R5I?D?BH3"YG3+O!2;J($;N$1_W#WN@)#ML[V@)<.??XM900KBKIII:-N>3<) M7F]W<)30ZG"?1C-?'6_W!A"9 )V.=4"24E4_PIKH["KO(\\E]P(E=PM70\,D MU\!T&$TNV;B%2RZ7W/.3W/+YY$>37!JKO_HO"8,BH343OBCE$Q=;+K:7+K;E M:0?J/' QAU81M;*M];CHU-&]/_:94W[;/K>4E2 MP\P?L/]89#]&HN"3>*]6B 5KT7;:^;J=3+,PQ#:C])N_+?:H[/FI27AAE;1\ M_49).2R&^U%/R)57[M4_[$*0>4HG2E7(E"E#D*T>[ 7ET&PR-$_I)5@+S3SZ M:(]W#KVSAMXI;[I5:445M*(M:L;!]UT.S29#\Y0WN:J@J6%UK6GGV0OK0^8E MY$#\AO]^%8ROL-Z.):CS?O6E+VG^*R&5BA7=EH?Q[U'RY=+BA(WL15GFG9W/ M&HYK;F;-@Z-!N1.4@QT%'(Y-AN.:V]@)X)A'G F(LZK*I.!X:R3>UES!FJ?^ M+*2,M)6#C5L.QR;#< M]&I$T"O=G!^>X\=)\)GN3X'XZ,CU)5L-\D5P+UF;PUH;L%?.DM!EO-=;9IZ4 MC$/SC*!YPK#6CM#<*85W70 MI$$OO:!-&@]Z'?>>1J:."U>TGU-LX\"5[\B79DM*BI%-1DO*](;B+ M[8S0>*J UZ%HI/$N7>/AU[-&XZGB73DTY@&'X:ZJ*OXYVAJ)ME-%NP[5?338 M)1G\)#YK-)XJV+41C9N]4I77B?$XV&Y >LCT(.71KT9$O^B6W ?^,)NO6T*8 MP-;A+MY+P.0)HV)K,)G''A9SZ0?;$QQW3<;="4->!^M"'NZZ#$R>,-RULRY4 MN2X\>]R=,)9UL"[4FJ@++R&(=;?:=>QZ[56K"I<'?P9_QNHS*O)E4!$W:3^? M1DO'@)$64BJ',^%Q,#89C"?,L-E\R0(=W5-Y.OA9@^V$J3.' M:#X52;L5G6>+GS483YB[L$7S:7#2&DTR^BXU;(43\X)G'K!:+S5U!:SR4J.C M)XS7K)\UVMH1D(*CA++7-:E*G8.Q M)MHF3PPY:S#6%8[*X\T&O#4J^'EA\:9;\DJ\8$I&0DR&$Q_>^OS.(T_K):<= MD2--$#L8F@[&NR-/.E3M6=56,'(E-1F([ MPE*@O7N&*!N\1\)9@[&NL-3N:K&Z@D8>LMH74O>!#Q-YF9)XO[R_"_%;-"9: M96&[.5Z4?M9@JRM8E0<;%DA9/!IUUFAK3#0*E&S//CAQCX.MP6"SZPI&Y<%F MP27(YED?9XVVQD2;0,GVE$:AK.Q+2(6^5H<8MQ5^/-__ST1VG9 S=K]4IG*4]W105LZKPQL[;7+.3 MCXLK%]9%=P;!U^GN;AR<6V[N)[P'KBGN"J8.V!5%B3CTLJEM4D3 M;RH[[Y[2BER]FB[J=E55YEQ>N;PV:>)-937>4UXU,(9%W:BJ,OKHTGH)O60R MFWMAJ0 ?FNH9ROREM(AAFTZX;ZKY&H>//+QQ'D@\H=/C$"1BBTY5- IJK#D2 MSP2))[S/+R$Q#S9:TLJ1=K9(.^%=]!"=AZTY)5&Q\ZEZ'(EG@L03WK(.0:*- M)%2&DD^LJ@6(E] OYI:,21AB9:OS4_ .O%6UMUJAL;>J='^>G)_["Y8N29V> M*5] T&I,GO%]5A$FL>,7ZZT.T/0=EDWV[)[QI[8+)315>NL0+7UL+ MRL;>RBK2E&JGI\BBJASB*N"@;+*F/.']['!->] M%U]LC+WT_,](NYSPO@H0+7V\L4:+9L'QME_-26/R8;9X*+FLFSCZA:2"4O8;EWG\EY'H),T\A#(D%71 W%#5P&L'Y]1+XCPB;LF>0 MC/D\NFA89T@7SB7F;"5FC6%W$HFAV4:R*,E5<5IPD>$B$"N/$G-)Y)+8I(G7=/,O+XD*W-=$ M53[XQL;ED,MAR^6P0F=)>3G$F+8BB9+4&OYS+HE<$IOO82HOB5K"E]8:T_02 M NE??@YAOQ$FF1J! $8HQ!,B."\P/61KB2(8*;)L!O3O?I[(1?CP+0A&;Z[G ME>8Z33:2K<.U"KLU"F8#C\PW\V)55?4+=$:Z[#BL,"F*JRJW4_1.#V[DMEYQ MO5T%8&A'[2Q7"UPMU$] 4[E:,#H]2Q$U[>#,0:X6N%K@:J$FKIO*U0+CO"EH M),6U M<*7"NT@U:G#_C]S77CJU>UBDT!WV_@E_3"?RXH3/KL^&HZ22Z?JX =>J017% MB:&F(-32?1;>G$@( 1BP:"-AX$3P3T#>PK,J#-Z%MXD[G-"_36?A< )?$J8P M3R*0GT-"\(?XV=AQ0^'5\69$",9K?;!8\I1YNALQ&#AQ'+J#&5W5U(4;DBG\ M ;'"OI,\=9 @>_Y,D?[Y+0C_!&S"J%Q?F'H._$OZKNC=)[ +L'KPY '\?3AQ MR2L,9AP&+_B-B+"'12Z^+>H*CX10ZAG!$H44H4?:)OK$:S<&J W+;!Q.[LZ/ M'?_9Q35C8GSDL6XSX'!&_YY%\0M!KSWLQW-V M0FZBF&!OW/G)$6B@@OVAZW@P$O@#FWR"9]#0 M,,1WF/#0FXU( OUHYK&O!-,DYA$QN.)7$,<$;*&:!*8 IS('A8^U:P'^EJT#V6@>*5GQ^/ D) MTQ61^U-X@2%/(H'XJ-;^=^:],]TCBX(B*6I7>*(C>B7^C/T&:SMAX//='+MX M!N*7E26=DFXO CN[[?^(YA.$V0S9]F>'R<;NA*!.@UB U89-@Q'2;ESG1 M0#@]9QJ1Z_1?/HW<"!3Y^[7K4Q&C/_J4O#\Q /1I[K2F.H!]_.G-'<63:]ON MRJJ)!E82*DU>S#Z5N]3V6C% V&>ZU;6E]1]+77G/SW1%V^N7FP8K6UW9U-LT M6'.GQVX)HHMZM;!X2^>J\N%M>7"6CY5 M]\3"BA4NIB@9!\>D>#YO=0B[\X?!"Q$&!#83G;7TOV+GYYY&QH'1MW-63453 M/!_ML\94H)QZNZD>AL3/%(CLWY\0AD=116JGIXFV5%5TO$7Q;2YA39I;!>=[ M0R5,Z_1TT5"KRE:M/E2\XBAO3SCK&_%)Z+ (G3-Z<7TWBC$.\XH1X"GQ,0*S M3S2%?FWQ5T5D89,T$):)@ER%Q*.!C6$0Q9$PA45W7)\&C%;C(-G8"0+@E68P M=(7^VJ>]D<.#*UUA.6"2W^S,-B>+JV'P8AJP,5W3,<&2)C&+1%HSOTHB'M+B M)\X !C6+U_\DYUZK"4#(];"T.IE_3N9MDZ;.,[D:A,3Y\\H9PV"O'>_->8\Z MORS+" A(\G ;W[XZ][4S'(^/-D,FJ"-,HZ"[?0WJA(3X+1B3TYBQ""";H-C_ MXBJ6251E9%LCAVC.2+-52W?DL6J,;4L>2(/_,SN])QJB"\;(\Q0CQ/_YB[,^ M*M@4I-W_H0O?O&#@>*( !TZ7JIC'V2!R1ZX3NID[1F-G\/#TY5%X>A!N'NX? M'[[?W?:?OMP*7^_N^_7@1(*[FH;!OIO/QY@X M(R$8,N)!P8E9:AF!7:)F!<0[<4+Z)FZ7IJ1 BMZM91[,CX@_6\X+RB?TH2$( M5PIX+4U[620C[K#M JSX!Q?&-Y[%LW#-$*^+K/OM"33ZE@0:]>2I,F!'=25F M2Y7-E5'A0TL]1OJ);%6??J)W9?4HN3)\L"T;K+9;?M<)\T;LEN9+'"<+J:VK MT;PLI+7AJTWQHP:N;,G\I.W3OK2U2^SE:G.[SFJ%.+JJ11?/F.-).#P)I\:, MN4SX(TH#=4GJ3>E(FXZ$E:HHJ0<7=5Y*$MQ%"]^Y2MZ.S Q52IX!DJ?*HJI7 MU M+HG*X>F3)SGV+B&+^Y[$22219VWSG-*37%$9?-4W#HBE>>L-HJFV%ZU\8.$CXB2 MC1D):Z D5;-"N5%7#YA;Y4[EP-&EN^PB'<73AP%9U M7;DJ?R@7#BX<)Q,.^>C"H:-PJ ?[+KAP<.$XM7"81Q<. X7#K"J!A,?+=L/" MK8N5^J.JKE_<:W,A7INC7[\28!9I"K/3D[IV58V^N%.3BT?[+F ;Q,.B5S#N M\^?BT3KQJ.P*MD$\;'H):Y*3GXL'%X_37L+6BX>.&19=0V^0>!S 5F#4+B!1[BQ\-498B>^]PU/ M@YF]N%$4A.](M0++"?\QP_=3VI>E7V4(8-@#B@E@=B&T0S!O9Q/3L>7/1K)# MZ01PR56L,KHM6*PZNZ8=N[WD%++EW.-V6K94\^NY['.D0V M8EOJ6(+?_0%;A,Q^SO7P:H.V#11T;%-+0NMQ."&CF4>I^(>4G(WBC"(.4\,Z-%DT;YY1YU[OS?+6&R4LWNKI\ MA)9O=M=46T,0AH/=C<:J>BZ?%I%]\#9AO5O0$R\#$@JJ?*',)Y]S"O-X)J@ HWTD470L.WEP<;#6.9-*C8#:(QS-/<)*M7VO)*>46HU!I-$]X M/E1Y8J4K^S4(;Y-US4O4#7)7^W%IF=([/574E/PI]K'%L32.KMUU\U'195!T M:?EX5"WHNLQ+DRCX).8W)V[%57YSNB?QOHK!9*:<+//K$Q>\2Q>\TM>G P0/ MTPLU[&AHMD7PDE,['4BZRAJ+?E1L,.[PC,R$59@27G4\DIOQ(6^H:9278![] M7A"&.ZA6Z#RU\)DJVBT6#O8DQ,?\RXTG-[,(YD3"/F9>47?5OAH7,U8E6]0. M9Z;@E8-<5!IBDQQ%5 RIT[-U4:Z,D).[<+D+MPDNW+72 J;][&5&VT9G'7$L M0??[ 9*$W&&B4E"/R]VZYX&X??7ST1"G4,1I^= <=_6>\"YSB+,WR0,LN"YR MIU1E"]1L%72*,V]_YY6!23>2*4 MJR+Z$093$++W'Y[CQWU_].4_,W>*%:6;ZM(,/5^79NCYNK3TX;109_[DQ)1> M%=6L(*XIDV+O*'BS4K9X:NVT"R9KM+-&:FGQR=+BB[Q BA=(\0(I7B#%"Z0* M5^!A/';16S\+P8:'$W!9A?*4/YYYM.V"9V]IG+76_IA7;I/OQ(G(;_C^A_'O M$:'WO\\$;GTDXVJ^)=,07D.M)/AI/T.*4OJ&:&).L:KQ+M%?+=T\FJB M^%JLX.3HK:8K==^<>?P?&:)F8-^M-Q[.//1:2NBVM#AJHM#9G9YBBU9!F5?K M>1,Y,A?(M%J'3%.B;;LL^6!SCBN). [9KOV7(! ML]LG8'*GIYNBK%1U7VK0E8@CQXAQCZAWF;VRUS6Q)?FRAQ>J=GXR7@TM@6.*0K2?1L M(J2-3L_21=.HJA]G6P();3EBDIK"Q>8#PA:[?V&7C2J+"?<4QB.)H0EW>%,T M"ZX9O-+P/.!XG+/A2'"T (X:&#H-@>.%72LVY/+RFD1>L-36JUE_')/P2 K+ MICYPE5M$]HH*P)% 0LFAH%;MN6E@0V?Q:I@T%80H6+"Q0(9"? M4^)'1'AS(N&O91"\)6,[^Y+26),Q-].0\O%8:M"5&N:6@-E!PU1H9*N W(82 M%V&=6#P)"2N'B-R?P@N,;!()!" R$K!\ADE.4D,C8M?.*8$GO!+O7<12L[>) M.YR4G*^TQ?8X:,9(?""J1CYBLL?&2%MTX$$#U9 %QBCP,U.@N_[0F^$FN+X0 M8(-!8>2&V"IT&$1QU!6$:D1$EHXI)#I.T5*K$)(MF:0'#=/H]'315.T#A41A MM555"CL+86-CF<-/0; M3 /65/HZ)&"CP#8N"E;_MEPKG)@&TN(GS@"L@%F\_B>Y2L&:#F!97NDOG/EG M"=8$:\Z:,)GS#D^=9W(U"(GSYY6#YMZUX[TY[U'GEV7;! R39$0V#GEUP=8N MRWA\M&5A!M((6S53P%R#44A"_!:,R6G,6 101R!\?]F^/R#H3[2H&[00IP-(G?D.J&;H2)N[ P>GKX\"D\/ MPLW#_>/#][O;_M.76^'KW7W__N:N_UUX?((__/KE_NFQ\5/Y\/M]__?;.QC_ MQ^:/%!+,X!FC2 3+:$CP:C9Q0B*,G-CY6*3V..-+DWA/K(N=^7Z,+]^" M8/3F>E[?']WYL>,_NZ#QJ;=E8R]RR\XSKUAVGO,E?3Q5P8L7".P->]&^T-?4 M(W;TB==N#*IJN ,5H. %$$+3&Z5UIZ(3A MN^L_"Z^.-R/"X!WN0],@3+AER#/Z".<7J^T^!^&-(%U#E!#:1.=(9V-W5>L( M!#%&5];V9:PY.9N-T=5-I3V#;=7*MFRPIR$U4LR6LOD\@L[\E>G,+Z@SRY#Y ME.F74R*XT? 5V\Q_=,#T+VL9Z7'<'_YGYC)GU_HZ*+Z,&Y:Q/_KW+(HW%Y+Q M!=RP@%^#$/[3%QAQ[O!=> KA:1Z[801C 4SSJ]\?;X7QS*?.8L<3ANE7GU?M M>;[R51#J70(/P-W]5TX4QYFFM@?$MG"+I%Z LL$P6^[T;$FTU8H3X,XEOXU+ MV45)V1:"D;E3%.W5D(QN9R$LPP\863 J$BZETS,K8_[@DL4EJTD3/XID_9B% MPXD3D:3I,BQ%YF:S?+B-W9]D=/5?$@9%HJ0M%V-Y7.&27D$5#/Y=2_#;Y;SYG,JW6 M%R^WL$:Y'+2WE!OL#6T#1[PA27C$*Z)I:*?? M]4N(,'[[\L IQ3?@>DLYYMZXE@'7MB7*EMD@>F7._%T]@+84NVZV@DN"2@%0 M*9JHVDWB[.:@JISTJP!5$

^.TT7!]!Y 6@76SZ/(@U0 M5, DS6'46!B50]$6PH"]K2.]TU,51=0:U1?EC/S2A0SCR[FCG+J+,W259NC: M6^"-3@\&)]IZV>M0[7Q9Y5Q#7,:XC!U(SE7IC1%9>11#E-22[C4N=USN+E3N M2E^EL:5\#B?Q.-@E/0Y.)DN=G@ZVHJ65 MS22L7<9VX#1>2^JRS'QCU$9[,Z=$"L;EV#*WP.'S+()W15&FR#ZU<'[ RI"^ MYP5#IG:3$7SYB52C9/3D_+PEHQF, +F?7M 8*HTIF;&"%M"UCL/@17 RE?\P MK9>I1VBO(GKEV97-QXTH62T.68@#84!@/=)A4U8@UX='$R%V?@K363@-(H)$ MGMLI?QK%&E7 DE4!?=17%Y!%OKNO),?S14D><[12!B8'M9%6*K-^#IT?;8PB M(@T42%P>5OIK[K.8]BJIDBYI>%:-B@U+C MN9RT24Y*%HSL+R@9@_^ 7KN&C,4DDB0:=CY'N,T%)5QJVB0UIQ(:N->5%A#L M?2I9HJF?8?DGEY+SE9(MY-65VV &R(FBB+9=%24:EQ,N)Z>PP?87E*IL,+/3 MLTQ1TO/E(MP$:Q*PSEEH3B4S^YA@E+),%VVM;#U5C87+^7>/Z?^TSQ/Y%#HC M0C>XA=Y'98WW<2?"@8(=.TO"@2U$U96;BC::BJ*LY:E02HISL4@=]=!;>>5> M1!;MQ55)TVI_8%5D6BG(=&? I>00NA2.LC/57GO8(HKF@N@ZV1#BHF@PJ M90MO?-5'HJ)0/65996N:.:[JQE6Y(_$ 8%5U)"()'5RFU#S4^)'86)2="F3T M2,QC1NOT;+U)YOKEY0'AE+S@N85WB1?64)ML<5RW#5JO?8X$E4) M "5*5HN8O<\G0'X?^%=(HT3B-D;(-1XAWR[,6^B^JC9%5&3PTD3K<*9^[JAM MMBFR/[ J,D54C#S)HEW0W8B' QJ+LE.!;!]31$53Q%(/=BQR4#4:5%N:5E1^ M)-*N1Z)B4I!)0L_$AN+LE.!;)\CT:!'HGQP M=3H/H)?'Q2UY)5XP19IB,ISX\-;G]Q9>TW4>1-\NU5O:PE9NDYB=GFJ+LG2& M)8]GCJN2-LG^P*K*)K%8(KN:#T[QB$%C478JD.UCDR1%. :/=IXWJK9TDZWZ M3-0D[#+;L%I-CJLCG(G[ ZNB,U%C41)5.L1US5%VIMIKCS-1PUB()1H%1E;K MP^@,'$I7T4M;2S*7Y,*N[ M]@PNS42.$UVTE0I(3KAL<]D^:]D^C6CO8W73I =)U"I+)J]3EJDC_Q?:3KRW M:%;.MKQ'V\WE.IF?/D--.:31DW"4O+H=6\TGYP49"0!A!]X>.OCI%7Y3@&&Z MD1# X 42Q0 W[).(P85(2$^V^]D+O'B8BT"9NV/\]XB,9]YW=TR6D XS&EZ/ M9N$[<<(%MFW =HKJY-T](0Z$+<.QCC,<'8DRS=QX\#O1QW;C4FD'+F/X57ET MVD>"@[P7.E7I2,-1.CU]#3B%=J-3/6-TJO*1X*#NAT[E2,.A/;3.4G=J;4(G M;C>:AS/'VQ&?)>S74H#0]\.G=J3A&.NU9[OAJ;<)GF65IWXD-)A%:-@.3N-( MP[%V5IXKWT&TICO^XH3/KL]N;E+J@G#]$?'C:U7MFCIUA]2!D:<)@:G".-RQ MBU>_?#*3X S_,W-#P 6L#5PR$2Y"Y/X47N#ADT@@,(V1\+\S[YW=>6514"1% MQ0T"A,5",!:&AM^X0%]])B$1%P5_PEHB"X\/["TJEA#ZN^;6M76P.=/_R(/%*T%7V6^P6NYB<.3!*KBRQKK!(MBW##AGNAYYP M&NL&W 6YCJ9DB >C]]X5LJYQ@?R<$C\BPIL3"7\MX\K;4FZ2?'6J95UY MAD9KJE4I7[Y/=Z/4R+>P358\YB,H/?$OKUHH';M*:.;6 T+'TSBETYY3EG>OF[1..HD/YJ$ MZ12FH%RO!B%Q_KQRQC##:\=[<]ZCSB_+-B$8A,F(;!SRZH*M79;Q^&C+P@Q3 M@&P04HA(.B[F-VOI,/930- MGO=_Z,(W+Q@XGBC<^<,N50"/LT'DCEPG=$G4_!D\/'UY%)X>A)N'^\>'[W>W M_:6E?GL7)5/?HLS&+P!$ MO'VQ,__[7RQ%EC]MN?SDKS[#8 :*_8?SCKJ^[X_@+^&,C+Z[SL#UP# AT:T; M#;T@FH7D"9[TV0N&?RX,,8O9@6 8P>4H3OZ&[R%@M$U1N.%IG5[R5"'S6"'G M]5F2KA6+:_'"*WF>U[#C)!^'$S*:>>1AG)\(*YF6OSJ =/JETG;W,.F>\ M26@4CP//"]XPY6&M0L[,CTV%IC8L+%>:2P%3\IQI1*[3?_DTFFIU[6F7I^9]/[N26BJ6'*<&+N/_\':&56A_O"?;* M.K],B9)C* 5UA_MQ&>R\8S739W#)XY)7,FNY8LG#0)DJ2E95K?6.+GFG[M11 M!US2.\^K,Z17Q;4&'6?'W7).)2OY1[*0^TJ)0ML02[SC]5EC:8OFK0A+F ^J MB)I1%8E*&PF6ZT#"#^<]##R/QDYH+!-3AYR?)$?0Q#G-MFE7_Y60ZV0]^_[H M-[::3[B8I<5!PX"]<3C=..?&:S".UFC6*G&D=WH&X.B2F\K5@8+/Q"=C-\]R MQ\V*DB;JEY>I%[P3DB[HON:%@?V&-?-@3PJW5!L,J=TLU:H@A4GX(H"G09"Z M!(,U]0($J<[6E?6%A9)"H%-0O<9#T?2&T+:U4+ M*1F;V&E:5028W&0MP8>_9\BPF.=(NEA.KXI7YWPTR6[^E J4"!*Y***IYENV M'!0;/W0KVY&SPL69BW.%OJP*Q!G;5VBB*A\2^.U: MZ:AU>KQ:J($U,\A.RM'PY$*(N$I*BHW5U0&LJ M@-CS"MZBU%1S4^L^8GX&O0T*#P-0>XPB9JZHE%8/PE$&8ILD$=!N"Q3:DE5<1+[WBI5>\](J77O'2J^P* M/!+?#4)A&)*1&PMC9\C+K7C1QVXL49JR^1J\;'7<.&'X#LO0?\%:]](W80-9 MHB31U*N*._)Z*RYZ39IX.=';XE"N5/3,3D]5VR1YEY .\+M/KQU@4,%@D")W M&@8O;A0%X;O@XZV(IPIL$)\M#MQ*Q<>"DTL6#>/@D S/%6@TIK;P?5:**:3A MM43-/K@$A2<+E$+$5]=W_"%A[!0\I_60[K&XCLOUX&6EP*9)6))451UX@XQ^ MCJ02'=$J0)*,2-(./Z)Y3FOYG-:LLYX;K1L,C"VLU)L-C#SFE4[/5CD[P'EC M9@LA>)5&J8TL :(E-RDG^A)L4MQ# 6[^,VJ9#H,HCD3!)Y1JTLD0OE^8M5JJ MH_)6=]J8A*PW!2[R#:[Q'OU6;0U3O%4I7^BZ>]-D;JLV&4=;_4K5X A;9HB& MF;_]UX*C2[!4:94 0&Q\;'.D/9:6"<_)O:LQK M2OEK%?18XP[G M\X%8)8I]7XC9E+53-CDGV&D!LD,BN2AX)(J$X;)*W_-8W:,"Z]SSN:I?H//1 M294<>R65D2E)F'-IBTK5=Z *]K;F2Q*7S /UX=;P9_&0"HP ;RA>_8LUY0!->?SF+X6<1Z^@(,X3]" MC#>]3)V06DUQD/P],9&\=WCSF(3PH,&[X 6P76!"^;B]\+@H=N,9&PL %IX5 M.OXSH?6)PIL;3X3(A25UPN29\'#8DUD4A^_"E) P^5+F]4D)RW#B('YAQ>$- MPZB[2Y'?<4N_Z1.O45;=X0Z[SBIRSKDFNN2"W+"-_;I:F[1I0Y55039JD^(' M7^C/G@&Y@JQ2*96%#RA#G1LOB% 6;D$&.Q^9Z-X@GOUWD%S6(9LQOT@_AX0*2_*L1P)'R4CH_]UYF7[Z+?OAOE&8>4&:;(I.ZSX_^)6J5/M:DC"O?=?E?XT%GY.[X5GS=Z<7V0 MQI#VXA:<9QB0*$18@HNK174"C +?[I$XQEO7.)5FC&N3D*T-NY&Q;^-=+8S? M\>\AB0/6XWT(AX+C^FFA;[*6_XB$*--W&$?T/ ,=X<=!&'6%'[,00^=Q.MTM M*\F&,@W)JQO,(ES+T'GSJ9)"9?3BQDR%P1A*=6Z7-2M[^M_=?\T=_[!6#V,V MGE06?G5 A<]>/@=A2$N:P2: 3THGP)D2[18BB5*!;RO!X&O@O2(,LI.,,2J& M?RPY5;O.J:J8CZ\73Y7V'D:(PG;#24F$-T+/.!_M#91 $VU:Z%+=:Z%UNF! MTMIM+;K"TX1$9,WTT19P7ATXL:DI, '+\'FRHOB,1%DE48[W1/,QO>-G5GUA MMV3,%)"UDDLK;[:G?X3!D)!1]#4,7G"5HW292R^CCAVIK,(2*>$-] W3$;3_ M^R8=@WJ7ZO3 SVE>@0)OZKQG=0_YB48.?&.0(B'*O(7JI&7A3>I[40U.0ZS[ MA:=&L^&$Z7SZ[LR)@__=%3X7/7N+EJ1PB @8@LSX9 "X>@!%Z;Q@X'DUS2R1D MVZJC\)5 MJ4F>V,T:LJ1,0??A%ZYIXR-XUH(/#][O; M_M.76^'KW7W__N:N_UUX?((__/KE_NFQ\5/Y\/M]__?;.QC_Q^:/E1[D8&\" M8"(13,XA0:?M!"V\D1,['XLTV'IN,[60VTQ;3SC6($_.TY)389OM 1>75QA_^S4OM)_;_T8@2J:D3AS [>@0R]\WCPU=XPV-BAS_ )=;'Z0A?9\R: M2EX!1OB_X;Q./2#H4_5(FJ_$1NZ15_21S"\<+@X7[62PI-U@)'SHL.D\S4?0 M^;CGU6% G'#Q?"<67D$_49T;4F2[U/^$$1BVL+ AMV!4 MOPN/+BX8_:,H3+U9A,8O<6"40[P^H-T_G7KND$Z"81M_[% O.QL40#N YRY M^7SA]^YC5Q@AP0.ZJ.[2Q6 +$)(7]')E=FTX0=_YPFF_O"A(@(>MT*;J5#VX5W%G2>2-,;VB7P[^B) MFH!4F=21O.WW7S[?/=WVY_KR)4"\D2$+)25:";[V M=74&A,R5) ?&2) ME0*LC\,$&+:M-$#U-9ZXM7?JFV3)[TG\/5F\WW#!YOB4YO"4I4Y/ZQ;=DV%Q M9/A@]9[4"IR"]BH"('7 I !<\:^L0^#8_0G_Q.#=,Z&/RD"1;2[-OCKQSO[J M^NAH_8J#NZ%CNPFV;#1VI^_*ZS<:XP^)0!%,,QL+N#)Y3.^FFJDJAM6DTN%2 MUPB-T%"BT_S6Y)7A9FKM900F%VVK-LBQ=&5 )V%Y# M:IUY[HN[ZA\$S940# @TY/02P.K M*%![G@43'&:T)4B&TV[F)086?'3#SG7X=[QKA@'7'! M/@QF,2;7LYVCYM]'&%'RS=0=.77>4_L;#&F0CBF,E)J *2OPBKGV#/)+$I$4 MYV:0** [9C@AJQ[J?V3Q!>OR1O,:J,-]9PM8G(\R'3R%TA",<.:YH/'19/.6 M-S?]ZV*E\$H1SJ;Q\!U'#_KVE5K"\$3/!7".'&;I%73;.XJ&68ZD@T%T"QTJ 1 M11!<3&=^H-_=FF<+CG. MTR!G M0=3>UFY0*R N11GNN!G?MADBLT9$FAE!&2*6F?L+VW(#%C@ EXL843],2S/8 )0H4.-W)]P M:_?C222P%+*"RTLV."CN,4%#JG:")E(I%DQPCY%MR3J-?K,RLWQ$FTI7 #W%"C3'Y4-I$[8V=34XJYJ\LG M(.[2/_=FGO!56E';R*<@ZG:>^Z:\I.W2EW7_H2JT[$E4I7P-9N*[*9?"LIP- ML:._G<$&#_7$TEUVP >I[9W-C!X)SR/A>20\CZ0I8]TGCX1WZFQ2 MFT-9OMBI[]>I\WL013?4SGE&K_NB:6>T,)+RS1[A;_EFG?/'Q-05ZHZ26,"Z MOIV;\K"2%Q2\5MF_Q^3G)!K4SUQ"/K]G_FLQ@Z4)Y)I1FHK:SF:43]GFDD+2 M,G+V @.&AS O=B9^LE2H2ZMNT19 )^X+O<\-%QL^S*X7[UJY\V-YU\KSZM;( MNU;RKI4)K]X:Y2@* P)Z*QL$?2=.N J6;4MQL>PL%]Q3;XM3,35O;H*7 >;I MKC=H]NU"8BH:)7]3U:K:D#2&38FWN.3B6);Q;$L<\Q3RJ'=ZEJ@J^9!%0\7Q M$H@:^TE>8\(:E+EL\MY!ZT/3&W)U]A"D^1Y\#<+L=;](AC!_H"#5B7<9.B-T M&6MJYJO'5TD%;G9ZAJC855&B<];SW<#S&QG-AFG"59H3_$X5]CQ7],49D;TT M=GM)J$MUDJE89<^WY&$\_QM(5Y)$'/T*NU%:NK"QL2@7I&3R;D9G@L&J%?LQ M4(B)1:)BY+O.\5Y(Q\+0+6$40A\7%$E+BCZ3DA:2JVQI&WQMP3)Z80;[8>H_ M@O'#OQTJ@2G[4[J%&4'\C>W:4_ ;^76Q90_CK[!A?^!^E15-5>KT3%$O: BY MNVARP_^2#/^3HE/&@\,N:*+'+P?'[Z2W+KHMID71M(R.5ET> /]U1,!B@FT;+-:FW-%G33JR;_BXL^%_U:#9(#1-]$$UBS#FZD MV1C1WZ''WJZ,#'KC"1F2TJC;!?%&(=V&4,C0&&*E,'Z%.*%_%'UJ M XLT9>5BI[Y??>J")"7"AK*I= U=$BUJ5?,%FIB;O5H\JMI%-:N9_F#^2%AZ MP5Z%J_0MK6 K^@YZYSFY_MYXCOO"EJ"//)K1"Z-[V(& J6$1P,4_/>8MFE [S?9JP$HY=#_ELGI'4-4[XCV&>A."A*E*%GG#?4B*[@'8J M8J?@- S&L&QT,>%96.+UC/RM6%KKO6<^=CR!A&$04OK2X,6E?TQ89].Q8]$M M:X"6^=7B *&4IT@.)Q9-<<0RF,#J8?.<@F$U?$^X/\7Y["C=(%N.KO _P1OR M55*BPBAX@4.?<>V*E"*7MJ2DW=+(GY1\TWEQGDG" 8HL"4CI/PL7XUJP8\,< M,:>2-41X(_0QR(";L+9VA7]-7-IQP'=89UVP$N')^)4!\5Q"28^3'@HAH?PX M[KSI0T32_7QS/8]1)#L"UB:'R.[KC& 04">1XDS2WH9QXKIRZ<'GP DUDEHRVV6G>T# QN&33R>%STV;JXJ>]G&2R. M_X5-!D_*F@B;E385'Y!F^H@\3LN_; MRTI@+RAXK=(6*HD[7W@8Q@'6>"N2+*^RPU%6YDG@T4;(M$7J:W)#RM$SX<^% M+XQ;&?Z '/2@R']XCI^V%D*J..1MQ\:7M--&<>]I7_C5">'K\$!5^+!H$\W& MABA3L!71XFWX#OIG^=-'=@*O'PL<=%,7.6RGF6[,U'R@S=\S+\?;==+/TW^& MP?J!,)Z%E OOF=)-,[Y:+"_(DG%,*,D0S5.E9S-]'P5-5_BQU EU\HD#TB^4_G#3 <;:"A7.N 8N_+IX"J:XC3YPQ! M\U,BJ]?[R W/++K/[[F#I(^CO*$K_AM3B\]N%-,V;6B!S_FD%ST> MBB4KN['%[Z7X(1E>?K8_*?;&M-=&^ H"E^SHT'/'8^&5L+YLC/Y\ZF6;2O_Q!QLL:^8E+^TG#O9Z- O? M0,%'Q%]LHMKIC?$:A'0>.=_!BJ9G,HCZOINS%_:AMBJ>[:(7 S5>?D= ;[5";.4D M!S!N1?_V1ZX@[;PRMO8A$BLY\3(AYY9F&:RS@=J=GPK71M-6<97P(%CC3$V=Z6I?& &8_!?L6 M,5)J$**5!@?TH,!S(I/>D!G2IV>^>S:]?ZCL:)QN[' M4]$46RH&&T\@LZ83:%D2]CJ&+*QZ,;OR&=:SM^6H^8,:$578S:TX:=83FC3O MJ&%;L_=1@R1#DB)J>OZ:E.,R.<4]Z9S/FJ(I-EL0VG76+(O"/F>-+G5ZFMDM M8'[;[\K#;S6E(?@+O=][PNPV_V]1T MWB3"@%VO]CILE$[/0HU\?O>:A@A0)^;@QRH=^'?"Z!YH5G&P2]YQ##J&4*G; MGH%,"Z/*$7(86YJ6]3TO&&(Y5;$Y\X5-JBR'AJXCN8PMY2-_=*;EIF!*M4S! MH)Q]9D&O-5IZ,2687TZ\=W&?*:WII7+D*5'*'ZO --QG"FN(UH\\!0NL6]&0 M\ZZ7TC*EL/S2Y$6RUW!ZR12]6T.M,,;17L5B2C#*EDN',6]0)ERFI1J#/.4_84UT_ MP0T^IWAL4UJ-V3]D?ZW-^_LE*7Y^9(6:Q4(S]SO1G8UH6XSLYTBQ3&D!0 90)(>)+ X();)CXQ"0 M@2:AC7EQ7-IN_2TMM7$2=IJT))5U\<#W;:Z_1,OS1.O(@K)?@S#Y$WZON X5 MRTT7RXG,TETS5WU*:U)%7+&9GUDD)\Z;%EE-E:$!7*F:9"5>2>U7J;))*A/Y MLZO\56;;/>!4^2ET/_>F%S0,3-P2+3T?1S^"%=Z2-3&13%>N\P$V\ M)V.BI7!>I$:2 R'OYH5.?3]>)+! @A?RY/SL8<)\+0] MZ1#I0UOBZ%O#.$+5<%J'RCY)BU&7:70GSDCP2;PP6ERV>K'SE":"-F@FL:A9^9MP^0-IRU6^XJ= S1*N@4G35JW.[ M98L6S(WLLD?)GGRXH#PCL:( MS.2,(8BT].,DH8*PKQ)[W7X\NDLG 816:7Z:X71 Y6,.%&P3.6/59T:ZI_NPR&-=LH@KJYIVZ>VV->'$\_B('P7Q@0I MR3TV&B3.*Q33A?X;S>8T9.'B*LK<84A"1G\W(#X94_K4,'A9,&8/(_(BEUT#\EW2(0U#0\-"6JT2!X 4:%I8M59I\PEQZV25% MEKAG)+ -0G+EN7_"]E_%<,&Z0N=1]HL(IPC)\L1DH^'@6'DV@0.&GE2K+T%G M5-+N>H14=-3O",N(='49;^1B3QG_+IQKSR%!9EW\;U_0I;\);(CX]0%A'C7' MHUZ%V318!2@.9YPIQ!%Y_OP!_@'(:% M])%4CQD%+A(C?F4N4>K>0%Y">\YTQ] 4DCD-/_J$IB@Y,#?V_022OWZ[M. M5[BC:XP[O7!I)<3':$$@O_$ +0ALH.".W2&NQ'""M_;TL4N.G26AQ!5/ON2# MA BRPC0.4T0[D0M?;.*5L3[QJH1S0>_P;"V>K<6SM7BV5E/&6FVV%G>,UN 8 MU2]VZOLY1A_),QJ@OQ':WM-_WN0?Q92(5?^HJ>?]H^QA].Q('K^?FY0]N^"- MK>&#S]YX0KHJ$5C]=$FR)COMND')T2D;,;T,]!]OA*=@"CMX'W23R[ EI83M M1P8:?>+N37.271;F*$KXXVN5Q0_)4N47<9G=?N&DNYFX9"Q\F1.D/S""=(RL M!W@1H;C]M?-1%(+PV4FN'=D&//Z" MM;F@X(RMXT8W6D&]6Q1 MZC(JJ%S+Y4C,MX>1?L_543*'Z!H,PW'HL$Y%Z'S^0(?^<9Y$D>:,+:#CX)X06+1DZB,$A&D#1+*I@C_OW7+S^28<6+<<(@T"60F0Y^ M]1L)0 G$V$+H,6GH@W/X]N5AZQR>%S^=]P*:/_V,W&#PUVR?@'F[HP+X"DF/ M .J^<,.,2CYO[\^8_N*.1AZIB?;AB4;3?F51M"\81:N"/_Z U:B5!./1 M_;E^+:KK3[ O!T8#5ZPL;<@N,[_ %51VYN._X$7B,#L&S'94:\UB62F:XZ9( MVK[%O%'#IW]U\/8@CB)$@-)D'*%Y9L MX0WXC>FIKV'P@A%T?.:_W'AR,XM@@B2\HPXO6!C679Z,GIR?I;-[[4[/-@HK M\.NC,N+T85QR-DN.M:5,[0228V%MNZ2(AFIST>&BTQ[1V4*+<@K1H33'FFBK M_-3AHM,BT=E2"'P*T5%82PKC'%GX&RT%GS/9DJOJ0BDWU4*Q;[ML;"FH/(5L M(&>))DIJDWHA5<34SZ&6@=J6 MA30$WK] Q95-4\P02'VCE!;0N+URF@ANPS MDB%:YL'&,L=:H[&VA8WM%%A#/DY%%@%T#<+:)3C^OWUYV,NZW/52V7;9V$*M M=PK90/XDN0HUW#R?!8=:!FI;6/Y. 34+*3Y%TSCX(L.AUFBHU1__@R'T9%D7 MY7.,8G"L+;!FUQ\QLY%)RA+UE1^D3%9GG4X2+H]<'C MRKZN7Q[53D^3#-'6J_+=1Q_K]Q;;6Z:FV(EJ5Q5*.+H_)73@= M2+KX&JLEK[#B0X4!CH(9%J>?K,J$O[-4.4TS@V=EZ[T>YV1)2V06C'F_RAK+ M2_KJ)<1C>2'6)27V;BO$8C3FWX,H2BV&51[SSU2SS.G.2?3E)U@5H)5=WPG? M[V+R@AWG\;5AX'F4HR8FV/NIM%F!Z4"&:&H'6Q7-B]=P"3M;"=M6L-4D"<,D M*%M4I'RG+"YA7,(:*V%;7%!-DC 3KL:J:!8TR>82QB6LL1*VI?RK21*&&62Z MJ!5TWFY]JD6CA857B1U4)=8D$;([/4N4"WHH\ZJ+J8B2S<',P5P,YO9$ M!&4)P&R*DGHPH\:)2XQ.Y@BG#33K@-Q-VM_T*$VLC:Z^PR@^30/6A/6:]F9U M7\DGW-DKM5O0SQ-[PK*BF0_RQ^4&I!?B%?A03DWDHK38N!C^K R%ZIM 2X5ZDJ5M3P)& R%_]L 2Z14\$4+3OO3^6X/!=< MYH*@+<"E!KA41:. B[867%ZDBW\'U_Z.URTVF:+*?4Y=4MD"-5MG5O/N95SV,[^8O0A;1."H-=]J:150+VF4(CC\J-_(MYW^U M(U>],H&514"1% M%050%U,R1/!Y[V+YV6^Y%U4\>QF) R0]3VY3?N!;E'/% U>HMT:5\U$X830+ M0=?MOG,*W3EE>>>Z*VD%\)(A.U#H##;I/J9777B+'U^K*O41G_YPI9KE"=;@ M)GB!-[\+(S=RGI]#\NS$\ (WCE9:JPAC.#3IGN)*1L*;&T^$8<(R' F#=^&9 M!,^A,YVX0\$+AG0=Q/DWKN+W*5OJ]!'L+RA$Q!E.4($%LQ!>-P4@X"DB1"SQ M/.H*MYFQC18CEZ.-%$&'O!&_QG"$LT'@/(8$BPH@36*GB!]1S# M>@4AK$0BTXSKN6&!DN&A+[CI;S0T>?W;_/]ZH?$B9YPT9_@:9]A M4?Y$T7NV&43P25ZYT!B8-OA9U*=B5>K/@_H@RRWL#"$I)]$ME_P<_&8(#!DET+J8 G2]);%LQB M,602MR*SBPG#Y,#H8AA,["YF/8%<>LXT(M?IOWP"J9EZSONUZU/IHC_ZE+PI M,<8*; NJ =C'G][<43RYMNVN*2MH[R:QI^3%[%.Y2TWA%6.0?:9(7;R+NPRP\) M6B$-XI='BP\MWE^9I?ME;ND*R?6D"B;YUJ[-(]P!=EN90^%3V.U@JUNFXOC";3H%,.NKVJXA9[0Z7)%Q1<8562L6+J_( M+H&>[G??10?A8XRNVK))TA<;.2\]__,)C,OV%BZJXS<1M!2MT[,-T52J(O1I M3*[+@6T4N$!>GD JTA8FKE,(I-[I:8:H&P=GM'.!Y +9>H&LO>VUI1B=GF&) MBLQ/2"Z07""WL(J=0B Q?UN61;VR_GE<(KE$-FGBY21R"S7:*232ZO1D2Q/M MRFAAN41RB6S2Q,M)Y!9^MU-(I-WIV9)H:_R(Y +)!7)+6<4)!%+%UFJR)&K: MP;5%7"*Y1+9>(K<4S)Q"(N5.3[4,4:VL273SN$V+69 :+3]?@Q#^T^<];C<( MSY:BK8.%9^S^)*.K_Y(P*)(;I0/R82FR\JE!_>\JJH#G,,O ;$OSKE/H:+73 M,T6MLB87'&G-1%K]>1"J!M: :!P>=>5(:S+2Y/H#_*I.J^YEE2NU\X;:L4/7 MFZTT@UMIEP&S^@.RJ@D:31=MKM'.'&KU1QI5[!0F&K;)D7;62*L_@J;:E&+( M4/)<-?5!K:(RBG;1H"\3WO#""AY>V*X_Z@_X:1(OK. "R04R$>P8X@X"J71ZIBQ:!3V&N$!R@;PL@6R P:IBZTY%-'@2 M-Y?'BY='N0$Q:4WC915<(KE$)A+9@$B7AK%[R> V*Y=(+I$@D0VP6@W,IM%% M63TX3L,EDDMDVR6R?GDT.ST-3DA;U]LBCTE0-1U(LO@6%;8J"3@+VC^5>!!_ M)W\G?^?J@SAC_ HO>M(6B3/&[[0RG#&>$RUSHN7:%XX3+7/&>*[(FK-P7)%Q M15:W(N.,\=R_Q_U[N;2M^FOR-23[DS!/A'O4"R07R MT@52J9_B09>06DQ4M-;$P+A #[=(B?J*S"622^3%2V3]%#2ZUND9IJ@9 MO&*="R07R/J+#72]TU--."*MUGA:.64\)U1#X3DV_\I&,E*=DY%>",SJ9Q71 M33":JJ#=XDAK--*.D0B1!Y/5Z>DR)QL];RC5'\'7;>QS44&\D".MR4A3CQV: MWFB%&1*WPBX#9O4'7 T,N&JB8F@<:F<-M?HCB88"4!.EPSF2.-(:C;3Z(V2& M2OM2[S7.:+9+[^9A6&02M(S*I3?[C,H8EZOR@YS+/9?[X,E^_;6_*G9YJ*Z)U M1L<\33;X)7;@I3TZ*5QTUY\Y=%;__&7DOA;]'?Z<3N[%"9]=GPY1IVJ +<$@ M_*4W7P[ZE,QO$A!HF)LP#2(7'WH=$@^>_DH^O;FC>)(B)/.K9)FDQ4^< :S( M+%[_DQQ'YNF!KN"8,.,\NQ;9?T[FC2JFSC.Y&H3$^?/*&<-@KQWOS7F/.K\L M+SBL=O)P&]^^.O>U,QR/CS9#ACH0G2"D"+D&K),0OP5C[A\? MOM_=]I^^W I?[^[[]S=W_>_"XQ/\X=3$SL?W7YU_!V%J4T2?WW\CTP!.5__Y MD3R_H(Z@2N,)'OK9"X9_+DP'A9DSL%!DU(^3O^$K"9@94X1!. -=^2V;!B<, MWH5A\B[AC< ^.!&8+)X7O$770FJ"))-9KYER!W3QIK'Q@-E"U=[\R*7V!^R; MYTPC1&TT]Y_W:]>GJTQ]]2MZ4G--XN*_8'A3K[./DV++MKBDK>'(E M&8_)BY-#K4L/M15SBGVF2%W)DM=^+'77?[;IL5975O9[ZN;/=&7]._E8^5CY M6/E8#QBKJNST5-Y=:Z6'E$Q[2*F\N]9.*\.[:_&F-+PI3>T+QYO2\.Y:7)$U M9^&X(N.*K&Y%=@G=M7[,!IX[I![M_\R:8IJU6GAYY(7P@7RH@2R?FH;4Z,L$+9],.$(%T@ND*T7R/H)@$Q6 M'VUHO&\!%T@ND/7S))D&GI"::)M<(KE$<:@U M&FKUA]0L"WDU+5$_O#D.[\_5@/Y>D"6;_!:BN=GJ)@.U@N MCUP>+UT>9:G^+ @;0].6)MI<(KE$H@ MD;(NRH?':;A$$X&3-GE>>*K#D+ MQQ495V1U*S+.*L]3G;G';WNM1 ,R*\U.SY)$23^X6I^[X+E MEX@&Y!9:5%6 M>4-MC0^>"R07R*,)9/W42;;=Z:G(*L]/2"Z07"!K3ZVT)0G+>[$3TL&L!5PB MN42V72*-VGFX; G9!75;A..:2R27R(N7R-I3N6P)21@ET3J<[Y,+)!?(U@MD M[=4'MJ32"G;C<%94+I!<(%LOD+53W]F2UNDIFB::5FML5LXJOTAOY$1K1NV< M?K:D8]FYJ%L'QRHXIU^CH59[K9@M86V*+AJ\@<&90ZWVE A;,CL]4Y3E@^T" MCK1&(ZWV6+\M68 T753M)O&4V(,G*AYT)?2NCK=WS+ MV'A0%E55YC+/99[+_/%EOOX(A*S3%LJF47&["R[S7.:YS.=EO@$2;W1Z"ICV M9M4=;KC(D3D^U%=$ZHV.>)AO\ M$COPTAZ=%"ZZZ\\<.JM__C)R7WO_A'^D4WEQPF?7IP-B#1G8A ?A+[WYY-/? MG!Q3"F**[43^GPG6[F> !G>8;]2Q#*?'X82,9AYY&'^!]8C?_^6.R)W/\ (K MDT';EY\Q"7W'2Y$6?7[_$0:CV3".^O[HD82O[I!$3_"NSUXP_'.!)IDA'!:; MC/IQ\C<<"0'D36$L<3@CG=ZWI2$@$)P(L>U[P%ET+ M*3:3F>;W9>U>KFS_8J0P*L S@F0.:09,V%3/F4;D.OV73R,WFGK.^[7KTZVA M/_J4O"G!.6:DK("2@I9]_.G-'<63:]ONFK*".B))A4E>S#Z5NU1]K,@9^TR1 MNI(EK_U8ZJ[_;--CK2Z8^'L]=?-GNK+^G7RL?*Q\K'RL!XQ5579Z*N_;LM*= M1*;=253>MV6GE>%]6WB[ ][NH/:%X^T.>-\6KLB:LW!Y1#8+F%PB=Y+(^DO.%*/3DTU3E ZGA.,2R26R]1+9@)Q1))ZU M1<7F1BL72"Z0]==J*5BK):NB+E5,OL(ELEG Y!*YDT367TBE8#->PQ8M]6 6 M1MZUI3H8?75_DM$5@D>8ANYP0TAUD>C(64VM^@ET52Q3$G7MX$ZZG#^WT4BK MGS]7I3UB1?5P3BL.M49#K?[T"!6IFD5#.O@:S9'6:*35'_=758QJP/V0MSHX M;ZC5']%6,:)=14-GCK1&(ZW^4*V*H5I3U"U^?IXWU.J/0:H&M=14WFKOO)%6 M?VQ--3L]M6E='7GW%EYRP0,/V_6'W "CR.KT;$,TE=9TB^>10"Z01Q/(!IB. M=J>G:Z)4-6$Z%\AFX9(+Y$X"6;^%K4F=GBF+ELE/2"Z0ERZ0]1NLFMSI*8I2 MA7.%RR.7QY;+HRS5G[NF85C:TD2;2R272"Z12+C[K6E E M4V=!"XX2#^+OY._D[UQ]$*>67R%05RB!NL*IY7=:&4XMSQF9.2-S[0O'&9DY MM3Q79,U9.*[(N"*K6Y%Q:GF>Y\S=?5OJ).JG/-+^?WM?VMPV M@FD"O.VLJV@=CBH:R9'D9//I+1!HDHA!@(-#LN;7O\_1C8,$*>HD*.%#)C() M-KK[N>_NWI=!_RF*IVO_>TV0.T^0%<@:P<*E@=YL/KKPMR;(FB!WG2 'VV^9 MU.[SK(GM05\O6!%D3Y/;;N77,O2_=OF[V']UYMR;(FB!WGB"W M7WG0P1&>;4,W=F?60]U9ONXLOX*>MM^?I=/>^X+M61Y=-U"W]JLTIFV_\4@' M^Y6:>LNL4>UUH]IS9$O&Y6V']?O](!K=?5VW67Y5:-:J[G] MB'6GO_>E_Q2ST&M,JS2F;3\4VQF TM_2S4$]3^IUH]ISQ!B7L*G;!!%I/'K0 M7XU*E4:E[0?'NL;>EXZA]RJEBM6]X1]:,\'G*"LYKV,+3W9!KX<#F:WM1P.[ MV!JPBC?BA371UT1_+Z+??L2QV]K[TC7T5NN) XXUS=>G^0KH]@-LR&3J_5A4 M?_WHN-=EG\/'ZG 2H&W,,Y@'D8L/? J%!T]>B\\WKA-/%;1SOY)';F8_L49P MNB1>_9.EOI+V.*:_9YHF](U1<_3_!L:>^M$T'5DQMR;BPR@4UL\/UAA.^,GR;JS;:.]CX2)FKJ]V M-, M+U[8RFL9CY_M6ACM@':"D%#D$R"["/$IV)-5F;UHTQ"YR7_=#1]0Z:^H MD6?;/CO;-"T:6IVO ]1J:Y3O:93**7,>U0C>7 M7%/9$YQ?'5UJ5^?:P?G9Y?GIR>'PZNA0.SXY&YX=G Q/MWG,4E&+N(P# M^^R$N7O)*% M97W-3L)0^/:M!CJM'WF,"Y;S'U!L9RB4--*U8/DX /+-OUNM$,P%"\)(NP&5 M6!LG/BFMEIB6O@Y\N%/M1@#/L_ & M/2^XB3YIZREUK7Z\3(>K"=M<\RT>'8P*TDE2)9JL QOA-(_$)_7'9\>-YIYU M^\GU"3_I1Y_E1J3FC>KZ@F5 -,1?9SIEH\EZI4Q(EF^67S?HJP5KA[_K-QNF M::S\NME8_=VZ98U>H],;;+3LTXT$VJT._ ]CL*^O4W_Y[1QORE9!@;9\6^C: MH;#%; 37V#+*1W(]N!W(&_)EW77XU^.G:C7OR"I?UC&+CJ@Q-3[Y4X1!B0^J M!R*"5%OS\W,WJZD[U6R('>=W*1=OK&'-_J,FW4:P?_AKD6K6:9!G(CX?7UF_ MO@#;\1H$/L@!ZGR^UPY/+@Q^7ER?G9]KP[!#^-SS]]^7)I79^G(N7 M')R?'9Y:]$T2#Q'&PE ;)&XF:);G**$0$;_2*P0V#$HZ!=B#H87D0,N9"5 3?"3T@7' M04@/W0HKU 3-=%?^->9RRLFF9^^&-P)):$,?= U/O0VV#O;$C']D-#_\77+) MJ]*]H:IBN7ZD4V# D>0>!Z 6JNW"[^(@1'T(GF%_##RCXXYOK-#YX 7!3V0K MV6%T[6;JVE-X_#KPP.8/W>@GW0+<+:A6\+X8.$*Z+Z'=@,86*4B-A.>*ZR7B M%[_FP#V6/HUB4$[CI:=GUC(_<3UO\3,;,6#QPSD86>EG&0:IF$OZ%9XH<@&/ M$6*_P/XFGAII%B%#S$"$JW11)KCCVS4W)N_B'* ).C%"4W%;VB&P[/%8A!J> M- 3$ ?B-PV"&4>D(\ I6M]TY^;4!BE$"5[_F5=HQO"(((PQJQ7)]VTI@H2#D M7L+H(Q"X/U,;P]$$2HZLA)0==[DA*&($0=P0C]A1H#':2@OD" MD4)N1=WH9@B-AZMY7+J=C;A&?5_I=I@=ES'#14S[!W#%,2#Z;0.>L-"T)=I. MP@GQ,"T9@^EB*E^_CD6^$8E*P$A*H9[DS/%SQX??8:\AE9I#, M:2/XS,J#X#D$^7EA^Y;D#KAW'^!7D!>H#8H_$@PC8THJ7@&\@P+0-_C"?9E8 M ^L ]V:Q_$?BAG#7HUO-LV[>DY BXQY/%8HQZI.T/5J0^)<;VLD,=H=@X!O& MQ4 %C60T_$$77)-/EJ8R"Q)46!"5T+)VZKO)6$LHZMM(MU.:-@>68RYUKL2\ MWM CTMNKK(?B_%J$UZZXJ:;K8"W(0(X@:"R@[N#:14:+3%+84Q\V, &S'?1# M9.ENC.(*"P98!J" P1PMX/TD'= Y1[HP2L@$Y(M-C\Q#]QHY;R10[=-L4/1) M(_T72DK0&*7@1+D16E$<)J +AZ!5PF(>OC+"BP4]E/;!WY-H ?O-TP3))-Z+ M\*_=,/!Q<_ -W/=/@>]!_1KV /^^52]7JBMG=AT+.#/Z,>1:L\0GU=KC9;T MK:!) "FM35K GJQBQO"KV>X2UP;_^&(L?!!Z.0/:7E10(<0VA^)%;D?[KP; MI>>#\'826TI24*6]>&I;Y5=#B_&Z_"7MSU5U'EID3X/ @X_@;'"02#X BOL< M23M2ZVOX@A01Y,)@*B8A"=?TB\;&SN8M^,/**?38Q=B$]F_0FBN\]U7N'M1* MEO^[3<$#J,TN05)]+6VO8W[LM$#E%#_WM#%?MC)1$ 4EF5]:0-Z.A;0(5F,4 MJTQ-C!OY#CS^!VMF^+.&MGMH=B$P]J -;5!C.7"QNL9@K4SH;DT@G/O:$#B3 MIW4YV*RC'6'94B^W/$^9+$$2H]9-X!44 "0?""B)Q&/IF7^Z$=KU)YE5H%VF MDL(.9C,1DEML(H 7P??P9R9[V-T2C.,;9$NC)(*]1I&VO_?/D\N]]\PG3UM_ MLT)0]1L:?*BYT8(@0PO$#MTYOO##R$+_1+I@)K*4)R[UBQ-KAW]-R."AA=2O MK/D<4$&ZPO&Y(?XH=NV(S:%+YLK:_M"R+M]G+V%IH*X1-XMOM0#SHRDP[]"> MPN[D>"=XW[M>1^_VS8:&SK*%K\D/0P:8RG>V [QS$,\!W"9^D+HR*:] QGTI ME9==D>BFFH9!,IF2^\6:L2=!.OUC7A0VZJ+ "P5?PSXNN':? M+[0#?FJHG@+ T,N_6OY//,B0LH0M73MK#!NYK2.]HWD]!WJ_Q:V&(@X:<'U" MX[J%IEXQY1:W%6G?K5O*.\:3<+;3>6I,1]ODR+JB2]XG,-8#V!%&P@F:QZD+ M^G*M3QO_ \2+R#E.0CJ@(V(+^(%BX>OAWP!BSRQV^*D W=$7[%>WW%"[MKQ$ ML-_#\B>NNDM@'>D_0:"[P!E^4.+(-_24ZE=LI/8M%!MEFF0J0<;_FYXL'P$[7_ MA6VC-QI]')@=YPE%I?+U 8"3Y.5,6%A=0P0' M8-'.0K>;_(\/) ZS<[O"DK MDS3\ A\D$!P,84P+DY=7NCU*UL9[<&!Q>!S]4H4QV(4)F@I M83SK47K% 45EV,[['<0Q/I=3N.#[<,Z2INS)OP4>!25T[?3TH#1NGWA,WOO]07-HY@#F]-OE-DFM1NE@UB.0^$D>"DH+)2,!-8E MQ^PE]6=A0UN6\B/F4K=XYF!L?DIN*CP02QC#X1?%[-:78JO@GJ#5_.NI[>;;;PA/%0 >. ' MRG1_9[2P=PA1:4+9PS-DUIA?]D+ZSQTRK=9H:HVFUFAJC687-9K5NL*;R\PT MFZLS,ZN39%D5G>U?P#FMZSQQ@\0$62;1+N?ATIPD1"1'K6XS+8)7*JQ!RD1+ M;QF=@BIAZ@/0#%)%XMV@5$U@$@$%+,#F)"@2@/'X'T"3Q*>3.3*%=ZUV$V0S MRSJYH(QBY!?B"/(-<2@;N3ZLBXQ 4WE'S@(9OFN9P+F&J-J,)*>0%XL_GR^J4#UA' M]:EG+MS'A^?M'?.0I./NUCPAI=VM"O=GM!N$/2>%4+*VOW=R=KSW7G7!V6JV MAK1.(A)@H.C#$P)%)RA^[C48)" L)J$UR\4>5H5[\]%P#)IY,CZ?AFK1YH6G M/Z_$Q1KWG@'WOB8NN9=T[2H+8Y%=J5W:+F?4[N]]O;K<>U^G#17 6S'2S">3 MR.2(2 (0B-43J!""0C:YS27!Z-I(@C^2^1W+U(R?_W[T7>)$+M8)K\:"X(QP MZ=%J4N_KH-7,K9N+2>_O?3LZKXFSRL29]Z5+N&5DLZPRKZU2W1:)E$>9CC$C M0%;D%&MO-#2G0\ZD2<(RK5.'OY2CN5,U1_-%ME]E(>A;1:@G="P_.*'5:#:K MF]%ZH&)00S9+$?.^PPW9KHQ<'4EWR,:FWM;$T1I:RQ?&*K>2.KB5'5RY?B21 M_9[*F9WDOW%SZ";=*%C10R4*&A7X M/1SG6M7%N=(;V3YZW=,%4F ECSI2A9PCQ7)RYN0@A+@@))+^6-PHNM#*R\95 MDAU[YA##'"[#1ZQNJO MURV[_KN.T:\WNUN;W0R['ML0=+"C#4&OR(7[.SPWC;0CS'E=V9#N#=S&I?MK M]5T\7<_8^TSNJ/B-K>O"]M"3O\$;-,N[Q]9H5J/9'E\C\UOOU+O; MO7C;S:X^Z'2JV)Z^QN$:ASB%8K3>]7"J9F2V\/[JNKU6!Z<96ZJ7<[O1I,U0:3,1CH?6.P/3"] M'8_9/ S&;OP@H?HD[H8*(I_1U%O-YNLVN]\R@(&YF.T:OJ\6OF:SJYN#5^X$ M?LL -@8MO=GM5A3 ;\$@/T\+ G%@@1\M1]Q>N8;:!P6U6YM[%8=2KZMW[RWI M:RB]-#L',/5[]W6NUF!Z:3!U>OK :-5&^7->LIS.3GU>@^7L^5KY ^U>;[_V M#(\W#5]3[];>EU<,WX'>-N\K16KX[@Q\6QW=Z%05OF_!-C^1C6.5:?[&+//] M%MA\_"I+G@ZNFD.:@!5%T"&WF\:6P'0&[+ 8^O7HP1H MRL9,KFBX6>@"],,'D.O#>=:F2)KJP9'7;H)YSG].LO^NDT&D)#?U0 MT)3QT:WVSACH@V97UX)0&S3ZO^EI"U0>)#-C+!0I%JJ.7S1(*8^UJYZ7",L# MD]2[L8OJPK9P^-0\=.%>X4HT!\=$!?R\G'"P\#QEW!5F+]&<*T/OMEJY*4^1 MBZ-&<(,13U#\(['"F,>?$B'1;$R:H6.GVZ,NKRO:N$?9D'=\H:'W6SP-*A*Y MW],83QR$Z-(XK& \QNE,(QRAL/ *^)>G\3CS_"#0_!!6?$]?-WN&YH0N'!_7 M@7OZ"2O"KVW9E#DH;E^-H]5";@J]].+3LV_%H[3T9KN?>\4\#/Y#5?RWMJ=& MNBRMLNF,%WJ#J7?;1CWM+Z-5T]B]:7^5E"'?BU6QE3K0VNT/<6[>7(2(A@!F M)),BH].9$>5J?S4^#7',]J#1^8TH$_YJ_K8Q]\9?+"D5.G;%GJNAT:LX]O(F MEMBVI=E3RY\(U1A^YO["@]T$X4\\*TZ,P*F?&YP]2D8?Y/ :B\9 Y^92\Y!' M)]=J)&5/CF8V#+Z7)EQ0R<$BD>-E*[DUS;?-+D"^*[(\&L)-Z]_ SFFZWOJC MD+R!/?&MJE?CH@M'5/59JXYX]YL60)+R\QPD4KZ_N1"B[2R(C36L?)=8R.KB MN.JJHA5D9;GAA+FKS.F;.$,=&SZBLFGT&JV7U#9+-I;1" \#P*FIJ%1F&YY; MMV'@>9+R2-T#_;+;Y5F8LP 8QI\\^B9=E!4IL]U>WD)QM554NL!R!"BRP:U@ M%K-X"_![N#^:7"IGB9:MB%2;JKI+(TN7]UEV,-IN;I.+"VRF_%H%QB>GQ?)E M.J"^N*!)DJI7O$Y3'[1;RWQSDY^72J=T[&YN<*SE_">)8IZB@^_LZMU.AP>= M9#(%KQPX-6(1CF]%INTZLN0G-W65%%8&4OZ>]-(K6=#9LV%*N;%K.?33C7Y; MS6T;"QKF EZQHOQP.7 MMK** UK:%$X!FD,R*L

\7>@O$Y3S83?Z$1% MZ8N7[YSN^QWQNR$[(KBA?UH23D=\BA]_"X M&TO1%2D.DPY5YR>O@?#A/;E=L-:Q\0CP2M-R21)4I8YS)R7[Z0%R.@LZ*#L= M5KF;C5ZJ#@YAIV^=,O&]%J-X&[]%\PHM756YW6"T2TC)X^:)K/ M&](:Z&;_>4-:;;UOM%Z' O2V(RD=U(Y4),7X;4..L9&A\[QQCB[O&H! M %^'>?\&XE(MO6WV7X97UC&I.B9USYB482A+#1"J]:26VG9#4H-^+Q],\ MRP&I0>ONGV\>CMH@"+5^AW4(J@Y!D3@!/;;35%E?RAN[N5390*(\0?B)E.UU MX2?2M->$GTAH/C#\U-+-EKG@T+R7&KII]*F:>'7?V).8("O2+@BX= OGRZV7 M*W7"M92#&#P&= QNB*EAW5ND(>H G<13+4IFB,]_HB;D^I9OH_,^KY*#PF^+ MT*?, 7)RS>%WN HL,F&FO>_ ^E88L5 +$MBN$[W_M,EE\;W(]93[BBH ;5QS M'HE/ZH_/CAO-/>OVD^O3*>E'GXMA)O3S+%3_$23XZ\P%U&BR&TBV7I%OEE\W MZ*N%BD;^SAPT.LW6RJ^;#6/E=^N6!2.[9ZS^>MVRZ[_K&/UZL[NUVO*?GQOX#86DQX*=_%8%,GU$KA'37;% M;RRO!VZ .1N=_ W>H-2/GX+V7N\EU6CV'&BV(5NK5HN1LC/RUL J"]BX^)0 M"P_Q*94M$2YD>;T !CTULKW!5[Z)MLAGQX]IE_G:.@"5';':/7P&7;UG/G!N M4H4ZT]9(MTM(9S1-O=NZ[R#W&NMJK'L4UO7;^N"A,^)JK*NQ[H&#"1\QN:YN M+;[9)7^]NGQC\ZPZ;;W9JB=-5QQ*74-OM8P:2M6&DM'$2=,/;)-=@^G%P&0: M>J^_Q8'@;\&A\^WH_(T-MNH9#R#^ZED%KQQ*K;[>Z]Y7WZFA]-(LVNCHQBMP M[+QR,'7[>J?")JG*[_(##(&M VS]9/'))[+U":@]2E:LM+)R%2PW.'C@((+E MN-ZK]J/=[_#5YF;8[+-[;[_NO6Y@-T:RU#B\NSC<-/7>0_UY-0[7.%R!4[>; M77W0>:!_IL;A&H[4)NN\]U,T^8W;8PB^OYT^GJ M%[["..U]$UU5M9TL)1R)<1 NEI<_1ZBD7J,Z:[R%^$J=,+OC^3Q&5^^U[ZL@ M5,_#72/=3B'=0#>;W1KI:J1[25NHI??,&NEJI'M1I.OH[4ZOLJ')';/"-LZ6 M?72Z6.4.>6__U0X125\WC-;.IRO6.+=+.&>8>M?<_83S&NEV"NFZ>N<5Y,_7 M2+=+2&>""MJJT\Q?.LV\MM-VB4@,'$G3KIT#-=*]:'JYWFS52% MO[S*KV MQ3K\);2S(!8:MN!^YFE)M.+F3=LOLOW*5)FMCG/25:M]O*ZTC?Y!?G3F<=I% M^A(GH7&':->WO02[JPLO$C=3')5#O:+=2/L'#YCT;C4^*XX& '#.-*/YX1^K M6XJ_O=%HK>)=U*/1[MW:?77SX&T =&N*T^Y@L__S= 9I1^P]M7/E] C+5C M-.1\LKO'[;;T9GOUN-TGF+9KZMVV4=4Y36O!OB:+MA3^IM[N&FIR8<408''X M]@,!4C6^D@N^U\+FR^OCL #?/(7U=',P8 HS&H,7I[ -Y\4_=+IZ7S=[QL.' MJS=A'!5O$6/%9^@&9+-XPN M(5:_TVB_%'-)AXR58A9]BQS!8_\ M$Z"P.:BHH4N IKVK<;]!.+%\URZR%619$Q$ K' JFD:6/&IZ!69%?MS7J=8M M(H;>Z_,HO%:[T:H07CP=QZF:2V'5!)Y:Q[O#H;!X<;4[H8(,:$-W@M'3NUV3 M!1(H.OKF4URWYTT8@%A:[4W0'^E*P"R)EE[NDW#]<6CQ4DDHBK+*U%O5'67^ MI"X(0^^UV 717K2/GF D>*T8U]Z'-^Q],-KZH-E3#CZS.N1U7T<#2)9!TWR, MIP'V%HG<^V\P]E@V1GG)L, )R9-;XN&QL*<^@!C^N<"N>^V6'-J\Q.5A'[XE M#R5\0"@A" ;X. J3Q(OQGPL+-E^K"WH!1?L V+9RCC1_JPJ"OE+^_S8<(^TN MCA^)END,^HXEVI;3'K3Z'YR )S"C;5C^!I= VS\6[:-#@<@^W&: M%L+&>0/P4O%K+OP(-WD3A#_E-EP6*G 6%C%T!/Z4GH?- M)"'^)A1SZY98)JSNB%&LMI;*G<(/&MJ_D*MZ+O E.E_9S>HRHX_WLOKBQ"\W MBM.'2B& 'S[@?K4;U_-@GUJ4C,>N[>+YX)IG K3Y@"Z6_#E"OC%_4=H8LT5C MS0,V'!-G]P&IM?A&>-?*^42W0*^ ?[MQ$$H\6KYV7 "X";(2W *I%8!PJ_ M$Q$H02HC_L*",=S"M>5ZE-&9+:?NF"Y#WGT\M6)>G-;P Q! $]^%PUIPUN53 MV4D8PA\@:7[ZP8V/FTEX16L\AJM0*;"I&XQ> (OY08P7.8.;8P"R?1:!Y3*" MU1 YZ"+'"3FL,KS,()_'AV0>^'2K,PN>1U#)G-$5@(3+ =G9K:HRB8DB@$=7;NH[(")')25/,GUZD>\RZ<#V M0G>4Q'R(S(1&LH; %< M=>2E/FBSU]2!D:[XOHN^!I8%@AQN$E5S0Z#>+*F[^_?B; MTI>5JL&Q.R.&-$X][_A+NF/I@2?'2UZ=AE?=O5&^3^169%RA_M_J&:6+2(0@ MTT$O]0E9Z)$Q^H-"8DWV<^G[7\Z]68)>=GQ2VZ5-D5T!"^C="XJ6,X\3_UI$ MN\\##S?B1LI:1$QDQFCS.P1KTD[RCLER!';-_1.K[*AJ7LB MJ*Q1V74$384TRYJ\J!Z7G#"'95U#;_:Z&\K;,G^(7WRU0K_2UY+L,$EV/4# M+Z'ZG<=ZIG1%AE=$:XX)1O@GDU[SG)9&^O2 OE(FGV/P&+P?6<>]W;TZ< ME?%+IX18X9VO-\G7ALDDB6))4BVB*4/; M1]K;._""" GQ$'2WO?[@;@]4"M'/DNU7]96YW.CL9OEK^ M3V0DPQE@YHHFX4A^11UJP);$C7(N24Y+?P!'EC M\.V>B&44PN83N%&4B%"GC; FSD]'I%'?L@_!VOOC#8!N?NT&280W&%KH!!'A# 77 MS(TEZT7.WF'.SJ"[#KQKLCMR3Y&DQ _?F:2$-;E<%:]F@@7%L6!+#K:$]=0D M_&"?=RT&J%>ZF I3E_\>O3^9TRB>AD$RF99A:U>BVN_*\<+HRECCY_9NS= \ MP;NPYB!.?X&LC$&WA)O!>9N=)HE0OD#VPZT! *(B>Q?])634Z$Y [.4!D_H$ M<](X>PL!K B8,;,4Q!&0I0&YV:+$GC(9T+MS1(C_;FA?R]:^ X7HHB-A)R$K M%Q:H%V$4\TOQ.CU7^'A,1-L84)/-1?B/PF>V05EON?-E7A2HNNB(P -&8^B@ M.W8L+/*TS>$NW)CN*HGX+O](,+?!\@MJ$9YMZ;IN[W%P/*R?+Z#/$"29DX/& M7(FY0Z*IQ4#4 M"Y;2SLD@T@G7GUUJOU'J:P/Z\BQ;* ?_Z"'G^^7@L M$*\O &@HP*:N/5KJF\,+IJP9L'M^#.M>2O(X![;GX]:UXX1A M*!<&VB!OCN3:,J"-6"V]P*'PQ#7R]90/I"D[@.]NX("4XD-_] BAX) M*\S6MV+M&F0-L5%*#Y+7 '2OXY=(PL$<7P@HZO*Q+>TH"0/VK=NW]#,,7Z / M,)"7'8#T8V\3^=ICN;?%0^B:<$D^7B&+H^N$RS^TT$BY=/&:Z$-=FWL)^=6$ M!7NSD<:1..=ST,-HZXR]%-*V@'0B/@S8''X 8MQB::3]:%PV-"?P/ NEZ4DA M+0J ,$,QG ,6.SQI.4?9)W:^KP- 382@&6CDREQ-]VGRDWH;85.WT?FM;N:0 M!;@[E6_F4"&^N(DX16<\H'24"[3:P;6 OV,9Z9+!,BE*$?])%;6*:(Z.C2*J MLU+%?THY#TQ8HPXSR[\=)Z29XZ6-X#-?AG_7_.KHZ\G5X3#EY[, Z4;8',K+ M$H)F(.V34 H!8I3O<3M^H,$=6,QT #3M!DAI>*$!_]_8L,RR0J"6BG 9$$EA MV@R(8_<7NC2G<$9!*^2@R7?FR0"H#Q=EI!>&-H@44P(#"Z ?^["/;VQ#L7%)LR";#94L.MIHM5A1&]R+'!2*<@2TPM:XYLTU07)H3"T#150%J M:\3Z*QF-LP _);D93U'ZZP /!"M=J7)5A\KVA'>3I:!KQ-[9++/R*<;2'%[@Z6C9HMQ2QJH/UX:J/T>Y42[*+PH=IS)ZQW=/+%Y3/9K; M0"33 ,9C."9*8Y+DV4_X=3X[3E6PGIZ)!)@:5M[\(!M;HJS[ /LC Q/8DH 9 M(9AGU\I.=L38@IO*Q_;W1TFL8;X 8PTI/?D[J0GE760RS?)G)^D)8$ZPGD> M18UF$EJVD+2EI]J#KJ'LLZ=\$ZR0*&2"V[BQ0G06H%FXL4*HIWM36R8,LD$G MY0@M.38DS(HP59]F]X-Z=9C,8YO288#[7).*""MRGHS%6I_ZX7\29R)]$"'L MF,*'J%<%$:7VY"+.MD+$O,L$<&6DS.!<$/'HXN1R*-4V, 3\U\E."-VB1>2B M< <$.PAWXE 3@<305R ""SU-=%'J>^=V-!-D'BC9(8Q2IMN9BH\ M%7Q$LX?=&.AKY"5)$KS/-I&F;;UKD4-"7S"4R/J:N.0(D>)%>8OD358UA+F> M1M"%2,E[Y&\EG<(&13%BB11*/[1,3X&%'DS&!E>1/C M<;0-D,EA[/Z9\LNR;9&+QN@9TCW3[2S7HN,WFR0*Y7TZN@R,]SMRX5[SW@NG MH?F"LVCG E#G1.KG(S!F.;?H86B]/;[_+\&:8.:6#K+#Y$7<4C)"7^^V 'Y8 MQ-#JZ(2=G:Y$C9;>[W4HR2AUC**5X'#,8NQ&P'8D8L%_V_3?#O\6/>B++L25 M>CYEA=%QD/8DQRSZ/0+%P_.NSOP9D4A:#:/,,;)IAOM@K[(9YQ?*ACW!"!&P M&$Z*PDOX'@8^_,U>RYW,O A\\7"H&69UH79@4;406@)I_U:PR "%L2LKJ!W. MA],@H&3(K+_K#D(0?>T.< -0OS'4PB$RR[N-W&BSUK2Z,IZTO_Q7WS1QKWP] M'E\/?6I\UJ*L"VZY-GDI1;39&^:$LM33@&KB[ GCJ.2)HU_2=SMD6]H8M-IZ M/DI,_BNYR?S#%>\A>2:KD8?PS!GL4$68H0H#(G0PCS!%BF32>Z(0,8#2A@ MXJO7;:2H6OI."KF!<9G$,K$^;\[J^6>+O:/E%7(^O*QP4%"6WTV#N5CZD!+Z MQTL?H[#PBZL$Z4LH%B\F 'U7;87\B-1+C[Z]5,OA$[.JMSNI==SS(4),LV6 M;06LF0.%.6:_ L, W666C7#XTTIEKZW M]$]@^K/4- G7H0'56K!3*'310* &T6@$S,$V=L<*EP#KF&.[YE;3YWSA&\ MF$+.-T$(9B"'AB-UD^@B0 ]$+$KAJH\SZYJQC-L"A#.BD@C8AV>%BJLS;Z$X.;PP,[:P2H%^[ 3 69'O MX ^83JT,H\&6HB\EQ6B28MBMMYZ;WBVVD"%X9!:3W3\#T4MG-'J?TQ(B[=H5 M-])-F?,Y%'D!7D#FS9Z+D$(;F Z_@]K &GFA1 3<;!Q@SI2'&1:8H\2&)M&D M)FNH0F%Q@I9*90)S- AS;8(REIJ[,7R$24^Z<8@F<4DPWT44<2(K>C]L@! * M:+@TV$G*ITLK4MU2HI*$: M?"F^<"VV-K2OP"22:"W]L,FIU [)R/!O+B3-!C_3R83D#B2:Q39ZH)I@[X:3QG+LUC&Z/!:2B)6_B)&F+/!C%*PI 2$IVIQ%%9CY ? M"G3KI@&)8N\M$*6Q#)SF[54'- ,OF.=49Z+QL0=V&Y;1R6S:BP1(TDH])#]^ MAA9FQ*M_8_0DF+DVQ1(Q.]>7K1*4_UIJR\HHI1#,3,D[?#!= 6[-SE2=+$M! MMCR##5DQMY:H,>T%>(,,WJ;12EEW7>CJE@.^(^,3"M"@(4N$##G'H]B83L>R M8_7G%':%=1/6*. BBZFPO'AJ6Z$,I^F4$$:R006)<:.('3D6-0\\;(0!3WC6 MC<*B2>*I9APUVCP7VA!GP'S;!8'!#H/L0RE<0.9'[H?"QZ/$F8!N$')[GK', MJ:;JC<(,( X5]3_K.",/ G098XD%K6$R\8 0P.SO]YF$"96[KN\Q.=F$O!IENJ%N794UNR[ MQ/5EIFZ:=5=#^#GIC3W $LI368!!R6\6DA_FBHZX(DR6-6 /&GR$]>\:.B]% M?S=! 9!RC$+*@$ QZ]=Q8OJ.&Y%8T1@XW<6/D M,+B)IYEZ6 /DI3SIEAME'2^EOTW&V&H@/*>6+?MT\-@!SY.Y9#*$&46![9)N MG?&T6NIL0>K<,@#F5&LNBU[*O'@U5)X+*C?"XCRXS)E+D2#NA)LU\!][.+E) M9B6@C6HYUZ !8/Z4.YM;-INQ66I,FME1@^XYV9SPX>I599@G)FXD_>^YM =2 ML65B5MIKC8)^,NV3O:_"(<\_MD&RN6]>:MQ2F387/E7AK7QK[+0M> VL9Z5&5"\HN@G@"&YQII\;(6--;"JY M)0YIN1YF:"U(P%KJ;9>RJ!GO>3S749E5H0" M-T$U?1 +UGWELD_K^D.'^R_73/2908TS"18ISLJYG%2=+CH8K_&3!5Y9X MXVL)MS'"##BXI!'-/\K*:$BW*%TU'7649/4M3/-*+^6F VE5H*.:[ZZMK**N M)$5-"1VH>K$ 1%?%/FGEXPQS5^'IM-$D[.*< MP%J:,6Q4K$5YGJ-OM7.[U">&OI_0$+Y%B?7WM!O@+38PY3+N\F:Z5#Q+0@S5 M%J22K,,$C0";.]2+ JN.KEWJ)7J[!OI4?"OGZ11&)V"J1Z[J2R_65V5EQ#?P M#JS>,,;%FWE6IQ.;6@#S>-&$Y7SHP.&TAZ*AQ"E?9' M!SRJ;QVT7.KOK8 FNXS<"3NP8:B:"YO2!MCS]>Z2K07.L+J"+)W:1OG$LG91 M_8Z0Q@]BH;B!?!T>@"?(4'ECI#I09Q5G]^T0D&]$T(#O+>H,CRP=K"D2 #,M M:Z&0\HT\I:;%\;+:3UYV:M?Q= QXA]+@^$DWDD\R1B$>!J.T6>3\5I7OK &K M:K7.O5Y&H!L)_;E9VCH5F;0(1]@!JXJ?N-P>GMK[0EZ@*G'$ 5SC'TZ@&^CF-H]#; !']F@QLV8LA!<>MA"U7WE*, M6/BZ-+;?CU_,>5]OOPXN]'5]K% MR>7?'UCCOM5F6RA302H$D?0 2I>'+"]B=8_UQWRO4FY.@#^E^A5)I[F>:SZ2 M.[:S3<)(Y%N69FT]D-:+/Q<"P=R!Z)M/,/]QDN5O:PLA#X MJ)=C8[QL?TZW^CM$ +][-/I3JZ4-;V2^4 MYI?UL2^TMY17O=#E!HR$UQ+D6AZ9N_!LJP+#Q M#2'0E8)[F@3!H 4)\'@ M_+&^?+ZT/>*FPJ"_@3#XG',G_2>)L&AZB_)!:S>T@_.SJXOSTTL2"]\OS@^. M#E$25*!-Y-KM'V8=S60W:S;AOV/]F(,6TJX)KN%B1W9BVCPHA#J[*]OD;B=P MKN,-,*(0>TTAE2(_$M>6ETC#-F=4)'-,[4A]NJD"2;%*4R*(%K\/>9OUA^KZ=WP.XML+DQEBH_= 1* MPV+$5GV7O3K7[,[.H\8\10UB@E2_2D.8W )'#!,6;S"'4UL4'R8](G_-M+LUU['B*LBMB XHAY;4EUOV/PF";'9AU!PWA8GL MLD9-[]+YZ6+1:YEOG9-Z1=BE)]^86=L*6]-6INRAX'7($A81-X8947_LE1D.2G^"4(%!V7^F4ZRPU=(_X=\+;77X1L%_)@+FT,P843P$[I*QAY*KX/"RAGG?A4UA2Z-9PBH7FV^S6>)CE1A[N;ZGIY9N/N$ M"]@])1YHD%/N:I@NW,T' M@E94"PM4=;&6(W(]HRV;<^?LI3^8!ZT<($L_)#,GY]+CL ;2*VK*88Z_W*K> M?30.9>$'^N-.OP:QWUZ@L;\ZT'@/==@T]JH:GGS12RYG5-^'%U=,#2T!BZ:ZRKTX8& E6TN!&=A2,>3FXVX7/(TY4OU&U ;F2O2S$$?/H2E!31!K7U;'1HB.X4!WUF+0@ -P&%,C.QR; M-H)R2 8U!6471\J."GP]C># (ARSSOH=R3>D$Y38SQ%F^219G4S+> M1[AWS=Y.4-&PL=40[\N\?$7G_9/+OVO'PX.K\XN'6G4?E$HL=/E803;&[;5H2I&>]XLA]JP*G^;G3 MJ1'WE%'^!U-KJ[D+U&HVM!]G%T??3BZOCBZ.#K7+X>G1I79^K!W]X\?)U;\Q M8O?CXN3JY(@=7VC>:B:7F&N3<(8LF$%E:1SP4Z\1'4*#/X+L'MY!?LOA5NFXN>B92 MAT/ 3H5HP?/&7;O3O7%.&F98('O@B3,Y=0CX /"LD!Y020[ ),;"Y91S7_8< M9T])UG1.4&%:/$UUBBR^0C<%2H:,8O!^%J= 9?O+[FSA7C"X :>=S666&>.K M]#86!O#E1U?P/(K6RGD4Q<>SB11ST/$2#.[AY&E9LMS>M][OF^]7#,F *_D( M[/0BK1K2#BFXEW@3]B6A7*%]5MV)3_-R0NV[' N'YY6HN@%CJ*X]0#-S'JYV MMEH[%TA*$PT.CXZ'/TZO+K4?W\_/0)B=G9Q?Y&3:+EIWCYN U.KN*##;#>WW MD[,C4%".CT OR26)["80XYRH> 0X*SR&+(-=I['L2]I-J)4STC?KFAT\B6NV M;5;!-0N78'^ B\5F Y\X.'?[>0<88_>YW2TK<_W+=\:[6O[O-OTR1__WMY.O M)U>;B0KF+S'GR"L:#4%]_8!=?*QY)#ZI/SX[;C3WK-M/KD\OI1\II)&$C6AY M+4(:NRM1A["(O\XPMM%DK(U#^)^CWBR_;M!7'V-G^;M>HV.N_K;9,![X7W>%K.:1Z)DJO+-S- M/X_DO./X?[5*!9+X-75';OQYZQO4IJ$8_^^>?RW$!W3F_&KV?C6-7^*7T30: MTWBV]\4 ,OZ?OWZT%@7N]A"\!O,S@)F0\QIF+)L"^F8Z&C.$O'HG^5 M.JA73TYV@CGU$,N] ]?O22.BU313+[2%110B^G#^RQ.W:B6SV31KAK.CF&BF M#,>L&'X7PPG"FM_4B'A_1#25@F."@E,SG%1!0S-:G>9&'&70[%:*H[QPW(!\G&A#GIQ=OGK75_GI_^_KQ:EV MXF.-JBVT0]DLX=E]7=L"].7!W]XRH*^L7SBK\A:X3"Q\JFB\M*=B9KU^R!\, M3VO(%R!_8'FV2I(Z=?V?5'C_ZO'@=/BUQH,"'IQ:(^&](0SX?G%48T ! [Z' M(L*>$V^,%1P>'=>(4$"$0RQR=3=%@X^487#?AL=85%)L>+S%,A,9%5J5)G+B M.U2#'G&!N"PZS\: !')2HA]9,?8.FGN6KZ=?RS+=$)T]E'3]L [1E;JP_UEU M5;4K+"VT"UY$^& DN/&M>CX*/%D0B',$ MN<8AWU^WW)Y7J>_2KL!H@L$EB<3\D:E(BNSMN5.G2O4>%S(OE3Y:F^E4EJ;+5 M?)JDRJP78)7KW3^O1):7SA&\//EV-KS"A/)'%+55I9;S>XZI<0,;:I["/?XR M3J4B*1Q"V7?*2GS*61@ORH5(/K;-B#0G\60;;:? 8)FM8::3YED^O2K. M5WA'K.,97?3L^_#D]U[>3LH+$ZTK @F8TV4]=3 M84KAT>TCXC:0X&/T43MRJ%+T($"&%,2N]BK-_T/0/3]IPV0"DE(SFEQZO($S M0+)O$KKS6*-^HIK:[BZ!>A',I#^MB#+2=_O?T_X*V0,TX@8,&9"0:(C(Y]]O MX"JHE@Y>&77;6*UN?QP%SBW\WS2>>5_^/U!+ P04 " "+= I7[\@0'-D[5UMD]HX$OZ>7Z'CJNZR54N MR;QDYC*Y8GA)J"/ MGL?4H)6X!JCK8]Y7&FWH%$=MP3&HO[BM?IMWJN\J_/[QZ]?YO MU>IO#^,^:CN&MR*VBUJ,8)>8Z(FZ2^0N"?KJL-_I(T8C"[MSAZVJU0]2K>6L M-XPNEBZZJ%^\#<7"H^S.K%_/&KRR>FD:\^H[/'M7O2:-V77]JGZ% MY_6?%W>7C1OCAESB:H.\FU4OKV^OJWAV2:IU\_IB?GEUOG'8HG91KS=JOWWN3Z1H)9"UJ/W[GO3S MC%FA_-N:.#S#G(3B]B,A>^+VX]4;PUG51$_K-_5&*"A@: 8PM;F+;6,+;+JL MZF[6A#>2E>!X31P7ANK5>J-ZL6?*=+=J43M7-?]@!6'7973FN:0+1+7)''L6 MJ'CV'QZVZ)P2$Z+ (H+G/8'(81>S!7$'>$7X&AL*+WQXA9#@A:[6#G.1'=.: M8SZ3K>3,E6H5Y'/8=PSLRM 4DCSL4$R^1BR7BV]5\>W-,SWM[5G$6')+4B,&RE?%1^KC8OJVT8.LVD!J&\;OE5# MO7.T83>Z\K4AU#NQ#8EC*BT65)KR.]=L1O(8U71"J"!Z?Y7'("?&FX7S6#,< MSW;91B?XDU3"+WG"?@_,)#2/[5![XFI&\'0<5#FOAL3U8(?0[]E>7,XF S[O79SVFD_-/O-0:LS^=3I3"/O[RX:-_]"OL47EKNMYN13MS_\FO<$F8RA9/ Z M!X. BB1LB6@:L@6VZ9^R%=@V!]CU&''F#QZG-N%\"$M:>4SGI*F/I:3M1JPJ M*3/0]=M32!2G3-ZGED5,.*U^L6?RHY@,Z".>65JG MCDQU)1L7,38DACS+AX H@E@B7D9^3G$#KNA 8*[%1&P35X.2-$TE&V\/V0B1 M)!];K)\1H)6(B8^.8SY!*((3>M )>T$A%)N<$ZV3=9:VDI'+0T9"-,G(#@_Y M@"4B!=8JS"-FGV*8):BKM\Y-4%)2<'5(00""(B@E\OO <0D?X8V8CB$&A^Z2 ML.',H@OMK:(*05*EH6*VH*[=/$)%;AVCNR+.TE73$MN$1-#D\]O!*Q,G$=8S? M'S!H@T?6Q.:Z(R-%4C>^E8<+KC8KOD;G3G MEGTEI=]C^^8HR#^1#U,FQVLEL,^>$=?)C-_>7EW>U&,#13\SCEZ'G\I4%7"8 M5)WJ)J12%)4,Q894/">+7OM@9>(A*MXQ, MQ7.WV@2EJBIYB26V$I*_921#D(R88V7P)!FZ9OC>\?"M\:+\%0I& 0BS^&#?&05'8#,@XMYL4\MSB7D\D;E-*(F.I<\2B0[MBG&\%1B% C\C:5TF"P+[ MI0R(I&LV1XQ>+1@EL;'\6_)%H+(/XB1G;T^2[I)T,66_8LLCW)G[&60IR>0% MH$@J$XYYJSQ#^SL95L9%+.&7%A>14[=X9)MH#_(;)'X*LNEAF^38CV9V@V:] MQ%3@T#'AGN4"E[O;+;O,66%[LR?-3@VA_':4$1/+/:9%3&!;A,?..A+F(3PV M!VKL)3BVOALQ1SP[#XM,+BR'3?&PQ 0B3XN,G$9481&O&$P+"S",I&44-9T2 M+:4,B8R"@AR<:Z H28W?XZ>J2R@A7RF%!?I4*0"4+,62JIFE"2\,A0X^8C&N MBZ3D+,\=@J5?E6?4A>RVP*&0/IE'P2J9S7FGX<%V>BO\PO,>(4>,U3QH2E9C M&3 EJR]#5CFVNL(>Z8./8D)G'L4:EI0AD+>T;']@^RVHRB8DU:&5,$;BU63Z MK*?K*GG4*T4K(1^*&K)M.DHAIT_BF0TJF3^JNFTO]:55#O<2.BQO+2J87RI:0GN12UR-& MFR:0DJ[XS9UIU;-E'UG)'A\3[C)JN,24QYM/F)EYRH'R@RHI3:[X3*9T9\F7 M0KZM4A(<>5R#/H$)2DJ"8IG(Z*,>2NGZ>*WY$5.B!HB2FE@J,:ETO>PS8=S1 M_H*;_DG,+K6Q;5!L]6SQ7KFDF-\!51IT3!20:5P1%+,R8'1U@B+>LI MMLU HAUHVQ TVZ!=4U#8EI? B?(XVX3^$K)G"(QD0"7QL;QD-O% ;6@&R4Z^ MD+K/03 FSD=J J"2U%C.2$UJ6/9>6E+CMY?M+N0T#<-;B182/ZL??^7:=WC>/<]YC"F#(?DA=H=WO^U?-XJT(4@P[;4B7*V_%@WYZ:\>+N]K M^^]D]+_OO;=1O+4Q> &M#";QPKAOTL]!JNXS6P=2-KBZN),O%K.EY2OY+U;$T8=4[3MOF)ZX:-!N0>PU/7$MX_,\=;W%5^< MNF150:XOOGU'[YWIK#"U>W!0(.U>1AGK CB*#.:&03G2Q;"*K#RDD8Z#-8]PO\E#QH>,5RTS1- MO\"RZ[#]I_^GL']6&X4-"#EA1MJ:'1)ITD4-BN#N2-@?]DR0I7.*MU4-85%U M,^GN@+%XI_IP_H5O'[ZN'R5G-*KVJ_^.:#<6-2:9?;^@V=[W*I@1MT$2)K?< M8'EW;6<"?_D*[QMCIAP]A>'FXQAF W%1XAY"W,N;U>54UYX>H29L.5P-W*;HD(1'QD:A0@.>59HP[1FN(*'],DR+G@"3=]UAAL0M[44@=>S M@WLM[$5?Q%IZY[)4BMK-$:./L&^: "$.RX["1-%"AI_&$B9!NA!=:8[]8=Y< M,$+49XY4\4)T9N+-Q#+9L\0"94+8(S4RAD^*=%%'#HP#QS9S\J50*@1K29M> M\;9U&VCY# NSE;?JTF=BPES'%D2^AQTOR%@T*]=&6ALSQQHX!]5KCQ$-;WSL M#+,IC0@4@K[]A^7!VHG/"0/'MS!?RGJLIGC%QPHB7>9Q4BG+C5/8!=<7VW L MD1UDV!*;LA%S5I1SAVU$/[+9U=,M!/$3\":CDI>O,'A$91^#MLL:!?CM@=AD M3C/69MKZ19V1C]P_-I\I/_.6U(<\0U28[IU)5R*-[<@0V/>-J 2R%QJ>"?=) M;1*F+,,K*-%KLN(R:>)[&5,"YD34PLX7VVR>W(;Z]579LT261B'FAI$'T6K M*/[%PYSZW[36_$J]0G3OB$SMF)B>'+'#^?:WKL."I /_C$URSL2PEKFB3JS) M SVKNSGGC&RHHKH%9OG51^+P-=C&5K_?4NS5TL2+.H2.3F./&%EC:G:>1>%J MQ@GDN]HL:.:\-^AFATE$H!"!X2=6Z6KF,2X:LZVCRNZ&4JT@G4N M.X!Y'78[65LD'>W"SE_^/9W;7*5RO*8K'#_8ON]2[F$ZR0[3B$ A M+?/PQM MQ;8T)E:(QL=/[O%;D)O!C69]QUY,"5OMO5-9>]&0$[>H(]"GH6@O0,Y\QOB8:I\.!]%:O1@/AB!MD'7%H%#N^>HB20-?#(V4_+L/EA9*=!3 M8;\GKVYH1L,];3)SPT'5I["(-G=U;-G;-0W-@JZS@^PE\#4FLC(T> =P2D?3 MQ(NZL&D3VUF)/9-ZO":*_O 1&]_ZA4];C,R4?N'N X$?2.2^O>$\V J2"0Q% M$BE':P-U3<.%^3;/IO/WA6I[*8+/S2#B,FZ]$U+#!)MT_<7\$:%?X9OMPWC$,,_"V0(U\ M3+U@6N 6_^@Q)*^[]3B'A7#;8_[5"3 MV[SW)&SB#N="3H18=GW.*9"%C?H# M@H.+EB)J.&S3Q>QM0D]5TVA>E!\=':*!U)6AC\65VB!5(5X#VG3=%+5E&T[)$2S+@^?63I<4;7F2KCGSP1!!>9*'S M5>57N556UI__^OUX].PK3F?#R?BWY_P7]OP9CM,D#\='OSW__=-K<,__^I<_ M_>G/_P'PWR\_O'WV:I).CG$\?[8_Q3#'_.S; M#=-,A\+^Z^A7Q6VRJ )P=!&4\09"5 @L&U&4MM9@7'SH:#C^UZ_U2PPS?$;# M&\\6O_[V_/-\_N77%R^^??OVR_O74VO.Z-]+'\Q7__X^W']!F/ PS'LWD8I_J V?#7V>+%MY,4YHM9 MOQ/7LQO?47^#]=N@O@1<@.2_?)_EYW_YT[-GR^F83D;X [!^^^WCX]LVKO4\'KU[NO=U[MW_P\>\'!Y\^$O+%)\U/O^!O MSV?#XR\C7+_V>8KEM^?CKU@1",DL6SS_/V_^L!?GT%(8I9/18B;>TN^KCZQ@ MMD:)W^=# MG.V-\\?Y)/WK\V24:@A2*&@,!453U87FR[/ M51W8C$:V$&8)L[B0Z.J!+^HDOL#1?+9^93&MBRG=%--RAIN,>C0 8W) M@DHL@#.T0)$S%(&&[GSH;GB71W*!+7O3]&PRI2&3VGK^[!M6%;/28$LL89I^ MH-'EU;-ZQXO9R?'QXC-A.,?C]?\OT\EQATR83]I,^5*D-)1M9;X_.3X>SJMR MKZ/;GXSG9 3(&%1 I'J=2UY"X$* BER"\\9!=#I'YE04Q33FP"UP-N&$> J< M:"629ARY;GPZ&5>4@FPU<54+!KZ0=79)I,!2E$RV5@]WZ;OK&2&? B.V%$ S M(ES45I)IZT+Q)"A-XTF&DVLF,A3%,9&[EKGENS(06XUD_V0ZI;4VR)IA<-% MUO1%.24A%B8 M?*:QH0VL^X&M$+14\-W+VG?8N,>,M?-V/OR9#8>&!@Y6D,NK6++@4'E(AG&9D0DC ML#$]M@+<4W.Y%9-V)\%FI#ND*'EZ8?P7\"3,2>M$<:UV@6RYCQ!U+$ F/#I' M*R2*UAKT9C0]M:5;T:71W+<'K_".*^>7?@RG(?16Z0H_C".AD>+ MN9D-LC611Z= \,()H"+WK@0/UG@K+04"+L;6AF@C9)MP1/UD'.E )LWX\@H+ M$EWSFW&:'..G\/TBEW$^*-(*;BH>-(G&K05$I-#1%9:C359Z;$V4.R!MPA#] MDS&DI12Z\,37/I7*)0:,I,U\SN13.0XN^ *2*\Y$5%*JU@[*7?[K_<>UE]+D MA +?]^$TQ!&NQQ90DU-H"N0<:(!:9XB*6<@RV: ="ZA:9R*N1])3__PA'+C* M\P93WXS>A&5Z@OF:$2*%"9QI!9B$)CB8P7L50%O)OS.2GB,\?N=.!59CX4\NF5H-$F[LF9$Q&T=PR% MC*8(V3Q/>0N@GOK2+7C13A"/&=:O9Z+$G'W&0 8[UU @$9=#1D@IDGHKWFJT MCQ_3WT/;/(+WW8)5.Q+AC@.Y-<18%%/"(011%$V/<.1\A@PB&U6<$YH>\"CQ MW#V(]0A.>PMB=2>HSA)$:S BY)*496"]IV%[BEN\R0I\*4P;;?9:!)U<:!W<7P*P MMDV?\91B^X" M. Q),H&.E=8YT(V ]2G.>S@O?O#>FLND9<2WB#X_4+!)P"@ ?8?SLYC#L>A] M0,B:M+,2M!(=]QQT<0J5,FBL[RC\OPY/G^*^=N1H)H%.H[[%>"\ "RBC+M(" MZJK](UJ(K- 7DS13T;&L6[OP&\#J4P384'TTEDY+X62/\&3V] CF7S!Z?ST_2B,:^:IAEM?:DDO_?QZ M.*['0A99J ]U1@_+[V0E*^B],B>&IG1R7 6 ^15^F6(:+F4QSGO'D^E\^+^+ M7P?H*133QH"T-#G*V5(C- U:5CI[E9&W#HJZ'U7__*&MF-@S&K0S6U\6^?CQ MT77H!ZYH5-YQX#G1C$E!D,A\ G-9&_HPQIH7,-T*J$\)[A9FK-GD-^/#F_$\ MC(^&<80K\XKS@^]I=%)/%)XY6-+ZXKA/X'0IA(S@59\+T"&&*'-QL?6)J4UP M]2F]W8 =S471Y3$2DU11GCDHJ410R@<(UM!/@27)&#>&M<[>M#\V1]'NLD)L M\='+'&K0WIJL.2 K E2*Y'3DZ, SJ:+F(D79>F#7P.A3J+:E]*]),6PUZ4T/ MT$W&%U!8RT+T@8.-BZ+ BD+S );5Y9N-#K'UQMU5#'V*VQK+?:OI;A>^Y3RL M8P^C]V&8WXQ7&\L#'E6(FC$P,CM0PEN(EC1L4CR0NDT^QM9)QAN@]"FD:TR! M%I/?"BB6&5ZL2U&+]EM9]X'8IQ"L-7,Z%%8S1GW >1B.,1^$Z9A\MMFE.+ , MT["6/"3C"TJ(FH:OF$/PF9.36)*(T64366L3J/D59C7G36"17J/+G%U=G M["W]OF4?CX^?Z.L_#MY]^GCX^MW!IS?O]@__<;#W[A5]>__AX.\'[SZ^^>?! M\M7+L.[?Y>,^CVK8 ^3!(VS4(>1<7[PF_BWK%4^(':OP?#*>O<0RF>+9N1&< M'7R?3P,MA>$X3$_?$(,7>>BZJSH9T6..*';#*<[F X.&;)95P)VJNZBA;HY) M UD*+YVQAHO6&90.A[-]=F%3:,OGK?8=U[\N__L#<"^.]\2,3H2D0;,@ZQD? M!E&A TX6@#R.I+E]/%&T'V^?0L:^K+ ?4RP_"1];YO%B:\B=1UPM%/?E@DF X9D\>(X& MO&7D^LD]UY*UWA"X\OD]9TI^650\59\O\^]45 M6ROF2P#Z%"BTXL!5D#(9'XV614SK]- WC64BK I'%;RMI MY/\YF2V:":YGY'TM'J$_S.?383R9UT+_3Y/W85$KQ3,3=0\-9,&:\#2)'$1R M%;6I^4[R-P5KO6!V.L ^J?RN2-M?QC1;%)?79?!1<1EI=I3SM"XC0<@J@A%* M:\PE,MNZFOL63?C0 (GF>6747^(8JSDU5B%3SH%,.=6"Y%3;?$HHR'@47 84 MK7MLW@"E5P[XPX5_?1YGNXE_A##Y_CF$4(K*C(9A'*N;$T) +.3E21VDTCP) MDQ\O"MXRG?RX2KPU&1]?_IT$>H8%BB=SW3ZUM?EMM6=D," C,U%*JWEN71=Q M8Z#WD!W9KS@^P;52J&5H8*GIMY5N1 MC/5G^1,8ELZM))! MMRXQN772%%]/M*F:=Y<.O$(."4.I-T5$J5M7N][M$C]DHVHV7W[NVQ GTX'. M,20O VBLP]+,0V1! 7+G?=+"A=Q:VUV!T"?7:&O)_WA0Y.'3O36?ER[:2:R] M*T]&\S">?\3IUV&B]5J-+0_10XG.@A+! H4?CAPR;:)G11=3-O-_K_OX/ODQ MS43::#;;2'6QO;(^OWQ[^L?5MF-=_:$<5\3>@;E3[7CL(7NDB^ $ILABF M.>95E\'++UQXYWN<#B?U.H5I=4)?X?+[65[NX'OZ',9'^"',\: 4XLC EXRD MH#7I;A9!1MU+%/(MK\+067/CK(<4M =%VA);X-74J M78B_Y7[]=?B6'5 NX_/64M@A!$T#UDM0O:TU9!)$,(H,O=&1MFD%F10?1&U1P8%VE''7.^CSDKDX$H7E6"; M@>N3\]\1LZXI^NI <.WV<<-P7"O2#L>OAK,OD]FB[ ]\R!Y3E+P* .V+KR]'5&OJE9V1*&&,FK7%.?"1M)A.?/SE[D^68]* M,*6!(T^U$8< 9W,!3"6*Z T/[2\VN05/GUS<'5&FF7C:9-1_5(+7U>W5>K[? MQZ0/1YC/KZBH>+,HY&1 \2'7FWDU!"P&K'+1>.M2"5<*YFY(OV\%XYX.YD^M M>78LM)85]E<@7[GRE&(L(X5T!K*H3FRM^7=3DS@O)Z,UL$'@2BF3%)!:D<1H4INA" [)HE!. M%=3-?:';\/2IJ>V.6--,/)V4.-'/([RNSL:P1):U2+"A;J)B/6R4H@5/3':& M29Z:GU'>!-NH%_4^-+W?7JQ5OEBXK6 C[PT:2,-UI,^ M##3V+)5!SVWPO#V);L>T"8'<4R-00S%UZ/:LKF=:P[WVFJ9!<@R5D@6L+*$F M'#1X$P.88EPP)L74Q>G3!R#=A&C^B;C>.Y3I(]S/O3>=UN1U/7H^VU_DLO M1[(1779X6G\7;&D@DS:9U3K>E4:\?/*'7 &O9;** Q9=+WEV&J(LFL*:B"Z1 M/Q"-VBAM>O,S-A+]$TFMMYSN#LW,=3G:,V,X2$J$5%ND.U6O?%59@G<\@S5> MDSK+DOGN7?Y;(6Y$J5T5M,]L:3YPR70U2X>N4C3$\P7JAC6X>C;R?CH$TZ/+Q8X"&]*2D*" M4?4:5A=C/7]*WE..A6-,45[=%MYX'^]>0#;BSA-)G>]<<%UN&-\6YPV43II9 MFA,O0]TP*JEF/CA-4R-"/9%4^B[$\QBG$E1RQK)0ZDDW MFHNB [AH!7#A(S(=8VI^"<1#3R4\:%\S(>9%W['S!3[&V6%9)JX'#%51G%P* M230@*D@&SJ4$*14?N.:FF-;[XG>"^@FJ!;=ETC4[G T%U6Y?/)S6Y-OKR?2N M=7[=A$25@R-?!8SS%!4'K2#P',"K($.FY>]]ZZVKK0#_##6&S8FW,PDWO$7M MRQ(T+8YWDSF>E8X$S;GV]'A&"X*6B$@0-5/ (T^8E.&H6Y]3N G+/4L/GP25 MFLBE$Y9DD ?OA-<4B)M$:K 6C2AC068G$_U1M<^N/?2 U(-]@-FGR5[Z]\EPBNO] M.US>IKDXU[3\2QYPY42TN=YGG@VH;$A204JB!4?#3>WGT7ISXC[X^M;MN@N" MW6#AV\NOM9=YCI"FA*+6^>G[41C/]\:YGI+[4M\RL+)$SVR!'$OM2<\S>$Z* M(>F24_*!&=OZK-?FZ'X&_[%S=K617N4\ M=R3Z$&NOFP3>*0-:*HJIG,Z(K<]SWXWJ)SB[TIQ*;47553.A]4W!Q/+%;O#' M]!GSR0@G9?V7]ZN_O RS80KC_&HX.EG<)SP/P]'L,K[->@UM_>\KA:I'^.[D..+TL*R>O$ S.SR9S^8$AR .4G$H6$(P-+&@%'FK MGL@)@L)4I81C_FHWKZW7^3TA;JOL;GC<#\]9"&G@C-[R-4+GM3(K M)^%B.=_ ,VVD$!R*T;5I(Q+N>F*L<):$Y(%[W7HU;H^Z3UV"=DG)'7[!M%1U,.* ;2+SBP9P=<-]^1\=EX&$>OVWNY)>C/D/OF- MO6-H(TEWY5FN _-%)+4\[3_[6.=Z>CHI\\_X.@RG_PRC$YQ-5DT UG$[3>#% M+7T:VO%6_F9'2+;T0GUR59ED54IRRU )3)2-$&R7]:HMUT;ND6N]2-QY"!V=-'@QG%4WZ>C$Z31T( M[ESM@^[ H?1@2<\8(4PBC=/C2=T\4; K+_DQ6;_!*9-=\J7+,U8/'L?%VJXB M4N+!>BA*DK&U-,$.@P:6M/)D#3'8UINE'0VE5VG7I[H$'DJ=7JZ#]5'*3^'[ MQ7'QD%@P44'TPH"2OD#(VD)(4N82BFQ?V]S]J'I5B?!45T<#0G5\*/>\H&=Q M'_02+A\DKG3=UH,H4KU#+$7PP5JP-I9ZN,TZW[H&XC[XMJHEONE3ZU[&HCZ% M1+F*%>>3]*^!S"P+&C=8GC,H(0+XJ 609>=1*&.#V.SZCGL^N.<>7!OR7"HC M[E(RC[&.+JSY-^-4.SSF0>V.RFJJ*[N(-#E9@>/.0F%).JV5EGH'QN0>B/N4 MV^RDDNA\Q+B<(FE+)UV4[7D?#CSNNJ MV?/%+M_%,,V9\\!-;>X:F*S7,P00A7XWV6E?^IS"^7%$/;=;NUP37?J66U*I MS;FLE@-:];,YN^90)6X+,P8X+[6-.?G+OE[TINN0?;<.#X& MUWO%BUX:US?C>1@?#1=M44/)Q%=NH A&GD+D'H(7&8H67L0L:9I;=V?O:"A] MVF'LR5+H$WEZN1)67>^7[[S8+=AHC5PR!L*X12I1DN_N2+GG0F&=X<)KI FM>KE@%D?RWTV6<>9ZA .FA(C&1"@NDT4T$L%S[ZO?5Z1Q M+N3FMZAW/J@^-<%^PDME>T+U+Y#X4"EQ6'Z?K+&;TT"+<U*L=-$=M/[ ^M2GOR3KI+[$Z*XEZ"%.*-?7P5*CM3$D;2BW 2^0LIF*S;UW6O &L;=7M MC8_XVW1":V4U=BMEL+$>;G7>UI85M9L>$U!*+B&'G(5K?=IO(V!]RJ:WYM!5 M_=5>4LUL]HW0]E(Z.:XB(3TZ&DV^A7'"VC5ET:'@[078*1@O4"OPR110J!D$ M)2@4=3J(VL1'-^^NOS7H7I70/1K[.A%QNYOW?FA+?6$^DA%N41)AC?6U*:2! M2/$;%,VBC(H[5EJGEV_#TWZL"\TPL#%QHVFZ4Y0O03J'."9\5#)&@RT.KF1H'Q,!#%*$&10 M>%;!L]S\*LK[ .R5QNV.0)W)K*N 8QT.A0N1T!CG6\0:=WSBEF'&?? VBC!N MC!CIYV5O*%RT1K^2A-DK<[*SYR;VXIU<5Z_B4C:QF$N&$F0$I1.#&#% M%B< M*I&A58U7;_>C:M#*Y"$(7V*93''#B1>!B6"2J=X4^=S>!_ H'0B3K- RLIP[ MZ(72];#Z9*Q[MGJN:<+2*Y*U; 3TH'G?;$B:1QN4EQ!\$:#(/X*0723314@D M!02N?:O3+@?4*_?D:2Z9#IC5E5/TM\DD?QN.:'P7RE*6N>7S3D T5!+CV^%7 M_.%-6WA/K1Z]I9O5R0PT\L=N>6P](\5="$>N$CU(M=:+F6+ VE9U.BS,-@ZO7T7ICYY( WY ME/U_BA[ M9:0?AU4MY->5U?SQKI4M[.#-'[:E9=L092-;]>/3ULF?6,C%LB)!JIW"%9,, M?$8.)AM36\Q'TSSRO!',M@KG\A5Q9QWTUT,-FAFGC03F,J?XASF*?UQMELU, M49DU5,EG M!P$9*3&>1=)*:9%;>R_7(^G3F9=N6-% FVJ(M^'4YJ.$<5^'W!AS!8WS ]2 M=-(67]OE^0Q*\DA -*$1Z+)C'!/W=QF.6SZ_3R@@@W@I$H@*/HW7'EK5>OSM[1-I9B MA>7,GSD[+9D"T5+5D*?ZM8[L!9-)K:K M4/+B=4IA=6'G81P-CQ8?>MX$\X[W;1%_-D:P9=#:Y7PTBG37-QF]PE@W O;# ME^$\C!;AQP4$;\9I=%*;WZ[X^X\P/YDNFT?YXG602D-)Q%\5K::8A-=*FQPL MD2X*;*WMM\6\K?VKSWTSGLVG)W7[9#],IZ?U>HGC6B\RJ+G!R$P JTG#JMKR MW.>L@2MI:I<78V3KN.@V/'V*F7?*M:LFLIG06N9[SS;=SB^BY3)SCZ56:5:_ MGT6*\8U1@*3$E5,)4;3N]GHMD#Z%U8]*G.W%U(PQZ_Y]*TC[D]DR:TU.G-7* M<$!1-U_1)8@&:[NGQ'4V4NK4.E-W Y1>M7%\9'VSO:Q^#C]MP!_?4QOP?OEJ M5^>D+]X:^JQB41DXKS5-'&L&.8O:&SJAMTKIT-JZ/+:WMMGSUX$9I\683.; M2Y2@,M/@T#E 3!1 T1?=_,S9O0 ^*7_N/FR\JE^[$VLS<[T9Q(%,%* ;*4"$ MVC94!0%1)@&!8<[":A?-XU#N2;F W7/M7H+LRK3?<#WZ%BF5.SYQ2[-['[S= M77IRUZ7R U=T%B112#Y&TA\Q0^2H01D34^&,N[B#.SCN@ME-+^%;'[E6L)(F M(*E$RZLP!4J&##1G#%0R0HN@9&Y^3]K#T?;)B';-QLU:"3>7<]X_ M:) SCXD+!DX84LF%(7A9S^-RQ=!)C?QJL_3'H.4YX#Z9W)^ F0^4](;&=_5Z M_1+)U/_E3_\'4$L#!!0 ( (MT"E>V' 5DW3P #G% @ 5 ;G9E92TR M,#(S,#&UL[7U9=QM)>]AMJ$Y7F:+GYZ,DMND>)/?XP7'W]:?$P__6F\_?$O/W]< M+#[]^9=?_OCCCS]]\;/)GYK9AU\8(?R7]:=_OOCXEQN?_X.WGZ;6VE_:OUY^ M=#Z^[8/X6/K+?_WUY;OP,9T[&$_G"S<-WUZ KX^+RW]XE1KYR^J/^-'Y^,_S M]M^_;();M JZEX6?-GZB_ 3KCT'Y%5 &G/[IRSS^_*__]--/*\FY69@UD_0V MY9\NOOW][8N;E(ZGBU_B^/R7B\_\XB83I+A]PN+KI_27G^?C\T^3M/[=QUG* M&ZE?LUR(DH69W"\LCI9_FGT)S_ MTE+VY/6K=Z]?OGAZ]O[9TW?O\>M?G[UZ_^[U\R?_?O;JMV?O7KQZ]_[UD__W M[Z]?/GWV]MVS__C]Q?O_OI_^Z>=45CKC1)-VG?_S/J^YP@[B9CP=EZWH)?YX M\:Y"?X^,I2^+-(UIM4>M"9DTX;L/3%F<11,]#E&#A(/7A#$.W#*9+#$28;'FU3<5F9Z1Q*_ ME\@WR)W-UK*Y6,Y[KO<\:\ZK8F/1#*>2%2R0OY]_:F;XN+_\3+HBZ-U'-TOS MU\M%L5&*X3?2E$BE:3$0$@?A$](BG 2+=IER-&I^+$8=!-ZC=QP+KB MX"S^?3E?E+UP_KXYB[$5MIN\<>/X8OK$?1HOW*0%;_$BXI/F_!/::*US\C8A M _/Q(KU+L\_CD-ZDV;B);U-H/JQ4]C+'$SXP$EU'&LF%S$4"$X,%Y-!URX#I:;1CUM2'=F>C3 MQNRP.KT)2M$3*-L%LQ7]6AGE,](?O+(H/<'!N\PARA25H,D3QH;!Y-8T_Y"0 M[$>C-Q$INR(2Z4%Q->?I93.?CR0-C/#H@%%7W".GP'"IT#TRBC!O:(BUM[SO M"#AMK.POZYN*5[V>CV=A=<2CZ.>C0"/',QQM51K0A>'6@E\PE4CDG5O@52+;K:]\KJ1,GC3SQ7R4J$G$X/DK99 @ M#)%@K!) @O!(MK]PP,U?AC M5#DY3RDC9"N 523JA!%W*-7=A*#M>CZ^7GQ,L^+VSM+'DJ_ZG+Z=W>V">>^^ MO&EFK>(6:.;YY<+Y27K?O$'VIXN1YB$87#,@=7B4]K M;QGEQ$,(G(% +PA<0H=(.Q(2RTQ(?TL^M]?X=(>TY/L"HE$6*7M) CIY"?>R M4,PS'QE(EF(PF7-->DM)MA147-M72D)Z3[EU$.-MR92?5@G^/X=)@\?37WY> MS);IVR^;Z2)]63R;M"_\R\_S].'\QJ[8 0DK8)4=J)F6J.O9E_%\Q&4FZ.(3 M2!Z9$3IF7,-HP=OB_5.=+1754W)W$501)W>4Z=R!FST4O0DSG07>0S[N&DU/ MVW-R*Z)&UPJ'*J'A5H)J6@*;"I_NP$!WQ35]27TP2+#@5912 >,Z@4!W!)Q% MPT,&*A+)@1D6'RX4OJLI.SP2=A%V#PA G[U]9B'@GA)5I!$C<\CBQF M:\!J1< J8[11B@A7VUZX0<3P[D %Y30U)=M#4A+]#H). 0+U)-[#RC\+87F^G)2*^TW^Z06AQ"%!$G*\ZH,5ZH^OWQ;@=PJP5+N2)4\RFL_&7]H@]S/OGQ*I0C@_?@< M/_(ZO\/?SK,+%]Q?A$FB938JA[:L4 ($E0:<5B7 Z80P4D>>:AO\]:COOJEM M0[J/I9\26?6WRW< M;/$4';DV6*BLB4)*7+.XM>$TC8'RFN+43YX&(4E_$ MB 6+OP#IA-22:8OXV HVUQX\G,\\M$*:2M*L&*RY0LO[/YH+6I+QF24OP4GM M0$B.I[:2%$PTF/OA'TNQ^TMRX9H\D>S&ZYK8.DK\8T<-F,*XS M_9C#>,QA/.8P'G,8CSF,1X0^YC >,NCV&.I] M>-&WQU#O,:/M,=3[&.H]XH#@8ZCW5#5[I*'>=1$]FH)M^X!7;C9#"7Q.'2K1 M[WUFMT#M;B17BL.>31?C.)XLRWO>I;"<(^3]6-CK/S M$HL?>:LXL;8TXG.A;(P.+*44?XQ&Q.@M%[6;+%8A?/@(V4$P>^/JUN!*[Z-; M>_B8XG*27N>.[%QXP5ZI("+R8&P9JV,$N$ $).L8_C<3Q6K?)*W+P5#!LJ- M\ &5?^B0624]_/KU]@>TGE,T)FE+!?CL$ZH&E[:G$K_$))/W*@E5NZ-0C^P< MK$7+ 4%:=\>O!I8^;H3?2MDK=YXNG(1MZ.NI5\Q]M!VF;!:Z6T"V0Q1RU,:116>QO9A;[A=Y=J2+F^L_2FEAZB*6O2\$#VXVE[(#_! MI3K&I[<_O)^YZ3RG&9)*1UD:PAU'"G.)EF>*/DG4&8(J\V!T9I;4+BC:A;X3 M@E!O:NG!:KD#[K_-ROP.GY-E.2@(Q*')1C4!8ZW![_!HM9X34GW,Z'TTG1!4 MJHJ_AS9Y@@=PN3JU9C+Z:+-$,[>S5:X_6L'9V!!*\&:\SGXP]3/ *IRU81QX&G M@+ 4+H#30J!SAP>AYBS;ZG6JW2@^(1@-J+H>IL2]6A:QO<[?MKQ+NXIHK_!, M=*!-J=DPZ-)Y127@0S)CS-K@:T^5V$S-"0&FDLA[&-"V@\WT/<3G*XR?3>,: MY*/,N11 LH4G%LH(D.16,!Z%B[CEV?CPI(SZ04FNILB!C)" (GNX>UQ&$,E>*1IK1\!\$AW>2>?)XJZ>D MBB/EUB2_F%Y(/+T2SW#+4)M$SV&\D"3 MUD!*[EMP+C@(8!(W-%"T#G4L \]I+CW+-8?@I!3<><)< M[6+@ P'EGNS]87"RB_AKWYY!]LY_2\W\$VZ:;O+RY9.+9+"E,LA '+ 4!8@L M+!B#6RB)5L9 LXA;7K[:\(*CL)N[Z*&I+,3:EV?: 157>%T/IF"!4(%,11TI M".,]>!\SE.L>3B<=_?6:WPUZO?WY)Z76"B+L83M_EV;C-'^=T40:?Q[')9KM M7U^ZK?:2^]YT*G"H+]8>,EI/DU^\F,[1_VWG@&S)*-]$GFM*!2@"4$S27+.=@D- 3/I69"T/J5X<,"X1Z?X8GIB0++\=A$#SKA M<>>XO)[0V6 N;/.VX4V&.HII^I3J0:JV+QN:HC?UW(UG;17%O,G?'Y]N&M=9 MI7+=83Y'*<;*==X5**E?&5Y;/+4:#5R\^/EFR^=;_H='EX(($:PNPY8MNL4V MXA?*DLTTX--Y[?39+O3UD+V^:+R+B_)%Q-4^SF-WTR*\36=M ?2T3=A_=I-2 MO#B27GEE\#1PW%I"PC 5 M\?MSMYS-BKW3?A*?DI!)_)?SD25:Y]),R%&B05)XC>X])L#R&8FKRA:_$IS19?WTS*N('5H?2I^#$C)UE0Z%L #;IX M+S&!B])#C"03ANM4^MKN^R",G2#BCQ<8%SO$@BBK$ M*"@'7+T&!.[!X B>2UG)+&+F&:VRP??K:T2>('B/2J\]W->HR5J;F'[53,-5 M8VID6"(TFU2Z21&TH!0#3S0N2,IY%,EZ0H]YI[Z5J1,$^G$"8IA+*7LS^$T% MZ"1+H[7R":A%3UE0-, <,1IR(*7JF H9:]_F[XF51W3WJOQA+K+LS=;%*O4, MC:C,!&1>BL0"]>"X,\"-]4;DF ,_YFW[<9_N5^4]W)JIR=&5WXQL\B(:QH ) M56[$!@XVD(P+E N5B4\BU&YVT!,KCW#N5?DW,6V."=-/T^I6Y7OWY2J',4G' M#$-?E_D @EL!1CF*JY;02".SNOJUZOZY>D3Z4)"X"7I[3*!_E1:C8"W5FE,( MN'1!J'+-(;D,QI/$#)64J&-&.++P".=>E'U+PJ7;[81-%]E+3K1M[X)D(Z/G MS;3M4#AB5GC"/8?D.9XN7!@H [Q RVRD%<$;>:T"=4-0;L<7GR">>I?_+6"I M=H=MBUX(5]#^8A40B2,A=/:X/8,1SJ+!+*H4<%=6F"!*\+Z.]2/ISS(X M(K;MS;*#9@[3FV4+ A][L^RLRMU[L^RAAX, 1LMDLB4&HN$:A,$3W%M'(2B3 M&)':1%][2-L#Z\W2*TYV$7_MLN1[;XI[&B.3/(,2$K=1SQFXG#V8*(U.AB69 MK[7J/*$+^#MI9J<+^+N(M7;;EDVM9!)E1&C!@<2 UKR*:,@1U*56BDB.YIOB MV_5M>4#]>/;6< TAUE[,&YK)".F]I@*-<2XLDA0LF) Y1)9(9C3XK+>K-GTX M_7CV5FL%$?90AK]W;Y?LK,O(,'CN4 [<9?"B--'TT1J>N./5G=M3ZL>S#XP& MU5D/O5GN<+M^_?I7]_=F]F3BYJMI<<+IR"QUP*F5I=\(0]<_)B N]FC,:5\N=7AKG4@JU[Y'?!0PN\=-/E:4[:*N'M#U9#E? M-.=I]C9-VIU\_G'\Z=+?\]H[0A2@:^=+%1=^%PD%GE764F>%!WME)-U!SO"V M5J^J;/K10P_=#][/7$R%S34](C";I+.@J44^M0Y@&)E^/Y8DV24M()ZTM7)5<&Q]G2O2EK\"I3'9A+(=?.H=]"QFGC MH*O<>S!^WZ?P<=I,F@]??W7S6T2P(I(KG3-1Y2:ILB!$1*:9TL!\&4OG2A%) M]1UB&\).&R[U==.#JUYN8S;GG](BG7V8I38OO:;,:*Z%$WC$(8$@(B7@O="@ M328TZ*02J3W>8S,UIPV52EK8>!^\5N.\=9L%=Z7#PC0M.C3 N^>)W1K9[4)N MI89T&QM1O+PL<4E>V&!$!+02<,53'L%ZS] S9Z0T0I2*UFZD=C]5G4<,;WH# M?H\KR4U#>IEP&[S6G>;7E)M9.@MA>;XL+23CT_1IEL*X-;KQGYZ=-[/%^'_; M'T?!4RU4"HA]ANM!&CQUT=P"[A5-GAE<"[4=H '8&GYGJXS1&^..CPP*/?A@ M>[*X)7.6Q9PY^A.4$EY=HC/OKGZA'E_0*ACYQX^)CB MYXV\KE)IU!CTQM#J+DT/0 3MP'ER-+OWY]CX]HDQQ:.AMCD0A"R>NCDRCOMU MV;D3TV!*%$N3P'/2R9A4>XCYP:!S3V+Z&)"SBSKZ*'%8SE#02W3&BZ'WI7RW MCD9&DD*(KC1BB*;X)A)LZ0ME!(LL<99T]9CP9FJ.R.+>5WG7JQ7J2+Z'B,>3 MYOS3$@W[2X[7M[Q=E).#PTU9%Z[ M/OS=C MZ:BI)3(HT$(DM^RLH,-F<)(6A++),RFMII MY3O(.1U4U);]QK1QSVG!5VY6NEA\3O7S@S<>W4NB\&X&ALL8&DM,XMR#$Z5' M0A $K,6S/R=T>"GAQKB'ES&\&A<.Y=CL8S31@J%.%#N7@U&X87(:B*"&12IK MA\ >8)2U"RQZ4<6Q1%E?E!J:]&[A%NUS7Y9_L+Y]';QQD4=7>@?R4K,;P9;[ M4483;:G3*8K:^\L=Y!Q]5'4G]3?]J*&'P,8&TBY,M6V(ZRF.>B=AAXF@5E/C M=O#HH(/A@9)"$(I8B.56MB I@G?* S&4A,A2EJ)VS., +DG3GH@?.P@^EZN MQC\=HUVU>-)\JP 7'.TH'9"DJ/$\YL:"HV7&FE>1L(3^7;;W>3EW/']XT[2B M!FY+WF=WUV-GG]H0Y>[5[OZ>;B=F>MDK^[?L:E(UK,G$-V25+\@KY8;;=B_>[#J75O16Q0[$Y2[,'8NVQ1>M%8X>ER M-IY^>)-FXR:.:,"7<^?!1X['$PD*C!#H#B7DW.3LC:^=\+R+GM/1>F=I]Y#L M6-/V9CD+']V\%*,WR^D"Z3N+?U_.%VT ?B2T$8HASUHFA*M$OQBM6P.>F)2T M]D@_Z0D2=Q)V.MBH)_\>;LRMB42&T_C#=#4I/'QM.W6O+HO_AK)[V+7&[-LJ"<5HX M[5U(I+:5NX&4H8+T=>W;&G(]EA#\9=!@W93JW>JYJSXN-J6 M$H)1I!)!)P M$3*)=EXVU >&,JQ=+W G08) MJU=4U(UN@5VEW+OJJ6/*4A; M= Y 0@F3O.C A*5]\!^E?Y/9'RH32^ MBW!KQ\9?O'I^$<_5.C+"LP3%(D7K'(T;1UBID@Y94[Y\Y/"&:@>Y M-IV%4KM5\Z_OWZU[U1B:G)8.DBRA]M(5TC%N@#/&M6":D<2V4LWE(Q^L:O83 M2NU5\]NSUQ=4N,R"21JI4,&7DEX&CAH"E%N6J>4IZ^WZ9E\^\L&J9C^A;(P& M#9 :JE'GN,OC>TL$#5+ON-48H$ 'J M\KJ-G80,/N8,*IDDRG!V$FJ7A59EX*AZ.NV'O2TF=0RDX![27%L,[OK/5"[_ MIWCV.>J$P$\-;S,]9)1>&WQS*T,SB[T MGB 6!U-?#V[CU2X1I?_]]V2/DN0.Z># VJ9H+$9P,9?^YL%S&JD3U0>6WDW1 M*<*GG@IZ;=UQAR!68;4@I!%41HC2F])!CX,G3H&4+.#O35*^=@?N[:D;*F;= M.UQZ4LBQ1+9WZ5=.G$%^2E<;3]#;]X:5EHT!+-714)*5C;7KF1[ 2(N^ -)A M=*;"'WHX ;AJ7'-&D-#@OK75<0NN/6 G9XQ$1 MM.2D^OC8HX!9QJ)2.!,B=ZVAP>U.2*&IO"OG+O MP8&_H^6]I"%87H9H^':;:O,^##$;L_+9$ZOXX^"!.L"HI(6*9;9M#O!I^IPF MS:<4O\W0N!R^Q*S2C '1MLQ$L $/,Y.12)VU=UIG?JT'_(9$Z<97G*;"*XJU M]RD36UU5NT-H?5_,V^+5 ]S5VU4 0Z9O8V+&A;8YF99H9N &8ICVH+E@2G-) M(JM]16*(].T=[WB5%F=^OIBYL!BYX))ASN)BPN-5,.3>JV3PH+6.FZ6R@CF3)-91R#%P[!'\IE+(VFH [=ZN)WJ(=9B[ 20#K48NRCJ M")+CVY#[6(O1@^H[9LGWT=L1P"V@<\"55) 3R7@D. HV1P?&4I4U>@VQ>BNI MHX!9Q5J,(5&VB[H&KL6PPMBH2L]XQU$,.7JPB0@(5"4K='3>U*[J>="U&#NI M7 ME%&@T:\U6"LE4,^CR38I26MO"P^Y%J,+,"II8;A:C!@DL0XWL*"014$R Z^9 MA:0T\IKQ?_2:47IZM1C[*+RB6"OV*IO/%J.WR/!JQ*$*U&F".U).I5$9%Q;- MDRR!4(TG51!>;N=PX%.OK'G\Z=MZ_^Z%)QH)V5^H%;?Y2R+6+2^V(&.7V,4V M.JZ_GN^/1700_G7U=9!<1=/M.CE.*,\X8=A)[4T-F%3WFEA#WY0HAFCJ$'WIJ+(J !X&3X 0>!,6?(S)S M*LE6:?+[E'?UI0]0>7O+;./*JU5@^JI9I/D;][4I,*U/0K=RT3W%4JCI]FOSBQ72^F"V_'X;FE1;<&@HF! 0G MI1J\)!Q84HYKIW2@L;)[NH&4[N,0KS[VB9O-OI:^UZM&,$H2::U@(%DV>/;A M\C/6!DC1,Y6-SLS7#O_?1<_P;ED-_=^3\>(K M6I8^DAP94J&16U]F $HN<:5$;[;<2Z6TDY#>77D',?X[:;Z8?W M:79>6#Z;QB?NTWCA)BU$KYRT+Z9ALHRX6:U:WB_^ZA;+&2HAS4>$Q*RM3: - M2:M9*JY4)U)>IFHI[62L7>_2E>;3 -2@FNNA[G,[^B_('JFHB0DF R66E3:V MZ(N)(,%((YS.J71P.0C,+@C\D3"UCTYZF'&Q';$C*1F)U$:(0CL0T@NDDC#P M.?# '5)9_2#;CK(?"3([:>$F5F1=9V<57H^:I\A) .5QZQ,^:W#)(WR9%_]GH]5\9:QWA-=6A1H7_!:1L21TDV:L,23 MY*9Z#[^;5!PJ1]59KW?B9&?Y]N+U7*7H:KGF%G3U5&:[B:;#U--VU=F=$.@H M\"$!07B(47@.(HAV5J3'G=()"#(+EJC(K'H]_[! N*?B=2@<["+GVF,1WJ7I MN)D]0>]\O'CN0AN761=*<1MUX RRSNB>)^_ 668@1I9E8,JQ>*V3V(:2D\WO M.+0=N*\2FOH2K#V*Y/=I:";E4NS,3<;_F^(;%,5X/F]F7TMJX8) 2A7^GY2@ M,D7.<\Y@N))@O3;>6)71=MU*Q=N\[12475VJU=?SH@G_N,@;K=.!AN=,B ;J M!0&A$( N.'18F8B6):.%VT[)-Y]]"BKM*+'>AZ'P3,6.0CF@!@]Y$6C&58OV?J;)V9R,2M4;Y/64XRP/>IVO'4NK,H%?F]FL M^:,$1MTG_,OBZPC=W2AM=,"==2"T"5!8!66"=4H&':L/S]V%OD-O,_OAXT:X MJ"^-]) 3Q7,MI!3GSU$RA>[YFO 1XY&1S-'[C:4RB"D%CA(%5(44HBJ=36O' M%#<2 MM(1$;=!$^6B\V,K"AXV*X83?0TKUSC(/9A)3F1-P65D0UEIPL3C06C$1 MC$G*U.Z[]3 *:[IL'M4DWD>:\Q84OYBB[Y3FB[?H0SU=SI#6-VDV;N)(:D\" MP[/.JS*LTSMTFI@SD(2F@G$:LJP]8&T7^DX#+;UII&*.<^,&^*3YG*8.G;ZT M>)E60[3>%I0B_JUI^/OZ3XY*.;?4CE+U?HEMYJ5V;.TC+HW68*7EL%>%#:F+D(Y+IK MLP(0:1G$Q3@# M(Z0%DPE-,O*8K\^WVWBS\IY7G0 ,ZHKSIK)U'S6=JVZCE@9IE48_VBES,>"3 MI0@LR1*05-A+JROHF"$S=B98K\HJ75 @<">J$",BQB+B,A?4$ MK! :)*/<>Q=YL+PR#NZBYS2@4$WB-]%@NZ*A#3 _:<[/QXOSMG8O"Q*U8) ( M0E($::R2VC"$19 U@L\[2[58RF O!9D;8M\\%/&6 ;,\X#6 M"T?KE3H*3 C*&(G652^;ODG%,15 [J37ZRV8NLFWCV9BA]O MH^B@0:*(LOE^!"E2M"GTM41&T]J;T]I;3;@\ZOQK N*GT$2XI')('$4C5$N0)C\$"4P2LI@O>R>D[J)A7#FX'= MM7-'8F$/T?90P? V?6XFGXL/>EME9BH3][(E:(0&M$F%S."I")"C"X$87XHO M*NO]3H). +U!-Y[C?M%CV(GI$D&J"[)45/L&9(%:(^_D$R1J&H/2C[N:RY= MK+R.\NV]%.&[KN3WT_7#7G/916=;7W/90^!#7G/15OK@J $ERIPH$TO#3Y? M.NV]%9X8T6_-YQ%><^D#![O(>6SMLL8HU[+5L^N=MUEGW( MKW2+Y=U'-TLW7GV&;YY^:-7]Z]=O'WGCOK;G^Q]N%J^D "*C7#H$@2DGO4#+ MWV7\,1"OO:):TNKSD[M3W7F(WKX4O%J6Y?,ZMW^=GRT7'YM9N08XBH[DM#K] M*/I.Q#%P5!.(PA)G#4VY>BNHZDP,O^$-C-\;H_L."H,>8EY[,]1^^5N:+RZK M?^G(FT"D8A0"\QD$O@W/_$C!FZALR>Z+7#M=7I/^1S0/I?P>?/6S2?N9%&]G MZMF7\FTJ7;@H=RZ X\JCS()'-Q4%9XC-49I,*:T=O=^.LA\.?#THK(>88$N< MOU](_KJ0GOW/LKTIL;;-YVWMT_N/;OKZ4WMI^>P#6M@?4 OIHO9>#H?A[^Y MR3*]7B[F"S M&%O97\^;V<6ORN?HR ;.C+8:O'9E2+D5:(BQ#+BL!8^2Y7"]3<_Q+H);.7Q< M&<<#H!Y:D.XM['N/QK^U\GDQ7;'=2NBY&\_:\W%DM&="" 6Q]J]LPCP>N)F"%CJ4#54#;JH1HO7.E9X4N?J1-822 M[ZG-ZDO'NTBS=D''R@8K!#%"Z;I:/'JIJ'1@D\D@I-%@)3(8*!.6L2 MW:Y2 MY[:G#V\?=Q%W4U-6E8=S?AL1:TB.5E "LMSE%%$YM&T\@1Q28J4WG3-;]6MZ M.$.K#W$*[R_S'F=:;T/&ZBI M4*EU\EED%[>Z!7UH!6XUT[J&_G816*\SK4U4F1*6(=(8R^@\"QYY &MM&<\< M\Y8W%1_&3.N=Q+YQIO4N,NMUIC67G+&H!4A7FG22;$IG<066BB@4RWA\;^7/ M/HR9UGLK;V^9]5&0TA[C^.%V*Y'&2R,2 9,T&F V17 \4%!XL,OHM/"V=BNI M[PCX,6VA[KKH(?.]OR"^L3&-U]R%;7CJ*;#1!S^'"8]T@,FNV8:A=-S#QM8+ M;R;RI&T2I1,4;M8Z2=RGJ0#B"5IA2@C->REU>A"XO2?B<^2PW46U/<#U;9HO M9N-0"@W+M8OU]:20C2:6@\Y!(E'6@WS,H_&F7K=+"J5!&7#IZ" M*C!X6Y<%_G#%4IU!M QW7_;GMO5U;]12$F& MTM(X4>?P[/(*K-4& BMSF9CGR=>. W&W -:) .@=/@%M0?$#A$8V)O1W_ 1 MB_FZQ'*DHZ;:4 V.>0TB604N* $JH6VHA/9RE]#UOCROI("NI \#ZNG0X M0*WRR#*>>2 &4C*X8;B<42U*@=?*$XFZ2;%V]]*A>'M<2 =92!T =HA4R]Y\ MHA9R&E]EE1-&LY<X_+Z2#+J1O,>KC& M.)PQ6P*$M$PR3D:W#:?*5"ADV446DA,TA% [0G\@?VG'Z/2]M\;]3K?&%[=0 M>6TV1VL=/76+='FOZ=L/:@G-WM)3/"K3"0TKE!)"5!T(2'@8H*I.8L>D^2#P_G MNNKV? ^W!D]J$0P?EZJ+X >UBK^/*-PO"*ZEYGVPH+3S$"2T0>!/^?J M=?S'P?GCQ4DM:6_ST<@WM? MWWD/W56[T..5SSDR5R:'L6(E&G!2*/ <;<1H%+&ZN@)^P(Y"G6K!#J+L8^DH M]/V]"O1://%*@Y("G1JA<.?PFH!2VDA$@';7VTT\WN#K@($[;_#MHHN'<@-J M&YX>;_#M=(-O)Y@,<15J'QT_%/RBV>02L0%\TK%,'$*;4A%T%PD:F8FRJ*H/ MQWPXN-WI!M_1P787U0YV@X]H(9/(&@V9R$K_\@R.:0F9&V^59R1NUTWH\0;? M[CK>Z@;?+@K:6-E?Z[+6V_2IF2V*&?)N91S.WRW/SUT[@^?Y>.JF8>PF+Z:Y MF9VWTNQP8VO?5W6[ME6%P5IWMU84K$@:3S^\39_3=)E*?^EI&0,Y_5!:7 N)OS1:V\9TUK7/G-[9.>TH7LL..BCM=)Y$=__MER\SD@5&CYC//G* M*ER@U*1E:&%00/&5R39H.CN#4DN9R*2%=JZZ)W(W1:<-M(K:Z*,8X#)\]0Q7 MP.+K?XYCNI#&KU__ZO[>S-:;.5K-E_):VU"KP)5(B?+$:+E-%XMT%. >G\$[ M$U7*E(H>(]5[DSU8C'I K VMS4.'HDM7.]RZY\UD'-L%UHJPC1($Y910PH+@ M%K]$%*CSBH/BTELN7?#;Y:_N:0EX^]L/'XP>2/]-53U4;O!YDZ(+9WX;FBJV MV]U$Q_"]=VOHZ$Z5=Q#P8,K7-$=' P1AD#;:XELG4,GS&+,ARM7H%3JLTN_H MUSN8SG>0:P]&[X7=_FTW6_>H=9S(EAAKRX0A4_*[G@#U(J:DI?35:PPWD#)L MP]@Z>FKJ"[D'G_Y),\.CS"T2^F,7E%T0YB135D8&7+ 0CB#UK5AX+1PF@JT MIJKW.-I(S GHOXZ@^TC9+9"HMN!C.4=+>CY? [3=ZW!SL[3T6E,F('$A4/", MEL:/0@0F3&2N=ESF3H)^-/.POI;Z\(17M%RLDFV(Z:OKYNH,^OBHZ@JQ0SDNI53%^)0/&I,V>>IW(M># AHO8EX\\6 QS'[DV MG852NZ7LK^_?75"1!&$:;4:P)+O2%]6""WC()*F$IXDQ&]56JKE\Y(-5S7Y" MJ;UJ?GOV>EVQ(%5@))9IFQF/?ENZU5@B(3F:):?4:LVV4LWE(Q^L:O83RD:K MI;\RCELRM/.K*=JY__I;:C[,W*>/X_"R(*%V=4/+9OKAY?ASBJMTT;%Z]WGI?6@]1'1*UML(J"9*4?D7<.# Z!W1/LY(.75_G:N>D'D1UR"!XJU$F MLHL"^VA\>^DJ[RBQE9>,)[17R4>0IG1(].B?>V<#Y&Q\R%0)R75O*=%]*!XJ M&WH0_ VHS&/(B%[Z,J*0J,!@*"60V&<@HT4AFLE8D$<8=ZYRG\Z4/S^9>+)ZXT?/'#-P5_>]^P M&:]*@F\Z2:T'4_15,_U]G6BUFC'B4@;"J2_S/_$D2G@F::>(EHDKX[::+[R# M77GE]0]9GUVE.7C2TB?)7(BT3(0JU]Q\6S_,(%@3M$O(9'T7XKB3EH/9;O45 MU'N^\]7&BU4E 3]8?POX-ZGP3,I02'BC9=2\51] MHSCR?&4]C>\BW/[RE2G[E$GV^%HB0"A*P>G@P#$35%1)"'/MKMNQYRMWDNOM M^UA-0\B>]@GNFHD#7?16Z])P_WK:[6-UBK* M462!@3 <#1J+EJS/*I4Z$TW)72&ZQ\N4U0 XM#:/(77X/5NK=DM*9EQ2#(P. MJ@P5YV =VAS&6^>CYHQ7N2]U\\V'#S@-I/>FFOPKYXE*_Z/7^3N:UIW:MB"J M8JIP(R'#IPJ[:JCI2[R#Z9Y&'JDNW2F]PIU490=6:0DL>Q5Y5HS+K>KCCTOG M=^0(!U'Y+E*M[3*_6?K).)Q-XW\LW7R\^NE="O@O+IQ&SEA"\CPP[U(IQA)@ M;2BI4>\%XY83(^_SQ+9ZT[ 9IDK::/H29>VHU9O9^+-;I._HH5PJ'Q(!;DJH MQNM4!B92"%P013P1D<;M5'OSX0]?FQT%-GC2D 2:K./-(^4NX] : M]S-!E0!?1CZP%*.6(J<0?K2;CO4TOHMP^\L<*J$U36AD,&$=4A$B.%5N^Y.D M@R>&$*JW.MZ/)G.XDUQOSQSN(I3^,H?.6!](*(-R?!GP:-&'R*Y4'VFMVN; MAFREFJ/)'.ZMFOV$TE_F4'JM4X@\H;_,X7WL'"IS2)C6UF7(6:-39;T$RR0#E5EV3D=O M1?6F*L>?.33:"\V,A>Q+'YQ4,E!4.% ^ZTBS"\[6-JE.,W.X [IJ9 YWT5L/ MF<.GX[G[\&&6/ERTB;U@8>6(JAB2(BI"I*R,J+($C,(?9W MT7.TN;X.D*DF_T,G\;YUZKH)_%_=?#Q_G=_,QJ&@O[@[6A)B,N/ 63M?G!5S MRU*PG&D6HN2>U-ZNMJ/L4(&C>D"XT3JMND)ZB _<3^6%/;D-G3U%C;:E\3 ! MI3[TO#.4.BCID* 2GN,AS U(66HT<%&AAZ$2<"45]9'ED&L7HQT63/>$JHX) M2[OHIK9C_J29HQDP/O?+V;QLQ)>M6RX\TU((*SBSP+E"YS;'");B=^C*$>UB M\$)MEYZ\YT7#F\W]J*?I2;8]&,;/QU]2+*Q>$K;.HUK/@^4FHK MX^(H,Z"]&;+UQ-][:G,;8G[4U.9.BKHST;6/E'M/;4:?94*["*B+>&Q9ZL$Y M'B$X4X:/^<1)[<;?QY[:K*?Q783;7VK3!1*C(!Y\)@S/-F[!.TJ Z*0$U4QS MOUT[RJ-);>XDU]M3F[L(I;_49J"*\5R$;7@IG=$6SQ<;P;.,M@'GZ<:PXV-/ M;>ZMFOV$TE]J4VDMHI,<="CUAVC"@36$@O)6L4"E($)LI9JC26WNK9K]A-)[ M:K,=$ORQF>"SY\_^9SE>?%U7LS7Y+(3E^7*"VWQ\O?B89F7"\2Q]+.?#Y_1M MI&&'M&?%MW=+B?8EADKITBU)^):>\ 3=(TXRL&PX8HP(<+ST),AOR#U.A7#[U"]HN.F M1]9)[#U$;>[B^55:O,[OW9<0VL&B)BAP%-G6E(NRM!!P[6=E=_+^:)(81W75$)3:SPP%34(:0-8QC4XG6P.03&3:S>^W8ZRX0W_ M"FK<;*74TL%&IW)#E.SBU^6+=_/TK__T_P%02P,$% @ BW0*5^;:3@GR MP@ $PL( !4 !N=F5E+3(P,C,P-S Q7VQA8BYX;6SLOJ25"D1%2 MD I**3=0Y=PD\IR'P8>'Y%G^XW]]OUU[#R(OLNWF/W\*_NS_Y(D-V_)L<_.? M/_WVY0U /_VO__J7?_F/_PN __WBTSOOU9;=WXI-Z;W,!2D%][YEY5>O_"J\ MW[?YW[,'XGU7V[C'/;KZ67NB'4?M8^]?\+]Q/:(!3!C"B M$$#.)$"$(I"(@"9^[,=$^E20GA*O4U1_?B?/WTMR[N__/++MV_?_OR=YNL_;_.;7T+?CWYI MG_ZI>?S[T?/?HNKI &/\2_77W:-%=NI!U6SPR__^Z[O/[*NX)2#;%"79,-U! MD?VEJ'[Y;LM(6:%^5BZO]PG]$V@? _I7( A!%/SY>\%_^J]_\;P:CGR[%I^$ M]/37WSZ][>T2_Z*?^&4C;O38?A1YMN6?2Y*7[P@5:R5]U5KY>"?^\Z[SO.#5K646$L9)%K*?^WK[)<+Q'Z.J.)[*39L7;=#](M9ET?X&Z-]4 M,]>XNU^./A/7>:L3R=F9 6J>^(5ME75U5X*#L9+Y]G:<\N5VW,>I'@0EU$_> M-N(+H6OQ1;'4"Z7(WU=* M:Q+"D(,X@1A %@A *1<@XBQ.I,0QCP,;BC'O>FEDTTKN?9!>([O7$=Z.=BQ& MP(R IL%U8BK:0;H]":GW1R6YIT7W*MG_CSM>L@?,$4-9=#PK5]D#\I2U1K0P MCK^.FW]YK^AR4ZYD)!,180F2@"$ *0X X5* -.4\2 0*PD3:T%5O3TMCIW;Z MK,M15ZN/JEA M%G\5MU3DJT"D84BI#SC7>TO!0H!A& (><^XS*K$,N F3/FEW:;SYN21E5I09 M(VOOKX(4][FHCIO_>+6])=FFW^ 8!&]XLE\ R=0&V5@TC*=WC^Y#DUF]TIG( MZJ?])'[:VBQ3MD>%=H+V_7FW][8MMGF^_ M99N;ET0-I_K]"JO)*4(6 )QR"F D(2"!3 $BJ8@D1E(F5N=!-ITO;6(WR_/06UM#HS!S)&% M8-7UK$;#&%">VA&CVAC'96\W+%>+BG@EZJ]O-Q_N1*Y6G*J'3!G;U[0H<\+* M52CBF'$9 A]&L=K'Q1A01-6>P\=!FA!.,<,V3&;>]=)X[.57O9847K;QMJW( M'BD*4=:'MNNN%;X1I9ZAV:UJK/J.L/^YSXI,W_L6?[$C/HO1,J.]:<9@8M)K MA?9^;L7^DQZ*G>1>([KW1RN\PS,J>\0<49Y%Q[,2GCT@3^EN1 OCR.[%?:&8 MM2A>;F]IMJD\+SX)MKW99/\0_"U75G4F,WTH=EW-Y6L]414)7V^Z6SKUM_M; MP5^2XJOZPVOUR -9JU>+5Q#4%. M*^[B2%5):,>&$P^G&8,N9Y F9MU64:^CZ96WU]7K*NO5VGJMNM6RV+U&:#2^ M\K3.U5\[6KMCZWE&QQ'#3RSLK*O"/, _74EFZM5N]=D\"+'Z4'X5^2O5&2M? M;@O%+I&$0G"2@C"BVIKP3TF);0 MC.E/0S=,S!<#,C&/UEC4LGDO+\6"-[ZXU6=].DP.NID:&_T!T1LE)?FV_=2L M'[U-6M+(?*'C GUT$;-2,'_?/D:,@A:3?GZD8K' M_=0/:F^UDR_-0KV#\K9,.?S0R//0K6;969P;]72V-\G92ZDF^*3)>[6BV&\N3SGYH#<\U MG0 V,27N!=2FX5Y&[X])W$S.8^+JE+*_HWG/),\J?'0">?Z-2]W<7JO6R\?? MU<1XN]&Q(HVU]B V]^*-4N'U=S5--V3]\KXHM[=JQKYX_%@Q?JG][C[7?%_L M?;+4ITR@2!"@J$513:AL*8P) 0%! 1()3#BVVGU/)NG2F*KK1-=HY6FUO%8O M;Z>8]^+1:U7SE&Y>J]Q83SO7'P(S4ES$T$[,J>U(RIZ1I)V1))V1G,G!;R+@ MG?L#NI;SF=P')X*[W]MPJ@Y'KCI?22Y>D$+MZK>W=V)35.)-9QZ?B1<,FZ&Q)_X)L7/% M^5.(."_=3PCR$=-/V=7=[C;SM3B5/-#IY9:64/M,K.FK9,;^SX35C^^<8M'FV!/K2KAVX MCE;>7JTKKU7,^[(;N:YN5UZMG;L%PC7/;35'FU:U&41V(?_E*-A_N*K>L]]O-@RAT]H3[RG>R'S2>@S0'Q(X__Z909 M+D=?]?"##+VCW>%S#.;$!D6E$*@T\KI:>QVU]4%C][E&=:_2_FK@=NKOVJ,[F7M8EU/1S6.UOG HRS?EX)6N[O MY?97(#A$.%0[54"@'ZO=*\& $AF B$0!"5",4P'M$M"<[&=IF]'WVU(4FEVJ MVPM]HU'SR-X@M6Z*2E!5+J0U7J9K[NEVKEXN:FW;!(4F8PE"GC EC)@ ,4@P0D@1$2\QI,-#$>&C]7+X^BIL9>*+]O&][KUV!;%K_FV*%88(LEBF((D$!) MSK5;M-IL1S"0# 91DD"KL_=S'2Z-E%IYM9R MOE>;L^97AZ%AM1_AB="PL2Z%;H;=T#A[OL&.GOC6,\)O)G] I M_LZ]"-U(]TR^@TZA[?<8=-O-:!>2[?I!QYT?YMZH,TCY 4EQXD/ <:)3.R,( M,&<<))(C+F@0D<2W] OI[VUIQ+X3]FFN&6LOC@&$C5TSW. VO;_%:&L<@KZ443.V@7W]G59*83VI/_6&C8XGU M_YU@XD]";:@S[2#1!!H?_N(PKP0*XI@F I?\0Z-(D X\D&*PU2F:4JD;[4G MGD#&I;%5K:(V7D2CI)&L"\"$$#]=-J;L:NP5\).2!!WS^+TH5S2(A:0B ##69;62E )"$@I8 MG%(1)1T.[H:R6&/-OS1[7?*6\ZCJ_S(QX*87\LY@G/QB_J@8S&%>[_<# M"%Y>"^8T+E.5@GG2V_-6@CFM^ME",#VOC3R_%C?Z>/R3N-OF.OQ^=UV,,*>8 MP 3X& L "2> :E[!F C)&8H83JT.HGLZ6AJA-')Z.T''7\OW06MXV.L L*E/ M;<=@97_J>@8(5\>G?=W,>PYZ1MFC \USSX\NK[*]5Q9CX^#65K ($S_&(:<@ M3:4B!1A$ %%" <(X$0(CW_>M2D&=[F9IE-!*Z=W58EK7 SD%I1D)7 [0Q!2P MPZ:1<)HR( ,8N*L!/;O\-F).,%=PQD8'!% 7R^S,L 959]2P+G'1R0.K4,EOWS;-I_4,)0B M%"A5VX T ) *!C )]+6 #E0/(*&AT27DJ<:7-MMK\3PEGT6*S*> #4_M2V&8 M>#[O$3@_C\]#89$L] )(9LH5:@.-7<[/'MT'4WX^?6>^C)\]TAXD_.Q[9K1- M7#F [*419&,,EG-@N#-:>GN:VW YI_()X^7L M*R,,F"I8D@[$4]+'_2/GXRG+$_&4OXOLYJOZ>OT@5[ M^FF[7K_9YKK5SKI8JG=>GX#%O8.LL%W\0"7:[T"UHMZC0"U##= '63;L#L@^K]H2'S M&LS^SY,?_SD^QA:[A^5JL<"-S#_?Q]INN[7\#\O@SF_!XL^W"5TP"*?VPS^ MN&,L[7NJ2TW05C)C!-*:"A( "F(@%4"*Y^#(1(4"R#U"@?2'\7 M2]N(*R$!VTG9EH:Q*;-S&DD3.^Y2?*8VH0ZAL4O?/P"-C6UP*40S+7'<>"(CAVUR$U/0S4XJ)X%R8AIM,YE, M$]1J"XBS?":F_;E/I?2KV-[DY.YKQLCZ^GNF MR[[ZDA,6 Y^'(8"XRKS&,5 L@--(QE1R([^MP5Z61@5=^;P_M(2&##",Y?#\ M=X;0Q+/?!ASC26^D_-"45PUTIKOZ:3_5A]N>9:(;J==.<[.'QZWYNQB04_:O MA"F1(DH )A#I38?:;S"$@(QX&,"0R#"Q*GXZU-G2IOP^=LG6]V$04K,EWQ50 M$\_\3GS7Y'E832!Q9 (,=C6K'6"B]%-CP.B=T621"U*(5Z+^^G:CG2QT<,CO M6?FUK8371I,]KA(>BBBE$L@$ZCI$,08T)!0$:N, J>"1")A=^*ZE!,MS&WBA MC+-L/?R7_OAR(-/2#+/#Q'YUC6#ZZ%7*[,L#7^G?[:-( M6XTN/;\9/[*V9SVSC->,YT+NA\I)\>:1X$Y8IME6HF2 4D1!$BL#.$ ,D]!JPWRQ1$LC[TXRJT(+[65*.5UVKTJKUJ]YA1K+Z\<9?3ZFE2;VCF./K0Q<8N[Q6 MO$B>^:\;7&[&%7U_9MLHUGDG;;R/VF_ MM0_RMT)4V7=?"+G-Q35C][?W:[VS?B7NI#;82*,7K_.G*>*]T]SK*>UWMJU:Z^CNL M7C'?8+DJ@#&#Q//6T)AO"([*<,S8];@%JZT+\G)[2Y5 NL7C'/%ZWV*0);Y7 MVU4L<1 ')% [#3\$$*42(+7= Q'J>"1)():>>?,(O72%JU6T/H,?EQJEGF& MVVP=6]P@3KR2M?IZ'86O3M7]J$IY&%;^4,OBX +I;B6;=;@70-/C3,[ M.W30I/#;Y8DE(<:^SU/@^T*7S<41H"R"(.7*3$P@3A,2V]B*_5TM;_)6XG4S M>?_%SKP;@-7,)G,#UL0S^R!/=PO:%#EXSZ/AR$X9Z&A6X^*\PD\M H,WQIZD M-AG J[/:CR3_D%?^I;R*Z_TH\NI,=T4IPU0&!##")8 AEH 0J<@CE4)112*D M;Y6BTZS;I3''3NKZQNK*NR.Y]U E%]#757R[7I.\\)2]55]=6=Y<&8Z%Z?&E M:X0G/X%LP?U<@ZMD5A]EKY:ZR>&@Y*XOI%P>'=H Y>STSZC3F0_P;( X/H.S M>ML%6U4MKWC"A4]3J B)$0!E %%2 *?!"A,DYA',1M/354?B^>A_]O_LQ_L MV>C?O?C*]WW]?W.'[I'[\NLVU_O'*V^S;7^;U3>^^BAC>U\6I?HFV]Q$9F.5!QF$8.'[WLZ+TZ)2DR?9CR M3OWB;2ENBU402)X0M>V)0H8T>0A (%9<$H0)1XQ@@JQJ#@QUMC06V1V4=H3U M_M#B>I6\EIZ1@SC;'55?BMY<)\S6P(T^#1Y"Q/$A[LFNGN7L=4CIOB/3P7=& MY"%JW X_B5N2;6I'%[G-;_65X@>ZSFZJP]G/ZM]"JLV8^K[VA'FUU<^O DY# M+C "J8@B7?(T B1.!(B"B),@C2$41H";;;Y+I%WJ_%<9;\H,[\*F:F<;72E,R?!0 M'5>N8!QR%N(0\)2H-5 O?SA(,8A\*2#Q<83#:+41-_JLP'"'?HD\1K,8U[.X M*]6$&\U:G2;ZLU5(?[O7R')+?M& &6[>)Q^$F;;Y3?99J>.0]N@?J+(/^;SR M=MIX>W4<'@:X0-75L<%%LLQ[P. "MJ.C"">-CJ/IJ>?I>T6&K&PX FYC0 M6@GW=R577B.E.YXZ X,C!NKK959N.:/J4]8X]_BE >6]_EQU;#'Q$4D1CD$4 M,65M$0P!]AD# 6)2Q#R ++6*6C'M>&F,\<1=\TDXPX6AWV?&P(Q)ID!V\BN1 M2T"]($C;#"'GD=AGNGVF<&LS,/ICJ@W?OZRV\R?!1/:@&WPORK8L,4Q)(-. M*)LE% !&& $,D00ICB-(:.IS:I6Y>*BSI1&2SO:C+)A\)VI1Q3F/*_=\$EV" M$PJ3$(($Q@A Z"N!#(@F"K;4(?DS8SNKLL?&5TS4G>%V<1$OBNL MO9?SRB-2%]N]7J^WWZK3PVI'G N>E=Z[;5%,6'Q[""W');A/=O4LA;B'E.XK MQSWXSCC";M/$=NIVK"B),$]X"#A7= (9A7J7F0(8!WXB:8IH:%7X\D0?2Z/G M?:[B3_;5KH:P-..-"Q&:F"YLP;$F@@'U''7&%_>++ MYZ9F<@)1$')(0!AA[<4;,D"4Y06PD"0,*,-<&LWKPV:7-I658!9WCWMT#*YX M1^D\\>14,HVII[W7V^+^=)3^L]V%WJGFJHN4\JOP]!Z'5%G$]"XUKY)$51&? M19TFRGMQGZVUMZ,R;%YO1'[SZ/T;N;W[=^\SRX0V?WY^\?KSGZZ\;U\S]M7+ M-FQ]ST7AB?K1*C9X\Y#EVTVEVMJ[T\[XN@Z,1PKOFU TJ;[2M@_U9YVK^=:[ M)1M2E^5R57#G:$P&;U#W3\]W&WHDX<'-YO%?Q\8Z;=3FMC986[Y+HP3*D !) M]6%82GV@C!<& APG1 9IXC.K'%S'72R-^[2$^AZQEM$VJND(0#/CY3)8)J;' M0T3.,^6(Z*4^[9U%+1UU,'.T4I^"QU%*O4^./DW*[P5_?7NWWCX*\4*QK\S* M-@1J%2=1P"(> XI1H%.DQ@"E*0)I AFB,HYB8E0.T*R[I<909W.?:!@H?N),P^2M$1N>CWGV0$KQ M63 U8,U*%D:"QR&*0!20&$ D$, X\($4P@^88)BF1E%"?1TLC1P:$96UJV6T MV!>< L]@9W0A))-?7-5HU.*-V2Z=@L5BXW0A/#-MH=YN*I_"RN4I%W4"MW); M;:?N#CY/KO8N [ ,[F).O3???F9 ZH.=S=!S=K3&1;;ZDA.]E?S\>$NWZY44 M42I2!H$OIPPU&$\_:O9#>7LH)#A_.@^%HOS'0T:Q[C?,*/]UG M&+PQDA=$61?8TK?C*X893A%-@$ Q4U0@$:!(ID"F7"**:2(AMO&^.&C=:O;/ MX&ZA<[YGE726D_\0,F6L4"YCP!C1P=>*.#&*(P#5CYP(JD@TM*L)-AJT>2I^ MN8'-D";'0C$U,RH,FF*!/VO1^KVW[-6 M"4M00C$'$>**W8(T!EC&*8A1%',B8Q&+P(;=CKM8&L55N>L]=IPK[M)4<:-3 MQ"UH$I]*#3=E/CCG-RI''3QS_K?^&Y7>)T<Q]O@9-4IBA/S0@7@RQV .W&]ZZD M#B#=0KD3">R MEP%J=QAKC,_@T>SY5N8[J#76Z.#8UORM$13\^3Y_$(]570JQWH=>-"<@D,9) MX,!: M9Y!-S+,=M"I)NU%8]G=;P[!9,*PS^)['9?#N9.4/]2=2>B07'EN3HLC4QY-K MW[ZB]Q/KZG;,",Y!,AYN83XB-M+D@(3-WIBU>MRUCH\Q+#$6DX0&0:*K-5,. M( L30 F-@91AXLL440JMLJM/+_+2%H3397A&1'7-,-I^X*<4!CY(4!BH75,8 M B0)4PLXE(A@#D,9VYR.+&RT9SAM^9%&V^S\9EEC.+$]XJ1Z8!-_^,,4#QPQ M5,];.]!&X!^A=."( 7!4.7!,SV,]H.O:3DJ8K!3OL@?!WRJ[>'.3[5-)[>_'; MRF_C$QY;#8W9HC$5X!/3OU.L1_A=VX/FS O;HNN9?;+M03GVT![1QL57CHH_ MJ]SO7[=K]7ZA&;E\W-570BD/XQ0AD&(H >2!!(2J?Z2$ODQ8E/HL&5FV:K#C MI=%;MT:EMHRZDO_;OZIM2/KO7JW!Z/O*X8&POL5T!N]\=YL[,U9M3"8N?&6$ MCOOKS^%NG^M2U B,@:M2L_?',971:D^)C$.4<" A3 !,0P%H0@B(TY#$D@@6 MF>5]M^ET:0PUF=WET-[ZP>RL9S&OGL&L6IXY=8D9-8/Y])+<9?J03F]5]^G MB[>;RG^)KR*6U M=. Z!ZT9T3@$;&KSISJ?V\OHM3*Z8Q1#,!R1R;G>9N410]6?4HCI:R.3R_9; M^10BC@3U <91%6:&E"$#&1 )1U&0Q$&,4JMTLC_,!NO4ADI4$EL6"[YX#_5# M[)IJP:Z\Z[+,,WI?I]HIM[J(YU1E@V?;+RUEAV2_)YIL%Z0SXNMF?L_*KVW! M\ETZ_)7T&<0PT([BRLB '"% ?(X 2X1( DI"&5$K M^,YTG;BJL$=1UN<)HBBSV^IZ2[29VM4J>U\%*:V%_CUKU+6U5 ;'Q-!.<87T MQ'33RNE]4X)ZK:17^T(=#JT5$TA]WH>] %3U=/XBC36L5,%4C;2&/XR(58W/QVWT8#"VNZ8=X8G[DX5!*E'A'1&I,[>[VEEO$J;21+YC\+3>5Y_.RF>*7QYXWWJ$S- M@4C;Z0?1D'>?:6BF)F,M,ZB$]KJ*>1W-//KH=9]KR])5FEW57[Q&PZ9\IT-^ MG@!W5Z3M4K1YF7P"4(_H?8H^1CO5,R%X\48!\9DT=6;XO2Z(UUQVK((H1BD* M). ^4DR.? PP37T0"-]/9"!I(*RRY9SOG*NZ^$]=9*VJH(YQB#\J+Q,B.SN49A8IHS]*>].CZ3J=7QM#ZS.MB> M174^A]M^49;F@'L6M!$.N>?;G'E+7U\[O=T495Z%]!8?RJ\B__*5;#[<59?8 M[[<;O6$5_%.G:E(L0T%2"4&8!!Q 'Z5 F8XAH&&2H@0ED%&C/"3/(_[2"/W] MO8Z:U:;2;XVPWB?U)<^8_K8YQ]4U$K:WMVI;6MT:5H>#W:>J7_ZVL4XX/_,G M9^*3ALD_#\L_BV@!4(.E!^XS4P7'D[(-2WN\]?\UF;JH[8\PSK3D=6$\[F= A3MQD&WWW[%&RUG[X([%+!808 MI01$,H)J3R@@0%& $^@CT/,("*PP>[UAD^-7-O%A"ZUM4_-9:"9K4QC8)AX M[3D[T487&7:\FRZ6M"5U7NETBH^MN!AQ'.8QL#4ZW4$Y_M]?-(?0DA="4[FGF M,$V=O^>9#$US (SSYUQJ8%9) -]N6*Y#GEZ)^NO;S2D'8WW!^-N&*K)3VV_! M1/:@/RK%2@8\#B-,='D)99)"034Q(8 891Q'08A0LMJ(&^V+/TQ-EPMC-,]P M/<^Z(DTWW5HAO7POI47.T,N&9IB^9H)['EIK]?!:171>M8/U,V^T^I/'[W-MANL$L745^8YKY596OR>W M>GNM?[H_,:MJ9Y5=4$\=LL(:?-1?M[GW;9O_7;>IRR^JEZM?577G:1U,Y'TE MA;?9JBY8'?%994:L.V1;U2$KZ^OZ>J-?N,I ZV2,!S/47M;#?!ELG2!QD.'6 M38MC(W[5"J/G5'VPK4_#MQM]KGW]/2M6D8RQ6B()0-CWE44O!2 (AB#2);5) MY,AM:<9\<[NU%]+[0XMIF:-D&&##XV)7L$V\PEDC-B+2UP )9\&^ M0WW-'.]KH/9QR*_)2R.,\2>>);6O0'V?VPD!V\6VIR@BB4 IX)4'ATQ2@/Q0 M DIAE#"$:8S-"V[;];TT2MEY:9'&2XO5?A9%XWBQU\ PM<"8\3 PN:=#>6(& M.G*#:QU9CB,4#1(17 RUA1$]'>0S6S3L>!-VB.6C8YG_TY3M<#@W-D M$R.6BFO&\GO!/Z@=#=';I=??M;.%VEZB$-*(X10(PC" "2. A"P :2I)@K@D MV"Q[YV O2Z/_1DYOVPKJB492"PKJA=2 UUT -3&#MQCM9/1>.\3(@I!=8#43 M]8[ S(Y?SV$QR*2]+\_'F>?D/V#'LP^/X,'*2ZQRVBXR_5EH*BJ%*8M2+B00 MJ:X:'XH0$.XKTUAPE)(X"7EDSH*G^U@:!U926DSE'N0,R.YR/":FNMI7MB/A MF))=/?A8$-WE.,U$#,0G%=7$9SW#% MAQW$5"S*\VQW_.K,;-_6[%V(C9%86*QES+N)(9Y;2.0#"% 'DZX(R 4.)D#(@TBBSE$VG2YO+[I5:]KJ6'VW$MZDJ;#@*!@;/!-A.3! 'L/Y>P]I([55B5W]X M,1VJ-E6;W:,[D]FDYL8V;P*5ZXJ1S:F-^LK6]]6M0QVW?!SPZJI&LQUXP]6: M#=N:L6ZSG7:'%9PMW[6WS=ZIH5E__+K=B#K >)4@% CB1T!(S #D(0%$1#[ M$:(^AC@-8&!JF#UM?&G$7]FQ:UL3@5CL7=A6D1\+*@(!.$E] %F, )9JQ@HI M%#$&?AB&U,P]VZ9;H\_MK([8+T:Z85N!/3S!G0,XLVOUSZ]VWKK9IHU4+CH. MU.YG<<_72K,:]DA! A801\)F, (8. T(2 M"#$8IS"2RBBP<6;M-KXTF^"@7GKC9&!')@?0F9'&6$ F)H>N6.ZF_REE'4WS M@Z9GG^;Q=WU?9E9J;/\@B M'H4\!2R*U5). A_0@"* ("$HCE/.L+G?S+G>ED82?WO[V>*8\"R6!J>N+A&: MF!-J4;V.K-Y.V#%7SV?ALSA>=0GC3.>J0W Z.C[DY7>GN8^4#FG M\HESE+.O7%IH[]#*Z^0[Y '$(HD@P'&JRP+K"&%)?$#B)! H06&K5+4Z,0_M3]7IU+SV.IVO2-@1BUN<9V88;HUZ]YM-S?@ MB\AOO2?;O6*F0G7G\')>DZZWPVR7QE4=DJ2/&UNOM-YTYMTJG]3(7/-.;UD(!W6@T;8WX'O@FK!3_ MM,=GKQ?? X%)U?B^5\VF*95[K:O29:7V M5FRM'3^0 4<( ^[+$,"(4X!(2$ :A2)B*$T$L2H09R_"TI8(+;XGU:1J,MIE MK>@>V>(">4N %+8TLGJDKU'Q1[U8'U3SV><2#"$0H0@ &5)ED,H0@ MA22% @8!CJWVSP>M+XW'ZEK:6KI1!_Z'R)G1T6@\)F8:4ME5%Q<.>82?>7TFGB&4TW<\VXH:7OPL< MQZFOD&>K;EM#H,.-:A!^A!JVIX=M\=5KGXC]3U*W]O1@S%>QMJ?_D7?S:A9V M8@U@&$G!, 6()FI%(NH[+'P$8A(%E$(I.>)6U_$'S2]MW=#271*R\00\PVOV MT9!,?;-NCH;]7?I)I5U=GQ\V/N^-^4G%CB[)3S]EGSCA5>-&_O_>DUS-D/7C MIZJPS2H4J4PDEL / UUA$^D[#^B#A(JQ0+9P 8E6FAK\W9$BZ<4:J;=^'7&MR=V%XE]S17 MF+9HN;JY-.YWW@M+6SB.[BFM&Q@;NJ1FO>JBR>>U@CJS$X8ZX#/5'GJ4J+V% MX"#DD, 8HCCUK9/%'/1@-%MFS0O3"C@ND<-3 ,W(90PH<9WX M&-O%:"W_O'H_UDW)K;VB"SB3/C<&SWWXW"O?CW'*? Y>9\?)9SL:MU;\NMWR M;]EZ_2[;B,I\7$4HH"FC'*1)0 ",T@B@2.U(PPB)&)/4#Q.C*A*]/2R-JUL! MO3^TB/56R/( ^1A%,V:]")N)F=$.%FM"ZU7=$2$=MS\KH?2J]Y00^A\<6RKA M3;9NL\I"/T@C'R<@P3#4=1(X0$$:@@#)B/@2AZEO= UTJO&E3>.F(H 6T#H= M[Q%PYT^.+X%CXIEK@<2(P@C'*E]0%:'3V,PE$8[5.*Z'<.*92Q,Z7.@7547> MKX(PB3F/.. T9 "&VI>4P00(+%DX9AO2"=A4OTG:>^<"+<,Z7)< EL?TH-I[V,6T1VA5'? MZ:S-[S)"L[5:I-HPXR3%,$%! 'P!*8 B00 )M7E+2,2(U$'T JX>1$ZWILO" M<(>3M9 M)PC7-D/%$<^=Z6Q6WC)3_"D/&;YUJ7%Z^G#JDRC*/&.EX%4EG]\V65E41U)- M2.1C16[[Q%@4$>&G- )^JE.3)2(!""KK-$)I1"3U0XY'IB9S(M_BS-/J9)D> MGBSOSP.OO+U^32DEK>%5&WILR6FN!]O6")U]"&>\/Q@S>C,E4W,*NW/STXUT MSV1_.H6VWP!UV\V8FHZZ@R9+5).#F0@JN<[+X6,9Z*Q-$&CGTOC:GK*)2M;4[)/O2&J=,!)E-37T5G;=+-$3F^3V!B4S3Q(FQFRN/] M21?M**H8)O7A\8H*LKM:Z#^[*H#8"\1PK&VEMQ>USH/F(%._'2:N8MF'.YLW2-U( M\:/H<[.W1A>C_RK6:VV&DHV,UI7HN_"9WK2.!66>NU8S/,:4H3^A]B55Z+O-S5V$_H0J M)VK0GWIJW&+?5K*_9O]SGQ59Y6BEO\U%&^F94$(E% P(PJJLU41M8$(.) M% M3%/$X]0J<T"8_6?F@;F+XXCG3?9)BO%N^Q!9P\\M#O>BW*%.2(H)FI#EK)0,PX' M.AP?Q"E* @%3*GQJDWIYN#LKNIDAZ[+.JWDF&]084,WHQ!U4$W-)+2BH)#W> M5%QY[P>R5%OSB!DJCDCD3&>S,HB9XD_IP_"MD4D\\NV=R,M'G6:@O-Y4*43N MJMI">^]L' ZS_W5\ 2Q8P3D@(0AIP )&^[6*>#=ZB$;7IVR^$PHZ@I09Z8L)3H_> J%JL$]_YH MODYRK3X6/6&KTH**:5]N;V^WF^I":H48CV@H=*H6J3@O$AQ@BGT@6$(%88B3Q"@<>DSG M2^.[ _&].Y)Q[V>=28#!/?U$A/3'I+ =GB>GY" ML&>ZN__R-2L\M=F[]?+]+7Z514<;R:R2O;G1+_?Z>7?K^_JRO_4ZUH$(I"B4 MR-Q3;U1^ $1MYSDIG?D C$1[T$' MLWYO =&:GO@6C"VC9$^MN)&?V+KY&)J M0?LD'L3F7BAC4:FK/B1U[I[]3C/%J: T)("&NC@X3F* PAB!**%) -6VGX>! MG3._I00V\W$>[_Y& 6^G@?:MK'3P.DI4F]4+3@%L!\K,WIX0_(E7'N>HVSNQ MCL/.E9.J9>_S.J&.@^;(R71D,R/+@2J"U?_KHXL'M0ZJ577OQ:K_H(CW\!>= M)U>(4@D9YB#"VD.+RP#0)"8 BX0$29 0[@>KNRJC\N>2Y*49.5XDD\UL?2K9 MA";CSE#1WXB]N-Z__2L*@^#?/2INLHV.4M.^2W?#.=0G&$D"PY!@&($XP2F M@:0 I1 "$J8A3OP8A]1O1O+UQC"EW,SCV,KUG*,HU!^?9?S,5K[91F3J'5BU MVZJ&HR/@07A'_8@>K">_[+[AL.*I"V1=U4*]2)9YJZ2Z@.VH?JJ31IT['%PS MM5&^7^M4F5V/R!5!C L41B 4,@(P\1G B*E%-$HX93B$DEKF\K07PFANSYKN MLR.HUY74F:M"WW!<[+YP"<3+<&FPQMZEG\,9^*;W?>@38"G^$&< LO"1.-?2 MR*B.^J*@^+2KY?YKOBV*%1=^(@B.@0@BJ38+:0HP#R7@3#+?9X&OM@M6X1RG M^UG:D?R+H\KVEE$%[3TLEW1.61&HXU[G]]QICCLSH_I9VGKTLG.1?M6F MR\\J4<>GRN_#V/#0\G+DICZ.K$'[7(-6"WGEU6(Z/&("PZK M>G3@=^;QI16L_ILH2KT;;\H78Y\3F! )9,*Y,GTC"A /E-G&D*]VR&F<8L$_98#8%@E" 90H##1 U! M*C! :<#5+@4)R$(&!9(VL@;@3(F^V=$^%Y\3+[RYU0D?N MJT-HO8[H[E,HV.#E.)N"4=?/DEC!!I2^' M6;8RL7Z4O"#[F6YF5JY@&!//( M!QCYON(G+ &%O@ ,IF&L=C6^2+$-/W7:7AK]5*(IPM>R69:JZ@!F1BLC89B8 M-6H$/@XC8%^5ZEA75_6H.BW/6XGJ6*6C&E0G'ADW'=]M-S=?1'[[2E =GOR2 MW&5Z,NBLY1_V>5/;#/I(R$A*& *J\QA J>8JA:'ZD6."*4D0CZS2+UGUOKAS MT./J!9LJN*M)%UIY%F['I: =-SQ^%#(1"0I$**4N^1P!$BB[6V 84AI(B%%H M9W)/-D#/5F#BF8?(C,$G@WUBCM=R RVXIR6OT*V$]O923U";8A1:CE8)N[YG M74=&P?)TI1G7B'V>SJ9$S^/K[VIKO+D1[]6G3&?[(T@D7.U?=37$%%% )),@ M(E$@$DDXQH%IILY3'2QM16EE]%HA/2VE>;;.DR .,XX+:"9W0K!"Q2IGYY#J MH[)VGFQPMKR=0^IT,W<./C?:I;-U%*W.(/5!9BZ^"K6+?!!O-VQ[*[17WGM1 M?I!?R/<5#=74IBP$3.CC0881H&$J0! D4< Y5;M!H[D]LO^E3?VN/W5MD+"N M EY6:>#]O%8Z6-Y7V8Z,F8DR(=X3\TD7ZOK.YT!V[VT#M1;_3U7R/FTW*AV< M>I2. <^=IZE5[W-[H(Z!YH1GZJAF+B:_ZJAL7=_?\/^^+TI]+=-XNE'&_#1$ M$' 1J^US+ 5 C!'@QQ$C/HH"E(SEO(%NETQU9^??:*H;&@=KAG.$[HS$]F:; MB^QFTVRVV*.WE]N[+LL\H_=EM0,NM]Y'4FV2SWIU7D)S!@BZ9[>A3I^+U R M&. RD[?'4=CKV[OU]E&(SR)_R)@X?2/]?KMYJ"Z4J\OGHKI3Z_[]Y;8HWV_+ M_T^4.A?!S2;[A^#US;/Z/#:_TL\%*^(S0GA, ,*IVMIA/P0HB'WU'0G#D,,D MI489N9Y'_*51JA9R7WFE/HO1GDZ/@N2V;#KS1\*,E9<[T%-O M@\\5+MPIW?HX59^*]\VGXE/G4U&K6@5,=91UQ_O/,T:.UH^9A9]U'7J>@7FZ MGCV3%';K8I&7J[^2[]GM_6UC->(X(7XL(Q E@=1+%@.$$@8@I E#:<)9;)0X M]ZCEI:TFC7!FB\4Q3L,\?I'V$U-L(Y=#2[A7VR&R4B]UB$K]M">IX_9FX8]> M-=JIW?_ Z)";I]OUW?D4X4($,8L $X0"&-(88$Q3!1()."58A"RU\1H9Z&MI M7B0O3YP)6L?9] )K9H Y@FOBJ6QXI'?5LQEV&I)S#BYW83F]/,3$5* H(BZP2Z4\FZ=+LB]]%=O-5 M[U/(@\C)C?"T1CJM79T3;7G[U>?>FBZ(5QWN0L_4E5K.KO-'V6#^D^PE9]\V M7N"V\JI))?!%O;JB"&$5\7U3)H>KOE0TIB@^R+1KY66V;1*>8Y"M2JA_+ M>[)>,89]$7(, JGO9X.0 ;6;)""*@\!/4RP1,4\P-+FX2Z.%9I/5Y.5J'%9* MK8U%GICI!WF8>98W=!/SV:E@+AVEX57J>AU]VUUTK7'[4Z6SWDWO2N=6:G?+ MZGI:<:_6?%$?!8O,0XOZ2,Q93T6LZW#Z_#";$:F,=SWN6>^TUW^MGFT_&47U MR=C]JOETZ+(J^KWU/:]#[?4#:MTIMNN,DSK\OFJT4 K7PNB;*_U4WF; ;[:. MKK(GS3;:@TF8II=BOEQ.LR%ZD!)JOEY'!D-NM_Q;MEXW'?%7][DNGE:G_XA" MF%#A0Q#X, !0"@E(I/Y)J=IF2,%$@F.;\Z6ASI9F2^C)T%U"+&-R!G$U.\QQ MA=;$RWRNSMA:X+BUIL MKXT0#VB<,,((8#Q2-FA,0X 1Q"#QB?I3)"4+4XO\T*XQGR>*_ CUNSWJFRE0 M-SBBE:78-!_+RHOECCPJFT9_ M./5/Q"N_9KGZW)*\?/2^9>57]2>/E"5A7X6NC-NJ[>K\Q ;*P2,0HX;F.\6P MT>O@(,+JQ1'+Y_6G>HF^OLF%Z$:<"8E2'G 0QMI'Q0\P(#", 28AAC ($]\W M.D,8ZF1IB^3UI]8(W0EJP2I]2!IPL@-\)J;A$]",8=X^C"S(U@%6<_'K&,SL MZ/(,&(,,V??N?*1X1OH#'CSW[&5Y23L'ANTQ[VN2ZXJIA=JA5 XCK[+U?2GX MRH]EC",> NEC#"!A7.TB @@"A!*10DXB&=H6)R4CQLCLO&1:Y.>Z?>U(?]6Y?FTUT "?Q'LZV:[WMZT-7=HRJ,XI11( MFJA]O2\X(#&% $J(F!^'',7(V"[L[69Q%-<*ZI4[22W,GGXX#8Q#)R!-S$9[ M?/9"CK$/^X&RL!"= #:3C3@..#LC\2P>@V9B_]OS&8IG-3@P%<\_;>^N^WI3 M9N7C->>YYN#ZBS[A#E8)HS*",0&*&'7J3%\18I BH(S!Q(^9I"DQ]MWM[65I M?%@+ZC4B7K7?>-5=SH>-A6]O/[##U.@,KHF9<3125H[ 9Y$8Y17OZ"Y]_V-W$#W5I= I"12YE!(&90L5?O#2R=^^$--_"_? MMI=/_/""B6\%UW-._"&DG$S\<)*)'S[_Q ]M)GXX_4%JT)=RO^2KA8)6$,4Q'%.L$V!Y!+"'""0Y#X M(N584"XX-"O(-J&41O-HUMIK.Z&UJ\BZ%;ORY[UK!/=NE>27N8F[&&"#+=TS M#MHS%WII=#RL^7+E[52Z\@X&^MW!0+?*>G]=Q$!?%@0P\X _3^GBO;-_;CA_ MKSPAI6"5:S[QFK3->]?^]O/##FH&[=MK'/3TTY,[]CL<05MO?A==/ZL+OT/L MSOGMN^QJ9))7)0#7A[+9@V@2:&>BT*FS7VUO2;99X13'$"-E$R#U#TPB"2@F M!' :XYBC)(H3HS,$TPZ7MJOHRNOM!;ZJ\K5[?]1"&YXC&H-N=DGD$LJI[^@O M0]$^2:LA-*[2LY[K;M[$K(;*'Z5D-7UO'-6\R@JVWA;WN?:][60O^"2J++ Z MB4%Q5!"T^"*^ER^4=G]?I;$?$>0'0$JU18$2)X!2/P&8RS0EW&<<6657O5"> MI1%550;\1/U@.VJZ=)#,F&M&Z");5#>G.$GR/VNU2:6R4^V+#V/^7,H_'Z>U:L*/2U'([V8>KF2WF *VY3FPM@'+A M+]B%83JGP*J7Y_;\ZZIJX-YW\/C(@Z?U>ON-*'G?;/-7VWM:ROOU-6/Z3+;X M))C('G3RVK;":,R3A$4I!+X(4P %3 "B- !'-U*C^EW?G]$X- MR%\\TBI1'5;S1@V/-'I8GDI9C8CA$95SE&>K.E3)Z.V%O/*N#]!NXB=T]N4) MRK^. L[5:995W_,>;8V!Y>B<:U0CXVCNLPY&O%^K7>&;;).5XEWV(/A;9>UN M;C+5R751"+4-U/WMSU!$C%))(@32"!, .='7\#("'$N<$%^F*+"JJ#9"AJ79 M2JT*W@?IU4J M=;"VZOAU7K8<=Z8X3%COHE!G_I8J\5[N\/[W6F\O3\J);Q) MSKDN -$1%XZ18%9&O "BI[QX25/CV+&JE-C>;&9B5U#>#RD+<,) $#-=E88K M!B22@\#G+.$1%%&2V#!@3S]+8[FZ<"2KA=MY#F2FN1C.H6I&7 ZPFIB<:I@Z M(DY@?YU!P1&[]/4R*X.<4?4I2YQ[?!P3U"D*/[?),'>GD%"&,(E"74T1*R8( M(@X(];55%/E04B$YL[*%>OI9&A,T>6AW, 5^4JK?\;956 M-]O<:(M$_<=UG:>8QX*F.M@]Y!Q /T& )DRH[R3G*2$T28@-48R086DD\FN^ M+0HOKQ6QM"'&#($9ITP,[,1\TTCOZ9GCM?+7V8=:#71VP$8'KU5"9Q1WQT<7 M0.B(J\9(,"N/70#14XZ[I*FQA0*/NWE!BJSX(#_F&=-]Z?L=$D?S8>Z-D^@-T\BE MF$Q,%K9P6,62]ND]*H3TJ+'9(D?[U.@&C/8^,RI7SF9[JV--.GY=C"%*,2-J M>T34%"4)!%1$ZA^B)J],))*)39:6F5^HG^6WZG[O,:; 3-;?W MM=Y?RH:(A\0/!1!8'_^D.%6LQBA Z@\I910*:N3R;-?MTKCNE*>7JL:VN0/[68O>G\#6A4?T,%S3^4CW]/O<7M/#88'X=)/@UA<.5.T]/+O.XTPZH>N=.< M>7RDV_$NU+0;C-H)3'[Q>!2->OV-Y/RUXB9=#$OMW:JM=E&Y^WSY2C8?[BK& M>K]5&[VB%/QWD=U\55^O'Y0"-^)7U72I:XB^(5G^-[*^%ZN(^D&<0@9X F-% M,R($*%$;LP"&W(\3 4,9K.I4.)]+DI=FM+,$U6RF[U,%)[05Q$VVT>FVG>2V M7P+.*\H#CFG"0 RY6JEH+ '"*0(R2&GL^PQ)/VX^0J\WAI$_2U#,_@/4JC?= MQT?U\$_UV3%;H)<@ZH*L@6X^BRX@!TDMZ*-W,N^%AN7*JX'Q.LAXM<=NJ;#Q M&G"NO!T\5UX+D-<@Y%40>1HC3X/D52@Y#"M8T)B[BE-8@DKS!CXL0>,>HVY1 MLEWBD/V%?-\?H>WSBR00!TQ(0(6/ 8S53A*%B($413Y&/!4RLCK9&NAK:;O) MYJQ%R7IP+'R1=_9ID,V6+T?03;RJC$9MI*OV(!Y.W;5/]_0,+MN#*I]VVQY^ MY=)XUS:BMBKA^VY+-L7UAK_)-F2C'8_V<;:=N-1.@&S/@)"> 9DI8G8TNLXC9^TE>:8(VM&0]4?2CF]RXB2;M)N';F=T M"%^&,0L30!*4 H@P5)8=5-]%/H0X"1$U*T;O1IS%L7"UZ:7]R1Y'FH$7#IH9 M[\XW%#,>48PD2;@Z"-W>^S=/"+#/=YB!PH[-M#KNM]?2T-&*LA:WV=X?B M>K6\MJ67^@ >9CJGL$U,8J,1&U&"Z0P:%Y1AZFMYYE),9Q0\+L=T[H5QMM>O MVRW_EJW7;[:YR&XV=6($]OA%+4W%NNKF5Y)M*H1V:]N=IL]7.O/'F_J2IAD'63($4] M>M-H;6=M60R3F64U#?@3$U K])4W. ):>9?: .;*<+#J>U4JR!^2I132B MA;$;S%RPU4IE:*QFD<:+^ Q$5", @Q@!!GP$L4B(E)@@)?U5N2[(VW38> M=V)%7+NNIIM 7W0?'J\D]9B6T';3=P)(TZW<9?!,3"VU>-[>L>SE(#HC-F/] MZCO;8IWH8N:-4[^2Q]NA@6?MIGF1EZM/>BM=Q;6G. HC'C#@<^TH"A$"..() M2!(1,I$*QIA1'K:#5I=F@>CL-5E1*DMP[?U5$+VK;,X1S/,%',(V/(M'@S'U MNJ$S5]5/^WEZV-8L$_.D^.U,//W'L><+;S?J[XX73'2UM@C9[Y8ZPVC6( MG$WZ9X>NZ=G"Y9C-<[1@#=>(DX5A+"XX6.AI>.9SA6'UCH\5SCP_^D:'W-SD M.JM\50BR24=4W2&N!(WC6-! .U9' ,;ZMER'>(0P#!(*!9,<6M[7]':V-%HX ME%6?%;3)N>H+5OM+F'Z5/G&C M'H.278+G*CPM%_QZPSM97M7?[F\%K]P1WRL8:FJK MWUB)%)-4)"'PI9 1K':)F"6@#!*DH@E 8+[%4R7]71-X77$=MV$SR( MN.E6V!6.\VR(1T,X8F-L@LP%V^/!YF?>))NH>KQ5-GKKLFMXQ5]/BY=\W*XS M]KCW6$8T3H(P98!BE.B: B$@"6. 4!0AZHLHCJS<'IR7P/M#Z^95RMGRR>4#;$A"LP[;U,QU:28)LQ&;+_G#$GJYW13*@.-5GU5CC0'AI[&(J1\#Z0NFZ] % (62 HRC($GT M<$9&=ZQ#G2R-;@_DK*>@I3$V".DP';H":F*"&X61E;?4.1 N<)[J;7HV7ZIS MRG5=J\X^.[;.7*D:$?PUR77:M.*:L?O;^RJ$[)60&NRZ5102NQ)QJ1;0O)G<78S#ARB]S$W+ #K976 M^[DCK]<([#"DPAP=9Q7@SG8X<\$W4P".Z[L9OSFVG-OM;5;6(:@;KHLRJ6[$ MAF6B.)'W1T9Q%')%,5"2!, (H IT=9'$J* A2E!L5U5-XO>ET8^'>&K<]0# M\5UD8+(;&S.FF@SQR0T:=V"/*/DV C1GE=]L^IZY -P(6([KP(UI9)+:O4\O M@*(T#2,L4A"I45%LAR! "%=%$E D*26IM*K;8M?]TNCNH\BE3@>O/AK>![K. M:F] MZ5[QUW!38?KY);8V8*]T][!C4-NGCJ]SWH7-PX8R^J\;N[DNB[^;)O? M;?-J8E9USU_J_$[YX\LM%ZLP]A,:BJ)ZA M]FV%RU&;QU 8 =@(\V 8 MC0OL@IZ&9S8(AM4[M@3./']I_NQF8U/HGY,H#X!U4J!2JLVC&M4:/&%@VIFN,PW5!-SV@RC=$%:[4O =9Y9>Y0P MSY1<^Q+@^O-K7]3J.(I^+\J7I/A:$3X7_,7C;X7@;S>[]$O7.@%$'3/7;CTB M FG,6 R$=O*$/E?V'%/[.%]$4%?(H]0N0-I>A*51L1;?D^OMMV9J;W?)PLA. M=LM=WXAQ,6/6:=&>F$UU@> *[%9\[7/YL]; RS9_ZB1IVVLQR9YR/(B.6'.$ M +,RY7B GK+C!2V-/+=2]C#/UO[SJO'7W]GZ7O5?'\W?WMV736Z+ MUM'BH\@K=\YW.S=I@CAEB0P 5/\"B) $F*(81&KW2U-&(4^MO*U<";8T]NSJ MY>T5\UK-VMNNG6[:EMJY(BGU:J_K"WSBG0VYX:G<,PSDU =Y@T;'8!Z=3;INWVX9V#P(H4N*Y8(4XI6HO[[=7#.6WXN#'!*;.G^$ M-LJ_B/RV\Z=5"F6 J&+],"+*1)8I I1##%C$?_2HS;[M_-V-S)R TS^-SC,3%KMYIX/[>Z_$G9T5X[0@>) M?=0(U3E]J@,*K5/W[S..$-^RJIIH-?\7,U('4OW0(V:\NKJ$N%Y1=8O5,NFG M?E ME4[ZF&5Y=(E&NR0Z;7.\NW=O:AU")4KT(5 LDA3 A!* .8L!\1$)TS2D M(;,Z"?J14ADU"7B*.@%/42?@V>[EK4K/U[^VK#=_038CUT!.O/Z<2F)TY3:+ MD0TB#AVPGS>?D8W2I]RK)\IE]%GDBI ^R+>JL8>,WY/U^O'M[2U1TS4CZS:Q M6Y6QK<@J7^&_BJI2%L2(!AP*$"02 PA##G"40)!R!'D:^0$R,Z+KMC5QG;!"0C1\WPIF^&L9CZCF_<,'A_U)HXS8)R&9C.$J:, M%&/FW"J7@76X.EBO!_)8W6['D""4Q]'P/=) &#LQX"F00B@A$$8 M^A$*$+&ZF^LTOC3VJV3S[FKA#DPO2M;$V+_J)(Z&=VDCT9GZEJP"II'+X:77 M"6U=76=UFY[WHNJ$4D=74*>>&;F=:F[SWV5%V:Z3)$IA@!(..-%EJF7L*^L& M41#)0.VA1.)C'%KMHH[[6-K4W04K4<+^OMX:)GP= E$Q6XS2%('89SIKNPP! MI1R"*/%1(!,_%I%"L=O7CP2DX0;S,G"FWE>VJ%3B36!G#:CO:A-Y MHH=Y]X[]*AYM&0<>O2 +W<&Y1\@X2R0+ NXV@(B(@""RL3Q@Q0G,$91@,GJ M3EE:6_ZY)'EIN!&\Y'#D:6_3?9Y?B)MLL^E8-N,/EXZ1C6*"D"[L'>JTY K9 M !"((4B8SSAG/*&Q;)!]O>&SX=KV-1VJKP^,19>0&NY\%WPR-^E9W-0'<,]\ MZF9\U.;Z?*V3ZZ6Z#=#WY+GX*C9%]B!TJ-^MT#5SW^W<5=(8XC1*,!"4"0 # M%NL8'0%X2*0(221C:>>A9"G TLS2;E:C^NKL0 .O5J&I('V)OY'M0)D1RI3P M3\PW$R!O[R4T$CY7WD"VW<_K]3,2G"/OGK'M7'Q]^9'D'_(JOHG_C:SO1>LP MM&(0QKZB01 &T 7F73^ MMK.WQ^>Z]#P'P<#=Y]E7Q_%1'^>]V>8BN]G4$=GL\4M.-H6.'=ENKC>\^FE= MIP_F_ZTVV]K1Z+TH/\@OY/O';5[]H2SSC-Z7^HSRRU9)KZL APSY+.4(D$ 7 MFZJJ+<>1#^($HC"*,<&IU;WIK-(OC2,;)3W6:.F5>\6\M5JS]'YI(TI]#UB2 M[W8D.>_GPHQN%SO:$Q/W6?OSRFL_"RT&7@>$RIFU X.WQ^'*>U]_/A06NF9. M7O^] X=7;KT:$'=KPK.,HZ/595[99UVGGF58GJYXSR.$TU#5MYL'41Q&@JU@ M0E"$9:J/,V( .4L P@$&/HR(6A)C'\9JX=N69&UX#6[UT&2ZK]&YDYLJI/0U%/C8'B-/@FZ4U^R#X>B[H3OA*).'G\Z@-BT<:>G M.EY"O.D ((9QID,MV)?E>*\^4!_D7\E_;_/VTJPI(I$DOH!AC$' E)4.I;Z_ M3A '3-GOC(H@1H%1LL7!7I9F4N]SEEI7X^A'$XJUZW#L?YAT?;*?N#S.L'DJUK(ZASNO!UNU;M%2](D;&58"@):824 ML9($ %(> 2(A!2&#/$'"%T%BFT_#IO^ED8)>6+-ZN_5O_XK"(/AWCVHYK8T4 MJT$PME2F@G8&<^7P$F4GOMYS=@\K&PVNO!>#L(\Q6L: Y\YRL>I];O-E##0G M;)A1S5R4'-\T6]'^-C,@":&(2I J@@/0]Q7UQ>H?@3BEW&<\Y&Q$FGQK09;& M?&/S@XV^AQX]@F9L.<>X3$R;4P[)V.3[H_%TFX;?7HSG2,@_&JR>U/SCVQM' MLJ\$59Q>E'D577[]/2M6(DW3V$]2D&(? AA"HN@3^R A**5$$!%'5FDQC[M8 M&C%J";V]B-X?6DA+KCL!I!F+70;/Q/QDB8PUY?0K[XA,3G0P*TWT*_B4 :> M'#>UVX@P99W1;%,=IW_,M_\_>>^ZW#BNI0N^"B/.Q#E5$<)N7D 0Z/[EO%7D M3.VR3Z:K=YRI'PIR6)3V<8W[5R)U;91/'*BF_FL*\G2RR#W2C_[EYIHLY1!G*::X (_H2 M"4U\-$X*!7+&BY3E7##J)1F"4S@UP?)+I17EJ&I$NY] ";]\;O+H31=E8'&V MS9/M,#T]_?+%-64R3N^=R^="4O5PMM1HH!2M$ MEIKV3/H6S6 &J;V@F M%2IZ _(:W'78X2><=>5%.7F$S7?Q^;%WK:@%E<49A"(W(19QQ(#0F," M,EZH+*8)EL+)PWEZBJG)I9K"J"6QU[7U")!NTN8Z>(;V;OHAXQ\&?9+Y4%'/ MAQ.,&^1\DL&#F.;33_;;VMU:C#Q'*,UQ 2A5'$ *"6 RYEH1@3&B>9(G,O&) ML^I;MG2$0*I[,X=_4=)CJ+EMX&F6# U:0?(,JX'VZ>AE(,^P]'IGABO2^$'? M2?AF6Q+__6J]V;6%H+$^=54"00+-N5?*)EN*#5++2VL+''T]RN99M3=G:GS4G'!:4(@%R9DJ:"Y8# MA@H(%);Z]Y +3N5\*1],QI2;(.E'B-/&(?7&Z9(SW/YIJ(YD36ZWFGG=\-5/ M\/1<'S>1-"#F;UJRO%V#AGR[!'4>S\WY)? 68=*5 MHPU64*.IFB42I J""H"ID8ZRR "-)0%8")'*7#%(_-I:N\X\-8W+JY!#\*H9 M7C7,!L%X8/%W<_O^\XF$P0'*G'DC-%XIC+8-1X_B%T'*IS7^JB_21+-K M]?%.5M:7I;F\98ORP9IXC<#DFI+[\M%8?M57_=NUJI/\;%$SZ]0R!D["Z;M@-VM;$N[%[&X\#?@9M8?;O5'5CVOLW"]HT2#8Q_V-C14,2]141I M8&!/Q)F&GJ7?07)7F5:VFY<[O1$V6K7^^%_/Y9,)?_M0KOEBM7ZNY+W\L7FG M8?K/.91('Q.%UH&52 &,D0(DD0@DE,0%X@E&L5<=)9_)IW8(M+3;B^B6<%L? MQ$^$>ZV FX >"M>!Q6]+]BRRA.\C&^UHC_XPU$>6_(!BM0]J@82FU]2CBL0^ MH+P6>+W&Z*L7/]$7,_3Z5NU:92U-TX;:33KG A=9E@L J8H!3(4"U'2:R0NM M]F)>X(3EK97SWD?CO3!Q#ZOF_1ABK*':*#!L556K/VV_5IL,\U4NRY6^WN^[ M\GT5U$L+XJISAL!W+#7RJ8-JMS??LFXB4U,<4B%T!">8CG=IOI'5-D?V#S4Q MUQ?[.F*$5%K'VTB;-_1YN=&?2]BJ)%5,R M$0E@A0D$19( 2C$%G$,U3 M*ENJZUA(NE8Q#(>>M_%0Z^WJZ1E]%0=W_6P7\->A%["'6R@HW,'\1&&H&MEQ M%!3*0T]2V.$'K=5>[WB2%"3)<@ZDDOIFG2M]L\YQ"I1631'-:9SYA?#X3#XU M,>Y9*;R/H/9:FV"^IEZ(#^UN"@KV4!79AY"<7E-/S0MU $K/*NPA!)VYUIM* M2W7J>DPRAC@$&5%:5H(QM-W.%0=_D]P1AD.9W+I#CVM2.\+4@M(QM4W?$!VYA,D' M70]G-61HE(?72"P';7M3ZP8X@OKP#H$KL0RGI_2B8FR5Y1JHCF@O5PT7V!=Z MK\=K:H]F-,U5+AD0')J<[ ("QI TD=*)HEBJ)/'*R7:8GFIJ@ MJ2DU%MYJ2VNT;HCU+!9[&E\WT1(&M8$ER@ZP'9G1UTN ^9=YO8A%J(JNIR<: MMWCK188/ZK1>?L-/4"R_2SDW-5W7M^I.?S-Z*-HTZ[BKRB4OGQ;6;;E:KE>+ M4M1U;O1/_*5SHV,R-;7F 2(R S!.C"1A4*LR!50I40C&3C>Z +1,3=18;LS& MZ?)C;QX[CJSGOLN3FP@*L7+G9=3(ZS&P$.NU%-$?-4.1RT4P^/*(%;T0-MUR=6[A>%%I?W$Q$]%.](&I519MOTE9XM^OV]'I9G_:6E>\M:_LV M7ST^T>7+WZX_Q *N0GW*F0'MT147<6*/KQ!3C'*^!<2B/0!##MFSP!JM3%3U MNNWGN$WIAX3F**&<8DD[&?:^+41%,[VUHZ=_U=/0LE MG$34374.@=/ 9\X6HFW#UD&*(UQ"(E1ULU/3C%O+[ *S!Y7++CU_=7]HV^9U MGJ2,"Y((P*%IQH(@!@Q!!3(D>!*G$HH\Z=D,VDXPM>V_W_GY_XK_%B>[_L__ M%L%\%L>Q^?]:-JPC^KSYMJK*?THQBY)\ADD\(S&V1[7^9YYFLVSW<+E>&[N\ M+8CPO%EO] ^V\YP]R__OY\5+E,PB\X7:1SY(;K,?HZS^;3K35_OU4UVQ;N$9 M6GRPLF[BZ)KU&E@,[3>4MM3-HL\6X4$:2._Q'[Y;=#W\6[6&WF/N3!_H_>?Z M"9E?Y%)6=&'\%.*Q7)9&;D#%.3 M?36--@TZ,E1ZF+*/ NC@/[@6EJ$M-*\0N;R7':'QL-U?"]%(%ODOLC&QKZWI MW*(E:_A,4XNEU1^?]"NAK.GG<#EK(S_ZXGB6[W-T[]FSSS[8,RK7IB*]?ZY, M8:\Y)XAF(LL B@NCHE!38B/.0$K2C',B:)QSGRK;>Z-[";?1ZFSSFKA>!33W MP7-347I#,K!@J^F:10UE :-7CS$<*B9U;^QQ(TV/L740/WKTH6!-W.IV&@]Z M;./'*D734J,-3GV9(T0H9HB#+,N55EBPOG)03DTK1R:0A +[I?/UH&%R*@VM MEF#U;!-V.5U_BQ0M&R/TU5W9+JX'AB++<28!@20!L,CU3THH() 2.(\Y3W(Y M?Y)5N1*VN-(D5N4U/4/:G5NJK?M]2_8L8O*A7"Z; F=&FWB1M!I^O1*1%C%- M$I#DJ5;X88X!(3(%7(,3$R01X:)9KX]+QV+4HZQ62\W@I^?)%9/&$U.O54W2 M\*OE=@ /C/_ Q_3QOH6=C?-^?QFV/ S:D= 5P.%Z#EZDX*V["KI"Y- WT'DH M/T5#R'+^48^\>?E4+F3UGF[DPZIZF4.9RD1)###+(8",Z4L!TI<"! N4$R8( MDTY6CQ/C3TY!L"1&EL:H)=)->)U"\+Q@"H#+T$8/+TBFQ?G<#K9QMI$T$L94B\CAC>58P(!-] MEX<2$T *1D#*TXR2@C)*O5)F]X>?VH;=4M>O!L/ M\QSH2'\U^*BG]7'&7A_$)YX:[3+_FV:FL30A!2$GD )]/2D Q @"$F/C2^_LJ:J8F#DY?(A=&;V[M?28?QCEW(LRR$2ADQK(< 'FWAQO$63W?I!KM:]EN.J5XR9]&.GS>]F'D=76]!$*O^^O)04>[Q%YBJWN3O?ALS\;/30WD#Y*9,@?OZ5-IW,&F&]NN M,\7Z\Y(OGDV4?T/%W^GFN:K['A=*95#?=@%,8V82JR3 2G% C'2\!6V,'0C54/^UKR1FW"7<@\ XZ=X<:MV<^R6HE_BP7)K;\ M=?7B8Z7A$@AS280$,E.YON!*"9A2 J0)+5)$D4ASKQ(Q?M-/34MKJ;>[^J"" MN&?&B=]"N,G1X> =6&J>1W;X@GS]@ N5LN(W^;@9++V .4AHZ3=*SXI7\L^; M;;&(NVJUU#]R:^==&X'[34\OM8#M/M.6#]CMMS2+DYQ)"$AFLNED@0&!4@!$ M&4Z$UCB+U"O.*@114Q.'7Z2)^8UV-$?[C'D6T@JQ;&YBHK3"\"[2W>JI^9KAW="V%$69:DM6U_*K* MJ)U&"7WWLGND:25[\Z>^V=09DY^7ZTWU7#?8-!+Q7JNKMT_6=/J+'F*C%=<[ MFZ/P#UD^?--R\^:[K.B#M'\T_JQ/M*SJVDY,IE3&, 4)E#& 6&A)9I1(@@7+ M\UR25'E5OY@,9U,3FI;"1C**U6)!JT[A0%^=HNYS#321Q686-;G['7@:+7JC 8H:A&91C9$Q@-0HS:(6IZ@!JG[$ MAA)$!JNZ1%I [7IJZQ]*3Y\,7^-J_)-A^]3=87($7FLA:ET('>M/AA3+BP0D M-F9:HAQ@*E(@"U.R"DD%,>EG_3F8:VI'Z=:$<*NBEMB^1IM#8'T-,E?!-:*Q M9>MD',>.R/YQDN73MHW3KX2S6]SNZL?.299PF&0Q0'&, !1Y MJJ5&D@.B8J8@YRF.O:3&A?FF)CE.62ZZ)7:#FBZZV/>W7?1$](V,%QUJA[5> M'(%E0/-%=[8WMU\<8=W%@''LM1[%Y.Z>V:+D-TOQOY_INJS_]55RO8)-\2\, M8Z52CD!1$ $@5PJPC%& 9<90G#"%;S$B4X>$/+DQUN_[N+6TUNG\)T%P'T*%(7$LB1"M9]7JI5]5A;%2I9 MN]DVJ[J$R:MO--K[1D,5L'/%[&PQNXN#C%?8SI6?O2)WSB_UC??:O*?K;W?5 MZGLII'CW\KN^TW[6]U6;MK1\N#$] .IH="XS(E"B@*2Y!#"3&-"4QX +D@F4 MDIB8SM/N603N4WN)Z!'R!33E=;&LIX9V8VE;M71'=$NX;Q"7\UJX*8/#(#RP M'#?@&JJCNPZX/QG*HW+Y<[0E/KJY#'./P"M?Q(*%5SE//'(0E2\@AZ%2WB., M5D2@K56)TY1(A$P+1F4*FS$.""48<(Y)G.,\1<3K7MN?E*EIH^_WD\R;5G!' MT]('3T!O5TL@R!DR2:TL,4$3,09$Z7]F.)=,Q$DL%!J\<$"/]1JI:L $5\SM MN!IG%08^OJXH%A"\UNSU@+Y=F8 WJ6)[/6 !"@2$J8]KR@SH8_>VNJ/5IOG' M#?^OYW)=VN:.=9KK^F:]UG=)D@'7*A;@.?LXUX%^D%S<5WJGMA)67S5: MQ23+XR+): %8S+ ICQ #JF0!8@29A)QP(KQ2=,]/-S4A9ZGU$U<7\'233N%0 M&E@8U?%0#:51A]0!E#4W4 ()F@N3C2I7W!A_+48ZD5H^?94/ MQMC>]CR*48P0+P#*"Z4%!F( $X%!@9$B%"(B5.K7IO;$3%.3%5M"?;O!GD+2 M350$P6=@*;&ET=9[ PV9 [0UNPA&L&:QI^89N6OL!78/V\=>>J&'M_I7?7^[ M5>\K*8WN?E5UM%[7\RE8)X222@E3&L1(M;B@4I D!0@ MR3+3R!KA)'5*JO2>>7KBHJ9S%BWE)EHTI$;VJNOA@O4"W\&?/12D TL80[8Q MY-6$1RWEQJ[4PFS<)BWYT9@\%]T@>\+"P^SF_^T!WUA'N->!X3O$^ M?.XYR'L-T.,\C=&BA2A4@-@ JW/V" TY MWW@G[ H[1W 0XS?SVSSP7S/O+1SZ9\7TN9M+<7-H_&%_[/>[WDBF2AR!'B, M,( HX8"E4@&6BS1->$90(?VB!URFG5Z<0)=JZ^"B'7+]C#Q.N+O9>T)C.?"Q MV"5W%FT)MGC>N.#I;0/R 2B0.;W;3PY]>JZ6Y>:YDGK8 M3^4/\].ZL7J25$HN,PP2@IAI*4T $8G6_&F,ACSG1_$%V$W,A(%M8.'R:0^JELP![,J7T0@D2INU2>M/2VU9%K6+P$0 M[=\USP&BT+WTSDWY-AWV'$ XV7?/Y=T^R9GV>G^[E,UY"M-"%9P+0!4B .*4 M :R(B0M$2:YPAF,6N^=B[@\^-1%3DQ=I^GRR!%\!YF BO *&@47"#H%>"9.O MH/#)C^P/R4C&,A]H//,IW8_:?'$,\$2>\Q]S53 [QB/ M/,]JOT$GM$6/6>)K>X.AO6M?'^0 [X?;<'D$YR9_Z]P!!V <\@5<1NE[]UCQ M__RV6N@WUG7MJGF.$\Y1C@ M6 Q@;/K<)Y"##&<9PVD*92I\DGP/I_ Z]$=K M_K7NT/D__P=.D^+?K'%BX]CK_@RDB!>,PTP!@44"($<)P%A?WE"!B&F3$:N$ MSVNOBE;NJLT8P+Z>;D!Q)1_*Y=+XB1C5?^">\8-'\"022Z62#&""J,E4R0#- MH 0XDZJ0!-.,)0V>'Y=B/#3;R8;#\F-=8B@4D*Z7VFN@&?@PK F:13>;356R MYXW-UMFL3.I(T.#LTR $NZ0>3##RE?04@X<7T)-/^IU"ZVHS-^[!U:(4]J#[ MK"^VZYL?Y7J>)50F&.HM+LTIQ @%5/(4$)$2Q8DB CE%69^>8FI7SSTJ(TNF M5M\TH8[WKS-@GM_F82 :>)OW0,=YBU\&X-P6UV]WMK?^UVYKGQEXE*U]F;%V M:SL\>6T%TD_ELMS(7\OO\J")F:TG.2\PU2[6*+,%10W%X6YX#/($->.=F?!.KG0,$ITQU+J_VDS5?Y%I?:_FF*<+: M>N1P3J' "9 H,]VCH 0LQ3$H\ISG*4LX\RO"?'26J^JL=TUUV&%3 MG6LO9-_$5Y+UQM=& /!>?H^&6J" MGJ'DIV^S?Z?_L:K>+^AZ_9O>&!]6C[1*$"W3UG'S?ZO1\T!R'Q/8?I)PAWG9H_:8;J!,/GJPSRT]4UO_:T!^1_&'.2L\@A2$7 MF6498H6*@<(L S 3*6"8(*!O0DQD.>&XX'YYGQ-9YG'21=NJ5N7>@F\,4]-9 M8[=S=2+K-O 9W.S,GPR?/T?F%(AVK$8[7MNE;)ZW[-I"9AWVHI:_<.?S"(L0 MZ"P?DM)1S_T1('^M(XPQ93]]XM?5\N%>5H\?)-O<+,5[^E2:TU+J2]SMKL;S M'.($T002$.M;%8"Y((!RX]F3)(&48 (+ZG=JN$T\O0/ H2+V+%H8]Q7?[T#@ M=SPXK@O.4Y'(! -"A5;9\A@!&F,.N,SR5-]SH4R\7*SA5V4B5$[V=.*6:(]LPO,(GQP+/\IQ6>AIRE52;=F M1AMYH\G0$KY3 K[I'/&AZ5^L+Q6=/\XA4S2E"0(R3;1DILS4:DX8$!GFN5;J M8P[)?"D?3+O3^ZLZO@6FW&FSD7JS'= _W(9KB;5&O\6.W*M[BX5>>#?M="+K M^)9%/7?\1EV&VVCHEN5:$=[QU?;B,670FD]",]Y]8M DY(%6:;C$Y= $OW6R M\T +X) @/=3,P3WV6V+6IO?1K3K"2QW'DV4\YTHF ))" ,@S FC,$Z"*-"-Y MPD3!O:P; 6B:VCWC0L[&3DJMZSYB*Q4=K9S0*V(KQ!I?'0,PQ,J]:5Q N$4+ M&2W@"_/P$03.%$TEJL 70H]( ^^A^PGUN\JT=]^\W.G/V1B4/K9U*]^]W.L1 M;9XM1;'(5)R#'$M]LXB%!"1/4Y FHD!9+$0.F8_0=IAS:D+9FDKKW7V_M[>] M3HH&A',/@W =%;['G@4L@L>8RXZABRP."UV+)Y]7K"YJ_KJ>M>(PS M$]^9*/T?J&(,,,THT/]/6!Y#A''N(V[.S#4U,3-0Z?+K*Y;_]0N5V\B/IVHE MGOEP=?;0/K>8JR BN8FG+"&,"" MQ/JVF7*MN,1%42!*D\2K]??IJ:8F2+:4UO6_9M':$MMV]OZI7#:_^=E7/ZBI3@3 (H:0I(H1(0%S$1G/ BSN/6#3.^!^8ZM\O0EZPI.%G>UK/R M_RMWRN0]*'\-M\E_"U_)R Z2<%Z1W^2?-YROGFU?,'UQ7NH?>9T^:>*S; .Y M]>=E]YERR4M]35EO"SO',E,DIP3$ICH85 @"BG(%LD*D"8K3(J=>7I$ -$U- MH=W1JG4R+5%H)=;1[T]"'TM6P+S?=NKK/+EEJW@/2\9 P(VL+3KB96S"'-$XHA86DO^MX?5]W_1(]022?^P$T27QAU% MN#@RUPH,U\?[%B:SYZ8YV(77?_SQ)$U]I/ORT61\J:_Z MMVM%^2X$@N$\D[E(09R+&$"1Y ;9P;*B>28B +[A;F$(6MJ(J;ARMPD&[ZB M#F.=+)19U/(6UJZA00[6"&X($2- M7#DN))"'I>:"CM[7%5T;F.NF<_+]:KU9_R8WF&EZAEB;#FA<178GU^CIDD,Z6H^BT$P-_/Q649V,9]E]="]?/[QOJ5Y]F/R](@??_#%LVE6 M\\MJ)?XL%XLY@9!AF4- $Y-(3P4#A*@+S[]GYJ<]HF,& 9D0 #%,)1*:X@/H/,(Y]2H(% MIL_KCCI"&3"S"6MQ%M&&]+?S3;MK2V^X*G]-7W10/6T@]"?H>QY=+QP(VB%] MS2'T4%Z9"A\?9/V_GY>'O>J^K!:+3ZO*E.>=0Y/SK3 !28I2 &.,S-6U #F5 M'"5Q@FB6^9@?/>>?FIVQ)3_ZJ67@9^-Y[/+POZ*:B^@/PT?4,.)I3_1=)E=% M=C#P!]=I@^/>IQI?'_3"5=CSFGWLJGE]H#E2":_7,&^O#N^T]_4\3PJ8Y(D$ M/-$:,0<)*F7N7%!Z)S>J+UU:7_7]]..^XNY_A:I_,NJU$>@'E*U/C;=&SG^?]5,V:*NV4=A2-M:J='2!>R8;)NH#QV%,!NY4>*!.BUGG^A M: "7I1P_). ]:F$!>P(^VN%!AP &CP\X' &_]#0#TUYQT_EFM.%)J%1$:#*JA0P'ZH.05#GH1A5[!H*=''2T4]")CW4#0RP^'+G7V^UJJ MY\6OI9)S05@J:"Q!*C.N]S]& "M( )(*8I% 0G@: M74?>[2=^;O0=6)2+YXV>Y*ODSY6]\]:1!5+4#4<>GY[KDM.WZB.MC'JTUO*O M[M?X*:EEE%=8)&EP#1/U*I+H3*8D@1+Z2.U!J1U:L*N2VFT M([57"; AE]A-5DYDX086L3W7S%NLCH!F(&D\)*6C"O$1('\M^\>8\CJ_F#67 MKDM[,[:NM[:K5%TTY;:R T2M?S,(LM1U+(4WB]U';2!W4\]B7D3+]-UP)UR M)ETY:C^9>[R!^AQR26,I.5 RBP&$@@,F4@:$2EFF)2E%J5.+I//33$U&VJ / MP R91CQNZ?03CR<@=1-[UP,UL#BS! )+871'7ZR%\*:J3&T#\W/=G)2NOUD7 MR;D>P]YBZSPT@<31B4E&%3/G&7TM/BX\W4\L-"U EP^V*UNSE/,"%SQ37.M5 MT 08D1P!*F$,)!*IA(H4./72L([.,C6A\(GR-G;$Q)*HW3\KN3")C'[2X3BR M;L+A:KP&E@U;^NH>C+/P,N L H%$P/$Y1I4 9]E\+0#./WQ5*(FY#7[\H7?9 MDB[>/^NKPJ/><.]>?I&KAXH^?2OYC0F7M!G,]_+'YIWFX3_G,E8)SW &LCS7 MND.6"L X5B!!,LUSK50@F/:('>E#R]1DR5?^38KGA8QN5=2P%1F^HI:Q:,M9 M].XEVO$66>9Z!87T6D.O*)"A5V:X@,.Y'E)WR4QS6H MA@WKZ$7)6\1Q7 /9B<"-JX;L)WO?6\.,O8LT+4%C2B&#B 5QPS IG ;N/Y MR(DJ:)%BF6&_].R#.7SVXSBYV#6)=::%G^ [!-!-G%T%RL!"JHO&Y9ZSWC+G M).N!),GA^*/*AY/LO=[UIQ_LG?6F)<:OJ_6Z-JR;LG_/)L;KJ;'$KM])M:ID M:^IIM+>MY<>^7O_WGOXP9OI-134!Y9)6+S8LS%RW]; :#4W&0_NB+4I""<2T M@ B@1,8FB!<"2I "$!:YY%1!@KA/FO1;,N.ER8V04UVS4>L,JRW_WKEV;_=Q MN(G$O\J2#RQ]F]7^R0#Q<[WH.RRB'1@1LVCLS/H-'K..H=\.-6O^-[*HU$:S M'0K;IT,7WYG"6&U%E4$QMI M:CUWYAED+^_3,'@-O&O[0M6C'/4Y)*ZH1GUTV)&+49]C[; 6]=FG^UU_7P>/ M[0S,:9W M:3P-J=N-+@A00^_^%J.[%J/HCT%,[1?!"'19.3W/J#>)B^R^5O,OOW"-6>SK MAFYLT,BO9J'TI>'#RF1)SB$6@I@N0G$N"8!%@@&E4( 4Y3&)4<:47RNAL[-- M33XT=H$MM5%+;O1'3;!_0:E%1A- ];\!Q44L,"1%#GMF-6_G MF)K8>)VM:PB]+J-Y!^?E.T4 D 86#3WPN2*7^0"! )G,NS'?*(_Y@*G36=+II#BZ4J0X0+H"!F "8Y!9AD*9!VD[LGSOE]0"=$U[_:[?%SX\]RB9W M8J_=YFX/]VU@PC;_D.7#MXT4-]]E11^VOH(O6FN82ZSBG& "%$,Q@#A& ">* M R)8@CC.L<)>5X(+\TUM\[>D1K2F-2I;=V)ENE'^1-<1-08%KM?&LW+!)>3= M;@@!\1Q:$="4SJ(MH VQ._^L(3=DMQ,G7()U/3D_V\C=3YQ8/^R"XO::GYQ9 M?I=R;L-ZZF2J#\]578RI7(DZG6J7?&5\C+>J;8)CV[#,N92IC*$$,BXP@+'( M (U3 F(5GO3?:6TZ>_]<5?IK MGO.X0%3R#, BUN<2)3%@))$ 9HJE @F>N)U+YZ>9VK'34!E];\CT+%MS'$HW M1?=Z@ 8^)5IL6@IG44-CP#HQ9S$(5>+E^"3C5F+LO' MY\WNACAWV]8^3I?M M6;VY'WCK-G0%3.\XR>T5)JO]\48S4QUEHVN:.OY W_17+LOO)JEK?I%2ZJ![IL>D";VEBK M12GL/][1=;F^57?Z8VGOBVV%G@]RS:ORR?SJ9BGT>;]Z-H'O#W?Z95[*]2X6 M*T^YRFB:@TQ_2/JP9@4@J<3 .)^S@A>29%[UT6N,.P_09V+$A5]]AG M8=Q.A('@'EB^!T4Z8!'XDY@-7@O^<.:)E(0_"8E[9?C30_2L/-F&@]ZJ]W3] M[=-B]>?NAA@7F+&,<"!ID0"HN)9L,5= D$1EA$"2"Z<$,9?)IB; =N'+6CLR MU$:6W-XW\+- N\FG4/ -[B'MC9Q_-4H'2$+5I#PWU;B5*1V8/JA/Z?).3Z=8 MW5VQ_9:++!49428N-+7%D7+ LB(%'$(A$\%,3$S5UGJZO?< < M75Z]81C:U57K&4/L[N,\AW)M[0\^KDOK*&,'KJSC3_7;I;^L5N+/A,GN01*DB*.DPP*Z)48ZC7[U/9X M2[RU@!QJV#L&>BL'?HOC)C &@WQ@>1(4;6^1TPNU0!+);^Y1!58O6%[+LWZ# M] @Q_;5<2JWG5%*4FZ9P],O[U7>YI,M-XZ#\5/Z0XOTW6CU(\Q<3X/K%V)?F M,,D3J24<(+PH )02 5Q@<_O).+W!3U/[E;X$B M3P/@?#;T])KQQXL]#8#"7O!IB/'ZEB1>VJ/Q'^7F6UL%>>LA*7FY?&B2"5-% MD2"2@90J#B"'!!"J"%!IP7C!J6*%E]W.=>*IG5DMW=&?FO!M+?$]KZ>EOF=1 M!^?U<%/8AT!YX!,J', ]:B7[H16LA++CM"-75O8#X[#@LN?[??-+E:RTX/Q4 M+K<1^;]4J_5ZSAA,5"Q3XUH0 .)$ 0(Y @7+$$\%@AEU2B:_.-/41)1)M-NE M;G'WW*#+F+I)G2!(#2QF+$C[R3FSR!(9,D?T @[!LD-/S3-R7N@%=@\S0B^] MT$\F_"8WQB%Q5ZV^ET**=R^_KXW3LYY&"YX;OBF_VTY/\S@1R"3: *5PIM6: ME !:Q#G "1E@?S2S?3"?&S\O]IF#K>5IH@:52#)(\QW7K/L)B#J2( MXY2A6-#8*7OAPCQ34W)^6RV!%5<+0UXD+_2C\X+4P1H8!JBA9;1!'V:>^922^IRR2N+W4]"UC_]K'\75::*!5@IH(_'B-9.).-:6FW; M)-:(+TK*VIZ2HLX9-S:Z)YM:',HD=QG>LQ:W,Z^/9U"[S,.>O:\'29OHAUO _F(>DX_> M?,P?F&.=R7J,$L[>;]WE]MZ]+3Z1R%BIF($,\QS '"' %&> Y&F1YDSE2>J5 M$>LTZ]3$V>]+?78O]+VLVJ4H7F_,/P2[OR7_*@C?R(QO:9ZU[;1N%HO5G]L* M4XU3VC0?&J"XA1>" YKV#^=\<[O^21ANM;Q::8FA%HJHY9,WQS]HUBZB9SK$1I8 MQAR ,T#_U/,@!$O8/SK)R#G[YQ@]3-L_^W2_G=_F87;J;=WI;^6;OM@9EZ$T MIT5=@J<-^S/=Y_A&BGOZXX,4SWQCP__L%7Z>0%7D&8L!37,*("LHP%! P$@J MDA0K&"LO@1&4NJG)F99D/_$2=L'(/@&TA.AJ5M5/$Z"*ROI?(PD_03YK_N;)_Z6FO+*WY;+?3[ZX^: MN,W+G N5IYG45TMF*JFDA $<9PID>9$B*'*9Z-$\7*^7)IR:P_7>S+%G(C:V MG76'[O_Y/W":%/\624N_GVB^"+^;M T)ZL "]-=72'X\CYJW8'2%(I"LNSC= MJ.++E?G7$LGYO9ZUGC;?F@NH;2O<6%2RPJ1;< 42%A< (DX!08P Q)1,588+ M%#MU"3H[R]0T.$MDXXSRK)QT%$0W^7 U- ,+A1J5FL"Z&7MHL])9!$(5 SHZ MQ[A%?,ZQ>5!\Y^S#83J.FEA2/H MTVW4SC*UK6Z)BGXJEY%8+1:TJEN.K@V]GCU"CH/JMO6OAFK@K7_8:[0.(N?# M=1G=@V"@#J/U'&_:772/S4N=1?1*%:J8?Y<56SD?^.?F\_G$N[,.: ?MAJ/4D2>T.?&6 M\O11UP-J1Z4@%'Q#*P?;[=V"Y56ESVU=%)JG"*4, LXR M 2#EF18*D *:L)RQ@DJ&F&<;EA-334U '"W+V[,6S1F W>1"&-@&%@\]$>O3 MI>4"&.$ZM9R::.QN+1<8/M*QY=(;/;(P/C?1X!^:6/#/RVVTWL;4&"Y%4[J\ MM7J^S&6,THQ(#M(THP 2* S_\E3ED/]D_Z/4_G>GO-/3:CLZ(UXEV"/G(0> MBW!>QHP [<""Y_,V2^'#-DOA\S+J@+W'0K3E85C8/5)$AH5_I-21\,O@EPC2 M'\2S"2(]AATO<:0_SWL))5<,T[-T(BV7)L[U=OFA7#^M:E_]K:IMYLF<\P)+ M$BN@TLQTI94"$"Z,&ZM(DL=S#U@:)(F M.M+;15B2Z<(6 7FJ3*[5YL5Z>HU__.GQG%>GSQJX::8!(!VI!J*!\2=#ZL\& MS0ZU!L\+-6?]:QXZP1*JR.'YR<:M:NC$^$$90[>W>NBLOWR\;0.H!49IFF<@ MS;F6*3A3QBL. 5**9#R#0L5.5]G]8:>F86K"/+2:'3H..F(OGH?>U1]O+P<] MG^/;0TGKQ?](NI<3#G[JU &[9[6DW=/C*3\'%.[I-(=_[5U-1:M'JT=I!-3- M=UHNC,GM?F7RUE;+;DC/AW+QK)6"><*2/"N2#.!,*BUI4J0E#4> DA1*(J1* MI5?/&F\*IB:4?JM3R34'D8WI2_Y-:S.64N\2*IY+X:;$# KPP!+08%L3WVHW M6P:BS2JJ68BZ/,RB#Q? [U-8I1^ X>JK>,X_=IF5?O JM/-W>?W M;0B#%'?TQ9QC-U5E"@^8'[](;CKFE*JL8ZK7[2WRTZHRM:STWUW?I(CH MG[02:[/#Z^CHP[]YJ$,A5]I!D7RC]1O:_:&YFM6!5L R%C6<11W69M$!<[-H M:SBS2<":P:C#X1LMHX=>_$;+.59!G)&7U4])'P#[LVI^R/G&NR@,@-+>56.( M\?T.;"'+^O;1/>':I[+EB;J:+$=9A8$G4C2J\ ML 1LNP1-D&$T2,&O*S$-U1RS)Q7C]LV\#JJ#EII7#M9%:CK1K[J_591$V3,-Z:R MXD^:MY]GT9_?2O[-F/(7ST*N([E\*)=2FL*NLXB7W\N%"4QXJ.AC]$B7M+T; MFRE,N)L=S1BU_NN9&GN6R=)YKFSYLR<3FUARN0Y5%?9@+<['^&R?'C%TYS6% M^Q$Y!W_MVXQ*^!Z*CHI93VR&UK8L+#5=(7N&'S(;K$=X9^B1>X(? M,G78 _S(,SVTD+9RS?O5(RN7]BRX%('W.F;O5FW_]$4N;'3:ZHO\N_Z3%N!U MF_)/M*S^G2Z>Y9S*)$^H2?$JL-9UC/VY."A_$_X(!A:IV\IE M'=9G)\.>9[NXYXZ+H/,-W:K=$U�W2_TC_N?3KZ,0-&].\3_W0\].<)?T)O MHZ73;3.&72.&JBY3MEK^;'YOGN(GDDHZ$NB@^8*K3 JECK_1TIY5^L>F:;RK MQ1NAO7>!>2L:KC6K'ZDAN'[WTOG7"2XZIG:<(YK*N [Z@[%( $NPM-FS29(E MC&"O\EL!:9N:ZM0UO]<=3?0I2JOJQ4@KNZ[F+Q_7F_+12JM3AVI?B_SUB^UK MI1]U"4>TW!\KW[HV!ON]<' S^XB?]ZRM[([!\,TM.N@'!3^,=4 M?&CTOON*+NO):H_$/">*0B8I0"1+]06:2$!AD8.847.1Q@)3)R%_;I*I2>N6 MSFA':..ILH1R7&2Y"SQ M4>V<9IV:&.B0YIEPZH2QFT85'+F!)<.ND'U+<=2IE^("J7\.J@]$H5)1G>8< M-R/5!X:#Q%2OE_N)GGO)ORU7B]7#BPT?_;SH4L@+AM=2R._E?E+HL 1((^O6=_3% MEC!$7(I"L@3(6'$ 4YX *HDI.QMCS' :9TCZU9F].*?/YAFGUFQ+8/144^@G M?2Z#["9Y@@(WL-0YYN,JE]$6R+L+0'I+'&=P DF;R_.-*FF 0"A !O-<$9+!),Y].TF? MF&MJ.DV3H6T;W\SJ*O;KB&[)M77NZ]]Z%K<_A[>;F F$XL "IIOBWF3JK:,= MI6$;05^ (V#7YU,SC=[B^0++Q_HY7WKE6B?=%WT/6#[+=R]_I_^QJMI.K.MW M+]MX\29$?&W]"CMW39'3!*88 42I-&9;!6B&"8 HXXHD.98Y[N>;ZTO2U,11 MUR77\&127RQ7VS[&:_.K79)&RUE?-USOY?3UOHVQ2",ZW=KU88?KPXZMSTAN MMFM1#NY=ZTW0&SG5K@7PM"_MZI'#Q+8V"<_Z2/@L]&2E*NGV-FL=>Y44-TO1 M[9ZV7C\_2O&J%\)ZGLB4XJS( ),8 Z@*#(C1(WG!*8QYGC'IGK0S)*53D_-[ M35-\VJ8-OZ;GI?JD5FI@87\\M'3':=1EM;7AM;GM]'F9 MS-I?%R[Z)M_ 2+&A$_@6KH[Y#+X^O@&>X0AXTVC.X#A>"MT,/V&_*^!=4_?X M3F^-C9[P8UOZ>-M00R62$I0*(*$0 H>:X6 $Z _C9C2E(I">OG)+LXXM8.] M)7@669*WO8"?ZKSYGBU,+@/O=A<+"N? I^_52'K?H9S1"71%NCS?J#<@9_9? M7W#<7^QKNE[:8?Y1;KZUER8KSVZX/ON?;6RZ:2[_I\DU-46=M#@L-Z9(X_NF MG;"D@BM(() (Q0"FD@%,A (DABR%%$%:T+:BO:N)^TJ:G';:?KW[@477K_K0 M^=>(MD3;I%VQ>F8;];R(:..,\#6"7[MRKJ;R,59C+(-ZS4OTIV9F:U.:U=JA M_I^]]:D9B0PGL^A]Z.[2P6 -9IB_EIZ1S?>!X#LT\H<:N(=!Z5>MG=ZJ>LA/ ME-L$H6TQW-:+^7GY;E55JS_+Y<-[JC]TTY$'49PJ17*@L&( JB0&5.88)"Q. M!(E%G'BT .A+Q=3TQ5VYZ&V28;F,6$MVQ!NZ/2P$O1?(P?(S!NP#RU?#@C'? M-Z*SY6+6J=S]N;,46U:B]R,NA8"K&A#XN]1LNSZ)>S8%W96_DX"H,T M67XUU1MV6S[.]/FVRR?>Z=E_>9=*8!+<#1/E0N[U>KA?O:?K;W?5ZGLII'CW M\KL- ][VB;_AF_)[;79MS7$HAP4MB@1PF&L!0U(!,*48I"S-D%)<%LI+P Q! MY-0$4X?'NC!&PV6TW#6PT;\W_^*:4U/LSK)JHBTZ%?6V?/ZK9YOH(;X#-V'X MUJL[L!!]M;!;!J/#[CFF9XY9V[O.VOYD>-4?P,_1EMUHQ^\P3:X'7)!0[;&' M(''&DO9?HE?1I6 MF_*?]951,99A11'(X]CT6\0"4)YA@'!.$8MIS//8S^(]*+V3M8;OJ-?J\H[\ M4.Z[$$M]K>MOK.5[$[?A[)7?T/RK83>R_$;;4*QM",8LZG ===FVKW<9'\/Y M&'!]!G=K6\WWV1U_XWJNY6M)O;O[O>F"ALJ1>QLFQLVK>].%.LC%>UMJ>H1;-3F# M7^0C+9?E\D&/;WMQ:?!OV:)\L Q\U?]=*VHKD]<$W/PHUW.D.%189$!!F H ME 1$8@GTKW"L"LRS1#A'7%U!R-2.OX85H\$WS$0=;J(=.[.HRU CT*(_#$\^ M_:RN64.'H*R15F;@$^JOM"@>X5DC+N%6*\W@ZQ[^5:C_AI57UH\@[:&DAS*5 1*T1!3I,<0,4%H$PADUA&BQ05 M,.?0,['LY&13.ZZVM(9(R3B+LK,K*0AV0X<=M#7.OD@NR^_&6#+K)DQ$'W\8 M#5!&/YEOOEK3Q>D23WW<.1-.3W5V,Z4BTP?\85P):KIXHZ6 M6C5_3Y]*K9;/"UG F',($,HQ@!#G $O* U.]4:P6"UJM3>NUVKSM M6)6=IO_-=A9K87HM3R,VAL4@]@#G$%_49]1^ M$K@;X[IM,CN7^B:$%4]!3HH"0$8%H$DA@6"(Y'F6058(OPX71^?QV:+C=+5H MX]$7ADY/<^YQ*-U$W=7P#"S!]N+T.YW;PPFELP@$DC7'YQA5A)QE\[5D./]P M7]>.-";'QN!^LQ16_:OC$MM*3T5.A'5O_0MF9F: MZ*PS9N2V5[W:1CCWL/:^U0?B8>/]"RS[?QO+[A:6:(M+;;^=11UH AMSWWB! M0YIPWXJ5\0VW;[QH1\VU;TW31!VVNUCM>9ZQ C-5@#2#'$ B8X!Q"D'&!"WB M1%"ND%^MA!&I=Y+(HU9.V'>_]FJ>-^;J3\2QZKFB_]W.V-U'LTT<^@MY1P\7 M[Z_B NU0_M_+SWFX)*,[,X^0X'<8"EG./RXW>K(O\J$T58>6F]_T=IVG),." MP0(D-#:)/5D.""\H2!(.1:Q(JJA3(\53$TSM=E?3&.V(C R5;F?*21#/"_X0 MT PLG3U1<1:;EU@_(MO6DO_M8?7]7_2KM5C3/^RDV6,;_:T.!Q'TEP-Z;@YV6IE9'> M.FJ =753/<==K8%E5H>9J&T=W?2,[O!CZD!^:!=RM[9'UOTLQ8?GJDZ1TSI>0X8IQ+*V$>SK.<4D M$SFBH$B85M,RB0"%L0 *%0IG1":)S+T,_JXS3TT\6\*C4E.^[5Q#.^1>82AP M7@O':_X0" ]]2;?@UD1'-=7;TALUX;.H2WK >[4O6J%NQ<[SCGNG]87CX$;J M/< 5*JD6CA]DVWW!WF ;%VLGWFN.*4TH(:F^:)("0*POFE@+-9 2E< XQ5S% M7@DKSC-/38+=[D5A+':$]E :G9#WT U#XSF&"F@JK_[44OVS,?K5"#>4=X-1 M VMU/FB%5-ZO$Z\.$O$[ M\GH-FJ\0GNH))#8,MA1N&1##3>_O^OG0U'2J;P$?E\)DPCPLD9IG:MB?BO"!882H1 MB"DW5L(T!@QKU5.)+,V9* I(D5_>T\FY?+[=<7*?=K&5O*[,1/6_K:CU+FMU M EXW/2X(9 -O]Y;&R'S6D:5RURTU:.FJ\U"$JUMU8IZQBU:=9_=(Q:H++P3U M*]C RB];#Z9]RH:A_":U_M')FY_S.$W2G"N0D$QK!H6"@&64 YD6>1(S6,2Q M5XV\:PF:FB+QI>,&WG-(S$Q3P2".!_?%NLH?,<@2O*&;HHFF[RQ0_7030VCZ M!&I!U^%KV&JI- MD9<_-N\T&O\Y%X1F"@L%TH)D "J9 R*0 BPQX3EY)EG&^]@-'>>?FIS]RK]) M\;R0T:TRC3PC2[BU[:P6I;#I67H1GQRRW5( MGW7P[Y ?_7%OHVP,&Y'E(V#OU)X(!K:4N<[^)A8O3VA.6:Y\A^D;?/Q>W\8J MNOB\%/+'_R-?YK0H1,R5 G&"3:8^+ !))01%ED&%E0<@GN+\B"OGUB".'(9]@Z# .^=2# M/QI$@JP0&W=3@R) $M) <,L:R 5""9>=7A<)MV:EO^ M@ZR+'T6\0ZMGG60WO-WTDO H#GW=.Q^K.VNK<@2LJ>P%4:@2RVZ3CEMQV0N( M@P+,?F_WK@!6;N2OY7>3([71'T6Y;67X2[5:K^4,0D@1#$@19J M+$8IB956//RJ 5V:<&KRQQ(5O:=5]6(,);6[T;LTV'F,W21/2.0&ECDUJ<#2 M&NV(W9;[L?0&K1[FA$RX0F+GIQN[II@3\T?*B[F]USNT=?4H[^F/1DZ]DTNI MRLT\S8H\APD"24&8UFH*"1C&6JAD(H6*$8&A\LOQ/S&3TW88-1^_)C3:T!]M M83'OF-6CD+J)CVM@&BT>U>"C2=QUA&FH#-@0Y@(.X2)-C\XR=ESI.5:/1)&> M?;R?(/AMM?Q]_7?YR&0UIRDJ4I0E((>< T@A!!A)#!(B8,H411F.?92)SMA3 MTQL^K2I9/GC>5+I8N>WJG@@,O),U5?I_HS]JP@+:-(^P&VC#=D<>=9,>8>GU MQCSV2+ [M[=S)OH\OK)76NO]5P(3.($$I#F. 50) P0E%)0Q#A.E51)KKS: M.HU!]-3$Q[MRL="ZS>I_5#MR>SC*1UEZ/]_.5!9T+(?07J#VCN.HRW)S M1XI:INTGT*T(W_"]K9FZO51UF!\T3'NPI1HN1CL\R6\=H#W8(CA$9P\W]X"% M/7;QX8L7$]!@?EL_-^=*0:F4 C*!&8 Q8X I3('(,*&24\2A5SG8*^F9VE&T M*_M0-G2VQ3LJN;!!!)M5H"SR:U?2^28\UOH,?V/N7\2CRV'4LMB\/W(!C\M@ MCUF]XPPUTRO=<1FZ7G4['(8-'M+UD5:FT?7Z3E:MRZ/D\QPF7*49 YQB+9TS MB #.:0P@IP6,"QD7I%>;)U<"IB:.+5&VIY,A===-,4B/1>_5\5/XA\!\+.7] M1#172[\)H:V%YRRR/(P2R'46O>$CN8Y//Y50KK/@>,1RG1_'3PPNOTL95*?> M;]6PGJN"Y.?AR MGI>O4UJD@>7P1-='-!F*=M2_Q#KM43S<>NW*"MA.2=V[XE[-B>BI:>U.Q?=M M33*^6F_6IC#U)GJJ5M_UPY%&:KEZU)H/J[U2:UO6XMED&1AMIUR)]:R^A5JC MV4:_+;NWTLC$N__M^D-YK*6L#V\SFSV1XR).[*D\^/RCG-YCH=B>\J/-U]-' M^FQ\.[>J2<%8/GR5#W5ETIQ)R6A!0)ZF&$"6<8 13/1Q3K(<(8R0<;US%YB]\!/>_&%?N*A+N:U>GRJY#U:<.VI["BJ5"P4S"02)&8!4,(!-9C+2'Q-)E*(H]4J+NY*>J8F:IJ1@EQ^M M7-A8I)\6FB5/&\JUJ^4FE49<@X%E5U-O< _^)A3L)\/-S]N\8\W2+&J8.K!P MUWR%$W:! XD$J^E9E3!&0BZU^(UU+#]A'#=;.2&F7X$W'67[K\TH4W7= /Z MHR4M8(S6<9X#[8-7@X_Z61]G[/57>N*I4>.U?EFMQ)_E8G'TZJ*WRCS.<<*1 M($!F5)E S!30.$D!2A(D%*,P\\OJ&(C.J6D*'W]PXPK8-V"LOMLF6C*BUN2Q M-@:/\F%9VSK,[Y>R;1>],U#\U++>TT$3^H,8-' KY#)/.59K%K6Y M^?;^>;W1BEBEY>/BV30=-43I_Q-:(YL3P@A4<0P*+A( 64P 3@0""2F08 +& MG'H%_?>@86KG2,-"73^.-TQLB]D[EC.X9DW/_3@C[, M,Y9(+$4!!"T0@ 29W"8(@8HSD<4JH2FEKL58]D:>FO#:$A<9ZMQ+K^S#=5X" M707"P'+%D7^O BM'>>U56&5_I-$*JAQEH%M(Y?@#P8L6:!5G:Z)!>6[,W P4 M.1( %AD&!&7<_,1R*5*>NH7"^$T[M>W:Y.(O;"Y^N3?U M(CR> ^_\2V4-C)EZ"(N:'U##5SGH3CJ56@='@/"H>'#L[1Z!?3<_RL=?Y$I_ M/YN2+G[]]7V3RQM#DB*:%H RI*] <4$ 5;D"6)%"7X4X2F.G#)-SDTQ-[A@R M/8*T3D%W7I2$ F1HE4%3&.U(G$6:R,O9T>X@>42A!0!KK BR(Z %BM^Z ,+9 MV*M3[XX7-W6!^KV8ITO/]E/ WM/UMYNE,/]CW!W?Z<)$.=QLVC))MC[P/.90 M(2D50(KD &*HY5^&"8C3/&8%CXT3PD?_;HB[ MZ5W!<1Q8>FXAM#]T2)Z9.,]M:2Y+=CBERPNE0#J7VYRCJEQ>,+S6N/Q>[FN2 M?JJK&JYOU6^KC5S?T1=C%Y^G"L%8R@2P+$[UI4] @#-(08:+C*"BP%*F?I6F M3DWEM%=&+375%'I<1ZMEM#241D\UJ;ZFY1/8NMJ/K\!K+"/QTQ8J%5DBH[L+ M4/4P I_'(9BE]\0T(YMSSS-[:+.]\'S/-D_-H/>KQC76.M1D'2MD15/C-)MS M)!%*4GTA*Q@"4&AY@3$40*F8)3!/)4EB/U'A,_WTQ(<]:&UBQF&'^&4=BV?5 MF;HBC12UCZ7[G&=8@]=JY8G(4LX%*&(A]&IQ"B@D"4A)*E*>I"B#OGVZ0J_6 M6[7NLNNFQ_UFVCH_527W%/A>Z^!V" R%[< 'P_8$W:S:^(YH1_DV)-7NE);\ M@*V_>H 6JAN8S]3C-@CK 9)\HMS[]#ZM'6B[GB-"80E/W M,$Z@5DIQ#C#A.@\(T;X T4Z9^"0$\S6F18\:E6_V2"_-,;=-O*8WJU@,UK1ZV[C.0.O@$ MP@ U\,8_CE$?Q\ 9L#Q\ V% &\D]X/F!^3D(+B-QUD=PYO7QW 27>=CS%#@\ MWD\/^E7J ;^M%N+SHTGFK]NW-Q]G#K,\1@@"BHL:6?K/B'+!^^;;3X^2XK^B#;A&I;O;!IA+.^?=ZL-W1IXCCG>2IY MPD4.$LCT=2IA"!!9I"#EC&+.XM0QZ++G_%.3*0V=_0MP>N,OF,A8&H.$< :@ M%!10?8D%-,D+GF<882+GF]6&+MX>_RT5P^/_9\-&1&L^VH*IJQWIXZV1VT$P M(/(#'PXMY5%#>K0KAM$40^W0/8L:CL*=&3V1"W2.^,X^ZMG2$YK7YTW?87K: M[5;KS8>RDGRCI<6JFE.6B;A "2ARJ0!4L014,@J*%"&VS=2Y15\CB:Z_J ,;9W3E!FI86B++'$![7+'N0YEDGLU M^KC6N..L'1CB3CQV7:&IUE%(46"*J,K2 MHD_AFV;\J6W=NI+*BBW*ASZ-W%^CY[9SK\!DX)V[+2S3D!:^-LPKG@/7>FE' M?Y/:+:]8.U6+Y?5C/?=M6S"KK:>WS221#!)&: ID89H@TX0!#',%%):JSFE,'?=U"*2&WN%;D%HB!\F_N0A%J(U_KC4[NB+)MH4,OA2EXZ]IS_D>I[1#*>PX$!0Q+0V#@7 >:R5 M<\@2E2>QRC(G;?S,'%,3!0V55B'?EM$UA'HXB$Z@>5X4!,)H8"'0A:6<[C;UIEIMO MW^2B"264CT^+U8N4MI/%AI:F_KZ)Q%K+ZGO);>NA;N2A)O]Q9F9H:CF8ZBB; ME_^UCA[IAG^SI6-MBXR&T]WHGSZ_OVGHLSD:IFB J1MGV6W*-QF&:AJ5-$6? M%M'SLA[!)H&7R_5S98%[JE8/%7U<_RWZ?5U7?]+'PL)<&\TPO&G7]M34+VQH M671J!/TD]((8($K]YZ6,7B35ZGS5_LK6DC(-"1:=FKC\A>M%*%6T6"T?9/5S MJ!+7Y[_GL][/$Z^.Y_D\3_N>U_/"HX%BC^\JLV";ESN]PS9Z+I,,\63O6(ED M,3=74D$HTL=9:B+#N (IP3(EJ$"8>K;#=I_<23B-F[;0AJ[JS?'4D&UWGFQI MOC*<]?1"N"G%@<%]NU#6ENY99"FOZY5]O(CR]8&L%P$;*HSU],1O&\1Z$9"+ M(:R71^@GQFZ$L,'\='%'2_%Y^9X^E1NZ:.(+4%:D-)4%0#"A6G)A"$B>)4#? MR3.((64D$3XW\[.S34TEWQ$;&6K!YV74T.LGH,Y#[":3@@$WL!AZC5FYQ6R M0 XG4 *)FO-SC2I=G-A^+5#<7NHI0VQYC3DD>2%YFH,LS;6PR&(*6)JG0*@< MQI(FC/+,)TZ@'G9J[O][,T=36,=3#M0P.6YX;^:'WMGG.?;?O'L,AMJE]:#C M;L<]1@[VW?Y?_0O0O3>EA[=F7:&8T._EC\TY3^9_SF#&5F^./ M"@@!1(D #*(,\"*C*4)QXI@-3 M=W"T!Y8;EOY97>9@%ED>+.JUI[S#1K3C(_K#[ M/#9%T,T#396IK,@%2B'@+$L 5 H" N,8X +RHD",B=@K0F!H@JBFJO2#-BMC9CII M529=P_KI3+1=U.$II+UE'."#F6P&)G=DJ\\XX!\:CD::M^?1\VATO\MW\#F_P?MQ/? V_OVWS_\GC&;-8\7._*YA^[#=D9:I1M=TAZN[F._.6Z[N:[4DO;$F*L@+C( M*05," 4@C'/ "$( Y3S%.$GFMJ6VR4ILBVMV_: _1J<'\'7[>P- M@]K 6W8'V([, 2JO7<8B<)/S(Q.]29?STPR?:G-^YHTKTKM^6RV;J,FY M3'D1(QP#87NY*,@ %E@ E*1"I3)#1>&?R75TJJD)BMHV:Z([@9[NL1LPVB.] MZSBZ;F(B#&8#BXD:K@Z5QMS=TADX ^PL%B&3P8Y/-'Y>V%F&CZ:(G7^CGYBP M)H5WKTT*':O7NY?=(XU1S-8SJELS?UZN-]5S77'8D'C_C2YOGVS(][_+]<8T MAZG-$:_2SG_1XV\^: WY$RVKVBA9%"1-*1. 93D"L) %(/HR 1F25%D^B\8 M^TBER7 V-2%8DV]K9HC58D$KFQA01_5[EL^8#,:.4GMWEU4NJ;O MB+TA MF-SZ!SK8IL/7J.?H=-@^<6Q/C\"K6E5_D8]U^IB>59GD*;U*M]N%Z0)! 10YX3FG.,Z8E]W@\IS3TSD,K;:"0$.] MYWYWP=GQAAT6O:'OOC6UT9;KI@?C_B\Z3]:WL39,\/]K[EIVV\:AZ+Y?H64*E !%D2*U*=!F M$J! T :9[KHP^&R$2:S"4+,=.;(M4*$4;!P@D\MQ#^_!U'__H]N^7 M+I?&Q:.\=3N_&[LUNS!&R_6""I)2%[U7**J'/;?7C"DFI#6QWSB3C%8R=\#OAI[3S'>F11=N9\N% _=HG8Y/VD3:)T=X_ M]]]H67ARZSWKB'C?^/IN$N!T9"2.C:2E(VYIW.F',6*-W0G!3UZL=_J!.53U M]PU0#'1.TFN'X'I5_2Z55I__NMQ-7Y9;'\)/VPG*+UNYX0.OKOE.FO2C97+]\G6B.3)BE$R8@XG,9;W5#B :;VJ!A/T MPMMJ>$O#%+&]QW&7/]72*O*FTB)62E/!*2"%P0##+ .B* PH\AQEBL$,%D'Q M$@=[F9NN;2Z)MR@'EJX\S*B?7+V:IY$5*9RB8+$Y24$D/3G,(YP5- ?&+HT 1C!W4;D"" &E1"PMD XZX8R(;6XB((I$=2TYC()M7@$2A]KMQC=#%,[UWLXI.[SI5%]66M[^L% M3 VD*"\ S9A+UJ84$!)S(#E'2")58 Q#M/M(/W/3X3:4&0)@W4P/7> M,6+]M#0"72/KXB"F@N6MAX=(4G6LETEEI\?4YQ+2]WC4VILORJM]YG4I%Y*@ M%.:Y "P5QHI$J@'+*08:JQQS;G)D@@)R@GJ?FW0TH*)7=#S"/),XAYG58X60 M KB@W.[$4P.(@0J9'"*6T85M251OSOTNBK'9?XN:FT=&R$_G1V-]9/4/K+?9 MP!^]VN9IUL:MM7FD[SE4VCQ-BV>=S9Y&PO.67C3E.<[;8+"M7X3+/O!0+U"* M189P 8S *< (45 X>1.88Z&,2$WAE5>\KZ.YS2$MUF0#=L>]IX7KG^3T)+NG MI2DF9V.?.PZD*R@CJ@\7@Q*DGFQXLGRI/N;MID_U>G[8XO.R?-3J>E5*?>YJ M\'"YWN3 UQ@31@T!A@CF0BPAX)(QP) IB(28"AX4H'&LH[G)08,3/"S+=?++ MH6UK$UFX@7Y 1XGU6Z3$H&MD)6B9:C F'<@1*@KT,1%IC7&TFTF7$WW&/E\Y M]#X_H "@R]YTH\M[\;"JW6E7UW*]^0*G.$\)@A@8:0I@]YRI=_$]$F%]P;A5CUZCQ) M/%FXKJ^-Z2K8>5JS5\K.]YU!4KQT*SW[Q=J[JKC@JZ7=%GZMELY#9:&IH4RK M#%""A%VJR10(91=M C-#><8S8[Q<1/R[G)\L=Z#=%W_GEO"LN]KU/'<*8-U+ MI"-S.;I4;VG7.0:-_?EVUV9KY4V^YDN9OF_Z:ZN[NL5BY_PP)C! ER%[W$Q2(: M0H!(F08I5%2PC K"_4MKA_8^/RG?XF_<-_8LV NY.8?8^FT,&-C(PM-WEAVY2 M &U\F+K([4^/9;W()*%%SC@P)), L[P 7(L"* U3"7F&5!94$/9D;W.;+CIL MR0^'+M!?Z#2O?@>UT=@:6>9]B0H/4O-S H[_RET^^(C^WBSE9Z5MM]ZR_75QN=:^O MJKK^JM??S'?^>#A^=QNC6>@4"91KD!GHS@A5#@J"(*!"%X4D.23$Z](F'J2Y M2<>>,4G96!,8.QMAG/R49EKV1U:F-OWK/OVM.J)"^R0DD=YFP=B=QI7*O'IM=OFHE$V=@'F!U7>S!'\$3RH"-6 MKIP3/4V;V*;?Y!=9:#Q>&2;%UZM*:JWJ2POSJEK^_*Y7]VZ)77\SYRNMRO4B MU5@@24E;VQU3F0'!# ,ZP_9%4E 9EBRAM\>YR?+G:K6J_I3+GYN$,/_J9>GJ MSS9@DTLN74V0OV$ZTD^[GYI$)7-D3>FPMBPZM,#!31J\;BG:(HZG+=[D1%*8 M_OXFU1EO\Y^KC?^+QS1G=PSMF_]]?-?]QWZX KH?W_T/4$L#!!0 ( (MT M"E?]B(?X['8 +I0!0 5 ;G9E92TR,#(S,#&UL[+U9DUM) M3).;I_C+ M'\/YUU_F7],O?Y],_W/XW?WR8>3F>3*]!OC7Q3][,?GV+;?_G+U_G\VS_]^NL??_SQCS_\ M=/2/D^F77QDA_-?UI_^R^OB/1Y__@R\^3:VUORY^>_O1V7#;!_&Q]-?__=>W MG\+7=.U@.)[-W3B4%\R&_S1;_/#M)+CY0NI/TO7+SD^4[V#],2@_ LJ TW_\ M,8M_^==_^.67I3BFDU'ZF/(OY>^_?7QS[Y7C[_(?P^3ZU_*[7U],$ M(Y>)? MS7]^2__RE]GP^MLHK7_V=9KRO_QE_#V5MS%.-%F\Z_]>_L-?[U[Y;9IFB),% MBV_Q!ZM_7]YRU.O3CWD:Q[3D9OWPT23<^]"HR')R^R]'SJ?1XJ>#F(:#Q5.O M_&P^=6$^\%H&$5T"ZH@&X;0&*W@$QRRU.9&02;S/;:%VAN0N1#]+X1^_3+[_ MB@_^M4B@?+$0Q4(,CUZW%,EI=*_7VF?\[$!Y%Q13&:2T'(26!@RN N#1L2AP M =B@SR)[\VWWJ=Y4Y=4T_#*9QC1%8[%^G9N&1VJ]#]/5)W[]YJ;X( A?AZ-; M&>?IY+J&KN:3"I);J@7)_>#8O@5X#6R:K(HL3=7SETHI("HW($FWVP,4MBE*^S.SQX M\T&0$.U#XBR)]HR*5^/Y MR,284^=M%P_?>! *9+LH.$N"36C_8_HR+$(8S]^YZS0(B1IJ2RB0(]HTC8)P MB0C@TD4B'.&&GN3&[&\^G/ M%Y.8!EI:3R4WD*,U(+B3X)56((Q&GXAH;CRM (R]1!R$$]TZ3NK)N0G8?'8_ MWD04WS /EWF)E24,RFEFD/Q$(P614HF>9(3D)<' "G_#207 ['C]05 QK4.E MAFR; ,E5C*B"V>JOM\-QHH/(A=)&$$BB.$HI1?#.87AM0[+,NB1E#8!L>?5! MX+"M@^-M&'@M;+@)>\$&.RP]!5Y?L@X M3J@M(>,%?OE^^GGRQWA@K?%*20+H.@40#(5B&%> M'.>O:7!V7JXN'OQ8:AH M.*M90Z M86+A-+V??IA.O@_'(0TBC=K+E"#2Q%$N@8#)*"$JH^&<)Q>, M!V\_#!T-YSJKB;8EB'R8S.9N]/\.ORV#2<^ZPDUI[!4:S>U32Y!=W&,F^=U) 8.DC"" _.6@J929E< MCD:R\QR,S;<=!H"&,YTGBZYGE9=S\M&'KY/Q.C?GN4_H!@4@7F'4)"0%$YR# M9"/!G3 0%^19:G_XQL-4WW!Z\RP1]JS^3RG<3!&ZE/G/P_DH#71$VH-(P!+! MV"B0#"Y1C*%#2C)K3K-59ZG_X1L/4W_#>;KP&EGTKWZ$KV[\)2TR M\2+%H%B(D-!JH9NB,EBG"*@0C4Z,V\C.2UUO>^MA&&@X WFV*)L(!U[<3(NX MEF>S!=*H@YO9@+IDA:49F"R7 J7C8 QE0$P*A%-:PN * <'VMQ\&C>;SCQ5$ MVP1$WHSQ:2B.X??TTLW=BJV!4\XDJAU$F4MRA"0PG%A021/.K.>!U3@+W_[V MP^Y/-9^(K"#:)B!2#OBG+]P\?9E,?PYL1B\X9P$,(0Z"(OG." &*.1F4(\2& M6K+L@F[]/)'_.O+R;7W]SXYP!A MRTR@ 0*7Z!RAC4,X1P:6>J6ET3FQ&FGHK2\_#!?-IQG/%VP3^/CT-8U&:^I] MMLSK@!)AY2*0RQ9W.ZH@1QFL)9)'5<5,;+SS,#0TG',\4XQ-@ )ORX7?";A M/S]]1;G-WM_,2S5/B:P'WB>7))/@C2\']9Z"SY2#)&CXC(Z95;D=LX^&PT#2 M<':RLIC; U*;NI&;\8Q_?B?Z>> I"1Y)AD2S1P9T!E-GP[EQ-9:9"?K,^_K M;WWM8=!H.'-YOC ;N;#_>C@+;O1_DIN^QI_,!MX)3J)QH -*13CI$-H8; ?F M@R/H-J,?=18>=KSX,$0TG-*L(="F,+&L15DR(;2VDJ#O3+PL>Z/5X 4M![&! M1F*]D>&\#.?.5Q^&BX;3G'6$VC,RKI"#N.!BY'#3BR'H;",0_!.$4!)L3!A= MD?*_'+W.YR4W[[WN, 0TG,T\77A]WVE8IM/N+-JZ,"THH@D1!'3.M*1@*1@1 M%;"@+,^1:1O#>?<;=KSYL#J_AM.6541:#1;__.LC.;[%'YQ2GO_^W:?W;]^\ MO/K\ZN5O5V^OWKUX]>G?7KWZ_.D^S0>6[.]\V-EE_(>1>69I_\T,OCCW;;"X MZU86_OO\>CAVXS#$#6"R+.:[19+)*HL0,,[D*BW+>-!71"L2&.BF5-OL/F\Q]ZE>V\9:)Q(DUG%D@ MA1/A0P1OLX:H,@M:$$Y4-YAY0$B_T#E'LUM!C6.Y:]7_]_- M\+L;(3.SJ_D+-YW^'(Z__+L;W:0!#YD)$SRX;!B*B90^"EQ#ML$*9:Q6>P.6 M4[!S$&$M8.DL $RZUD8#$+L*H11,SCZFD) E/TKOTGQ]MAR5C,2) ,R5>-Y& M"LY[A9Y?9"PQD4C:=PASDE7:0T\_C5"Z U0UV3> HQ>3\4(@?Q_.O[ZXFN#<&1.K']_2>);0!K^??UTQM1;=P#@GF=8&&$.^!%<9?& *+%,)N73. MYWUU"*> ZP"R^NG,TAVX:FNB 7#=)UYIDBFQ :BG'(G'[=O+G$':F#SQ*KB] MU4UG.^+]-''I<(\[6;JG0V,R=Z-*=F?R+4WG/S^,'(IC'(O;]ZV$MOCU,K9- M;Y.;I8^EL^;[_#=<$87=JXSHQ,W]YOIF5-ISODS( (;!"RV.X]5UN>/Y7XMO M!Y)&ES'Z!M$KB^<56[D-%2" MV$_&T/\[>3D%3(?0U8)+5P53U970!+1N*><8P^AD.-C M%1I6HL$F[D$':52*EC!;.R X"B(=.W%5('*2,%O8I>ZBDG>3<5AYG]8G0D), M0)1/(!BR8RS&OUQ+D6S*C)A]][].VIVV$=)/B[XN=J6SQ=P 5I;T#YP7AB3J M("=>[BKPF8\3]3NNT1Z>N#73R.^SHYVZ'SP]%P/DPS M=,T75U^_3D8H]%EQ]N<_;T7#G8O,1[1^(95:O&#!"L]!NQ"TY(HB@Y4!!G2F-_C61S(:")L2H52 (L:6PT@+S@6)>[I& MSHP+?N]-^1/1LYV8?C>[[@!40?0-8&C;Z>.:JY^#("-2K1SN_9&7ED<2C+$" M) \D.>^EI[4O%.PEJ-_\8$=8JJ>"!O"T"#&W+ OEA,FA7"V/-)8[Q H<0?LJ MD[74^J"RKYT_2#X=&K[33AVA,$+*:\! MF+Z=C+]\3M/KE\G/%S<,OPU+>J,<];SWH^&7!9.W:Y!S3:A#F69<;L4C2&"9 M#>")#9&EX#W=5Y)T4FQX#(']IC<[ F-W*FH!?X\-O?3.<24%!$U05B8C!XD: M8!%]3H-V'S'2>0*BW]1H5T@Z3]@-I$Q/,,P;QP-[RWY=3J$-&+N'KNT&)R8;+JF)D+4KU]-Y!P/-F8XV,4A.65C.NXP^ %'*&T*$ M9'N[6G7GNC43Q':8XJ^OHB8NO+Q-*800=,:9F9<-'%]AF M7"92P&X@-2@>QX?QZ41F)1G;M18;"2AEJ M8"PI=X)<**8U@N4A U>&9XRD)*6U3Y'VD--,<-D=CFHIHP$':Y^$K-)&E;YT MNIR0^9# 4R]*.S(CHQ5$T=HWM\Z\BE.]A=-%455)%0V ZL/ZO0N6EO7;46HB MK2'@)@&@'(5X^("I!M] M<$,, U;AYD!P6QHP:^!9B\)&1@XD;L &&? DRE#]!L0.4OK-+W4$FQIB;P$] M=[6#BQQ9Z=L\35_3>#;\GI8QY=O)K$22[S,&EP.E6?!4E)YLR1:/SH'1:$HC M<1@[,.JVNM$P<%$] ]M4-(ZQ;+8 M._KJ_(S3+LKZ3D)51L[^=%05]33@5=WG:CG%Y>IF_G4R'?Y7B@,TYJYT=\-= M/HO2^:U<2I0)HF+*>*LP3.Z@3=H>BOK.7ET49&>IHU%PO9G-;I 3DQ05-D6D MWV7D1%APB7EPZ$XJ3D-TLG8DN)N:OG-;/8#J!#4T"JA[,Z<2TR$E-+XFHWM: M;H!Y#'.!,2M#(HK5;QGZ!$E])[)Z@-:I"FD 7QO'"#LW>"]\Y%H),+2PY##P M<5%$R+CI!Y^B]JSV!:D#R.H[B=4QSFHKIBVL/=KG!5=)9W0=I7888>>,HJ+< M E,NY9P<8=1WA[&3?*X.,UR7P]99BF@14ZMMWJIH"),$LE'E_J N&S[7H!V& M(]D((4+MB'D'*?U>H[H\EDY00(LXVMS3E6O_ZW:O/;]Z]>/_75U?O M7N)?'SZ^^K=7[SZ]^?=7RY^>FSP]YE4UDZDGLU@IN;H\8KY%["T\K=8\1QT@ ML"1 "!? ,U&\)ZLT9=3B'Y47] Y2SC^"_I[&-^DU+M-M;2WPKU#Q!/([#>Y6@,YCT^HN]55 ]OH MR^$TA?EM,^87D]E&[T0$A4/A$9"JM+@3T8-1)F#TP@Q1@JA\1)<7@&GVY\J;Z^&:%[./^4IM^'(EKXLLU'\47 M%8H>(OJ=1#!<7)0^Y3WM?GR_9J,Z#"K)L6\D+*X7+H6SD,F 9*:$3QZH,;1T M8Q?@./&0A=&!$9JST0>!X.&3^STZZ4;_9TFO@->9%V]KG<+'?V>AW2V;9PM\@9NS/T^G^Z*FR;0 6MZ!>37&[6S!>*)\, MQ? K*#2+WB@P.090U$6FH_ LU'9"=Q+3KUWI C)UY-ZW)_+)C=QT>=GS[^Y+ M*BV/\?$C#.87/_LMC1.NB=D@6AG6Z[!.8SQD4-%@\I.Z7R8EWK8 M"_L-7RKI=M*QH!OP97Y'NJ=N5,:@Q>OA>%C$-!]^3RO!#:BVG-"@(8=2$)JB M!6." \DU#28(RJOG+I\@J=^(J"ZRNM!" Z"Z/QYMS83(3*I,(R2^&(L694DN MHI?/K2:2N"1,[4/WK83TZ_UT Z#S)=X ;/;-963&LR@U!4=*GBBP #9'W.D# M<3EH*3RIW:;PW(F:G7E#W4"HEO0; -(C 0UBX"JR5&['86 @(BDM/:.&&*WA MG&N=3.U>-X^(Z/<*6<=VYR1)-Q!]W94%KP_*AN,;Y&?%V&0\^RWER32]&2,\ MTVR^XG/][?*?W[852[-7/U"HJ,OAV$U_OL%P9=%%L9R_H;.(SUW_PT7;,>>\ M%R&CK&3)>Q&9P96FG320D"B5AJO:68 ^^>UW 7010SX;]#2QTN[)8% N^V7A M*"@G4>[2*["..G!*>4%T3KYZJY8')/1[[[(;/)XNX^,A8I<0&:!^)$(LH[UQY3!)"5/6165J]WKID)U^+WKV:TR[U7T3MG+% MXFHAK[)+ XSS$Q.60C++EA+EH(QEL"PF8U#FD=4N%]Q!2K^W0KN#WWDR;\*& MHF]PMY2*2$0F0@"-939"1$9<[K'?,U"!)T! S62JY(1# V9RA3$1/WADA:N^Q]%RV'G1V0YX29*F)O M(+/RD(_?W&P8!D9&3@@R$9UV((R1X /SP'QB5L?D":M]4+F5D'X/G>KH^ G@ M'"_P!E'SM^GVW]/PR]?D>BK[Q@"?$FK6IV'93IWC9.2I5H'#UH19(V$DH6TR)_1 MBJ',$N,/[-".0^[CWGN8V7D6Q0-=2[T!8_2 NW9HH.? M0$K.06B#WC]R!0[C216SCY[5/O\^BL!^MKS.83*YE,[:!>3*7C\N2B3!*FNS MA4A*K6M0 0R3"8C.UDJEM66U=\TC2>QG-VT$E%7TU@ L#VFAB[[%<%*FZDS+ MM8.7:?GWG?MBA:9.EHZZ"1=BX@Y\:3V8O4P!%RGSOI,!;F=1?9A%?5:56A=6 M90/@O9^CT8D9G5%B'-=@&;+NP7)T>24SD85LM(^U<7A\#JR[RY 7UO[>=-DQ MJF@@7;9+=J\G4[3^X^7$V/#S\]2-9RBHY=69Q7>CI7[C?]S,%B-_;B5=KM7@ M+^;SZ=#?S)T?I<^39>?/@3#<:Z4E2!X,AGM, T9[%'*R,1E!<-^H?4)U409[ MOKK9[SIH%TH-V.LM"I#&)D8<5[EZ.]H]Y/1\ M>[1?#-=24^.-I3<;B;SXMZMWO[_Z].;=I\_O7_S/?WO_]N6KCY]>_:^_O?G\ M?^YS"BAR=-P3I4WM MF[X'$7;^?(752SX70SW((N&*(^C/^S)\)%B'RR4R=(12#"9SKDGMZT_W*6BF MG70E+#P>L7"RO!O8$&^I7TJD&-[).)7)D3^&LY+A(LD3 LF7>;6Z].^/@8.5 M*2JJLZ6B]G7FO00U@J43-+T+-&>+O0$,/>#AY>3:#<<#%KR*4BK A53&C7(" MSB8-,E"12 [,L.H'_=L(:00SYROZX;G;V5)O #H;7?'^FDI>5E%0ZCX)3Z4+C%8\ 4'?'_-4!5$_Z#=B< \;WK1@C#AF0 M:(^E"!Y$]+C#"Z'!2!.CS-9E7]O].9BX?O,#'4"L$ZTT +>'$_Q67,0@F1:& M@B46965C&0J)(4=VG&KIHG&V]EG!=DKZK3&M#Z0*\FX -;=^XUOD95%Q,& L M$J$M!9)*E;7+N=1/HE \D3P%&GSU07>/J6AD;D_%".PT 3< D8>9US?CQQF. MCY/1Z/5D^H>;QD$PT><82X,BHD 07^JS3,8%469=E:L!O/9N=B2)C81J)R+B M<9U'9^II 'V/[YUH2J32E -E)>'O$](NG 3KO%&.YNQD]63123>"NKPAV9W* M']JOL^1_,H"^+0Y]<*E,YY7VN4>30[-@*F,@"AZ-.0A*%7@F'1IYFY5&5T]R M47V?.VF$:Y>7)LUQ[5E9^\"H M:YYZ;]!X,90WA8X6MN\BZ>50FY<9<-;"Z&L]/EWL0I MV5ZK?Q66CDSI<#((-'+T5-"GIPY29YFCI)S-,N"7RG029!U"7.\M9_HV M:V?JJ^]JVGW&>I.IA9$NGW/CD):M]A,UB1CT,J0,$H0A$HQ5 D@0'KDT.<0' M741VM8\^F8;>.\YTCKY+*JEO+%Y]>/-BW= @Q0_NYZ+8:3IUXR^+7"_&<2,W MFPWS,"Q[/ZT5@ (NW&[$>0,E*4UE]+72 GT([QD8JO';J')RGE*D_B!P5B2J M][8WET%K7VILP!4\Z"K^G@H-S4,PN#Y!Y*1QM296)E\9\"H1SF5RQ-3NY74F MR?WWY;F8 W!)Y3: Y<>'%LYIEPWS8$,YM)""@HLI C'9,1)-U+YVD?F)AT9_ MTE.C8Q1P9J[_U;A.X[DM)Q;:6T;+**\02O,\C.G!)0SOM2,AL?AT;'J* JD"Y0FW7UZ=]>OWW_]T_WZ3^S$NOVH9W576TGNWZ5U0LW M^_IZ-/GCKM>[$M8$=*@@:\9*%P$)GNH(U(E$@^1*J]I.QSYZ*J3CRC,_3"?? MARBYWW[^#;W0-^/;KO1783[\CM[E1K?[P".G$>,C#-H%"!8,N, 1&XHF9FGB M,=>^K74\E8U%VJJP%'ZGZ>DIO *=$)>.8E(-<FB(\1?1,IXGL'X24L'H?A*-UCZO/D6'D2F874'MEVNES$ M]*((0 &SB7%#E.:J-@"[X*/?2S\7QG'O0&C C&[.(L*O1VGK4"+-DV#& R48 M7@OFBY#16?;94N\I,=K7/BHYA*Y^C6[_Z-DS5JJ**GNUUHND9S$(7TN&;"$23RCA[DL!9B[&7E6UJCX^ M;SLE_5X4; YZ%=35 .A^NYD-QVDV0Q[\<+Q@83G]YPM*&K^:H2BG*R7?GBS. MUH8?'8F;1:IB^S]Y.W1^.!K.?]*!8%(DS2)09CAZ&1@=VD E:"9,=M0'5SWU M9^O9K,TGR$WSLDDE(-$ MRL$EHW^N-S:&ZHOK.G5/UN6*DOWS[QE"WTO;2 M_7B!/QRB Q6"\2F!L-+C$(L^Z=KNBIVCJ]QYD<[BLJL(& MS.1F9N)]?HT;"$IX_&5YQTZX*++'!6:"1$&9H,&J5-+,.:+4N#75#[3WT=/O MIKB[EJZHL 4HQQ,D@Z03[],GXD8+17HG&2O*H/R M<.KZO0G9'$0[4FN3@%UG05#N:?A]T1K$,$8XAJ%0VE.#\(Z#ESH ,2$'Q3RM MW^+\$+I:ZT]0!Q-/0N],!?4Z[G21 '[,4HG:BJ3^/IQ_?8%+'Q?YM,P3_ML8 MH[91BG>LS@:)4"I#U!"(9R!(S.#1)0'FDA61TJ3-@\[B.[+U9Y'16DN#JMB[ ML)::&,#[F-T/T_3-#>/:4UY-&$8O>7'/>!G!#8CPW@02@0=N %T5 U[8#((* MY%PGPJIW'CN-TM:Z$US(6%978J-@76\*']S/Q8Z 6P!A5 G(V97$ CK/GFD/ M1$HCB+&*NPZ&CN\GJK6& 1?>KT]13?_GYEOYF=X@&:N4ZG"1.5@LI[>3\9?/ M:7J]\:L!C)_P%1%!>>R(4SCM)TK%SODKCV8O2E3[.0M0^2CB2QM3R>:;]IWI$(G+ 4+*:-\S$^"B4:"LSR)J*D7UX34'$]=:GX +F;X: MJFH @X=?MAX(P9-VU(+V$5<7>KS@.;<0F$PF9N&2J#T7[G#J^HV1+U]ZT872 M&IC_N8.S-[@CS'8(TCC!N-,1B"6RC/!0X N;S@EDE^&B,[4/8XZGLI%VX1%-$ MF%:942XB4=(2(([B!B-I DLU 9NE8]0;[ZJ/27B:JB8KRSJ#8%TEM6@-D2%T M.N8_/XS<>'XUCJ4'PK?RD8&W-$I52D&L6/K8X%W$@$S@HE(Z*$MJGZX<3EV3 MWN+%+&$=I35A!P\7Y8!JFJ/V 3PKE_0EC[C4)#H[BN<4?.3!7RA\V4)=O^*WGI M\*66NEK8L#=1SO\[O)/-V>GCMKA3(N0Z9EFITK?BX3 M"7R*1B2K ZM>6K"+EB;CD*X05D4A3;A[*U=VT5[J M(J(&$QT%HC+W96J)XK4]P+,(;C)*ZKZ)V2@ /%^. ,!TS"8.Q(:0W$S*\R1O(8VKWZ$18%X1\1[>_' MA=GR_Y*;^NY&:5$TL9YOL\C=C^/]'VQ\)11 D&Q"!97#E5K ABAD: M3&2I=M5+!VST:VT[B[K[5G@#(=)9S"X'5#R^D1)&-Z63]:98EZ(>9"J3E\2 MS"@8D90'CR(!$DS2RA$7JQ?17I;#?K>"SE9*PS!I8.,XSV)8Y:54/()W)6*@ MN"T[*Q.0Z&2PE$2?:\\2ZWXSZ.R&<9L0/TJ)S0SH/8]EA^$LHU*!8T:4>M&$ M.YT28(TR1@EM5?#/#K>=751N%+?'*+&181/O)N. 7-P=THWC;?#Q!F5\)U9* M>9(H0 B<:Q#1&##9:C#!E-N()NCJ)PH'$]?O9>7N#K(Z44[?,\MV) )?N>GX M_2Y"'$0NN3'<@),.77^&4;41W %1ACD=0V;\P463'448![VNYZ.I;O0\ MZ53H#<1;*[F]GW[ 37SUS<9PO]5YR.QJ-KNY3I$.!"%19&3/YQ).EJFGGE@# MUG'.(I&&Q]K3F(XDL><#K$YQ> FM-0#*C!VL.?4R!2IZ] @SU/0@K"?C@491$1<)2 M<$X=UC#]TK,[NSM5ZGY/[4N!#1BY51'>HDG\>S\:?KEEL)3.Q4'0E&53,K6I M1$(H5(SEO2DY)X4N1O*,U=YIGR"IYV.EBYC"FEJI!K)Z\^O>3[^X\:HMH1O' M=VY^,TV3O*X 6=7)E0GK]W@X;([=X0\_=Y[=B6Q4FFNWZGU2)F)/1L.P>9#) MA?/>HV>52I=S#$]-210;8%Y:RXT.,=9V5G93<_9J4H9ZG[=3!Y*/IP\U H$%C^NGF^MI-?T[RIR'Z(,5%0=_E$;NG M6-(#GWRN&3V%@>YMJ'&Z5$EXH%J5024A@9$N@4W.!TV2RJ&VX].=#=TKV;N5 M4%S4S(,N(^8=NA4R@=/$0#2,:9N4U:;V!+'#*&O6JAV#DD?Q;GVE-&B>2N?* M>PQ.)V/\,BQG3)QBEIYXXKGFZ!B"*YFA=^F/7>_#O6LYAV-VV^UN\9DA1AS? M1AM(3(PR'P,!E1G").$?%N--B(Q2(WDP1->NYZQ ]OEW)4\FX6Z%*=SS26E? MG8)%UR0&!\9G"=X[EFV17:@]S:D&W7U7X5P6LX\O7%Y8\PW:UG+H@YS-,-!< MI*].L::/GG&N_=Q/5"6+N7[)A]5+;B&E+>$N$@F4E^;(1L9RS58#"Y9F=.2I ME]5OENZ@Y>R+MP^>>P?;9!)QY.*0[R0/;^IQS[<;3Q%6R'5NFH94,06GXL?'N6R0) M*66F04#2M P $!8LLQ9X5$P0JY5GM;V#XRCL8-S@R^$LC":SFTWLD^!=3$%" MLKJT#-4$C&86*"6:)DEI4K7KG0ZCK%\+U"&:#ACC=ZZB6C12BX$';ARWC88X MQ5CM>][91NM@8BL9KXWGWR4AF&61:PXNE^Y85"0P)8O)N;>,9F()K=W6; L9 MYYJAMQ,WGBW*GS]/$;_K=MH;;]H&=I2HB-%0<(K@/N]+@R8I!1C.8C*X5:=< MV]\[B=!^C=2YJ'EHB;K758.&:=V6R6UT9!JG^2DV:=>CSC5'!Y%8R1+M[%)U MBS"/OK(JM"P9?L+M@&>,2YM7 P_ M407PN0">.\C6TD"Y"PC;2PF@.9M4%S];NK9THZ<&#=/ODTG\ [T/7/5O\$GC M+T.TP*M^CB<8IWV/.]= '4QJ)2.U?M_5X_?= >$6<-$)00R/$")G97P,!V,D MP6^IUA$W*)9JMRH^BL"S!UX?\K*-[*A/F0=+RT3'DD/1 ;QC#!Q'263MC1"U M([[C*.S7@'6'K4>3KKO36X/F[/%HG5.LV):GG&N\GB*LEF.UOC>_N+8RO7&C M.Z?=FQBD2P[$HJTCIQ(<;E"E606)3FEANFB1M(NP7XI;QG4JE;0R@A!)@74>'6^I8I3:L<2>D?UZ MF?S6>"(S&91*!FBBN*)TSF HU: DD13C&!US[;L8.TAIU_X<@X2']J>&W!NT M+SM*.T^Q*[L>=:X].8C$2G;DQ>3Z>CB_O=&Q?G.XM[G<'?AR7=H*:2A^-@B" M*+!,9= F,T\9(L!5[[MP#('GI\?+P<_Z%3_O7C ;9)*4\-[B+NZ1=1EL::XD MP >JB#,A.58[;-U-3;\6ISO,/$Z!5]%'DV;H5H;N@0Q/,T6['W>^.3J0U%Y, M$A>&AC+?T!,2,!C7#-W=\D=*RO&L/,+N.9ND@UYVMSN7-4"BL9!DF:526AJ; M$@SXH(,HFM07.V*"M?%/8BWV5$_S7G7K?Y\V7?4RCTL.VU#+/%E?>_$8A])W/;E/,,3 -W@J%/GM0 MX&P4P#(CP0O-0_6:F/,H/CO ._3MFX7CFZ5E$0,;)S'(29:#8"R"EY*"2E+H M:)*(O/;=L3-)[M<&7A"?CV+*"ZJZ02OY9HQ?IL_NQVE.WN8_/]<>[B2EDA&\ M??Z6;=6AJGR6 ;3RBY'HJNRH$EBR5F7MA FU7;8]Y%088/WPT7> Q;5@G&46 MK"\)F%!:$V#4 LY93[A+P5<_2MA'3[^&IQ8FMLREKJ.!!DW&Q_1M,IV7!-^G M].6,:KY'3SF_@F\_897LR.KAR[>55B"WOCEJ+T2)BDRZG+\RAAHV!"SUJJ0U MA1*UY^CLHN7LPN$'S]T&8^.#3"E9\*K$!TX'@2@^]>V(K)Y);[^"1C/CR#*+)958+ M+<,!B .O>9)>XUY9??C8P<3U7.-V.B:VMMBKKHX6[FF@*^/']#V-;U(9.5K2\T5T?Q_.O[ZXF\B>1!YEL:8]%?1G+ M4%JXD%@N?G%-3$*?N/:I\K$T]ML_N2,(=JJH!B.*AVUM/I]5\.1S=E\&N1\QW,A?9"RU@*>UQIS6P5.!-1&(&;I*CS-M3>#$\DM='. M/<=@Z%%^XP)*:] V;6N=<[I]VO.T+GK\=&BGCNS-@AI/ O<^,*GH7OB2FT<\ M:&U#3-PY5[V%XF4[_=PMC]7$@O]*\4U$+0[S,"W?NE0-0AK)V*CF6;!L M,'S17'L+991V\2TS+E4E@3I%K'-&L^H%HI59>%:]@X[!YV[+>'G5-Q!6;#$\ MZ+.^GDROW9MQ+G^5'VU$32V&]* MY8+([5)U+>[E>SI*G;&G/_W4+EMA=;C';VMME'46(J$31Y,(:)QX JMXABB\ M$0I_(U+M^N .&F+=F>QUO>VBFG/1>VES[,S=JS<:51)4A><,F"HEODDK\-RB M3^V3,I8;QVWU3NZGD]M>DV=;I">?FB'+;(Z-$S' M-3-"&#"=$&G&6E>R9 H,QV!01<^YC9'E5#O/>]%&67=;^/JUFUTL):'<:H@^ MEQN<*8 QN;10\=SH[%GPM7G?0\YS:H%U#&IV.U7G::2!7,0=*^@*#N?I[?![ MVK[4-SOG6)]])$!X*-?QD#N#$31XI5P(T1N476>@.YC,?G,2?8"Q&PTVN)D^ M;O!T^AZZ\UGU&[1UZ)4M#160SC' .+X1LDQBPGCBHJJC=^[:[- MT;V =IN -VL]G#&>%C]+06+NH['#J&FZ&= 1>]J8; MZFFG01OT1#.STPW280_NN!=;3Z8JDA 8T1J"4:9<2W3@,GI0*KBD&-Y^CTTWEWN=UTY2I0T-Y9NL;%83+ MDEB@S,ERNUJ DRQ"P%_08+WCNG8%7K^MF>X6UEU7GOM4X'N& 0E9J/)OXR&^ M^P\W10]G/OP^G/]\F)^QU(FH*09#0I9Q2!Z<4A%76&#.:F&BKMVJJ3(+S[IU MTS'XW6UC+P^%!NWLX_8GI]O8G<^JWZ.E0]NZLQL'M9PJRA4$X@,(5D:Y!L) M$^M,SB8(]6PZM=PM@@=OV+@E]]O/U2_OP,Z3,H&B/Q$RP_A.EH&47*!3@3"/ MBFGJJ[>8.)'41CNZ'(.A/9:K,Z4U<.*U42G["E?T=.Q&ZRI9=(%_3Y,O4_?M MZS!<39-[F+-4(?.H(@&='+)*O 7#& 'JC8A*TRQU[>;69Y#;[PE8)QB]E/(: MP.GF)?D%T[_]_*O[C\ET@]];V=[;MC9\!YX\B8J""K;&\CHL!LI6';UO:2NF.FW%KMCJ/>I^ 8#HU6R65[W,LW=<-1A MQ[K=K[Q,"[L#6>Z^IYT/V2K'$TA5-K^2EO29F+\"%-%P[".*2[*RBO?GQ+)4OZ>7B-'WF?/^%/9QG?OC[Y&%#F/7-) M0?2Q3!VQIQOLDJ?F XB0L^G66)"YL@L\Q!I&3 *)I!HDERB?I(E7_*I3B7 MB'[3I3UB]Z+:>Z8H?3DIGQ^$& @UO!QNZ'(:FQGX4JCA-8V$8>!AF.P2ITLR M^K&REX5)!6R>H+.^T;DD_/TX_35=^S0=9(JKF3@/1(2,'AG!F!)_ -()J273 MZ);Q@_#VX,'/#T&G*'-22;)MH.+S'Y,5[RQ(82.62*./,I L:1+DP[6@6P%CP4?!( M@Z@]+/0@PIYYO'PB:DX![U$J?"ZXW"?;Y=9$!R:69OW& ^>E6++\89WAN"\% MR9T60;'FTIPKVI]Y1'U!=-<&PI_OD&GP@+>+'#,-:-\'30_9OCUJ^K4S%:SG MA_SF1@6DL\Y/^7:]\#*B/XC=[D_X).Y?+KI%^UHT,:HTTJ+4EPQ))-8GQD7M M:L/.3_AV3:-Y]2.,;F*Y#N]'# 17OW+14.'Y/9UB[)Y]9>ZK&?J([ MGZ]A/-'.4R!6)Q"$J=+Z+X%CBCK&+1>Q^CS0SN=K7.'JBF4L TKU4PHWTT7K MDN4*2'&Y0JZ_W2P5]WBRPRJ2]TH%$5WIF^)Q+>*"=($(2-8Q_#L3Q6I?9:O+ M0:O3.(Y W)XK7I=6<0/1Z)D\__9S^P,6QSK1F*0M%>"S1ZW(,IB52OPC)IF\ M5TFHVNW@.F2GY\*N'E$Z:1,RS:Z>=^XZK)^&!48\>F+,4C+8*%-7H M"V7+:*K=QN.D\. M@C0H'VFY%;)Z*+6%D!8Q>*JN'X5,YPJ^ ?2(LFNFO,U07^"0!X!OFPM6&:;!]>Z6Z'5U;,EQW] MSMKYM/.8[CK?YAD3F@=T>;DHU1F*@BMM,&541*:8A5.U-]G:^;;%G:MW-]>E MF]QD>M=OR84<)?<=5M*BDG)0FB*7XX:[^>+'D!L&F+#0ZTZ0T%Q2&HT55Z*@C MT\0+2WRJ#OHC2>SQ*NV9:'@T1+T[U3PKY*V,_ 7(C'2,?#)1V302(SFT+.@ M1% KA'5!]H>]%9$]7MGM"WVGJ*?O&]POTWAR76:3;D@K<2$]"QF28 R$]^4L ME94V&\1EDS.-1AVTZVUY>+]1;?U][USY-6!__IZ&7[XB;J^^XZKYDG#U^#1= M=8F]2E?-4*^F M4S?^LOAWLX$E+ K.*/#%>")=)B8'$R DZ9!YI3&\K0S&\ZGN<6>LC= +J[ ! M8WD0QW<]RD<_W\QF-XL&KHO/#71Q.0Q3H"F390J;1VFC;ZJ$XBQ%98BMW:CQ M3)+[*6'I#ZZ5E-< 5G?L'RLW]=$V,A#%TW'H("M;SB\=H6!((,!S]-0Q%F6H MW>3A2!+[Z4MWR-JLX>P$?1^'Y MNV],>?M7LP]N.K\;)K)!W/(X4@E/#'4.E.:Q#)#/8(5+P)/*,?/@ MLZM=NE2)]'[SQAWB\?%>?7E5-[!G;S$UB[M%AO) D]9 RBFZX%J I]X 8S+R M+)@(NO8Q[@Y2^D5@+["8U-=1HU!;BF]]#REQ0P,-"704I90BHW^C-8?@I!3< M><)<[?#Z2:+:,(!GJ?X .)VNA[X3RBB.Z]_39/8-=8*^Y-L7JQMHELH@ W& M@9( D84%8W#ID6AE##2+>&"#HATO: \79^AP4EF@?8-BT;%V0S8K%@@+A H4 M0M218CSM/7@?,Y1N)DXG'?W#R%SHL#[WL3^-@Z341D=,76CX7^E^ &E-IS-)M.? M[R;S==])HCW3,FK(GH7EC'G+T8AC_)K0^#HNN3MH(SOD;2UAY%2E3KJ4< .V M9LN6__:VKD&'Z(PB!JCVI?\WGM4L51G?G8+>ULU M;36 O/7C6S*79NX0"?.%F7]="'23&N8M,0J*$(6^"@@D6C7W,40M# MDB>U:TJ/H:^YO-2)J)A<2$5-7$W;LD)?8#PRC.5><5FN4S>>+6FC@RP-X8XC M3[FTYLW4@8VX=(/2AE&=F26U#Q./H:^Y+%@= ':FHB8 N&=Y_3Z=S&8#GY-E M.911B+A!"*H)&&O1NZ6&)^LY(:)VCZ.G:&HNU]6YI3M>%0ULKL4A14?DY\+C MD-HIP:T$2W%U"$$\V" U<,YED@%E)FN/]MM\?W,YK3J0.5G$#4(T-@'9]>_+.--_ZGAAT*U?:06I3QFD84XH!J01\ M2&:,68NQ?6T+MY.:@\"FGAW8*HF_ 2 =X57>7TZSY7JZ&L?U@AIDSKT((8'4 MJM24)70Z65:0)*>"\3*LNG9K_XKD'P15_>R@VI>"F\7VJM;AGA#>#IT?CI!Y M=%Z4M519D#$2$*244N.:A6!RB#323!XFA3O"\%XR#\*J^9-@M9["&NSVLNW6 MP&VW]/G7]-H-IPM/93;)]Y.K;AS74BC]^'"-7I_5 Z8C2KHH1:@MH'Z*%U1& M/T%P#X$M:O29 $2R 2TB3XYGS47M,_++%B^\KG!"H+7U.KL(@EH,)G6I4Y=6 MH3GA*KI L@BUCUTJD-U&#KP#'#ZTV)=6<4->Q:,;T8$$&2+&C=&X4OO!P%.E M@#NOM11$"5X[0=EDP<+%(7%HL<(1^FD49O?OGVF93+;H:47#-4::6J+GXR@$ M91(C4IOH:S>F>*[%"L>H_NABA6/TT/?%F">O'GH:(Y,\@Q(2EY_G#%S.'DR4 M1B?#DLSY*4^RWNW.'LL7CM+J4;<[CQ%QWWC958N1*"-""PXD!@48]T>P!'&@ ME2*2!^<5/ZR0X9SBEAXK&4Y&1PV!]@V*'=480GJOJ:!@N<#(7P4+)F0.D262 M&0T^ZR>#T'.+6WJL+#@9$A7$V8"_.Y0;MQE\*+DCWRTAB?N M>/4(K]/BEAXK$DZ!X$7UUP!.]X0GO_W\J_N/R?3%R,V6\RV$TY%9ZH#34LZ? M- .K8P+B,AFL ENLAE!_3:*&ZV=?AM]N8 MQFOO"%& X8O'30 7L8F$ L\J:ZFSPHV@,@3WD-,LW,Z'P:0;G30 K\]3%U,1 MRYI^$9A-TEG0U*)C(E=NIMA0W90U>9:H#>B?^LCD2V9XDKG3!1!J:C2>3BBD)C2P'RY^^J,9Z*Z93J$L'[C MTXN:J^IZ:@!\[R:E[?ZW-$]77S"H7US"7W%B--?"E4[MR!"(2 EX+S1HDPD- M.JE$:G=#VTU-OS>(+PFS2AII %OKF'R/]-[>WN'B$>TRQMX8^I06U392L!'_ MH"S93 ,^G=>^TWX,?N65$0X)H 5RN!X&C*E#A'S04*%RMRU//, MP,Z0^/2]T+Y@\6=;)#?3HNGE)_$I"86"_[),*= :K5 &1PGNFC(KL MSA3_S+YV3O$2?/4;T#_/!5,#(GT?6=<4R,?2Q_Y]_MML]>%!$EY:W,0A2)U* MM;\!)]1"9]IRZJD+#]KS[3CX[I+*?IVFSI'?EI;_9+O$A^GD6YK.?WX8.30$ MR\WS6PF&!DZRH+)G@"%/Z1\4$[@H/<1(,F%H$Z2OG6*["&/]9E*>Y3Y1!R1_ MIHWBPS1]<\/XZL>W-)[AAAE5B%%0#F@I# BT_24)D2$KF47,/*/G>?%]X@&1 M_>9VGM\V<8Z._V2[Q.(>6\F8;3J, \,2H=FD,@">H)>H&/B2?HN4\RB2]82V MO$-L9:K?JO9GN3N<#XX_V6JY4]EL(*716OD$U I7&NI@)$6,AAQ(J9VE0L;: M'=TZ8J7?(OIGN3).!<*?;#VL+()GZ"AF)B#S,N0A4 ^NG!QS8[T1.>; 6]XN MCM@?.BO/?Y:KX 3U5QOZU\8"V/C)P"8OHF$,F%"E&U'@8 /): RX4)GX)$)7 MM:2563EH*=C_7@H5@'#\>K#+]3!.7]Q\]=F65L3+%1.?W8]-F<0D'3.,@F ^ ME'N- HQR%&T$H9%&9G7U!E?=_2A%JFX7:W(RBG]HJDH M.82:)F-M")X(Q_TS-F10CWRQ8=A\?D> M''>NC#:CU5T<;RRL-\N451P(H;/'W02,Q[^XB_Z= M9[+?3[M.&DR*7F;P,D7T=KD"%Q4%[7%A*,>D[JR_WV7:=6YYVX?IY'5I8[71 MS>IC^I[&-^E]7O<>^30E'"S]EO ':?GU9_>C=,TY M0!HA!D5*-YZD4]E:41J.1P]),>URC)'1P\9-=DYJ&\W7.H1\@QI_)H[+6D(E M?)F,AK'DP+?LYI6]EB/?VH7+<@[C/?DK5'N:'(.T6!B1)["TS*"7QEC'J?'I M>;<7WZ>FU38U2%EQ;3,')YE!(90+9B8P()3[J&54N!8[$L(>LIZ73W$$C@YH MGGN6BAK*OVUC":/5Y1[QMHS)8Y%2ZZR$0!+&K5Y[L(HZ<"29('4D6OH+8N\> M<<]KB^\(@:>KJTT+.3Z" M@=-) XM)2%Z.:&SMP9S'4]E& ]BV 'J* EN,=H:CT6)FT-_&?O'E1JGS.>', M 8\].UXYEO1* ;T:/65LU5!CPX 0GGD&T!@7F% 6O+0?/ MF' M &6!6.YES+6O+NVCIU\WOWO;=:+D&[C,4:9M%H'\?3C_NN[FN? O%^9XS50@ M,K$H!6@? PCC-)@R-5M'H2SCW"I9NS?0083UZYW7QE5]732P0^YD"E?1S?7- MJ-C#34O] DD1"Y1V[5WS;*+[;:IP M,6!VHL,F=M>=+&^8>NZ])=YHB(*AK\K05_7HHF+TC0&W2\QX5;W;]--D]=NJ MX&+0.U$/U;;<>GF(=1L=M]%!9YSF9Z0@GGCBN=F'8PBNE'C8V6KH%F0N$4F5 M8Z""CB DU6 C9Z U\U%:QW+U#MU/$G7VA*WP-<6;47J?=[YJV5V6&B.U$QI* MO32(@.ZG\T& U)ATJYR6\5886C5U MMRZ*''%_M[ZT[$T,PY[2WEV3P'/2R9A4.PHX@*Q&K=NI4#@4:B?JI0&HO;Z9 MCH?SFVE"=EX/?Y2OUOW](T$?-;I20!M-&;\IP99V)$:PR!)G25>?N+";FD:! M=:KB'\Y-JZ.%!O#T8G+][08?=RNA%1LD,Q,T&G3[O0$U47)* MI)% 9)E28V4&F[.$$+0EEDD93>T0> \Y_>;FN[8[M?30 *1VBNKM;9%H\F@W MC8B08I$4Y1%E5LY*$R/9<2E5]?S"TU3UN['U&^N=IIJ6P;:PS^-R@+!86@^: M\2_+<3:.&UXFY" ,;Z_$74^F\^%_+;X=!$^U4"F -@S7GS0*+'41N%6:2 MJCZ:]@)L-1H1G(C$0X'>$RR>[THY4!B6Q9PYHT I<27,$N6*E8'@3-0V$Y7T MQ=)W-1AJ-,KI=75T (4FSF9/%4?&Q7F@3'3V7@JA($J:0.3 )W%"%1FJS(J MR^7:USZ[YZK1&*_?-=(1*)[/.?,[-RVEK-]3_0/G1X_NZ.1Y/PL7.X(F*7BE M"2NCKG.YYT# ,T2*YXGZ[(PQ#Z>"_8F.H&WV,9IHP5 G2O*6@U$847,:B*"& M12IK.Q1_EB/H8W!S\A'T,?IIP/M=EFE^0C4M4BMORS\H"BM'6L$;%WETILA)!$U+CRSWW[GT#C:QRJII &R;L>H@N*@X00MLGH_"&,JLF_!3 M:5\%,-0Q92D+X!:GQ(9C MP)%- -S8'6=&8#12'3R;!/0,EGJ*?0B9DZ7<=Y#_YMWK53"J=62$9PD*(PT0 M4E)PA)5;]2$K2ID@+A\4U]\^LF=MGZZ3R=D"ZENMOWW^M*):&9JPZGZZCU- 'UK=;?7[U?4>TR"R9II%J%TD$O MEU9"A@#EEF5J>X!>2:VG":B!?7KMOMS%]$KACI,Q%)>AI(.R M=^@3XQ\,-RF3I:7$F6DKT(1% <;KQ'+&_:EZ'[>@^>OK==[K"S=F2 M;\BJ?+B9AJ]NEE;MXI"?J_@?-[/Y(IX>"&V$8B@C+1,N$,ET.4 WX(E)26N/ M_-;N?GP08?WZN%WAJIXN&@(8"B@-OXR7;9#"S\5,R=%"5;]CA+!H<8\BRPPE M!"3) $)D U9)"IJ[?"L&NH%99*PWA#==)T$I+ Z2<>@IJ M1#D$I8N&WYG$H'VJ?ILX9ZG;E)QTCT3#?IU7BS^N(B!\HUKI8?\_@. MCX\OY=-:-V?=G/J M^O#PVF/J\=AR4WEU< &NV<_+G[_COR;35Q*PB#P85#:'Y-YRZP"65YUY/^6EIS/[.OI^E<'M MC$C6! Z(O.;L!@6A]O,^#<.^OQX32'MQOP/T7!V$ M=Z.;LA*)C@EE,E1'$U01&1P7"4KA5@L6N<#6HW(?(&/8M]8AE-&N,N@ 1N\G MM?#I>Y[G%^?3?*?AE^8Q>EDLV0,+=;I(I!!T/E(QH03FC6P=&GJOX\G%Y/SG:A@RP-&1Q!TIH#76=U1(:R$$<@YEJAM)BO[2,' M5SL^>^&]$4=T^M[UEBDUU-O#;@+J '0/C89=Q5,_3DS8HJ-* ($NXB;1#ILJ10PV655HK1T\S=&9],- M=.M![HBO#>8 'T?8'2#]*OUD#9?_F6L#J9Q>_,A3/,]_G^5R>?%N5/)9X'19 M8+*0DJ[.D(H0N*,KRGJ=5+#>ZN;3/?>@MUL'M@V.CR;*'F![JTO9AW)_FV=9 M2R2Z)8A2.Z"+E !3X8 Z!LD31X6M[8'U%'7K]S:"7CMQG&H!^1H>'[JF?(.E MCU)FOBT+!LDA\.3P&%)JH+V6H)0GA$NM:_=[GYU*7KD_2PX!KWE8BM>2QEH- M$R(#I^N3@1M, MB@@8F 2;A$I:*BEM;@S%YYA#L!5"]L@AV$9WZ 27ANS@DAF90@8Y M>#*-P'E.WIW,.C4OG7JV.01;067/'()MY-8!+-?%J^G*\,G482HHB6TE!?"9 M*8C<9*\LV>FNM0?S;'((MH+!%CD$V\AD9WB19QXFA\HBD$$0H99#,8H,%>,K M4Z0#9EVFOT\ZE-99HZ>=1; /E/;B?A?X>2B&[7P6T6I!J'W-4I! MNIQ[KDWK;C$GGT?00B'M*H,N@+0F;AW1"H?5--!)D:%J+7A/OA,/,KGBL]&\ MM4IZ+ID$^\"JD43ZS21(43./I&RC(98H5@0$*SQD8XDWA?[A]VSXYYU)L M8 M&K)X0*#,IO.S3\2@Y71H$SE:1KJSY%I_)I4G(ZYH8'54EH\JZ,U\._K46[J& MOKO1,W<6/)D<@%W>#G9G;0]XN&H*I$P04B D6\WZ&.ED",X@<2.DHSV%N%'] MRB:(&-*=VD-8]\6] ^<&%OCO!/]OE]^NDN6PY*!E 1=DC74Y2U]E!2+9B,87 M*4,+D=]9=&"A[R*R20O^#2UX_.,6X98C09U\+I%4)"6'M=J/E%SUS)@NDFNV M41K]4X*_O>@P-T SP>_,OPY>V#8*?*=,YFY ML6SV%F7=/O;NB(C-(;>K>/H&W=^FM0.+E8(93@9>H.,(*O,$OGZ5L:BD#+EL MJG7%QE,T=0NTG7&P.=2V%TK?(+LU4/3.!-&@M$A%9W NU%&[7H./CD,6RCM1 M6Z[JUL][VU/9;4SB"$!L(;@N9B2O9^.9SH7G.LHV*#):5:P1:>LCV"B1W%TA M36E=0+N>HFY#&$< W;8":39;^!#PNI5%K3FWG,X'6$\G1^5:CJ<\UFDEQ>DH M"YKCI3&=5.+[82RZ'47380XRJ>GI)5$QPC"Z&,U'>9^LXL<_;-\\X0W);#6@ M&G]6#W16QY;7A?%B=JVYM-0Y&%= I"1)WJ2^G- !I(Q"QE34 493/T[.OMKG MP_=P\*0FO:F6I21_A^8)VNR\6;7 M4S3P<+Q&N+BO:!I*H8NP_.JT_@.7Y6U7^XATLSO-B2>IEK )8A:60IM1CD=, M.GO=.L7C84J&O;<.A:(&7!\Z[$ZLH8^KV?&+/+E%)62>G443LN'9@!'U$M? >J6%%(;6+ZNM7-^W MM>!Z/*.#H9&KHC2'%$4"I3(9\%DQ4"XXY9Q3]GX;K$.!((V0N2]1.>:Q>HHV@I(Y%2@= M0 H=8.KQC1@L3J>4(/N"H(IQX.M0J9!0:&68]LT?KO=#DCTU)+7A?;.GP79O M->\G\SQ;<0W':7%B/H2+T?FRHN3SY;=O./TY*4_\WAX//(TIV/=5Z) ,.<93 M$K+(E$T0C:J>66$0@D H'$7,JC:!/*&GI-]RF+\=TV==UJ3O90I'LC(GR2*8 M0-M4H5C '#2=9:^RX^1Z\-:5X ^0T?&CT18(N*_F]N5W![?DW2TLRSJ=#X'9 MVL#2!O(F0IUVQNHP3B:RS%JZYO,'?J5B6,#L+=BU0-F:R]WAY%;Q 1F#*:E M%D)4B]EX 5R=OQAU42*3%R*:E_<_1DM/F-E>QFLALR/#AW;V/^?Q:#)]1:N. MYF\P+I[4KPK=I$\V2@'%%D/F94! +QRD)(J.PJ!(^)0M],0:/>%A5P%.VG-S M:%#\?1PG%_5%=(H7H__D])%8-YK-)M.?U4A<;8AS0__3&DSAQ*E2"CA)OJ5L.YD*8Q9X*&^;!F" M.T:T="&KY$5V5N%F$/GULX<-1QQ <^S'O>[LCW?7R27!6"6]X\2(Z$%Q;B%H M)D%D@]*BL9&W[OGU""D]*9'6%NMN_.X.-J]P.OU9QZ4N^[D:S;3W=)*T*(Z. M$V?@O(^04Q"F.%M$:.W\KZ.G)W-E1X&O!=$>W.\ 26]&8QS'?#<]Y"SED%A) M@JBVQ)U MC[J^H2@9,PB26%5:_7S("$]*9\VV-F?WUWDX?RV6GBUG5>3V3)% MUI>,L2@+LE@RV(NKA79% 6/".\V0Y=C^WGJ0E)YLG59J9W^>=Y'W_FXR/O^2 MI]\JDUZ,TRO\/JJ!C7HD;KV=OQW'B\M$BG458_D=YY?31=#EC+%4K/<9K&.Y M&HP)L"9Z%0I=I!.O]E^KP."R3(770'.//DT M-I(+HB(9J=HIM"77^16#0'2; .W!LD:&P^,N\NGBQMUL>V=:"Y:X3Y"4Q?HV MJVA?3$ H44:)M*_F%_!FE V;6S(0HC1):G(4-.M&XZ<5+;%-@C8 M)-MB&WYW\(AT-W:WC!'3;SE'II4(,H)BTH/CR$$HQ05=B!Z;VR&_4M'3T^,. M@KW?5W4_+G>'D^N!D<83G09,Y&;YG.^926!M<+7,54MLG@ M["+9^U[,?FSN "B?\H_)Q8_ZQ/10"DFN8X:+9Y!E5*1QZ6H.7$4H"6-D+MC4 MO#1T+4'#AC2:PZ<=\SM TD.Y;AJ5=MD!M\:#WAUUZ'B-R!4;4%D4NU$3EF\&A#\"HPIUIW-3B=K-%M M9+QIUN@V#!\Z07!-GJ.0V9=2(C 7%V^$&EPBA>QL+);1\9+^WKSEYY(UNI4 M-\P:W8:;':0 YC@9IQ>?EENYGFVPVHOQF=GD"AA3^1.-J:_'5=LRGYVQ1MYO M O8H,M8LT],%TP8=_.O+5D.IW\3W7@\#O]9/[S#&5URQ("G0,Z8]9% MJ/L!XZ)'HZ--JG7?R6WHZ\F0V1$0:YY@FDJG ^1]G$YBSFGVACA9]SF[VBA9 M:4FP(JMM5BL(P:/$]&3_M,%4&[X/;QT_=#9>_,#1 M157M;\=Q6M,MWHY_/2?D WACG =M2/4K)R0X%G5MZQ$M,R&YH#8RD':EH*>+ M<#],'4\0'2BLM.\!4RU_M4:HZ%PVS0,0>Y=6'#VI=!^U MU8S['2#IH1/S=DR?GV?S3SC/OUU.:6\?\W0T26?:!A8%W>C!B/H&CP6<0 =9 M6:Z$Y+%H?@2CZS'Z^DP7;6UT-9'.T"\&#VWLU>1''B-YTGG^+M/=C.?Y4Y4> M<3 KSCQYT5%H4LY.DI=$)XQL!Y[06J;39C,GMUFUSU30IC=C$X;WC*35=+4W MHS]R>O45I^>Y_N36/G7P%G5MHQ;HQ/C"(5AO@(P!GXHDG_R^$[D#L)X@8M@F M9$?%64MQ# V[RKBK?;T;_?MRE&Y,S66YG"8OI3 C(7%=71@IP"GMP17<XR ME?N-$Q^=E/O$4AM!R)T,A-JRM@,;ZZ&:N.6@(L^C]L9&<&@<*!8+!)$3B*QK M"PA#K&K]BO4H,1NAR)\"BMKRO0, W9X@M)@<2-NIWFO=T)GBJ%0D#JE$ZD/Y MP, K94$++D/ )*.7C3&TCI[-7C[9*>&H&?L[@-*B+N'5Y-NWT?S;HL2L*):L M$I 9X5]%[0"]4;43@-49DXZ\^8B+NR1L!IB3>BO?A\D=8*2RY)]Y=/ZU#B]; M&FBWG MJ\FX-DVO[V>3\6R4%DW4)^,]"KZ>^,1]Z[NV(;A1.=>-!JGU/-<$Q#K^:32+ M%Y/9Y31?E_GZ4QYS:5EC'P"4HIG4&E)R$91-&K!V[%#.(/V^>*S_/,?I?/]7J!UV^2*ET:(BF;C\ M(O[[8I)+< ML,*Y/Q2.-Z!OF(R+_B'=6K2#-A';E0E7*2J_Y>6_;_'B:I#=Y%/^G7Y$DJI\ M^5#>X&CZ#[RXS&<\D2>(D0'+M545G75PF@706BI,H:1L#@;\?0@?)D&D_Q-Q M-#"$W)W:@2O #_Z, M<61Y=M&=;X>]OI^,XVJ[DD4ZEYQ!+E[5[(P$(4H+3 4;!;G(2K7N4; 7P<.F M-G>-X!VEVA#$[0()B_$*+\D\(B9_JQ-8%Q_6HH/E2MVC5J!D;RN;$'D$LA:D7M/9BC5^$]H)D1L=NL>;+GS>_LZ+C136REN5^+B?,Q@1@ M4AI03"CPF IP6Z1Q)N6,K>>\-2-^X-JVXV'VOJ8=1OP=>&EJK)(( M*FOR-JVR$6I'=7"F]B'V ;&FGY?FBO N!0/WZ]Q9DH] 8@>V#AT'>/WO2[)) MZP8$X_RJO5L*VG"-0"Y6 :6=!:^)(9$+Y86(VO/-HE$/?7H?,M]%5).6?!M0 M\+/I_.Q3U90+X#M6DE?DA.B:P:2207)_ B-/.F=1JWW1;5171I]Z2P'0=S>' M_\Z"PSYN#'N'[,[Y'N"R0KD7W/J"$I0MOJ(\UB[&'KBV-H>B"J:->S2^I+)A!]XG1'YG MT8&%OHO()BWX-[3@EVU%5H1++85(5H'&6IK/BJMS,@UXKI(RHM"%MI&_\93@ M;R\ZS 713/ [\Z\#_V!YO=$O+U2>=D$[E1FX7"-$/B= &3D8NO!T0JN";UT@ M=8> 81^1^_ V=Y=(!W#:G7$WVQZG>R:[2S);GU6MYZ C9;.FT\05L,#HCC9* M6=FZP\8A]C&L&[0'K.Z_RPTMXPYP_BG/YM-1G.>TB"=<-9&,Q5GF)=@2-6W" M!PC(2VU&PKE'$7R-@?WW7N#44A(=J+ G^?H86]_= M%-PEP:6N%K.KS9=4R>0AT[>1!1L,MYJ'UD.N]J=ZV 99?=B81Y;]*:/]_64] MW"MQS5Y12T&CB5. 27C*\U^*JTSDYI M27_G-DZG)V%?('1P"%Y<+'Z'?(,'F?#ZC_IEKK.AN42,Y";3E:M<)&^!$:,= M\R5I5SCGK=\@-J-LX">S88%[ .%U ,F;?*KU3 WWF;H,4=^TQI@M.J-\^8KC M#]\7!8LOSL^GBWJKMV/RB,>S45R4KWRXG,_F.$YTBL\W[Q>1GSI_S], M\X>SY9A5.JMB@=/AKZ^U!5!8#46ZX$T0+&U6,_97:N-^^-@HM7$;876 N 9> MKG':.[*"P&'M;Y4T Z>L)P9PX6*4J<365?)'RD0[@;K(?4R"(\O^E-'^Y*/* M]2/H[29SQ:.-WM0P6QV&H;@!)[6OI>Y"VMJB]OY;/RH=;7,G>L".@/#C M'\8=X#9XZ_S#L^=O]!'SV54TX8$%E;P"C46"R-=$J4X(XG<-X M=V\GFJ;ZG,[B'F![UE?BW9#>F1>RR,@@I8@T-7D,<,@.!W!62]E MTEGXRTMYNC)='>U2EBK.DR;F(1)Q(R* MQQA;]PCHRU/L+_OW.9W%?> V\,R'17W]DR4)8:N2A/D#G+DWYG5AS_]&FN0Z M >V6E.\(7"4916V7(JVMA6VL)F$@,%]"CESH')[,VNI\CR?J7N[WEMJY3+;" M71>#+XZ@W9[DY1GIM\AJ49'*=:8DSV2"F&1 6RE2""R'>#H9RIOO>\"!H\_E M"!W_KFZ+YC_=@^_3[),&O<58P!;D-4)-5A")'%@VC'%=DM3-$U=[V?R 0UW_ MT@@=X?I/]/C\-..0)^5CT! S8Z"8TU![= $:HX50R13=?"!,+YL?<"3N7PJA M(UP_:X6P>I.\)'0_S37NLRA,&Y!!DG7EE >TPD'6*41%WY?F;8_[V/F LX#_ M4@6](/I9ZX$M?"P9,\_>>O"(M:%BU( Y<2AHLO:^_G,Z3D+C%X/#3$S^2P?T M@>:F#__M"JG?CNG+_ 7_R/L42C_P*?L60C]%6*-"Y^ME'AAAJU$'YA?#:80$ MI4BW^U =P5"8##EIW;P>9PTY^^K_WU:@NU[BJLWR*,_>Y_E9T)ILV8(07(TG M9Y*Q$[Y D#FG@-9)U3J%X0F2ADV*;86,^YJKI1PZ,"M>EY)CG>I[O9]/I".7 MXYHO1^/S#]]7HYIG9QB+"$%I$)R3P21JB-0H#BZ@%#$%'4/KL/SFU T;ECL4 MV XDG0X[@GS*WR?3>:V5^IS/%Q=[BX'9&WSJOA?=MH0WNOA6BRU7)R1YR:@:L_6B#AON)IQ/H.+KBKG:Q4Y?C\>B,F\.BD M29!R(8TIM0%'_")V21Y)@=J0U($P] LQ V>5'!)"^S'^)*ZJSY??ON&BO_V; MT1C'<807;\=E,OVV6*;I_;794NTOM1VV>/";+GK+R:(&B[6FNC@%F.C;K%3Q MV:%CNG53V$/==#>%YJ_)M)O__._GS M>O4KV2Q+S,G5X#(+7LOIG[< EN/=Y,Z MCC 'GHU*WLAL(RM$>^((E-H/)0:94'#/88NSN M8^L/-WJYA4S70F0'!G=@V?]B6%[-E4;)]()X[^L+G*L)SN2O\*!2SE;KT#QQ MY1%2>H+,+C*>M&=X![AY-9F2RL5Y?C\9KW:RV@AJ8;PF7U8J0:ZM0@=(WBQY MN@HM)Y_'-V^1]"@QPPW\/@AVVC"] _1\)B$L(Y27L]$XSV97AV&ADTD)>UZ' M9AH7:3,Q<@B"U\G!2D6A7!+8.N:TEJ!>^F<=UQ!J+ZL>@+>D?746O376,:OH MW@^B(M M(:.M;V3W7ZY$JO.N/[,)+WT4FD[T9-+187W[YO*(Z M*R8LV5/@6<$ZD-D#1E*'61L5>!;")[.16*\_LHM7YWW%NAN#AA;KWUY_N.I$ MJDT4+-5Q$X4N.%\;S&5E:.7W!/\XX ML<^3 H*@.1WK@A&"\@%XS,85VK]CK5NF[D!F%V;+88#S2Y/KP\JP [VZ3(%Z M-YG-KG9Y/P?J92Z3:;Z5>?KZ#^($B7DTQNG/!9/?$^LK?R87"_Z/B;P\FY^E MJ$3"1<5P39X*@BXH3)F^#39X(:RUATD5/ M!:8-)7,2^3 /W$:SV]?1+/S\6YZ<3_'[UU%\5X'=.DUF+PK:9\^T8\BADVJ* MP:!]*)!,B* $&E)X-@!JGA)74FM^H'?% R;5K-B_N"1(_^?I&"^N6?]BG-Y- MQN?O1C]R6A[(I<]@LP\FAP3:U:ZU(9#J1Q^A%!=BX49I:5MS8B^*^[)V=T+4 MXZDT!Q?AP%D/UR_:-WH +Y9A?D^,*]E# M'B6@EUR:PR-@TEH<0V-J>21O;V'U*F>\L'3N,B!?6!PUA[N^@F$2IQOHO2 /IY"NS*&FP!IF=9;&(6M=#W&S_'#Y+FVQL"]G.P#%^NAZ MR%I@3!Q88'5X9%@\B0B(WD6+F9C2WBX^A127H]DG[<74 ^;N1 V=529I)L'1 MOX&.F84@M 9#;')!:R-S'CI??)&_D$G)A)1"93($R MG /:B(#"19-,5LK="SV=4G;+5C)Y.+ME&P8-+=:;Y V3G)/"&!"B1J-23*0) MK8',?,9$MVUR?B.Q=IG=LK-8=V/0T&*]2=Y(.CB%*D&*GJCVM'O'@B372AB9 M##.$R=/-;ME9K+LQJ(-[>DLKYR9^DIU/*;$(AA6R=*(@IB6?:;,HM+$J2-ZZ M@>"NM/:2[W)TB_(HPNT'Q%ME2R1K/9U.#9K562;2(3A;*^-5,1JC(:?EYM^PM1?8B(ZL,K'"QBNL&&#AT1C2%GX5@"EJ, MQ6L*@'$).$,OG+"&V^:=;SMN,V!]\MYP"=Q5=CA)CH4G;S04DVN6KN6L==>4 MY]MF8!ML':+-P#;"'#B8=7='BY<0TM7%)R-(=T=#6ISL<(]D?;O@,20KA6Q2 M$/[KRKV$1(\D^$DS*0R,H??XC;AV9P\K1XXGF;@-KE;0.U"F('AC-8@23)+% M"*DW2GMY DJ/$C!<)&Q?B4Y:LW?HMXN/E^%B%,E:_;^7.!LMO_N<(_T7*X]= M"I%I.P%$P%R-1P7>QQHW#D$)Z25S^BG[:J.5A@-%(TE.#L76P3$R'?W >;Y# M/Y?:A)@92%??YX+-=: KAR@5,RPPE7C:#!:_?OAPP=%#(&%/YG7P@+ ^0L,B MSR613RGJ#:OJT'N'2D/Q0AK!ZH-M\\9DIQ A/:ZYTEY6/0#OSO-S0:>D10/2 MTM%1W"@(M9^]R"E9K4J.\4_;!& KP:X-DV[#Y:$OIILHH%'6\DR7J% >B>I8 M^T'79BTLVQB88XS;C:ZC+L.D6\GDX3#I-@P:6JPW44!T/D06Z]"-4$==>K+- MRZ)/H;6FMF55CFTDUB[#I#N+=3<W6FRB@#M;FF"0(K:JVL@:PD"44+)<. M4A;11AV1;*Q:SS!A*791?'H+E$T.I.N9LT#T]*0!^C):4NUR4)@V>3B-?>M1\Z< M7$CTH,!I$ G=1H8G%@E=L>" D= '5CAD)/2I#1TZ$FIS$=R3Q1Q%[=0HHJHO M/AF2,%XD1E:S:1[Z.U D]+?1#,_/I_E\59.]8O+RHC I9L/J? (N$JCD&3A# MWY9BD)/)0A;(1M516^QS'3U]*;"=T/#+$*U6[._ U'M(U;[$V6CVH7RC/Z(Z?*FNN-7(5[?9#12PFHR&A0/"*X^D[G?&8IF$0' MK75:W6.T#/L">E!(-15#!W!:'_,QFNP$CPA<,]J,#P)\KLV["L_2E9P";SVA MM./ Z\%,JW9"Z %1=UZJ4R@ZT]4/'!-I5\\#(,H$$5UME1BR9 >:GMF#;=10 ML&LCJMMP>6B[YR9@B)&EI%B 4)@@_2L]!.0,F,U&<2NL#)LU:NXRHKJ53!Z. MJ&[#H*'%>A,PC-P(6:J@G*QA >M)$_H$012Z^Z3,YGY?Q%.*J.XLUMT8-+18 M;P*&QEJ54$NPL:83DGD#WC$.)G@C(M>**;616+N,J.XLUMT8U,\]O7D@A0EK MZU394JRKMY4&+[0 4T1!M"EXU7P2SRE%5 ]G'1Y04"<;*G4VD._F/)10'\MS M#;-QA738BDV\8$3?^O7W^8=*MP%.@U#I-C+L,%3Z>3Z)__UUWR@JS_]&'^-4]?3;[1BE_S>#;ZD6^:;.\11FVX^KXAUD,Q MHE'X=4G2=9@M.>-\L;4'6>)D?44&*%0$QB+]*'-A ME(,)3DJ(BR[;+AK:MW-@N52E!.6PM'[!V8:^817D'LCXI2/YH832@Z5X]8JQ MY%?=VF1\\XJ1193,1 BDFV@SV8//MK;/LC%'4N7"-'_A64?0L) Z' X>>S/< M6R@=(.S>'E8^F98^,"R+LC5B#YW!.C->06T2)#@WFGYZ$$U]CY!.WA#W%_2D M-=<[@,ZM _=EBN/9Q5(PZ5]D>=X>BFN4Y=X%$"994-I'LFVE!;39EQB-<*5U M+];-*.OA!MP+ H]?A*WDT1?*UJGU&U\J,)^99 5$<1(4,@4H:U/)(K4MJ"2J MUO[IMC0.^ZIZM(ORH*+K )J_>E]G1:)(2(XUMS*!JBYV\(6!MS8QKDV6LGV] M['TJ3L(.VU'JO]AB>XE@9Q!]S]/1))&!,)TW@=(Z3KW/\P_E"_[QL;XED0SG M\^DH7"X2J[],/BYD# W># Q>&5X,3 Q+FAT;>U=Z7/;1I;_OG\%UJG-V%60 MQI+M^%Q7,11M? $C15T@IFDJ-11)H M=#]TO_=[]ZMYN4A>OYI+$;W^CU?_>704G&63:B'3,ICD4I0R"JHB3F?!KY$L M/@5'1^JJ;K9'#Q\^>_Q_ M)_?@5KB<[RG*=2+_^]XB3H_F$I__XO'I\=,GR_+E51R5\Q9CF8"*?P7AEMH3;8:12_EX>B22>I2]HB?=X*'WY)$NR_,4/ M#^E_+_&7HZE8Q,GZQ=]&\4(6P86\"@;90J1_"PN1%D>%S.,I7UC$?TA^"'V\ MXB4\A7&2.)5Z22>GN(C>[_-X')?!RBW?:48TXHNX!*),=ICCCS\\.SU]^')?DVH<<)I4-ULL1;H^0$J= M?&]*;9W"@V NBF"6BQ3%3YD%N)\^B+R,)S$0K Q2L8 ?XC0XO(UVD<$L99!- M@[XEF&933Y][QEOG=_=V=SM;/+;X[=Y@.3:]P&%0WDUCR=S M.(%QT=SAG5DN)8'(N_VVVWXS%#M 6NU[L\$.$V4I)G/87R(-.E"+>6LQ%DN# ^ _,: FSP5MVFAFL M W]KX"G2L'K_KN)RC5_ G.(5",0$:$''2VUH_$*]KP!=Y'(BXR5)0%QG+I= #YA[ ?>+LB'3D;2@<$9T,="?]E(L M\N J+N>MDW!?DIH4D@3O%[AT(GY5X,NVO\(DED "0@] ^A0N ?K8A^1R!KL* M*.-].Y23*H>W)/F=]7Z?S$4ZDZ %+Q9Q@136+Z_@C0A?5F*<2&^#E&8?U5]; M\,%,U[[!^V.DZ$0NB63Z5FUWAW3W)_!4_+F@1]#S ]SV MH&O =@CQ 9.D*G +XO73.!4)3262$[W9DO/4J=/#Q^HFD%[SSCP_*"WAK>>>_U6>]-_Z(_ZE]> M#(/.Q5G0A3]&@X]=_&9_J[CW^LNVR36; C?.GC3O$VL8V@'+YO_ M?R:!*3 /.BPT<[Q7U>MCFL@"."$PK?PJ+B0P3*"3D<# 6<62EO(':KW$T!E. MS 7P6F1U"RE0) .G+% ZLW)<5 C#Z?(V0//57/*0M__I(6[_+NS[,J\(6!R6 MDK'?_=\52R7G$7.@3Z! ,%$*YQ 0/$7 !C^L9!HC&@VR-%D[Z#K- )!,IP2" M[*%H@@Y&GFN+@AF$^-@>H!P"G*LY@'I[,A'K3 @= RS&A^ \8=,SS$204B4 M337:!SP4\0E=)E6.<$BA*O6Q>9T>XCCX6$@7Q&E4F.4*""(6QA7CVN#$T9$' M?4+^KD!8"'")^(HSS6"22)$GB.A!:T \:I;V%T!*IS<(*77.W@-2 G#4N<-& MWY;;=.#$6=4"3EB-.: :(_.-&NX&Y1*8#+(4.D[(IQ;$9%R5A'^*M!-5+I9) MMK:,1-G\M:@6T0*@DE$X%2/0CW*T/N(@8\0,R"6(8]H16:4Z#G#-! ?T54KY MJE]IAR/M+=3*G58@M7['.AI',7%!%XYTK:NB3>);-Z>?:'X4;(^>I]_*T'S-W-#8FS;9/5G+M$H0I1& M2P@*MP??ZUTPC2^G4]C0>1U(BJJ<9SG:DTC'A[<$;T?"-5-'4:=]2B809':3-@^8L\KX^FTY1]J&S6WZ_:%M@_\U&U,* *P,P$7-%> ;Z>O(0P1IM1@#L[-.#L#TH%.HNT<9 M*'_!1>T:8/[ &JTM6%\=.[0ENS9=O6DU($PG52F5-$Y "C6MLC6&'>+%81!/ MM>I1!SXA>7#(?$$"=HCF>"3M-,\605?"'*:D>@6 ']8!J#Q97L H]XFK1T)- MQQ)%&=S'(,T_/= 2D)"9D1G^#&[?@3Y(*\A%%KS/4@!"^1JVUII>]D#MB?T> MZ%%MLRL%VVQ8V-$+ )L,=?02EFH)+@I$; %"JYBN$88DL&W1XU.*WPF"S+.$ M'28QF2'"!B[Q#V0>K*1Q9]JS^0!]+[633)ZUE=9(Y? =1>E8%2K3J><99HV+J-PR)B(JTU\:5J!WE;,:ZMUCSZ0<"+@ M"IB-O^(O6X;!VL%*))6D[:)L+H*?"DQ,_>:]/6;Y4;L7\/8QHD>'R(A^IG?+T)8P)6*.8DDY.>(B-J*SXKE&U M@U-=H!9?NXZYUEPFY.D?9]DGP!(E,'+B#U&5:V9$1E=U:'LPS>S*.ZU#I=%VBM/+#2A#)HO:7N1,Q&B)-)FG&>? MI J?T+%:S9 +]/I/)EF5H@!,V-:B#HB]R6CC@D0EQ\D0HT1VK%^A"2])LR#) MTAF:'2S4==9AK.XP7!VD.;(!I)YS+/72=:2/EF@XL8P_X! M0/ZYJ0[\__/<&BQF\FB<2_'I2$R!="]$*W7\&YGC\T\27O4: MF/""K=16<' T\$(0;T<3-T2_,5@'\2LTO PF. M"60:D?\&BRJBF&6T9]FV>E>$MI2Z%< C$3. !FB!"QDHF!#*A%5H-JG\#H0 M:5HEWN;"27DO%!AZ+)5]W:@2?!WL,K506)+>)&K-4Q$GJ&_!DV@_\,Y1(XO" M1EK3]_1.0!RX)GSK%2?[/L6G,OF0T)]O"-*3Q]>F]D #.KBJ+\7P 8,@0$HH$&A?:8*@= RVC; M=:,2##=677]@JQF!NF*5^"X+H=Z*-#[0J8#'X4UL[*E%W9"FHGXQ+$:'P7ON MRDUV(16T7@+A55 XCQ9;LU*(@40D5F&ER)&):;M/V3(^ /XY$!8E-OO&$9NS MP[-UR7\!!O7D!C&H[N7[#YV+?P6#7J?[/Q_[0XI_#@;]M^]&MXY5[5%A>W+( M_DO@7/HT#R1Q4U;=@P$.<:>KV:.'3&\8YJ MB*^C?U80<(8:1HF#XF&;J@W+<9&Q*RZHRF(BJ MD!3K@BDZ#3/3IL>RIN$"U16/PHH8^HM8^+F ',-6%I0!!(A;)J#::>4K-#;/ M,%A2SI4=C,/+XP(E+8[H>JW\E+4-LN6!8VD-S<*3>!&7*M*']#1M="5O2IIA M7!HIA62$;;7!.6J3:S L:Q+__F$E#AQDRNC'=.72[ IMN?$T8W^PRR?RKC< M$*4!BC4\&VY1GE$=TX%7UD@>VO2YQD-P3V.<=DJ1[I&.G=-^9-)#D>O<)4A_ M5K&,0Y*KA[OS=ZJ<M3%6(6SF(QA$7"5,W1 Q^/* MILMT(J0RF6(/ZUCN.:5NJ5^1=PWAB: M@VL/%D40R6("UZ>DKILJ/[EK&KIN9B9::")M. MBWYQH7]2,G='A_IIL$6D,JI?;^K[.EO?;O.ZI19!%?@R9W7W]MEW#C**[-(F MC,"9&4C \10UADY*7WS3F_(D^/Z]X@WU)-1[UTF0\ME.B'Q3IPY#_^0K&FI H<57)#R===[G>L9%:Z1 MA+=!;K5QW+^ L?VG&V1L[PV[@\M?[^SJWXY-_'28=O7.^6Q[=B-0:E8B3CAL!V*;7"N;%JNZK8J'6_*Y%'H SDY M15K4.+FGBW#^**H3L M%,^Y!X[E8FW$)>5 )MBQ/Y1KV*A!V4MJZ6LXT[ZQ9 MNY;[NROUMZ&N)*K>GE);E^](5P)A[]SO!&>[JSQ\O0,9OC%F3;$F(J*JML(WH987961$6,0T M7?ADXQB!6T@.I5?1^,Q(-,/P^)+B*HCF-G(54,1@*E@G )0CN'"69:J2@%+1 ME1/1YOZ;J;J& K[OMRJ:*;TUCCT.3^3EUK>#B%;Q9,MS]*(<"X23 MR6^"WG1TOUV.^V(X_"Y9VTIYB>0<]M14=JH7F^"$34ZE2KF$HR!S$JGB.=&/ M0QSA$16< K2L8J[9 ^=('):X.BP-MCW) MIIY95.?V.Z88;<\<"NM!;MH0^^CX4;LWT-;2-"G4F?&Q!PDS=Q-? M;)"#XAM^WN>WR[=NC6!WEE]8Z4MS9$/6YR=LJWG?)Z):[;DU9M: MS(W@4"_MSI.@MJ3KYDJU<6&S[>X4B1TY\WZEQ>%J$L?!P?H&K_&T?3,GVS?U M0(9_A@OR\]V"R#1@'/*ON)Y 1T"2PI3+A< Z4M:[1.+K\_U+BFJ;*/$99J!= MG),J(5GO/O3UJ5!)Y7-K<>PI?Y'C(2*EP@]R&DN1*Z5I*5/'Z:@R=&\=]C]( MI](9(\*U XO@53L;_[!DS?ZU '4>> ]CL=,XK9K(U8DQ16M"P>GH>&3 M8)$AXT?]!4TIG%G'+F6G5P./Z'1Z<,U$%/GLY=7"L@#_,UMV;E5 4$VSM8N3 M59>\MVJ"LML5$E7?ZO9[XY[>(&_!7;5/CYV!LBHW:IO^/48&-CUU*L\RQ)C-E?*48++'Z#RM:: MR[=M$%0VK\9:]#C[/,*"C*53R!%11ZC<3HO"*RRGD^;)F.(5:P@#+('+L]-% M&["4W/U:Q:-LPKZBHLH%U0]VUVG+VC8+V/CT,T7I5!(.5[UO;8FD2CM?DP_D M/MHT\D&\I#.QC)EU&TX)34I5(I:%JH;'B5G<8L[,K!7OA=2^B(@;)^9N6Y*8 MB^=ELQ1V"%'75&;@=*ZH-E5EPW(WFE?ZH4VUHB(,:>:6&':-OQ8['4CN ]&EM3\E?70#I@)C^^ M(4S>,>'C^1' J3[DV43*Z'LG!!RP2CC<4LS'+QY2"Y\Q1K-1+B)]"M3M'\A\ M1AQRB;I(V18B4^<*Z$)U>7OK&;,>IRV'-.:";'EDU[+$%QU55/O7807UF 7R M2I&T0^NE-BVTL+":JHO26%>+HP(MJ^;@L.?82H[\%&5"GR<'V).YL]?5+55 MJNM\7>6*V\;U)C>$ZSGJ!1E:#Z <^ :!CUM&]188 S+">!KR/3B]$4C87U]. M"7>S^Y%<6OX$M GK7C89"N8B(;<#%.L\E=[)0D^_P: MQ_KZ"7 M9!D9G[,.T[)3:Z2R&Z2J2H,Q0]*A7YB;@@Z>J8A-R3*JUZO\&BU- M573>E6(IY,GVBIMMHSD!ZE U;L*4?>K\QB.QQF%L;=N&:4[,D6N83;.H%J0^ M5%09S1T&G?Q_!3O9LQMD)^N]>=/KCK"$5?==Y^)M+^A?8&_,T>#R_+:)F+Y; MD8,.?=?X&[MP-VCBJIE:E:_BE>XLBP9]^MM4]B7%# [Z9"Y('W13IXP'<5S! M;WC$R$NXYKK?N1L7'G-1IX50,$HR4G* 3Q7YI+V'0<:3:U[1. M.K@2-L#BVIX-VXL%:I)M)Y,QPOJ44B^V.6;+E%L+[KIYW^:,L2^RUCC= 5+; M.O 0=N-2Y2W5J;@]V5\ 93V_02BK<_:/C\/1^][%:!B\N1PHK#4DL-7YT!]U MS@/N1OYQT#LL=^7-AGR.-8XM]HH_<']'KR" MDM<)8/ Y2MT$I5EQ.<^S:C8/%C*?84X%WI4E<:1T=>"U^4RD\1_F10%V MK=$WMK:21:VZ9RT^1)FK\,Y/,>Y[]Q'%AB#?-AQ)#"[+E5ELF?/YBN+$A)?* M%+;]3"[:-8BZ(E #_FW@W$-NU%0]UZW0%?Q:80H'PB 7BOJGULL1+&%/EP3H M=5V;+^7&Q[H"3N?&E3#R5 _MAWUR_,C!YSO%+WM!RW5K9[,*-R%KG3^^)6ZX M#=&R:IC:2.*Q*&(JVDW!A]KT&L]B3@ UTS!YG=Q2>)JS0!?J)@3A55*:, M4 MLVRP>6,-FEBV@4]645_["#,GU?Q3*2AUEFT[K5NZ8G/T!O6" M=AM*[]AV^8L+Z3U]>OS\R8ZU]&Z4)@#X^U!4@2?7:0)4?'L8=. _@/R7W7^^ MNSP_ZPW"X*P_Z'5'E_!7[_V'\\M_]7H!*@J7%\./YZ/.Q>TKV+U'M6 T;ZD_ M9*)DM$D+9;P#'+?%=+=::&P$C&OIV- -Z#Z:.U06MNM9,2"!,QX5L\03=195$\F]>]Z0&V '.[HPPWRV]LJD'X5)"/M%,5L'^CWCM M<>$;7^A+9_7(L[GU4.A8-]J26I\CS_V,9L5U!Z%I(\QY^=0EQYHP89*K.)$S MJ9W[SNN_I@N]6HE*H;5.^VT-_-S>@9XU<965M:X[7&!"&:-HVCM6J=H2LKX) M,1P'_683OY@:\_46RR1;RY9N@VZ)"0).DT]I=D5%P#GA*=QNMR(UK%"IP* 4 MYR@JTT#2 [G4A#& C65YA6%A&XO@-9.>-]= =YX0&_PHN":.6S$QY@T.#,)F M&*#T)N/D7(4#M'8F88.Q*D=6(QN9)?1K=TWP=#I44;+-WG;6C&$:\ "IW6]'#S MX8+;@^6YH<<<.X99AV9P("L+66CMOR%R',O$1.0(?Y1' MLT7F*_EU' 0?4VJ$;66,EQ'FK4N_-WJ+I(K62TAP3S95GY4#J3S3 \6;4R!] MJ$P;RH_XXP]/GKW\>M9X^K25->[I)"CI.'K7"X:][L=!?]3O#8-![\.@-^Q= MC'IGP<__"D;O^L.@VQN,^F_ZW[4,-=#CY<#CK4OZAS<1;@# :]M_WA MJ#> IVHE"C0FO!JF<];K]H9#^ S#]B_PJN$H!)VK>_GA7QCM\NN[?A>>.0Q@ MP#?]G,$WVC0N1B^Z0W( MJ_9+__*<=PN\/[.G[H3BMV,%MGFL"ETJ0$VRCI_(]@*BDM,<58U_<6,@^&.^ M7B*/G@AE4FVT"4*SMJLB ?=&JZIQ-H$D-"&5L)Y4:O63^]&2VN1&;6_VJ%/% M(J6>[-2,*&QH]ZG;$]4-]JZU)+0UWKAB'C=30F,C+3KV+8&K+([:,GJ4]#$. M3($PM:M%^=&J_N9?>$<(LS*Q.,GKV4;.C.%MYC:FLM,G>YH.DZ M&$.F'/*$E*NY,^H!1?72%9Z])0MFI*2C^6!IWXF3F]#0RAUHM,':[UMQ_@I* MUZ.;(WO>]X?=WOEYYZ)W^1'AQ^4O_2'"FULG4,B6AT7-)GG+XVA#N1V=H6!(B'[PE-E M4BQ],@A-!GHV\5_K,4?[=,2Q)K[O? ?'LC?+W:)9N%CP!.YOO!>=2=?4I)K9,D76'' <=Z^MI@U^U&''E(J(S'U6YME^U M=E&-IY*,@5F:M&:W;EGEK(*GQLR"V[JQ?AD'N L^.W0V>)#%W]Y4.;D1^Z2I M4$#+_EG?$D\-#(DQ/\BU9DK34SG?+-6G:N:QG;GVF998$<6[2$7_BD*5&<=)CC9".,@.50LFJ?MZC RT1AC.^:#V6#IF;(.SN>$7-X((NZM0 MX#:>J@S_%!&F\\+#!7]N7\(MW/U/#G'WNX4YSU1W!7X17!!BSYP:PS!-TP>& M&=S886E##M HF7I*)^YY59W1F#*SW"ER8AMX&&"&MK74T9&(!O74/J-3 5?G M&^YK",FG2M6L)16VII@I39?#/6:9"3G15?T7[C\?# MX^!#5I3!Y72JFG9H-S-<2(D8'.4148E=NB($WH&*\@!ZPZJ M0;FJ9P6WH)9,NLLD Q!-7$N-S75D\($S#H&?8@FS)7;RB]%AP'2P=3I58+7 MJ&I%,G6-H3[_6#-.UZJ^<:$W-BTS&E"#:(,S#T+M9'0_*G>W<24LJA&7V7_] M^=TV7\^-J3MX1C6PE]IYT;.G3;//?<,&Q?LTJRQTN3LGRH""#"*JO&O@*$Q% M_TR!!8:+AHT='C9B(+7#"8X6'(MFE7C-8&9+-HGM4,Y*0W\^C%RMSA_1D2!%@-\H/KFA;J *QFQKBK+E&0T>TJQ6 MI0,K@?28:$PL)$Y76;)2H8T*2TEK2*#D;[]=C,]T&IQ&I1LLI&#DV"9,=M]' M[+MT4(4(8,-^(LN0DQR'<%,:$T8?8PWQ,\:X\DV?M^2P\5CZK)'#*A9:$&:Y MRZ6W+GI3@,^MX\,WI31@5]GB82\=)@]VE:)ZH'*#-:Z+&1HH?;F6"F[MGJ-4U8P6;E)H3GBKF M4EE2.#K=% LU:BVP!U@3S&:YUD$%=M56@-1Y.WF7)@A56T3+F%(%2]6"SWT< M$@V&6LY5 SW'G])8D[4)7;<+=(Z;$9<*^&Y;6JS*:YD@CPU[@1B=O6T*_ _T MN2%G2R!>SK_]U]A_6WP+EIEGZ3;1F5B MN%^H;6]&/21-;5B6T25C$J2;[VZ!V!L*;645*O/Y_CX VG6.ZPT^R9 M1X]I5GK%I)U7]56OZ19:E7XZ1*L2XKE93FS VK/W+IZWJ3,6O#.:S&9=E0(UJR:MH\C=K MNT"NR86W!"4*LQU786WZDVQ;:D%V!.ASS8U&Y#CD@KE.J M'%]0X*2GBFO9G<$1O+U:#0 M)[:E@I1,-:+:1&[A#GYVB#NXBR5T98XX^@"\YIY2J"QU3I5T-,>;V89<;)!J M'\<[724Q-$0[.@%)ES56NMY; #)/.PO(?USF\N8G$PH2M_'V?1 M&OZ9EXOD]?\#4$L#!!0 ( (MT"E<+ =,GI0< $PD 9 ;G9E92TR M,#(S># W># Q>&5X,S$Q+FAT;>U:6V\;MQ)^[Z]@;9S4!B19JXLOLF/ QW$+ MGX?T- B:QP-J.:LES%UN2:YD]==W9KBZV+(=!6U:.3@!(FO%X7#(^>:;(;D7 M>2C,Y44.4EU^=_%]NRW>V;0NH PB=2 #*%%[74[$)P7^3K3;C=2UK>9.3_(@ M>MU>7WRR[DY/96P/.ABX7.BY.(K/%T<\R,78JOGEA=)3H=7;/:V.5=H[SGJI M2F P.!W*P?CT+#WK=_O'&9R=JO\E>]@5Q6,?'^8&WNX5NFSG0../!KW.R; * MYS.M0CY*NMU_[;'HY45FRX#C.>P?OT8UF\JDFZ"^8"OLCIH"W(>V-'I2CGB* M>U'50CRUQKK1?I?_G5-+.Y.%-O/1#Q]U 5Z\AYGX8 M9_M#RLO1M#TYG4=#K MWR$.PH^S.(43U&-T"8LI)3V:Q,U]KL/OS^VWG]=5G,7C2!;&R)-W.D);A5N1R"L+!5,,,.3'DVHM?:NDP MPLQ)/3M@"Z3K8*+2]TR''"?H*TC9P#57X5N!8/_U0!!$ MIDMT,N%EY=06X@_%L=FMM>L2V:7@U(K?4U,3MR!PUCS80M!IXJ8*_4Z0)2@; ML\)D P?_:&B$O=*DN$42M4$!!*)%M/!PGNU)I<]%9NS,+U#J8*)]I!8@0Q)+$G/2OO46%]C/^).9TT$2^5L"@I_ M]N( L:$ P18!<'.?YK*<@+A"6OI0&Y1(^K*=# \@6I$,57R*CYH*VC*"E/0+ MXJXU[$8LD2U;#Y0]&"C#@19Y>QW1*$'Y_T_45R>]'4*I/-PAE/8&M [OP..> M!;W%2>WS4&I1ODUE[;?O0HEO# B+9J282FWM4 'RTU1[9CV4@I+U4(&_XLMU MSG5@)..LR:4KK+0:/J9&C=R)MGAKM.*=M*_'7BLMG:8)Z)CQ.0N4I*GVE(4Y M,CVG;.9(ZP$-PCTT=ZJPY-1I;211.TZ+C5AE<^P1:X/UD@:_C8$$D7VQ/ZB7 MV79W<3O>&=R>=8Y/-F&[-3]MH'=[9ML:Q C\J5:$38F[5TD4+CWBFNI( JQT M:@$>A+.68VUTF%,^?VI8"B7&&4,H1L$#T;4ZE#/%?3.AJG850MAS_9&FUBDV M@"O2"9185AA$,K9 12%"(EAM1[1B*.D*R?JUXC7=&;PN>?9F*DW-9$3>A"S# M$E!/T0_^B5)N62UL0:[Q\>GJCO&)'9$8?:PAQ[8.SUNP#?W+I310@9Q]?D\C MQHO2FT,.XDJ@/0PO&N 50DSM#,26E!B=MPD"VD@W91BW/(FT+R!"RLXV36M' MKEY+A4]H+:P/^#N=B*(NGZ*BW^+AC3AXIDN&F$6*>B3=&([['^ S #H>*.NE M78?1JESZ9=U Y,88!\6LS^O1,/(<=_IW8)H#@4?RK3^]1)_']>O96 V_G8T5 MGR2J192T5K1$++F.U!5#$=:^H+C8J$J7UDFL3(-U?IG/^0=4610Z!( 7&XI[]4'R^"$'ZK-9K/ 5>7*1\='/Y___35\OJ5P1(, M2T*-8*,M*VU^4PT(C28W+_":+4<\,'B" MVJ3"CAZ6S/8L.)L2%+LXNCK"V.",[S'=^[I ?. J\62:C/+D@=AKSN:[M\&Y MPJ2=.62)%GH9F-L0)WR\W "J%7.>+J?63($27RDGS2FY:^@0BLK8.6#K++>1 M .4#N"*\_I*JH+/C%XKO<-&8!<55/:E]:.Z"NO$R:!OC.?=++.2:9RLCY2)=L"7 M! \P;OASXP9;+&'VUZY/ T..L IG3,=>8C'5U[1XCQ>,7B&YSJ7&!%.*-_M] MC-[K7$,F;NXAK6GS*GZ.11Y)'OPWGEL@+6VT'VXN_1%'Y5K,/_O>RAH?/'KU MI;*>KVQ&\5QR"ALOPZQ\Q%'?77618W14'3:[?.;]F>8SOLUSQ&\1_0%02P,$ M% @ BW0*5S/.F.VK!P :B4 !D !N=F5E+3(P,C-X,#=X,#%X97@S M,3(N:'1M[5IM;QLW$OY^OX+GX%(;D&2M;/E%5@RXB5/X/J37(&@_'KC+68DU M=[DEN9+57]^9X>K%EFPK;7.1@PL062L.A\.9A\\,R1V.0V$NAV.0ZO(?PW^V MV^*=S>H"RB R!S* $K77Y4C\HL#?BG:[D7IKJYG3HW$0O6[O2/QBW:V>R-@> M=#!P.=9)A:-;L<*CT16KW9T]VS-%'=\_S\I)\>GZI>>I(FI[+7 MZ_9/U5$&Q_]-]K KBL<^/LP,O-DK=-D> XT_..YU3OM5N)AJ%<:#I-O]UQZ+ M7@YS6P8_WQT\W[F[=7GVY^_+#MO+[X+(XWAN"F):[55#J%>%?:5S;HELC !9W/1!C+ M,+?_"QG'&@]+YPGY]8O3[;DFZG3ZYX4:,Y02$@XF&*7)B&&LO?JJEPQ5F9N(C5-8%84OQ MWKI")-WV3R*W#L5 5&B%50+0K4K\NS:SUZ^2D^Y%THK,:7/QX>>^^,'85)J6 MN"FS#H;Q_%L(8V_GPOB]]!@$#%,Q$[>EG1I0(VC%:+H80V71A-)B^L,1I"Z% M+&>B+H.K 6> "9%S(T9-B@*?G)9&Y#+#GYRP!=)UL%%N3:"$#+R7;D8BA;P% MAL="I\??%!J#0QI.K#@&"63:82)%L1*["R92,1WK;"Q\31_+_E-PT"BA"13: M&\RXE+RG.HQQ@KZ"C U"(')=8I )+\N@MA!_ M*([-;J5=E\@N!:=6_)Z9FK@%@;,2P1:"3A,W51AW@BQ!V9@E)ALX^ =#(^R5 M)L4MDJ@-"B 0+:*%A_-L3R;]6.3&3OT3TPC>(:DH9H@B;YQH?]_T!1^Y&2 >,$8RY3@UP M/@,$9FJT'U,/$BN0(8DEZ1D+I,Q87V,_XDYG301+Y6P&"G_V8A^QH0#!%@%P M?9>-93D"<86T]+$V*)$>AU*)\ MF\G:;]^%$E\*"(MFI)A*;>U0 ?+31'MF/92"DO50@;_DRU7.=6 DXZS)I4NL MM!H^ID:-W(FV>&NTXIVTKU.OE99.TP1TS/B= MD]-UV&[-3VOHW9[9M@8Q G^B%6%3>EM*HG#I$==41Q)@<5<[!P_"6*NF5!5NPHA[+G^R#+K%!O %>D(2BPK#"(9 M6Z"B)4(B6&U'M.)2TA62]4O%:[8S>%WP[/5$FIK)B*()>8XEH)Y@'/R&4FY1 M+6Q!KO%QR+?^LHN>Q_7+V5CUOYV-%9\DJODJ:2UIB5AR M%:E+AB*L?49QL5:5+JR36)D&Z_PBG_,/J+(H= @ 3^2 U-(Y.+8KC?:QDGW$ M,U*N)TK'OU0?SQ.!V$O.YKNWP;G"I)T[9(D61AF8 MVQ G?+S< *H5-KM2&8 M2=S&A;(5E3G-QS*LA-C>WZN?GG;/^$5VL!X?_ MU7S@YLZ]PW?NAT&MMQV?=4[.'F_N=I)'VYY4>]Z)#GU>[2&;',U&Q_A*EF_V MCO8>D,&@*Q)V[%S?$Z*]ZHZ$5^_:::-UX%7R,"X<_UZZPES#[ M>_W3P)"76(4SIG,O,9_JGW7>RB)8Z?(KKAVLK[Z2O!A46<\76H-X M:CN!M5>%E@!F2NPNN\@445R']2[/O%W4?,9WG0[Y':L_ %!+ P04 " "+ M= I7LT-N;.(% "@&@ &0 &YV964M,C R,W@P-W@P,7AE>#,R,2YH=&WM M6>MOVS80_[Z_XN9B;0I8CN1'_&P SW&Z#$/W:YMT:! 8EN]XO/O=@[S3(-*+^'00,4)/OQM\[SAP)H)LP1(-@61$ M,PJ9XLD2SR,-=;?>@+="7O,;DM,UUS$[+>4,CO/GP;'= M9. +NCH=4'X#G+ZH<,]S:N?T&;7(_6VQ\@?7@67(GN^ M1NE5S%Y4%CQQ(F;V[S7KM78KU?TEISKJ>:[[0\6RG@Y"D6C<3^+Z_&LN9E<8 MD7.4IT6*RU&29K?:(3&?)SUK8B475;('(A:R]\2U?WU#<4*RX/&J]VS&%TS! M)5O"E5B0Y%E5D40YBDD>YHR*_\7R3>SC,C>AC7)BGK#2)*]NC!C?1MSG&AKU MFK=IP6&Z!P@^DP^D_&A\-;LXOQ@-9Q>32WCUYFKZ9G@Y@]EDKR6/17.O V]J MT]JH!M/QR&KO-5IN]='K/9S"\&SR:C8^^ZK@+D'NNB$+1LE[C)/W\*=Q\KW$7"00B25B@N4A@R74$ M.F+P.B,2$8]7<,52(36($"Y_;<'+6/@DKL)%$M3@R' ^?=*IU]W^2"Q2DJSL MD]=_#BCL7,@%>*[S&D(AK=1WN51@:#:%G[,8^;T3M^]5;8VN E$0\AAI=XI, M69!)KCE:3!(*X]L@(LF<875?++A21FG\-YP4CP*(F&2HZKIFN0&E8E4XX\$U MDPI7O;6ULPJCB+,01>-6FM\PF(0A#U!-%&3D%*95\]**+[_])BXGM4;3X#!#^(O\#+,8DS7 8(M-&-SECV3O,BZ9 MN>8HXYX65%](RJ2# M1L0D5:Q7?NF;4R FJQY/K"IV4;^0Y0NMQ<*(Z]^8LA^0N+C.V)#/R453T.W6 MVF[;] 4:FP%-RXV+EJ%F6X9C37=IS4ZMZ^XGNS5O+^T3B3VV*N=J(S *P^1% MI5$I%Q21W7/!L\"6\OZ!M9[>&N;U5L'DQ3:,.8)?/M L+D^?--M]93]WKA1W M4?9IX2FBT&98B@:+F%,H+?V:L-O!"SO@481%#"7CM:V!V;OG3K:+[+'-N6_U MZ)/7HTZK\5'UJ%OSO.[GJ$,6.@Y-?4(+#W4-.<:$/>'52L#Q[^ M6_]J+\4J,C?I1&CLX&\#ENJR=4>,S RZ:+ H^"M0&;;X**"*?3U0AET7+>89 M2%R[1-N!".J6"L7>TY5U/J(3VQAYK#.7@P]L];.[ 40)YY+GMJWIB];YINL( M!*HG[7@=E9R4;F\.'8A"TKN >7-?A,LV+ M5=KTN&NJ*>!Z0[N#NY/'$N)#4%C=$&.!%R',XSAW/0;V$J%$(% A-'2Q'6D' M#(4V(L9$\DX"1.@9G^$>J10WG.;.7\?=K+(AXIM!0M%Z;H6RX0DSF7 5W0LX M9&HGT7G*F!>&D*7XB[&/*;W?AUNO4S![;._:DRPFYI*X\X+E_IRR-Q_W?@GQ M\;#*].Z2?WDG4WSF;XB.[9NIOP%02P$"% ,4 " "+= I7*]WC9O(4 0#A M,1( $0 @ $ ;G9E92TR,#(S,#&UL4$L! A0#% @ MBW0*5[8! 0!N=F5E+3(P,C,P-S Q7VQA8BYX;6Q02P$"% ,4 " "+ M= I7_8B'^.QV "Z4 4 %0 @ &\1 ( ;G9E92TR,#(S,#

&UL4$L! A0#% @ BW0*5^'M!2:<(P E-P !D M ( !V[L" &YV964M,C R,W@P-W@P,7AE>#$P,2YH=&U02P$"% ,4 M" "+= I7"P'3)Z4' !,) &0 @ &NWP( ;G9E92TR,#(S M># W># Q>&5X,S$Q+FAT;5!+ 0(4 Q0 ( (MT"E#,R,2YH=&U02P4& H "@"F @ A?4" end