0001085869-21-000090.txt : 20210729 0001085869-21-000090.hdr.sgml : 20210729 20210729131553 ACCESSION NUMBER: 0001085869-21-000090 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 84 CONFORMED PERIOD OF REPORT: 20210630 FILED AS OF DATE: 20210729 DATE AS OF CHANGE: 20210729 FILER: COMPANY DATA: COMPANY CONFORMED NAME: PERFICIENT INC CENTRAL INDEX KEY: 0001085869 STANDARD INDUSTRIAL CLASSIFICATION: SERVICES-COMPUTER PROGRAMMING SERVICES [7371] IRS NUMBER: 742853258 STATE OF INCORPORATION: DE FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-15169 FILM NUMBER: 211126256 BUSINESS ADDRESS: STREET 1: 555 MARYVILLE UNIVERSITY DRIVE STREET 2: SUITE 600 CITY: SAINT LOUIS STATE: MO ZIP: 63141 BUSINESS PHONE: 314-529-3600 MAIL ADDRESS: STREET 1: 555 MARYVILLE UNIVERSITY DRIVE STREET 2: SUITE 600 CITY: SAINT LOUIS STATE: MO ZIP: 63141 10-Q 1 prft-20210630.htm PERFICIENT, INC. FORM 10-Q prft-20210630
0001085869December 312021Q2false00010858692021-01-012021-06-30xbrli:shares00010858692021-07-22iso4217:USD00010858692021-06-3000010858692020-12-31iso4217:USDxbrli:shares00010858692021-04-012021-06-3000010858692020-04-012020-06-3000010858692020-01-012020-06-300001085869us-gaap:CommonStockMember2021-03-310001085869us-gaap:CommonStockMember2020-03-310001085869us-gaap:CommonStockMember2020-12-310001085869us-gaap:CommonStockMember2019-12-310001085869us-gaap:CommonStockMember2021-04-012021-06-300001085869us-gaap:CommonStockMember2020-04-012020-06-300001085869us-gaap:CommonStockMember2021-01-012021-06-300001085869us-gaap:CommonStockMember2020-01-012020-06-300001085869us-gaap:CommonStockMember2021-06-300001085869us-gaap:CommonStockMember2020-06-300001085869us-gaap:AdditionalPaidInCapitalMember2021-03-310001085869us-gaap:AdditionalPaidInCapitalMember2020-03-310001085869us-gaap:AdditionalPaidInCapitalMember2020-12-310001085869us-gaap:AdditionalPaidInCapitalMember2019-12-310001085869us-gaap:AdditionalPaidInCapitalMember2021-04-012021-06-300001085869us-gaap:AdditionalPaidInCapitalMember2020-04-012020-06-300001085869us-gaap:AdditionalPaidInCapitalMember2021-01-012021-06-300001085869us-gaap:AdditionalPaidInCapitalMember2020-01-012020-06-300001085869us-gaap:AdditionalPaidInCapitalMember2021-06-300001085869us-gaap:AdditionalPaidInCapitalMember2020-06-300001085869us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-03-310001085869us-gaap:AccumulatedOtherComprehensiveIncomeMember2020-03-310001085869us-gaap:AccumulatedOtherComprehensiveIncomeMember2020-12-310001085869us-gaap:AccumulatedOtherComprehensiveIncomeMember2019-12-310001085869us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-04-012021-06-300001085869us-gaap:AccumulatedOtherComprehensiveIncomeMember2020-04-012020-06-300001085869us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-01-012021-06-300001085869us-gaap:AccumulatedOtherComprehensiveIncomeMember2020-01-012020-06-300001085869us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-06-300001085869us-gaap:AccumulatedOtherComprehensiveIncomeMember2020-06-300001085869us-gaap:TreasuryStockMember2021-03-310001085869us-gaap:TreasuryStockMember2020-03-310001085869us-gaap:TreasuryStockMember2020-12-310001085869us-gaap:TreasuryStockMember2019-12-310001085869us-gaap:TreasuryStockMember2021-04-012021-06-300001085869us-gaap:TreasuryStockMember2020-04-012020-06-300001085869us-gaap:TreasuryStockMember2021-01-012021-06-300001085869us-gaap:TreasuryStockMember2020-01-012020-06-300001085869us-gaap:TreasuryStockMember2021-06-300001085869us-gaap:TreasuryStockMember2020-06-300001085869us-gaap:RetainedEarningsMember2021-03-310001085869us-gaap:RetainedEarningsMember2020-03-310001085869us-gaap:RetainedEarningsMember2020-12-310001085869us-gaap:RetainedEarningsMember2019-12-310001085869srt:CumulativeEffectPeriodOfAdoptionAdjustmentMemberus-gaap:RetainedEarningsMember2021-03-310001085869srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember2020-03-310001085869srt:CumulativeEffectPeriodOfAdoptionAdjustmentMemberus-gaap:RetainedEarningsMember2020-12-310001085869srt:CumulativeEffectPeriodOfAdoptionAdjustmentMemberus-gaap:RetainedEarningsMember2019-12-310001085869us-gaap:RetainedEarningsMember2021-04-012021-06-300001085869us-gaap:RetainedEarningsMember2020-04-012020-06-300001085869us-gaap:RetainedEarningsMember2021-01-012021-06-300001085869us-gaap:RetainedEarningsMember2020-01-012020-06-300001085869us-gaap:RetainedEarningsMember2021-06-300001085869us-gaap:RetainedEarningsMember2020-06-3000010858692020-06-3000010858692021-03-3100010858692020-03-3100010858692019-12-310001085869us-gaap:TechnologyServiceMembersrt:MinimumMember2021-01-012021-06-300001085869us-gaap:TechnologyServiceMembersrt:MaximumMember2021-01-012021-06-300001085869us-gaap:TimeAndMaterialsContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMember2021-04-012021-06-300001085869us-gaap:TimeAndMaterialsContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredAtPointInTimeMember2021-04-012021-06-300001085869us-gaap:TimeAndMaterialsContractMemberprft:ProfessionalServicesMember2021-04-012021-06-300001085869us-gaap:TimeAndMaterialsContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMember2020-04-012020-06-300001085869us-gaap:TimeAndMaterialsContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredAtPointInTimeMember2020-04-012020-06-300001085869us-gaap:TimeAndMaterialsContractMemberprft:ProfessionalServicesMember2020-04-012020-06-300001085869prft:FixedPricePercentCompleteContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMember2021-04-012021-06-300001085869prft:FixedPricePercentCompleteContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredAtPointInTimeMember2021-04-012021-06-300001085869prft:FixedPricePercentCompleteContractMemberprft:ProfessionalServicesMember2021-04-012021-06-300001085869prft:FixedPricePercentCompleteContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMember2020-04-012020-06-300001085869prft:FixedPricePercentCompleteContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredAtPointInTimeMember2020-04-012020-06-300001085869prft:FixedPricePercentCompleteContractMemberprft:ProfessionalServicesMember2020-04-012020-06-300001085869us-gaap:FixedPriceContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMember2021-04-012021-06-300001085869us-gaap:FixedPriceContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredAtPointInTimeMember2021-04-012021-06-300001085869us-gaap:FixedPriceContractMemberprft:ProfessionalServicesMember2021-04-012021-06-300001085869us-gaap:FixedPriceContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMember2020-04-012020-06-300001085869us-gaap:FixedPriceContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredAtPointInTimeMember2020-04-012020-06-300001085869us-gaap:FixedPriceContractMemberprft:ProfessionalServicesMember2020-04-012020-06-300001085869prft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMemberprft:ReimbursableExpensesMember2021-04-012021-06-300001085869prft:ProfessionalServicesMemberprft:ReimbursableExpensesMemberus-gaap:TransferredAtPointInTimeMember2021-04-012021-06-300001085869prft:ProfessionalServicesMemberprft:ReimbursableExpensesMember2021-04-012021-06-300001085869prft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMemberprft:ReimbursableExpensesMember2020-04-012020-06-300001085869prft:ProfessionalServicesMemberprft:ReimbursableExpensesMemberus-gaap:TransferredAtPointInTimeMember2020-04-012020-06-300001085869prft:ProfessionalServicesMemberprft:ReimbursableExpensesMember2020-04-012020-06-300001085869prft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMember2021-04-012021-06-300001085869prft:ProfessionalServicesMemberus-gaap:TransferredAtPointInTimeMember2021-04-012021-06-300001085869prft:ProfessionalServicesMember2021-04-012021-06-300001085869prft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMember2020-04-012020-06-300001085869prft:ProfessionalServicesMemberus-gaap:TransferredAtPointInTimeMember2020-04-012020-06-300001085869prft:ProfessionalServicesMember2020-04-012020-06-300001085869us-gaap:TransferredOverTimeMemberprft:OtherServicesMember2021-04-012021-06-300001085869us-gaap:TransferredAtPointInTimeMemberprft:OtherServicesMember2021-04-012021-06-300001085869prft:OtherServicesMember2021-04-012021-06-300001085869us-gaap:TransferredOverTimeMemberprft:OtherServicesMember2020-04-012020-06-300001085869us-gaap:TransferredAtPointInTimeMemberprft:OtherServicesMember2020-04-012020-06-300001085869prft:OtherServicesMember2020-04-012020-06-300001085869us-gaap:TechnologyServiceMemberus-gaap:TransferredOverTimeMember2021-04-012021-06-300001085869us-gaap:TechnologyServiceMemberus-gaap:TransferredAtPointInTimeMember2021-04-012021-06-300001085869us-gaap:TechnologyServiceMember2021-04-012021-06-300001085869us-gaap:TechnologyServiceMemberus-gaap:TransferredOverTimeMember2020-04-012020-06-300001085869us-gaap:TechnologyServiceMemberus-gaap:TransferredAtPointInTimeMember2020-04-012020-06-300001085869us-gaap:TechnologyServiceMember2020-04-012020-06-300001085869us-gaap:TransferredOverTimeMemberprft:SoftwareAndHardwareMember2021-04-012021-06-300001085869prft:SoftwareAndHardwareMemberus-gaap:TransferredAtPointInTimeMember2021-04-012021-06-300001085869prft:SoftwareAndHardwareMember2021-04-012021-06-300001085869us-gaap:TransferredOverTimeMemberprft:SoftwareAndHardwareMember2020-04-012020-06-300001085869prft:SoftwareAndHardwareMemberus-gaap:TransferredAtPointInTimeMember2020-04-012020-06-300001085869prft:SoftwareAndHardwareMember2020-04-012020-06-300001085869us-gaap:TransferredOverTimeMember2021-04-012021-06-300001085869us-gaap:TransferredAtPointInTimeMember2021-04-012021-06-300001085869us-gaap:TransferredOverTimeMember2020-04-012020-06-300001085869us-gaap:TransferredAtPointInTimeMember2020-04-012020-06-300001085869us-gaap:TimeAndMaterialsContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMember2021-01-012021-06-300001085869us-gaap:TimeAndMaterialsContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredAtPointInTimeMember2021-01-012021-06-300001085869us-gaap:TimeAndMaterialsContractMemberprft:ProfessionalServicesMember2021-01-012021-06-300001085869us-gaap:TimeAndMaterialsContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMember2020-01-012020-06-300001085869us-gaap:TimeAndMaterialsContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredAtPointInTimeMember2020-01-012020-06-300001085869us-gaap:TimeAndMaterialsContractMemberprft:ProfessionalServicesMember2020-01-012020-06-300001085869prft:FixedPricePercentCompleteContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMember2021-01-012021-06-300001085869prft:FixedPricePercentCompleteContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredAtPointInTimeMember2021-01-012021-06-300001085869prft:FixedPricePercentCompleteContractMemberprft:ProfessionalServicesMember2021-01-012021-06-300001085869prft:FixedPricePercentCompleteContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMember2020-01-012020-06-300001085869prft:FixedPricePercentCompleteContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredAtPointInTimeMember2020-01-012020-06-300001085869prft:FixedPricePercentCompleteContractMemberprft:ProfessionalServicesMember2020-01-012020-06-300001085869us-gaap:FixedPriceContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMember2021-01-012021-06-300001085869us-gaap:FixedPriceContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredAtPointInTimeMember2021-01-012021-06-300001085869us-gaap:FixedPriceContractMemberprft:ProfessionalServicesMember2021-01-012021-06-300001085869us-gaap:FixedPriceContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMember2020-01-012020-06-300001085869us-gaap:FixedPriceContractMemberprft:ProfessionalServicesMemberus-gaap:TransferredAtPointInTimeMember2020-01-012020-06-300001085869us-gaap:FixedPriceContractMemberprft:ProfessionalServicesMember2020-01-012020-06-300001085869prft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMemberprft:ReimbursableExpensesMember2021-01-012021-06-300001085869prft:ProfessionalServicesMemberprft:ReimbursableExpensesMemberus-gaap:TransferredAtPointInTimeMember2021-01-012021-06-300001085869prft:ProfessionalServicesMemberprft:ReimbursableExpensesMember2021-01-012021-06-300001085869prft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMemberprft:ReimbursableExpensesMember2020-01-012020-06-300001085869prft:ProfessionalServicesMemberprft:ReimbursableExpensesMemberus-gaap:TransferredAtPointInTimeMember2020-01-012020-06-300001085869prft:ProfessionalServicesMemberprft:ReimbursableExpensesMember2020-01-012020-06-300001085869prft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMember2021-01-012021-06-300001085869prft:ProfessionalServicesMemberus-gaap:TransferredAtPointInTimeMember2021-01-012021-06-300001085869prft:ProfessionalServicesMember2021-01-012021-06-300001085869prft:ProfessionalServicesMemberus-gaap:TransferredOverTimeMember2020-01-012020-06-300001085869prft:ProfessionalServicesMemberus-gaap:TransferredAtPointInTimeMember2020-01-012020-06-300001085869prft:ProfessionalServicesMember2020-01-012020-06-300001085869us-gaap:TransferredOverTimeMemberprft:OtherServicesMember2021-01-012021-06-300001085869us-gaap:TransferredAtPointInTimeMemberprft:OtherServicesMember2021-01-012021-06-300001085869prft:OtherServicesMember2021-01-012021-06-300001085869us-gaap:TransferredOverTimeMemberprft:OtherServicesMember2020-01-012020-06-300001085869us-gaap:TransferredAtPointInTimeMemberprft:OtherServicesMember2020-01-012020-06-300001085869prft:OtherServicesMember2020-01-012020-06-300001085869us-gaap:TechnologyServiceMemberus-gaap:TransferredOverTimeMember2021-01-012021-06-300001085869us-gaap:TechnologyServiceMemberus-gaap:TransferredAtPointInTimeMember2021-01-012021-06-300001085869us-gaap:TechnologyServiceMember2021-01-012021-06-300001085869us-gaap:TechnologyServiceMemberus-gaap:TransferredOverTimeMember2020-01-012020-06-300001085869us-gaap:TechnologyServiceMemberus-gaap:TransferredAtPointInTimeMember2020-01-012020-06-300001085869us-gaap:TechnologyServiceMember2020-01-012020-06-300001085869us-gaap:TransferredOverTimeMemberprft:SoftwareAndHardwareMember2021-01-012021-06-300001085869prft:SoftwareAndHardwareMemberus-gaap:TransferredAtPointInTimeMember2021-01-012021-06-300001085869prft:SoftwareAndHardwareMember2021-01-012021-06-300001085869us-gaap:TransferredOverTimeMemberprft:SoftwareAndHardwareMember2020-01-012020-06-300001085869prft:SoftwareAndHardwareMemberus-gaap:TransferredAtPointInTimeMember2020-01-012020-06-300001085869prft:SoftwareAndHardwareMember2020-01-012020-06-300001085869us-gaap:TransferredOverTimeMember2021-01-012021-06-300001085869us-gaap:TransferredAtPointInTimeMember2021-01-012021-06-300001085869us-gaap:TransferredOverTimeMember2020-01-012020-06-300001085869us-gaap:TransferredAtPointInTimeMember2020-01-012020-06-300001085869country:US2021-04-012021-06-300001085869country:US2020-04-012020-06-300001085869country:US2021-01-012021-06-300001085869country:US2020-01-012020-06-300001085869prft:OtherCountriesMember2021-04-012021-06-300001085869prft:OtherCountriesMember2020-04-012020-06-300001085869prft:OtherCountriesMember2021-01-012021-06-300001085869prft:OtherCountriesMember2020-01-012020-06-300001085869prft:LongTermIncentivePlan2012Member2021-06-300001085869us-gaap:RestrictedStockMemberprft:LongTermIncentivePlan2012Member2020-12-310001085869us-gaap:RestrictedStockMemberprft:LongTermIncentivePlan2012Member2021-01-012021-06-300001085869us-gaap:RestrictedStockMemberprft:LongTermIncentivePlan2012Member2021-06-300001085869us-gaap:RestrictedStockMember2021-04-012021-06-300001085869us-gaap:RestrictedStockMember2020-04-012020-06-300001085869us-gaap:RestrictedStockMember2021-01-012021-06-300001085869us-gaap:RestrictedStockMember2020-01-012020-06-300001085869us-gaap:ConvertibleDebtSecuritiesMember2021-04-012021-06-300001085869us-gaap:ConvertibleDebtSecuritiesMember2020-04-012020-06-300001085869us-gaap:ConvertibleDebtSecuritiesMember2021-01-012021-06-300001085869us-gaap:ConvertibleDebtSecuritiesMember2020-01-012020-06-300001085869us-gaap:WarrantMember2021-04-012021-06-300001085869us-gaap:WarrantMember2020-04-012020-06-300001085869us-gaap:WarrantMember2021-01-012021-06-300001085869us-gaap:WarrantMember2020-01-012020-06-300001085869us-gaap:ComputerEquipmentMember2021-01-012021-06-300001085869us-gaap:ComputerEquipmentMember2021-06-300001085869us-gaap:ComputerEquipmentMember2020-12-310001085869us-gaap:ComputerSoftwareIntangibleAssetMembersrt:MinimumMember2021-01-012021-06-300001085869us-gaap:ComputerSoftwareIntangibleAssetMembersrt:MaximumMember2021-01-012021-06-300001085869us-gaap:ComputerSoftwareIntangibleAssetMember2021-06-300001085869us-gaap:ComputerSoftwareIntangibleAssetMember2020-12-310001085869us-gaap:FurnitureAndFixturesMember2021-01-012021-06-300001085869us-gaap:FurnitureAndFixturesMember2021-06-300001085869us-gaap:FurnitureAndFixturesMember2020-12-310001085869us-gaap:LeaseholdImprovementsMember2021-01-012021-06-300001085869us-gaap:LeaseholdImprovementsMember2021-06-300001085869us-gaap:LeaseholdImprovementsMember2020-12-310001085869srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember2020-12-310001085869srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember2019-12-310001085869srt:CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember2020-12-310001085869srt:CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember2019-12-310001085869prft:MedTouchMember2020-01-062020-01-060001085869prft:MedTouchMember2020-01-060001085869prft:BrainjocksMember2020-03-232020-03-230001085869prft:BrainjocksMember2020-03-230001085869prft:PSLMember2020-06-172020-06-170001085869prft:PSLMember2020-06-170001085869prft:MedTouchMember2021-06-300001085869prft:MedTouchMember2021-04-012021-06-300001085869prft:MedTouchMember2021-01-012021-06-300001085869prft:BrainjocksMember2021-06-300001085869prft:BrainjocksMember2021-04-012021-06-300001085869prft:BrainjocksMember2021-01-012021-06-300001085869prft:PSLMember2021-06-300001085869prft:PSLMember2021-04-012021-06-300001085869prft:PSLMember2021-01-012021-06-300001085869prft:PSLMember2020-06-172021-03-3100010858692020-06-172021-03-310001085869us-gaap:CustomerRelationshipsMember2021-01-012021-03-310001085869us-gaap:CustomerRelationshipsMembersrt:MinimumMember2021-01-012021-03-310001085869us-gaap:CustomerRelationshipsMembersrt:MaximumMember2021-01-012021-03-310001085869us-gaap:OrderOrProductionBacklogMember2021-01-012021-03-310001085869us-gaap:NoncompeteAgreementsMember2021-01-012021-03-310001085869us-gaap:TradeNamesMember2021-01-012021-03-310001085869us-gaap:SoftwareDevelopmentMember2021-01-012021-03-310001085869us-gaap:SoftwareDevelopmentMembersrt:MinimumMember2021-01-012021-03-310001085869srt:MaximumMemberus-gaap:SoftwareDevelopmentMember2021-01-012021-03-3100010858692021-01-012021-03-310001085869us-gaap:CustomerRelationshipsMember2021-06-300001085869us-gaap:CustomerRelationshipsMember2020-12-310001085869us-gaap:NoncompeteAgreementsMember2021-06-300001085869us-gaap:NoncompeteAgreementsMember2020-12-310001085869us-gaap:OrderOrProductionBacklogMember2021-06-300001085869us-gaap:OrderOrProductionBacklogMember2020-12-310001085869us-gaap:TradeNamesMember2021-06-300001085869us-gaap:TradeNamesMember2020-12-310001085869us-gaap:SoftwareDevelopmentMember2021-06-300001085869us-gaap:SoftwareDevelopmentMember2020-12-310001085869us-gaap:CustomerRelationshipsMembersrt:MinimumMember2021-01-012021-06-300001085869us-gaap:CustomerRelationshipsMembersrt:MaximumMember2021-01-012021-06-300001085869us-gaap:NoncompeteAgreementsMembersrt:MinimumMember2021-01-012021-06-300001085869srt:MaximumMemberus-gaap:NoncompeteAgreementsMember2021-01-012021-06-300001085869us-gaap:OrderOrProductionBacklogMember2021-01-012021-06-300001085869us-gaap:TradeNamesMember2021-01-012021-06-300001085869us-gaap:SoftwareDevelopmentMembersrt:MinimumMember2021-01-012021-06-300001085869srt:MaximumMemberus-gaap:SoftwareDevelopmentMember2021-01-012021-06-300001085869us-gaap:RevolvingCreditFacilityMemberprft:CreditAgreementMember2021-05-070001085869us-gaap:RevolvingCreditFacilityMemberprft:CreditAgreementMember2021-06-300001085869us-gaap:RevolvingCreditFacilityMemberprft:CreditAgreementMember2021-04-012021-06-300001085869us-gaap:RevolvingCreditFacilityMemberprft:CreditAgreementMember2021-01-012021-06-30xbrli:pure0001085869us-gaap:RevolvingCreditFacilityMemberus-gaap:PrimeRateMemberprft:CreditAgreementMember2021-06-300001085869us-gaap:RevolvingCreditFacilityMemberus-gaap:PrimeRateMemberprft:CreditAgreementMembersrt:MinimumMember2021-01-012021-06-300001085869us-gaap:RevolvingCreditFacilityMemberus-gaap:PrimeRateMemberprft:CreditAgreementMembersrt:MaximumMember2021-01-012021-06-300001085869us-gaap:RevolvingCreditFacilityMemberprft:CreditAgreementMemberus-gaap:LondonInterbankOfferedRateLIBORMember2021-06-300001085869us-gaap:RevolvingCreditFacilityMemberus-gaap:LondonInterbankOfferedRateLIBORMembersrt:MinimumMember2021-01-012021-06-300001085869us-gaap:RevolvingCreditFacilityMembersrt:MaximumMemberus-gaap:LondonInterbankOfferedRateLIBORMember2021-01-012021-06-300001085869us-gaap:RevolvingCreditFacilityMemberprft:CreditAgreementMembersrt:MinimumMember2021-01-012021-06-300001085869us-gaap:RevolvingCreditFacilityMemberprft:CreditAgreementMembersrt:MaximumMember2021-01-012021-06-300001085869us-gaap:RevolvingCreditFacilityMember2021-01-012021-06-300001085869prft:ConvertibleSeniorNotesDue2025Memberus-gaap:ConvertibleDebtMember2020-08-140001085869prft:ConvertibleSeniorNotesDue2025Memberus-gaap:ConvertibleDebtMember2020-08-142020-08-140001085869prft:ConvertibleSeniorNotesDue2025Memberus-gaap:ConvertibleDebtMember2021-06-300001085869prft:ConvertibleSeniorNotesDue2025Memberus-gaap:WarrantMember2021-06-300001085869prft:ConvertibleSeniorNotesDue2023Memberus-gaap:ConvertibleDebtMember2018-09-110001085869prft:ConvertibleSeniorNotesDue2023Memberus-gaap:ConvertibleDebtMember2018-09-112018-09-110001085869prft:ConvertibleSeniorNotesDue2023Memberus-gaap:ConvertibleDebtMember2021-06-300001085869prft:ConvertibleSeniorNotesDue2023Memberus-gaap:WarrantMember2018-09-110001085869prft:ConvertibleSeniorNotesDue2023Memberus-gaap:ConvertibleDebtMember2020-12-310001085869prft:ConvertibleSeniorNotesDue2023Memberus-gaap:ConvertibleDebtMember2020-08-012020-08-310001085869prft:ConvertibleSeniorNotesDue2023Memberus-gaap:ConvertibleDebtMember2020-12-012020-12-310001085869prft:ConvertibleDebtLiabilityComponentMemberprft:ConvertibleSeniorNotesDue2023Member2020-01-012020-12-310001085869prft:ConvertibleSeniorNotesDue2023Memberprft:ConvertibleDebtEquityComponentMember2020-01-012020-12-310001085869prft:ConvertibleSeniorNotesDue2023Memberus-gaap:ConvertibleDebtMember2020-01-012020-12-310001085869us-gaap:ConvertibleDebtMemberprft:ConversionCircumstanceOneMember2021-01-012021-06-30prft:day0001085869prft:ConversionCircumstanceTwoMemberus-gaap:ConvertibleDebtMember2021-01-012021-06-30utr:Rate0001085869prft:ConvertibleSeniorNotesDue2025Memberus-gaap:ConvertibleDebtMember2020-12-310001085869us-gaap:SeniorNotesMemberprft:ConvertibleSeniorNotesDue2025Member2021-04-012021-06-300001085869us-gaap:SeniorNotesMemberprft:ConvertibleSeniorNotesDue2025Member2020-04-012020-06-300001085869us-gaap:SeniorNotesMemberprft:ConvertibleSeniorNotesDue2025Member2021-01-012021-06-300001085869us-gaap:SeniorNotesMemberprft:ConvertibleSeniorNotesDue2025Member2020-01-012020-06-300001085869us-gaap:SeniorNotesMemberprft:ConvertibleSeniorNotesDue2023Member2021-04-012021-06-300001085869us-gaap:SeniorNotesMemberprft:ConvertibleSeniorNotesDue2023Member2020-04-012020-06-300001085869us-gaap:SeniorNotesMemberprft:ConvertibleSeniorNotesDue2023Member2021-01-012021-06-300001085869us-gaap:SeniorNotesMemberprft:ConvertibleSeniorNotesDue2023Member2020-01-012020-06-300001085869prft:ConvertibleSeniorNotesDue2025Memberprft:ConvertibleNoteHedgesMember2020-08-142020-08-140001085869prft:ConvertibleNoteHedgesMemberprft:ConvertibleSeniorNotesDue2023Member2018-09-112018-09-110001085869prft:ConvertibleNoteHedgesMemberprft:ConvertibleSeniorNotesDue2023Member2020-08-012020-08-310001085869prft:ConvertibleNoteHedgesMemberprft:ConvertibleSeniorNotesDue2023Member2020-12-012020-12-310001085869prft:ConvertibleSeniorNotesDue2023Memberus-gaap:WarrantMember2021-06-300001085869prft:ConvertibleSeniorNotesDue2023Memberus-gaap:WarrantMemberus-gaap:ConvertibleDebtMember2020-08-012020-08-310001085869us-gaap:InternalRevenueServiceIRSMemberus-gaap:DomesticCountryMemberprft:TaxYears2011through2015Member2021-06-300001085869us-gaap:InternalRevenueServiceIRSMemberprft:TaxYears2011through2019Memberus-gaap:DomesticCountryMember2021-06-300001085869us-gaap:ForeignExchangeForwardMemberus-gaap:NondesignatedMember2021-06-300001085869us-gaap:ForeignExchangeForwardMemberus-gaap:NondesignatedMember2020-12-310001085869us-gaap:NondesignatedMember2021-06-300001085869us-gaap:NondesignatedMember2020-12-310001085869us-gaap:FairValueInputsLevel1Memberus-gaap:MoneyMarketFundsMember2021-06-300001085869us-gaap:FairValueInputsLevel1Memberus-gaap:MoneyMarketFundsMember2020-12-310001085869us-gaap:FairValueInputsLevel2Member2021-06-300001085869us-gaap:FairValueInputsLevel2Member2020-12-310001085869prft:ConvertibleSeniorNotesDue2025Memberus-gaap:FairValueInputsLevel2Member2021-06-300001085869prft:ConvertibleSeniorNotesDue2025Memberus-gaap:FairValueInputsLevel2Member2020-12-310001085869prft:ConvertibleSeniorNotesDue2023Memberus-gaap:FairValueInputsLevel2Member2021-06-300001085869prft:ConvertibleSeniorNotesDue2023Memberus-gaap:FairValueInputsLevel2Member2020-12-310001085869srt:MinimumMember2021-06-300001085869srt:MaximumMember2021-06-30

UNITED STATES
SECURITIES AND EXCHANGE COMMISSION
WASHINGTON, DC 20549
 
FORM 10-Q
(Mark One)
QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934
 For the quarterly period ended June 30, 2021 
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-15169
PERFICIENT, INC.
(Exact name of registrant as specified in its charter)
DelawareNo.74-2853258
(State or other jurisdiction of incorporation or organization)(I.R.S. Employer Identification No.)
555 Maryville University Drive
Suite 600
Saint Louis, Missouri 63141
(Address of principal executive offices)
(314) 529-3600
(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.001 par valuePRFTThe Nasdaq Global Select 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 during the past 90 days. þ Yes o 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 o 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 definition 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 filerSmaller 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. o
 
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 July 22, 2021, there were 32,931,290 shares of Common Stock outstanding.



TABLE OF CONTENTS
 
   
   
 
   
 
   
 
   
 
   
 
   
 
   
   
   
   
   
   
   
   
   
 




PART I. FINANCIAL INFORMATION
 
SPECIAL NOTE REGARDING FORWARD-LOOKING STATEMENTS
 
Certain statements contained in this Quarterly Report on this Form 10-Q (“Form 10-Q”) are not purely historical statements and discuss future expectations, contain projections of results of operations or financial condition, or state other forward-looking information. Those statements are subject to known and unknown risks, uncertainties, and other factors that could cause the actual results to differ materially from those contemplated by the statements. The “forward-looking” information is based on various factors and was derived using numerous assumptions. In some cases, you can identify these so-called forward-looking statements by words like “may,” “will,” “should,” “expects,” “plans,” “anticipates,” “believes,” “estimates,” “predicts,” “potential,” or “continue” or the negative of those words and other comparable words. You should be aware that those statements only reflect our predictions and are subject to risks and uncertainties. Actual events or results may differ substantially. Important factors that could cause our actual results to be materially different from the forward-looking statements include (but are not limited to) the following, many of which are, or may be, amplified by the novel coronavirus (COVID-19) pandemic:
 
1.the impact of the general economy and economic and political uncertainty on our business;
2.the impact of the COVID-19 pandemic on our business;
3.risks associated with potential changes to federal, state, local and foreign laws, regulations, and policies;
4.risks associated with the operation of our business generally, including:
a.client demand for our services and solutions;
b.effectively competing in a highly competitive market;
c.risks from international operations including fluctuations in exchange rates;
d.adapting to changes in technologies and offerings;
e.obtaining favorable pricing to reflect services provided;
f.risk of loss of one or more significant software vendors;
g.maintaining a balance of our supply of skills and resources with client demand;
h.changes to immigration policies;
i.protecting our clients’ and our data and information;
j.changes to tax levels, audits, investigations, tax laws or their interpretation;
k.making appropriate estimates and assumptions in connection with preparing our consolidated financial statements; and
l.maintaining effective internal controls;
5.risks associated with managing growth organically and through acquisitions;
6.risks associated with servicing our debt, the potential impact on the value of our common stock from the conditional conversion features of our debt and the associated convertible note hedge transactions;
7.legal liabilities, including intellectual property protection and infringement or the disclosure of personally identifiable information; and
8.the risks detailed from time to time within our filings with the Securities and Exchange Commission (the “SEC”).

This discussion is not exhaustive, but is designed to highlight important factors that may impact our forward-looking statements. Because the factors referred to above, as well as the statements included under the heading “Risk Factors” in our Annual Report on Form 10-K for the year ended December 31, 2020, including documents incorporated by reference therein and herein, could cause actual results or outcomes to differ materially from those expressed in any forward-looking statement made by us or on our behalf, you should not place undue reliance on any forward-looking statements.
 
Although we believe that the expectations reflected in the forward-looking statements are reasonable, we cannot guarantee future results, levels of activity, performance, or achievements. We are under no duty to update any of the forward-looking statements after the date of this Form 10-Q to conform such statements to actual results.
 
All forward-looking statements, express or implied, included in this report and the documents we incorporate by reference that are attributable to Perficient, Inc. and its subsidiaries (collectively, “we,” “us,” “Perficient,” or the “Company”) are expressly qualified in their entirety by this cautionary statement. This cautionary statement should also be considered in connection with any subsequent written or oral forward-looking statements that the Company or any persons acting on our behalf may issue.

1


Item 1. Financial Statements

Perficient, Inc.
Condensed Consolidated Balance Sheets
(in thousands, except share and per share information)
 
 June 30, 2021 (unaudited)December 31, 2020
Assets
Current assets:  
Cash and cash equivalents$86,686 $83,204 
Accounts receivable, net149,718 133,085 
Prepaid expenses6,354 5,575 
Other current assets5,795 4,646 
Total current assets248,553 226,510 
Property and equipment, net12,124 11,902 
Operating lease right-of-use assets35,056 38,539 
Goodwill420,508 427,928 
Intangible assets, net48,937 63,571 
Other non-current assets21,017 17,311 
Total assets$786,195 $785,761 
Liabilities and Stockholders’ Equity   
Current liabilities:  
Accounts payable$26,167 $25,613 
Other current liabilities87,683 103,267 
Total current liabilities113,850 128,880 
Long-term debt, net188,667 183,624 
Operating lease liabilities25,871 29,098 
Other non-current liabilities45,814 50,081 
Total liabilities$374,202 $391,683 
Stockholders’ equity:  
Preferred stock (par value $0.001 per share; 8,000,000 authorized; no shares issued or outstanding as of June 30, 2021 and December 31, 2020)
$ $ 
Common stock (par value $0.001 per share; 100,000,000 authorized; 50,572,384 shares issued and 32,070,673 shares outstanding as of June 30, 2021; 50,296,453 shares issued and 32,074,094 shares outstanding as of December 31, 2020)
51 50 
Additional paid-in capital470,218 459,866 
Accumulated other comprehensive (loss) income(1,813)3,746 
Treasury stock, at cost (18,501,711 shares as of June 30, 2021; 18,222,359 shares as of December 31, 2020)
(306,270)(289,225)
Retained earnings249,807 219,641 
Total stockholders’ equity411,993 394,078 
Total liabilities and stockholders’ equity$786,195 $785,761 
 
See accompanying notes to interim unaudited condensed consolidated financial statements.

2


Perficient, Inc.
Unaudited Condensed Consolidated Statements of Operations
(in thousands, except share and per share information)
Three Months Ended June 30,Six Months Ended June 30,
 2021202020212020
  
Revenues$184,136 $146,339 $353,477 $291,901 
Cost of revenues (cost of services, exclusive of depreciation and amortization, shown separately below)113,180 91,155 219,242 184,372 
Selling, general and administrative37,424 33,876 71,403 67,097 
Depreciation1,615 1,317 3,075 2,605 
Amortization6,333 4,398 13,385 8,320 
Acquisition costs 1,787 68 3,600 
Adjustment to fair value of contingent consideration(510)2,067 4 1,732 
Income from operations26,094 11,739 46,300 24,175 
Net interest expense3,367 2,061 6,663 3,987 
Net other expense (income)9 (15)131 (8)
Income before income taxes22,718 9,693 39,506 20,196 
Provision for income taxes6,145 3,084 9,340 4,613 
Net income$16,573 $6,609 $30,166 $15,583 
Basic net income per share$0.52 $0.21 $0.95 $0.49 
Diluted net income per share$0.49 $0.20 $0.90 $0.48 
Shares used in computing basic net income per share31,922 31,888 31,893 31,763 
Shares used in computing diluted net income per share33,867 32,377 33,500 32,444 
 
See accompanying notes to interim unaudited condensed consolidated financial statements.

3


Perficient, Inc.
Unaudited Condensed Consolidated Statements of Comprehensive Income
(in thousands)
Three Months Ended June 30,Six Months Ended June 30,
 2021202020212020
 
Net income$16,573 $6,609 $30,166 $15,583 
Other comprehensive loss:
Foreign currency translation adjustment, net of tax(1,273)(78)(5,559)(1,052)
Comprehensive income$15,300 $6,531 $24,607 $14,531 
 
See accompanying notes to interim unaudited condensed consolidated financial statements.

4


Perficient, Inc.
Unaudited Condensed Consolidated Statements of Stockholders Equity
(in thousands)
Three Months Ended June 30,Six Months Ended June 30,
2021202020212020
Common Stock
Beginning of period$51 $50 $50 $49 
Stock compensation related to restricted stock vesting and retirement savings plan contributions  1 1 
End of period51 50 51 50 
Additional Paid-in Capital
Beginning of period465,156 465,123 459,866 455,465 
Proceeds from the sales of stock through the Employee Stock Purchase Plan106 76 211 116 
Stock compensation related to restricted stock vesting and retirement savings plan contributions4,956 4,679 10,141 9,405 
Issuance of stock in conjunction with acquisition including stock attributed to future compensation 5,269  10,161 
End of period470,218 475,147 470,218 475,147 
Accumulated Other Comprehensive (Loss) Income
Beginning of period(540)(3,624)3,746 (2,650)
Foreign currency translation adjustment(1,273)(78)(5,559)(1,052)
End of period(1,813)(3,702)(1,813)(3,702)
Treasury Stock
Beginning of period(299,367)(266,459)(289,225)(261,624)
Purchases of treasury stock and buyback of shares for taxes(6,903)(26)(17,045)(4,861)
End of period(306,270)(266,485)(306,270)(266,485)
Retained Earnings
Beginning of period233,234 198,434 219,641 189,775 
Cumulative effect of accounting changes   (315)
Net income16,573 6,609 30,166 15,583 
End of period249,807 205,043 249,807 205,043 
      Total Shareholders’ Equity$411,993 $410,053 $411,993 $410,053 

Three Months Ended June 30,Six Months Ended June 30,
Common Stock, shares2021202020212020
Beginning of period32,151 32,061 32,074 31,687 
Sales of stock through the Employee Stock Purchase Plan2 3 4 4 
Stock compensation related to restricted stock vesting and retirement savings plan contributions18 38 272 358 
Purchases of treasury stock and buyback of shares for taxes(100) (279)(114)
Issuance of stock in conjunction with acquisition including stock attributed to future compensation 170  337 
End of period32,071 32,272 32,071 32,272 

See accompanying notes to interim unaudited condensed consolidated financial statements.
5


Perficient, Inc.
Unaudited Condensed Consolidated Statements of Cash Flows 
 (in thousands)
Six Months Ended June 30,
 20212020
Operating Activities
Net income$30,166 $15,583 
Adjustments to reconcile net income to net cash provided by operations:
Depreciation3,075 2,605 
Amortization13,385 8,320 
Deferred income taxes(963)252 
Non-cash stock compensation and retirement savings plan contributions10,320 9,472 
Amortization of debt discount and issuance costs5,090 2,416 
Adjustment to fair value of contingent consideration for purchase of businesses4 1,732 
Changes in operating assets and liabilities, net of acquisitions:  
Accounts receivable(16,366)13,634 
Other assets(5,371)2,166 
Accounts payable2,173 (6,996)
Other liabilities(11,633)(11,684)
Net cash provided by operating activities29,880 37,500 
Investing Activities  
Purchase of property and equipment(3,623)(2,447)
Capitalization of internally developed software costs(569)(1,080)
Purchase of businesses, net of cash acquired(12)(91,201)
Net cash used in investing activities(4,204)(94,728)
Financing Activities  
Payment for credit facility financing fees(633) 
Proceeds from line of credit 20,000 
Payments on line of credit (8,000)
Payment of contingent consideration for purchase of business(4,208)(876)
Proceeds from the sale of stock through the Employee Stock Purchase Plan211 116 
Purchases of treasury stock(11,802) 
Remittance of taxes withheld as part of a net share settlement of restricted stock vesting(5,243)(4,861)
Net cash (used in) provided by financing activities(21,675)6,379 
Effect of exchange rate on cash and cash equivalents(519)(335)
Change in cash and cash equivalents3,482 (51,184)
Cash and cash equivalents at beginning of period83,204 70,728 
Cash and cash equivalents at end of period$86,686 $19,544 
Supplemental Disclosures:
Cash paid for income taxes$10,014 $1,588 
Cash paid for interest$1,455 $1,813 
Non-Cash Investing Activity:  
Stock issued for purchase of businesses $ $8,729 
Liability incurred for purchase of property and equipment$ $486 

See accompanying notes to interim unaudited condensed consolidated financial statements.
6


PERFICIENT, INC.
NOTES TO INTERIM UNAUDITED CONDENSED CONSOLIDATED FINANCIAL STATEMENTS
JUNE 30, 2021
 
1. Basis of Presentation
 
The accompanying interim unaudited condensed consolidated financial statements of Perficient, Inc. and its subsidiaries (collectively, the “Company”) have been prepared in accordance with U.S. generally accepted accounting principles (“U.S. GAAP”) and are presented in accordance with the rules and regulations of the Securities and Exchange Commission (the “SEC”) applicable to interim financial information. Accordingly, certain note disclosures have been condensed or omitted. In the opinion of management, the interim unaudited condensed consolidated financial statements reflect all adjustments (consisting of only normal recurring adjustments) necessary for a fair presentation of the Company’s financial position, results of operations and cash flows for the periods presented. These financial statements should be read in conjunction with the Company’s consolidated financial statements and notes thereto filed with the SEC in the Company’s Annual Report on Form 10-K for the year ended December 31, 2020.

Through June 30, 2021, the Company had not experienced a material impact to its business, operations or financial results as a result of the novel coronavirus (COVID-19) pandemic. However, operating results for the three and six months ended June 30, 2021 are not necessarily indicative of the results that may be expected for the year ended December 31, 2021, particularly in light of the COVID-19 pandemic, including emerging variants, and its effects on domestic and global economies. To limit the spread of COVID-19, governments have imposed, and may continue to impose, among other things, travel and business operation restrictions and stay-at-home orders and social distancing guidelines, causing some businesses to adjust, reduce or suspend operating activities. While certain of these restrictions and guidelines have been lifted or relaxed, they may be reinstituted in response to continuing effects of the pandemic, including as a result of emerging variants. These disruptions and restrictions could adversely affect our operating results due to, among other things, reduced demand for our services and solutions, requests for discounts or extended payment terms, or customer bankruptcies. For more information, refer to the statements included under the heading “Risk Factors” in our Annual Report on Form 10-K for the year ended December 31, 2020.

2. Summary of Significant Accounting Policies
 
Use of Estimates
 
The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting periods. Actual results could differ from those estimates, and such differences could be material to the financial statements.

There have been no changes to significant accounting policies described in the Annual Report on Form 10-K for the year ended December 31, 2020 that have had a material impact on the Company’s condensed consolidated financial statements and related notes.

3. Recent Accounting Pronouncements

In August 2020, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) No. 2020-06, Debt—Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging - Contracts in Entity’s Own Equity (Subtopic 815-40), which simplifies the accounting for convertible instruments. The guidance removes certain accounting models that separate the embedded conversion features from the host contract for convertible instruments, requiring bifurcation only if the convertible debt feature qualifies as a derivative or for convertible debt issued at a substantial premium. The ASU removes certain settlement conditions required for equity contracts to qualify for the derivative scope exception, permitting more contracts to qualify for the exception. In addition, the guidance eliminates the treasury stock method to calculate diluted earnings per share for convertible instruments and requires the use of the if-converted method. The ASU is effective for annual reporting periods beginning after December 15, 2021, including interim reporting periods within those annual periods, with early adoption permitted no earlier than the fiscal year beginning after December 15, 2020. The ASU allows entities to use a modified or full retrospective transition method. Under the modified approach, entities will apply the guidance to all financial instruments that are outstanding as of the beginning of the year of adoption with the cumulative effect recognized as an adjustment to the opening balance of retained earnings. Under the full retrospective method, entities will apply the guidance to all outstanding financial instruments for each prior reporting period presented. The Company will adopt this
7


ASU on January 1, 2022 and is currently evaluating the method of adoption and the related impact of the new guidance on earnings per share and on its financial statements.

4. Revenue
 
The Company’s revenues consist of services and software and hardware sales. In accordance with Accounting Standards Codification (“ASC”) Topic 606, Revenue from Contracts with Customers, revenues are recognized when control of services or goods are transferred to clients, in an amount that reflects the consideration the Company expects to be entitled to in exchange for those services or goods.

Services Revenues

Services revenues are primarily comprised of professional services that include developing, implementing, automating and extending business processes, technology infrastructure, and software applications. The Company’s professional services span multiple industries, platforms and solutions; however, the Company has remained relatively diversified and does not believe that it has significant revenue concentration within any single industry, platform or solution.

Professional services revenues are recognized over time as services are rendered. Most projects are performed on a time and materials basis, while a portion of revenues is derived from projects performed on a fixed fee or fixed fee percent complete basis. For time and material contracts, revenues are generally recognized and invoiced by multiplying the number of hours expended in the performance of the contract by the hourly rates. For fixed fee contracts, revenues are generally recognized and invoiced by multiplying the fixed rate per time period established in the contract by the number of time periods elapsed. For fixed fee percent complete contracts, revenues are generally recognized using an input method based on the ratio of hours expended to total estimated hours, and the client is invoiced according to the agreed-upon schedule detailing the amount and timing of payments in the contract.

Clients are typically billed monthly for services provided during that month but can be billed on a more or less frequent basis as determined by the contract. If the time is worked and approved at the end of a fiscal period and the invoice has not yet been sent to the client, the amount is recorded as revenue once the Company verifies all other revenue recognition criteria have been met, and the amount is classified as a receivable as the right to consideration is unconditional at that point. Amounts invoiced in excess of revenues recognized are contract liabilities, which are classified as deferred revenues in the Unaudited Condensed Consolidated Balance Sheet. The term between invoicing and payment due date is not significant. Contracts for professional services provide for a general right, to the client or the Company, to cancel or terminate the contract within a given period of time (generally 10 to 30 days’ notice is required). The client is responsible for any time and expenses incurred up to the date of cancellation or termination of the contract. Certain contracts may include volume discounts or holdbacks, which are accounted for as variable consideration, but are not typically significant. The Company estimates variable consideration based on historical experience and forecasted sales and includes the variable consideration in the transaction price.

Other services revenues are comprised of hosting fees, partner referral fees, maintenance agreements, training and internally developed software-as-a-service (“SaaS”) sales. Revenues from hosting fees, maintenance agreements, training and internally developed SaaS sales are generally recognized over time using a time-based measure of progress as services are rendered. Partner referral fees are recorded at a point in time upon meeting specified requirements to earn the respective fee.

On many professional service projects, the Company is also reimbursed for out-of-pocket expenses including travel and other project-related expenses. These reimbursements are included as a component of the transaction price of the respective professional services contract and are invoiced as the expenses are incurred. The Company structures its professional services arrangements to recover the cost of reimbursable expenses without a markup.

Software and Hardware Revenues

Software and hardware revenues are comprised of third-party software and hardware resales, in which the Company is considered the agent, and sales of internally developed software, in which the Company is considered the principal. Third-party software and hardware revenues are recognized and invoiced when the Company fulfills its obligation to arrange the sale, which occurs when the purchase order with the vendor is executed and the customer has access to the software or the hardware has been shipped to the customer. Internally developed software revenues are recognized and invoiced when control is transferred to the customer, which occurs when the software has been made available to the customer and the license term has commenced. Revenues from third-party software and hardware sales are recorded on a net basis, while revenues from internally developed
8


software sales are recorded on a gross basis. There are no significant cancellation or termination-type provisions for the Company’s software and hardware sales, and the term between invoicing and payment due date is not significant.

    Revenues are presented net of taxes assessed by governmental authorities. Sales taxes are generally collected and subsequently remitted on all software and hardware sales and certain services transactions as appropriate.

Arrangements with Multiple Performance Obligations

Arrangements with clients may contain multiple promises such as delivery of software, hardware, professional services or post-contract support services. These promises are accounted for as separate performance obligations if they are distinct. For arrangements with clients that contain multiple performance obligations, the transaction price is allocated to the separate performance obligations based on estimated relative standalone selling price, which is estimated by the expected cost plus a margin approach, taking into consideration market conditions and competitive factors. Because contracts that contain multiple performance obligations are typically short term due to the contract cancellation provisions, the allocation of the transaction price to the separate performance obligations is not considered a significant estimate.

Contract Costs

In accordance with the terms of the Company’s sales commission plan, commissions are not earned until the related revenue is recognized. Therefore, sales commissions are expensed as they are earned. Certain sales incentives are accrued based on achievement of specified bookings goals. For these incentives, the Company applies the practical expedient that allows the Company to expense the incentives as incurred because the amortization period would have been one year or less.

Deferred Revenue

The Company’s deferred revenue balance as of June 30, 2021 and December 31, 2020 was $6.3 million and $9.4 million, respectively. Substantially all of the December 31, 2020 deferred revenue balance was recognized in revenue during the six months ended June 30, 2021.

Transaction Price Allocated to Remaining Performance Obligations
 
Due to the ability of the client or the Company to cancel or terminate the contract within a given period of time (generally 10 to 30 days’ notice is required), the majority of the Company’s contracts have a term of less than one year. The Company does not disclose the value of unsatisfied performance obligations for contracts with an original maturity date of one year or less or time and materials contracts for which the Company has the right to invoice for services performed. Revenue related to unsatisfied performance obligations for remaining contracts as of June 30, 2021 was immaterial.
 
Disaggregation of Revenue

The following tables present revenue disaggregated by revenue source and pattern of revenue recognition (in thousands):

 Three Months Ended June 30,
20212020
 Over TimePoint In TimeTotal RevenuesOver TimePoint In TimeTotal Revenues
Time and materials contracts$139,274 $ $139,274 $102,294 $ $102,294 
Fixed fee percent complete contracts12,100  12,100 14,015  14,015 
Fixed fee contracts26,571  26,571 24,260  24,260 
Reimbursable expenses2,562  2,562 1,530  1,530 
Total professional services fees180,507  180,507 142,099  142,099 
Other services revenue*2,880 388 3,268 3,316 421 3,737 
Total services183,387 388 183,775 145,415 421 145,836 
Software and hardware 361 361  503 503 
Total revenues$183,387 $749 $184,136 $145,415 $924 $146,339 

9


*Other services revenue primarily consists of hosting fees, maintenance, training, internally developed SaaS revenue and partner referral fees.

 Six Months Ended June 30,
20212020
 Over TimePoint In TimeTotal RevenuesOver TimePoint In TimeTotal Revenues
Time and materials contracts$267,865 $ $267,865 $202,285 $ $202,285 
Fixed fee percent complete contracts23,680  23,680 25,636  25,636 
Fixed fee contracts49,048  49,048 49,288  49,288 
Reimbursable expenses4,816  4,816 5,924  5,924 
Total professional services fees345,409  345,409 283,133  283,133 
Other services revenue*5,997 1,099 7,096 6,946 1,159 8,105 
Total services351,406 1,099 352,505 290,079 1,159 291,238 
Software and hardware 972 972  663 663 
Total revenues$351,406 $2,071 $353,477 $290,079 $1,822 $291,901 

* Other services revenue primarily consists of hosting fees, maintenance, training, internally developed SaaS revenue and partner referral fees.

The following table presents revenue disaggregated by geographic area, as determined by the billing address of customers (in thousands):

Three Months Ended June 30,Six Months Ended June 30,
 2021202020212020
United States$180,350 $143,492 $346,158 $286,062 
Other countries3,786 2,847 7,319 5,839 
Total revenues$184,136 $146,339 $353,477 $291,901 

5. Stock-Based Compensation
 
Stock-based compensation is accounted for in accordance with ASC Topic 718, Compensation – Stock Compensation. Under this guidance, the Company recognizes share-based compensation ratably using the straight-line attribution method over the requisite service period, which is generally three years. The fair value of restricted stock awards is based on the value of the Company’s common stock on the date of the grant.

Stock Award Plans
 
The Company’s Second Amended and Restated 2012 Long Term Incentive Plan (as amended, the “Incentive Plan”) allows for the granting of various types of stock awards, not to exceed a total of 7.0 million shares, to eligible individuals. The Compensation Committee of the Board of Directors administers the Incentive Plan and determines the terms of all stock awards made under the Incentive Plan. As of June 30, 2021, there were 1.3 million shares of common stock available for issuance under the Incentive Plan.
 
Stock-based compensation cost recognized for the three and six months ended June 30, 2021 was $5.5 million and $10.8 million, respectively, which included $1.1 million and $2.0 million, respectively, of expense for retirement savings plan contributions. The associated current and future income tax benefit recognized was $1.6 million and $3.2 million for the three and six months ended June 30, 2021, respectively. Stock-based compensation cost recognized for the three and six months ended June 30, 2020 was $5.1 million and $9.7 million, respectively, which included $0.9 million and $1.7 million, respectively, of expense for retirement savings plan contributions. The associated current and future income tax benefit recognized was $1.5 million and $2.9 million for the three and six months ended June 30, 2020, respectively. As of June 30, 2021, there was $27.0 million of total unrecognized compensation cost related to non-vested share-based awards with a weighted-average remaining life of two years.    



10


Restricted stock activity for the six months ended June 30, 2021 was as follows (shares in thousands):

 
 SharesWeighted-Average
Grant Date Fair Value
Restricted stock awards outstanding at December 31, 2020905 $35.34 
Awards granted192 55.70 
Awards vested(238)29.90 
Awards forfeited(44)35.90 
Restricted stock awards outstanding at June 30, 2021815 $41.68 

6. Net Income per Share
 
The following table presents the calculation of basic and diluted net income per share (in thousands, except per share information):

Three Months Ended June 30,Six Months Ended June 30,
 2021202020212020
Net income$16,573 $6,609 $30,166 $15,583 
Basic:
Weighted-average shares of common stock outstanding31,922 31,888 31,893 31,763 
Shares used in computing basic net income per share31,922 31,888 31,893 31,763 
Effect of dilutive securities:
Restricted stock subject to vesting460 265 461 401 
Shares issuable for acquisition consideration (1)188 224 217 203 
Shares issuable for conversion of convertible senior notes1,251 — 893 77 
Shares issuable for exercise of warrants46  36  
Shares used in computing diluted net income per share33,867 32,377 33,500 32,444 
Basic net income per share$0.52 $0.21 $0.95 $0.49 
Diluted net income per share$0.49 $0.20 $0.90 $0.48 
 
(1)For the three and six months ended June 30, 2021, this represents the shares held in escrow pursuant to: (i) the Asset Purchase Agreement with Zeon Solutions Incorporated and certain related entities (collectively, “Zeon”); (ii) the Asset Purchase Agreement with MedTouch LLC (“MedTouch”); (iii) the Asset Purchase Agreement with Catalyst Networks, Inc. (“Brainjocks”); and (iv) the Stock Purchase Agreement with the shareholders of Productora de Software S.A.S. (“PSL”), as part of the consideration. For the three and six months ended June 30, 2020, this represents the shares held in escrow pursuant to: (i) the Asset Purchase Agreement with RAS & Associates, LLC (“RAS”); (ii) the Asset Purchase Agreement with Zeon; (iii) the Asset Purchase Agreement with Stone Temple Consulting Corporation (“Stone Temple”); (iv) the Asset Purchase Agreement with Sundog Interactive, Inc. (“Sundog”); (v) the Asset Purchase Agreement with MedTouch; (vi) the Asset Purchase Agreement with Brainjocks; and (vii) the Stock Purchase Agreement with the shareholders of PSL, as part of the consideration.

    The number of anti-dilutive securities not included in the calculation of diluted net income per share were as follows (in thousands):

Three Months Ended June 30,Six Months Ended June 30,
 2021202020212020
Restricted stock subject to vesting 174  121 
Convertible senior notes 3,823   
Warrants related to the issuance of convertible senior notes4,451 3,823 4,451 3,823 
Total anti-dilutive securities4,451 7,820 4,451 3,944 
11


See Note 11, Long-term Debt for further information on the convertible senior notes and warrants related to the issuance of convertible notes.

The Company’s Board of Directors authorized the repurchase of up to $315.0 million of Company common stock through a stock repurchase program expiring December 31, 2022. The program could be suspended or discontinued at any time, based on market, economic, or business conditions. The timing and amount of repurchase transactions will be determined by management based on its evaluation of market conditions, share price, and other factors. Since the program’s inception on August 11, 2008, the Company has repurchased approximately $251.4 million (16.0 million shares) of outstanding common stock through June 30, 2021.

7. Balance Sheet Components

June 30, 2021 (unaudited)December 31, 2020
Accounts receivable:(in thousands)
Billed accounts receivable, net$87,920 $85,998 
Unbilled revenues, net61,798 47,087 
Total$149,718 $133,085 
Property and equipment:  
Computer hardware (useful life of 3 years)
$17,344 $15,640 
Software (useful life of 1 to 7 years)
6,012 5,342 
Furniture and fixtures (useful life of 5 years)
4,490 4,597 
Leasehold improvements (useful life of 5 years)
7,041 6,607 
Less: Accumulated depreciation(22,763)(20,284)
Total$12,124 $11,902 
Other current liabilities:  
Estimated fair value of contingent consideration liability (1)$24,836 $33,943 
Current operating lease liabilities10,148 10,321 
Accrued variable compensation19,322 27,527 
Deferred revenues6,287 9,422 
Other current liabilities6,032 7,652 
Deferred employer FICA payments11,038 5,523 
Payroll related costs6,759 5,738 
Professional fees885 736 
Accrued medical claims expense2,376 2,405 
Total$87,683 $103,267 
Other non-current liabilities:  
Deferred income taxes$17,481 $20,911 
Reserve for uncertain tax positions10,687 8,009 
Deferred compensation liability8,709 7,456 
Non-current software accrual5,491 5,748 
Deferred employer FICA payments 5,523 
Other non-current liabilities3,446 2,434 
Total$45,814 $50,081 

(1)As of June 30, 2021 and December 31, 2020, represents the fair value estimate of revenue and earnings-based contingent consideration that may be realized by MedTouch, Brainjocks and the shareholders of PSL 12 months after the respective acquisitions.



12


8. Allowance for Credit Losses

In accordance with ASU No. 2016-13, Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments, the Company evaluates its allowance based on expected losses rather than incurred losses, which is known as the current expected credit loss model. The allowance is determined using the loss rate approach and is measured on a collective (pool) basis when similar risk characteristics exist. Where financial instruments do not share risk characteristics, they are evaluated on an individual basis. The allowance is based on relevant available information, from internal and external sources, relating to past events, current conditions, and reasonable and supportable forecasts.

A higher allowance for credit losses on customers within certain industries was recorded during the six months ended June 30, 2020 due to the potential adverse impact the COVID-19 pandemic may have had on the estimate of future credit losses. As of June 30, 2021, the Company reassessed its allowance and determined that a higher loss rate was no longer necessary based on the Company's loss experience over the past year, the Company's risk assessment of customers, and its expectations for continued successful collection of its accounts receivable balances.

Activity in the allowance for credit losses is summarized as follows (in thousands):

Six Months Ended June 30,
 20212020
Balance at December 31$1,065 $464 
Impact of ASU No. 2016-13 adoption 423 
Opening balance at January 11,065 887 
Charges to expense, net of recoveries672 956 
Uncollected balances written off(60)(128)
Balance at June 30$1,677 $1,715 

9. Business Combinations

2020 Acquisitions

On January 6, 2020, the Company acquired substantially all of the assets of MedTouch, pursuant to the terms of an Asset Purchase Agreement. The acquisition of MedTouch expands the Company’s digital healthcare marketing services. The Company’s total allocable purchase price consideration was $20.0 million. The Company incurred approximately $0.6 million in transaction costs, which were expensed when incurred. The amount of goodwill deductible for tax purposes is $20.4 million.

On March 23, 2020, the Company acquired substantially all of the assets of Brainjocks, pursuant to the terms of an Asset Purchase Agreement. The acquisition of Brainjocks expands the Company’s strategic marketing and technical delivery services. On May 4, 2020, pursuant to a separate Asset Purchase Agreement, a wholly-owned subsidiary of the Company completed the acquisition of substantially all of the assets of Brainjocks Europe d.o.o. Novi Sad, an affiliate of Brainjocks operating in Serbia. With the completion of this acquisition, the Company has facilities located in Novi Sad, Serbia. The Company's total allocable purchase price consideration was $21.2 million. The Company incurred approximately $1.1 million in transaction costs, which were expensed when incurred. The amount of goodwill deductible for tax purposes, excluding contingent consideration, is $8.7 million.

On June 17, 2020, a wholly-owned subsidiary of the Company acquired PSL pursuant to the terms of a Stock Purchase Agreement. PSL is based in Medellin, Colombia, with additional locations in Bogota and Cali, Colombia. The acquisition of PSL strengthens the Company’s global delivery capabilities, enhancing its nearshore systems and custom software application development, testing, and ongoing support for customers. PSL added more than 600 professionals and strategic client relationships with customers across several industries. The Company's total allocable purchase price consideration was $83.1 million, net of cash acquired. The Company incurred approximately $2.1 million in transaction costs, which were expensed when incurred. The goodwill is non-deductible for tax purposes.




13


The acquisition date fair value of the consideration transferred for the 2020 acquisitions consisted of the following (in millions):
MedTouchBrainjocksPSL
Cash$13.9 $15.8 $60.8 
Company common stock issued at closing1.9 2.4 4.5 
Contingent consideration (1)4.2 (2)2.3 (3)17.7 (4)
Net working capital adjustment due to the seller(s) 0.7 0.1 
Total allocable purchase price consideration$20.0 $21.2 $83.1 

(1)Represents the initial fair value estimate of additional revenue and earnings-based contingent consideration, which may be realized by the seller(s) 12 months after the closing date of the acquisition.
(2)MedTouch achieved a portion of the potential maximum cash payout pursuant to the Asset Purchase Agreement, and as a result, the Company paid $9.2 million in contingent consideration in the second quarter of 2021. The maximum cash payout that may have been realized by MedTouch was $10.2 million. The Company recorded a pre-tax adjustment in “Adjustment to fair value of contingent consideration” on the Unaudited Condensed Consolidated Statements of Operations of $0.2 million and $0.3 million during the three and six months ended June 30, 2021, respectively.
(3)The maximum cash payout that may be realized by Brainjocks is $4.8 million. As of June 30, 2021, the fair value of the contingent consideration was $3.9 million. The Company recorded a pre-tax adjustment in “Adjustment to fair value of contingent consideration” on the Consolidated Statements of Operations of $0.1 million and $0.3 million during the three and six months ended June 30, 2021.
(4)The maximum cash payout that may be realized by PSL is $22.2 million. As of June 30, 2021, the Company’s best estimate of the fair value of the contingent consideration was $20.9 million. The Company recorded a pre-tax adjustment to reduce the liability in “Adjustment to fair value of contingent consideration” on the Consolidated Statements of Operations of $0.7 million and $0.6 million during the three and six months ended June 30, 2021, respectively.

The Company has allocated the total purchase price consideration between tangible assets, identified intangible assets, liabilities, and goodwill as follows (in millions):

MedTouchBrainjocksPSL
Acquired tangible assets$4.7 $7.0 $11.6 
Identified intangible assets6.7 8.4 29.6 
Liabilities assumed(6.0)(4.9)(17.7)
Goodwill14.6 10.7 59.6 
Total purchase price$20.0 $21.2 $83.1 

As the Company completed its evaluation of the acquired assets and assumed liabilities of PSL, the Company recorded certain adjustments during the measurement period based on facts and circumstances that existed as of acquisition date. The measurement period adjustments resulted in an increase to the total purchase price of $1.1 million, an increase to acquired tangible assets of $0.5 million, a decrease to identified intangible assets of $0.4 million, an increase to liabilities assumed of $1.7 million and an increase to goodwill of $2.7 million from the acquisition date through June 30, 2021. The measurement period for the PSL acquisition is now closed.











14


The following table presents details of the intangible assets acquired during the year ended December 31, 2020 (dollars in millions).

 Weighted Average Useful LifeEstimated Useful LifeAggregate Acquisitions
Customer relationships6 years
5 - 7 years
$33.0 
Customer backlog1 year1 year9.6 
Non-compete agreements5 years5 years0.2 
Trade name1 year1 year0.4 
Developed software4 years
3 - 5 years
1.5 
Total acquired intangible assets $44.7 

Pro-forma Results of Operations

The following presents the unaudited pro-forma combined results of operations of the Company with PSL for the six months ended June 30, 2020, after giving effect to certain pro-forma adjustments and assuming PSL was acquired as of the beginning of 2019. Pro-forma results of operations have not been presented for MedTouch or Brainjocks because the effect of these acquisitions on the Company's consolidated financial statements were not material individually or in the aggregate.

These unaudited pro-forma results are presented in compliance with the adoption of ASU No. 2010-29, Business Combinations (Topic 805): Disclosure of Supplementary Pro Forma Information for Business Combinations, and are not necessarily indicative of the actual consolidated results of operations had the acquisition of PSL actually occurred on January 1, 2019 or of future results of operations of the consolidated entities (in thousands except per share data):

 Six Months Ended June 30,
 2020
Revenues$308,529 
Net income$19,400 
Basic net income per share$0.61 
Diluted net income per share$0.60 
Shares used in computing basic net income per share31,896 
Shares used in computing diluted net income per share32,602 

10. Goodwill and Intangible Assets
 
Goodwill represents the excess purchase price over the fair value of net assets acquired, or net liabilities assumed, in a business combination. In accordance with ASC Topic 350, Intangibles – Goodwill and Other, the Company performs an annual impairment review in the fourth quarter and more frequently if events or changes in circumstances indicate that goodwill might be impaired. There was no indication that goodwill became impaired for the three and six months ended June 30, 2021.

Other intangible assets include customer relationships, non-compete arrangements, trade names, customer backlog, and developed software, which are being amortized over the assets’ estimated useful lives using the straight-line method. Estimated useful lives range from less than one year to ten years. Amortization of customer relationships, non-compete arrangements, trade names, customer backlog, and developed software is considered an operating expense and is included in “Amortization” in the accompanying Unaudited Condensed Consolidated Statements of Operations. The Company periodically reviews the estimated useful lives of its identifiable intangible assets, taking into consideration any events or circumstances that might result in a lack of recoverability or revised useful life. There was no indication that other intangible assets became impaired for the three and six months ended June 30, 2021.






15


Goodwill
 
The changes in the carrying amount of goodwill for the six months ended June 30, 2021 are as follows (in thousands):

 
Balance at December 31, 2020$427,928 
Purchase price allocation for acquisitions(1,811)
Effect of foreign currency translation adjustments(5,609)
Balance at June 30, 2021$420,508 

Intangible Assets with Definite Lives
 
The following table presents a summary of the Company’s intangible assets that are subject to amortization (in thousands):

 June 30, 2021December 31, 2020
 Gross
Carrying
Amounts
Accumulated
Amortization
Net
Carrying
Amounts
Gross
Carrying
Amounts
Accumulated
Amortization
Net
Carrying
Amounts
Customer relationships$90,306 $(46,035)$44,271 $97,497 $(44,185)$53,312 
Non-compete agreements1,424 (937)487 1,479 (831)648 
Customer backlog   10,353 (5,941)4,412 
Trade name   449 (281)168 
Developed software13,802 (9,623)4,179 13,962 (8,931)5,031 
Total$105,532 $(56,595)$48,937 $123,740 $(60,169)$63,571 

The estimated useful lives of identifiable intangible assets are as follows:

 
Customer relationships
5 - 10 years
Non-compete agreements
4 - 5 years
Customer backlog1 year
Trade name1 year
Developed software
1 - 7 years
 
Estimated annual amortization expense for the next five years ended December 31 and thereafter is as follows: (in thousands):

2021 remaining$8,135 
2022$15,615 
2023$10,772 
2024$7,624 
2025$4,431 
Thereafter$2,360 

11. Long-term Debt

Revolving Credit Facility

On May 7, 2021, the Company entered into an Amended and Restated Credit Agreement (the "2021 Credit Agreement") with Wells Fargo Bank, National Association, as administrative agent and the other lenders parties thereto. The 2021 Credit Agreement provides for revolving credit borrowings up to a maximum principal amount of $200.0 million, subject to a commitment increase of $75.0 million. All outstanding amounts owed under the 2021 Credit Agreement become due and
16


payable no later than the final maturity date of May 7, 2026. As of June 30, 2021, there was no outstanding balance under the 2021 Credit Agreement. The Company incurred $0.6 million of deferred finance fees as a result of the 2021 Credit Agreement for the three and six months ended June 30, 2021.

The 2021 Credit Agreement also allows for the issuance of letters of credit in the aggregate amount of up to $10.0 million at any one time; outstanding letters of credit reduce the credit available for revolving credit borrowings. As of June 30, 2021, the Company had two outstanding letters of credit for $0.2 million. Substantially all of the Company’s assets are pledged to secure the credit facility.

Borrowings under the 2021 Credit Agreement bear interest at the Company’s option of the prime rate (3.25% on June 30, 2021) plus a margin ranging from 0.00% to 1.00% or one month LIBOR (0.10% on June 30, 2021) plus a margin ranging from 1.00% to 2.00%. The Company incurs an annual commitment fee of 0.15% to 0.20% on the unused portion of the line of credit. The additional margin amount and annual commitment fee are dependent on the level of outstanding borrowings. As of June 30, 2021, the Company had $199.8 million of unused borrowing capacity.

The Company is required to comply with various financial covenants under the 2021 Credit Agreement. Specifically, the Company is required to maintain a ratio of earnings before interest, taxes, depreciation, and amortization (“EBITDA”) plus stock compensation to interest expense for the previous four consecutive fiscal quarters of not less than 3.50 to 1.00, a ratio of indebtedness less the sum of all unsecured indebtedness, on a consolidated basis and without duplication, less all unrestricted cash and cash equivalents not to exceed $50,000,000 to EBITDA plus stock compensation of not more than 2.50 to 1.00, and a ratio of indebtedness less all unrestricted cash and cash equivalents not to exceed $50,000,000 to EBITDA plus stock compensation (“Consolidated Total Net Leverage Ratio”) of not more than 5.00 to 1.00. Additionally, the 2021 Credit Agreement currently restricts the payment of dividends that would result in a pro-forma Consolidated Total Net Leverage Ratio of more than 3.50 to 1.00.

At June 30, 2021, the Company was in compliance with all covenants under the 2021 Credit Agreement.
 
Convertible Senior Notes due 2025

On August 14, 2020, the Company issued $230.0 million aggregate principal amount of 1.250% Convertible Senior Notes Due 2025 (the “2025 Notes”) in a private placement to qualified institutional purchasers pursuant to an exemption from registration provided by Section 4(a)(2) and Rule 144A under the Securities Act of 1933, as amended (the “Securities Act”). The net proceeds from the offerings, after deducting the initial purchasers’ discount and issuance costs of $7.3 million, were $222.7 million. The Company used (i) $172.0 million of the net proceeds to partially repurchase the 2023 Notes (as defined and described below), and (ii) $26.7 million of the net proceeds to fund the cost of entering into the 2025 Notes Hedges (as defined below), after such cost was partially offset by the proceeds that the Company received from entering into the 2025 Notes Warrants (as defined below). The remaining proceeds of $24.0 million will be used for working capital or other general corporate purposes.

The 2025 Notes bear interest at a rate of 1.250% per year. Interest is payable in cash on February 1 and August 1 of each year. The 2025 Notes mature on August 1, 2025 unless earlier converted, redeemed or repurchased in accordance with their terms prior to such date. The initial conversion rate is 19.3538 shares of the Company’s common stock per $1,000 principal amount of 2025 Notes, which is equivalent to an initial conversion price of approximately $51.67 per share of common stock. After consideration of the 2025 Notes Hedges and 2025 Notes Warrants, the conversion rate is effectively hedged to a price of $81.05 per share of common stock. The conversion rate, and thus the conversion price, may be adjusted under certain circumstances as described in the indenture governing the 2025 Notes (the “2025 Indenture”). The Company may settle conversions by paying or delivering, as applicable, cash, shares of its common stock or a combination of cash and shares of its common stock, at the Company’s election, based on the applicable conversion rate(s). If a “make-whole fundamental change” (as defined in the 2025 Indenture) occurs, then the Company will in certain circumstances increase the conversion rate for a specified period of time. The Company’s intent is to settle the principal amount of the 2025 Notes in cash upon conversion.

Convertible Senior Notes due 2023

On September 11, 2018, the Company issued $143.8 million aggregate principal amount of 2.375% Convertible Senior Notes Due 2023 (the “2023 Notes”) in a private placement to qualified institutional purchasers pursuant to an exemption from registration provided by Section 4(a)(2) and Rule 144A under the Securities Act. The net proceeds from the offerings, after deducting the initial purchasers’ discount and issuance costs of $4.4 million, were $139.4 million.

17


The 2023 Notes bear interest at a rate of 2.375% per year. Interest is payable in cash on March 15 and September 15 of each year. The 2023 Notes mature on September 15, 2023, unless earlier converted, redeemed or repurchased in accordance with their terms prior to such date. The initial conversion rate is 26.5957 shares of the Company’s common stock per $1,000 principal amount of 2023 Notes, which is equivalent to an initial conversion price of approximately $37.60 per share of common stock. After consideration of the 2023 Notes Hedges (as defined below) and 2023 Notes Warrants (as defined below), the conversion rate is effectively hedged to a price of $46.62 per share of common stock. The conversion rate, and thus the conversion price, may be adjusted under certain circumstances as described in the indenture governing the 2023 Notes (the “2023 Indenture”). The Company may settle conversions by paying or delivering, as applicable, cash, shares of its common stock or a combination of cash and shares of its common stock, at the Company’s election, based on the applicable conversion rate(s). If a “make-whole fundamental change” (as defined in the 2023 Indenture) occurs, then the Company will in certain circumstances increase the conversion rate for a specified period of time. The Company’s intent is to settle the principal amount of the 2023 Notes in cash upon conversion.

In August and December 2020, the Company repurchased a portion of the outstanding 2023 Notes through individual, privately negotiated transactions (the “2023 Notes Partial Repurchase”), leaving 2023 Notes with an aggregate principal amount of $5.1 million outstanding as of June 30, 2021. The Company used $172.0 million of the net proceeds from the 2025 Notes issuance in August 2020 and $9.7 million of additional cash in December 2020 to complete the 2023 Notes Partial Repurchase, of which a total of $127.7 million and $52.7 million were allocated to the liability and equity components of the 2023 Notes, respectively, and $1.3 million was related to the payment of interest. The 2023 Notes Partial Repurchase resulted in a $4.5 million loss on extinguishment during the year ended December 31, 2020, which includes the proportionate amounts of unamortized debt discount and the remaining unamortized debt issuance costs of $2.4 million.

Other Terms of the Notes

The 2025 Notes and 2023 Notes (together, the “Notes”) may be converted at the holder’s option prior to the close of business on the business day immediately preceding August 1, 2025 and September 15, 2023 for the 2025 Notes and 2023 Notes, respectively, but only under the following circumstances:

during any calendar quarter commencing after the calendar quarter ending on September 30, 2020 and December 31, 2018 for the 2025 Notes and 2023 Notes, respectively, if the last reported sale price per share of the Company’s common stock exceeds 130% of the applicable conversion price for each of at least 20 trading days during the 30 consecutive trading days ending on, and including, the last trading day of the immediately preceding calendar quarter;
during the five consecutive business days immediately after any 10 consecutive trading day period (such 10 consecutive trading day period, the “measurement period”) in which the trading price per $1,000 principal amount of notes for each trading day of the measurement period was less than 98% of the product of the last reported sale price per share of the Company’s common stock on such trading day and the applicable conversion rate on such trading day;
upon the occurrence of certain corporate events or distributions on the Company’s common stock described in the 2025 Indenture or the 2023 Indenture, as applicable; and
at any time from, and including, February 3, 2025 and March 15, 2023 for the 2025 Notes and 2023 Notes, respectively, until the close of business on the second scheduled trading day immediately before the applicable maturity date.

The Company may not redeem the Notes at its option before maturity. If a “fundamental change” (as defined in the 2025 Indenture or 2023 Indenture) occurs, then, except as described in the 2025 Indenture or 2023 Indenture, noteholders may require the Company to repurchase their Notes at a cash repurchase price equal to the principal amount of the Notes to be repurchased, plus accrued and unpaid interest, if any.

During the three months ended June 30, 2021, the conditional conversion features of the 2023 Notes and 2025 Notes were triggered as the last reported sale price of the Company's common stock was greater than or equal to 130% of the conversion price for at least 20 trading days in the period of 30 consecutive trading days ending on June 30, 2021 (the last trading day of the fiscal quarter). Therefore, the 2023 Notes and 2025 Notes are currently convertible, in whole or in part, at the option of the holder during the quarter ending September 30, 2021. Whether the 2023 Notes and 2025 Notes will be convertible following such period will depend on the continued satisfaction of this condition or another conversion condition in the future. Since the Company has the election of repaying the 2023 Notes and 2025 Notes in cash, shares of the Company’s common stock, or a combination of both, the Company continued to classify the liability component of the 2023 Notes and 2025 Notes as long-term debt on the Condensed Consolidated Balance Sheet as of June 30, 2021 (unaudited). As of the date of this filing, none of the holders of the 2023 Notes and 2025 Notes have submitted requests for conversion. Based on the closing price of the Company's common stock of $80.42 per share on June 30, 2021, the conversion values of the 2023 Notes and 2025 Notes were greater than the principal amount of the Notes outstanding on a per note basis.

18


The liability component of the 2025 Notes and 2023 Notes consisted of the following (in thousands):

 June 30, 2021 (unaudited)
December 31, 2020
Liability component:2025 Notes2023 Notes2025 Notes2023 Notes
     Principal$230,000 $5,090 $230,000 $5,090 
     Less: Unamortized debt discount(41,311)(352)(45,690)(426)
               Unamortized debt issuance costs(4,696)(64)(5,271)(79)
Net carrying amount$183,993 $4,674 $179,039 $4,585 

Interest expense for the three and six months ended June 30, 2021 and 2020 related to the 2025 Notes and 2023 Notes consisted of the following (in thousands):

2025 Notes
Three Months Ended June 30,Six Months Ended June 30,
2021202020212020
Coupon interest$719 $ $1,438 $ 
Amortization of debt discount2,200  4,379  
Amortization of debt issuance costs288  575  
     Total interest expense recognized$3,207 $ $6,392 $ 

2023 Notes
Three Months Ended June 30,Six Months Ended June 30,
2021202020212020
Coupon interest$30 $853 $60 $1,707 
Amortization of debt discount37 992 74 1,969 
Amortization of debt issuance costs8 206 15 412 
     Total interest expense recognized$75 $2,051 $149 $4,088 

Convertible Notes Hedges

In connection with the issuance of the 2025 Notes and 2023 Notes, the Company entered into privately negotiated convertible note hedge transactions (the “2025 Notes Hedges” and the “2023 Notes Hedges,” respectively, and together, the “Notes Hedges”) with certain of the initial purchasers or their respective affiliates and/or other financial institutions (the “Option Counterparties”). The 2025 Notes Hedges provide the Company with the option to acquire, on a net settlement basis, approximately 4.5 million shares of common stock at a strike price of $51.67, which is equal to the number of shares of common stock that notionally underlie the 2025 Notes and correspond to the conversion price of the 2025 Notes. The 2023 Notes Hedges provide the Company with the option to acquire, on a net settlement basis, approximately 0.1 million shares (after consideration of the 2023 Notes Partial Repurchase) of common stock at a strike price of $37.60, which is equal to the number of shares of common stock that notionally underlie the 2023 Notes and correspond to the conversion price of the 2023 Notes after the partial repurchase discussed above. If the Company elects cash settlement and exercises the 2025 Notes Hedges or the 2023 Notes Hedges, the aggregate amount of cash received from the Option Counterparties will cover the aggregate amount of cash that the Company would be required to pay to the holders of the Notes, less the principal amount thereof. The Notes Hedges do not meet the criteria for separate accounting as a derivative as they are indexed to the Company’s stock and are accounted for as freestanding financial instruments. In August and December 2020, in connection with the 2023 Notes Partial Repurchase, the Company terminated 2023 Notes Hedges corresponding to approximately 3.7 million shares for cash proceeds of $50.1 million. The proceeds were recorded as an increase to additional paid-in capital within stockholders' equity.

Convertible Notes Warrants

In connection with the issuance of the 2025 Notes and 2023 Notes, the Company also sold net-share-settled warrants (the “2025 Notes Warrants” and the “2023 Notes Warrants,” respectively, and together, the “Notes Warrants”) in privately negotiated transactions with the Option Counterparties. The strike price of the 2025 Notes Warrants and 2023 Notes Warrants
19


was approximately $81.05 and $46.62 per share, respectively, and is subject to certain adjustments under the terms of their respective Notes Warrants. As a result of the 2025 Notes Warrants and 2023 Notes Warrants and related transactions, the Company is required to recognize incremental dilution of earnings per share to the extent the average share price is over $81.05 for any fiscal quarter for the 2025 Notes Warrants and $46.62 for the 2023 Notes Warrants. The 2025 Notes Warrants and 2023 Notes Warrants expire over a period of 100 trading days commencing on November 1, 2025 and December 15, 2023, respectively, and may be settled in net shares of common stock or net cash at the Company’s election. In August and December 2020, in connection with the 2023 Notes Partial Repurchase, the Company repurchased a portion of the 2023 Notes Warrants through a cash payment of $43.0 million. The repurchase was recorded as a reduction in additional paid-in capital within stockholders' equity.

12. Income Taxes
 
The Company files income tax returns in the U.S. federal jurisdiction and various state and foreign jurisdictions. The Internal Revenue Service (the “IRS”) has completed examinations of the Company’s U.S. income tax returns or the statute of limitations has passed on returns for the years through 2015. The Company’s 2016 and 2017 U.S. income tax returns are currently under examination by the IRS. The IRS has sought to disallow research credits in the total amount of $5.7 million on the Company’s 2011 through 2015 U.S. income tax returns. The Company has exhausted all administrative appeals and formal mediation and has filed suit to resolve this dispute. The Company is awaiting a court date to be set by the U.S. Tax Court for the 2011 through 2013 returns. The Company believes the research credits taken are appropriate and intends to vigorously defend its position. An amount of adjustment, if any, and the timing of such adjustment are not reasonably possible to estimate at this time. The total amount of research credits taken, or expected to be taken, in the Company’s income tax returns for 2011 through June 30, 2021 is approximately $23.4 million.
 
Under the provisions of the ASC Subtopic 740-10-25, Income Taxes - Recognition, the Company had an unrecognized tax benefit of $9.5 million (excluding $1.2 million of interest) as of June 30, 2021.

The Company’s effective tax rate was 27.0% and 23.6% for the three and six months ended June 30, 2021, respectively, compared to 31.8% and 22.8% for the three and six months ended June 30, 2020, respectively. The effective tax rate increased during the six months ended June 30, 2021 primarily due to the relative decrease in tax benefits recognized for share-based compensation deductions partially offset by a decrease in non-deductible acquisition costs during the six months ended June 30, 2021 compared to the prior year. As of June 30, 2021, the Company’s net non-current deferred tax liability was $17.5 million. Deferred tax liabilities primarily relate to goodwill, other intangibles, fixed assets, prepaid expenses and issuance of the Notes. Net non-current deferred tax liabilities are recorded in “Other non-current liabilities” on the Condensed Consolidated Balance Sheets as of June 30, 2021 (unaudited) and December 31, 2020.

In general, it is the Company’s practice and intention to reinvest the earnings of the Company’s foreign subsidiaries in those operations. However, the Company has determined that the foreign earnings of the Company’s Chinese and Colombian subsidiaries are no longer permanently reinvested and may repatriate available earnings from time to time. Management intends to continue to permanently reinvest all other remaining current and prior earnings in its other foreign subsidiaries.

Excluding China and Colombia, foreign unremitted earnings of entities not included in the United States tax return have been included in the consolidated financial statements without giving effect to the United States taxes that may be payable on distribution to the United States because it is not anticipated such earnings will be remitted to the United States. Under current applicable tax laws, if the Company elects to remit some or all of the funds it has designated as indefinitely reinvested outside the United States, the amount remitted would be subject to non-U.S. withholding taxes. As of June 30, 2021, the aggregate unremitted earnings of the Company’s foreign subsidiaries for which a deferred income tax liability has not been recorded was approximately $16.4 million, and the unrecognized deferred tax liability on unremitted earnings was approximately $1.1 million.

13. Derivatives

In the normal course of business, the Company uses derivative financial instruments to manage foreign currency exchange rate risk. Currency exposure is monitored and managed by the Company as part of its risk management program which seeks to reduce the potentially adverse effects that market volatility could have on operating results. The Company’s derivative financial instruments consist of non-deliverable and deliverable foreign currency forward contracts. Derivative financial instruments are neither held nor issued by the Company for trading purposes.



20


Derivatives Not Designated as Hedging Instruments

Both the gain or loss on the derivatives not designated as hedging instruments and the offsetting loss or gain on the hedged item attributable to the hedged risk are recognized in current earnings. Realized gains or losses and changes in the estimated fair value of foreign currency forward contracts that have not been designated as hedges were immaterial during each of the three and six months ended June 30, 2021 and 2020. Gains and losses on these contracts are recorded in net other expense (income) and net interest expense in the Unaudited Condensed Consolidated Statements of Operations and are offset by losses and gains on the related hedged items.

The notional amounts of the Company’s derivative instruments outstanding were as follows (in thousands):

 June 30, 2021 (unaudited)December 31, 2020
Derivatives not designated as hedges  
Foreign exchange contracts$20,753 $16,008 
Total derivatives not designated as hedges$20,753 $16,008 

14. Fair Value Measurements

The fair value hierarchy is based on inputs to valuation techniques that are used to measure fair value that are either observable or unobservable. Observable inputs reflect assumptions market participants would use in pricing an asset or liability based on market data obtained from independent sources while unobservable inputs reflect a reporting entity’s pricing based upon its own market assumptions.

The fair value hierarchy consists of the following three levels:

Level 1 – Inputs are quoted prices in active markets for identical assets or liabilities.

Level 2 – Inputs are quoted prices for similar assets or liabilities in an active market, quoted prices for identical or similar assets or liabilities in markets that are not active, inputs other than quoted prices that are observable and market-corroborated inputs which are derived principally from or corroborated by observable market data.

Level 3 – Inputs are derived from valuation techniques in which one or more significant inputs or value drivers are unobservable.

All highly liquid investments with maturities at date of purchase of three months or less are considered to be cash equivalents. Based on their short-term nature, the carrying value of cash equivalents approximate their fair value. As of June 30, 2021 and December 31, 2020, $76.6 million and $66.0 million, respectively, of the Company’s cash and cash equivalents balance related to money-market fund investments. These short-term money-market funds are considered Level 1 investments.

The Company has a deferred compensation plan, which is funded through company-owned life insurance (“COLI”) policies. The COLI asset is carried at fair value derived from quoted market prices of investments within the COLI policies, which are considered Level 2 inputs. The fair value of the COLI asset was $9.8 million and $7.4 million as of June 30, 2021 and December 31, 2020, respectively.

The Company estimates the fair value of each foreign exchange forward contract by using the present value of expected cash flows. The estimate takes into account the difference between the current market forward price and contracted forward price for each foreign exchange contract and applies the difference in the rates to each outstanding contract. Valuations for all derivatives fall within Level 2 of the GAAP valuation hierarchy. The fair values of the Company’s derivative instruments outstanding as of June 30, 2021 and December 31, 2020 were immaterial.

The Company has contingent consideration liabilities related to acquisitions which are measured on a recurring basis and recorded at fair value, determined using the discounted cash flow method. The inputs used to calculate the fair value of the contingent consideration liabilities are considered to be Level 3 inputs due to the lack of relevant market activity and significant management judgment. An increase in future cash flows may result in a higher estimated fair value while a decrease in future cash flows may result in a lower estimated fair value of the contingent consideration liabilities. Remeasurements to fair value are recorded in adjustment to fair value of contingent consideration in the Unaudited Condensed Consolidated Statements of
21


Operations. Refer to Note 7, Balance Sheet Components, for the estimated fair value of the contingent consideration liabilities as of June 30, 2021 and December 31, 2020.

The fair value of the Notes is measured using quoted price inputs. The Notes are not actively traded, and thus the price inputs represent a Level 2 measurement. As the quoted price inputs are highly variable from day to day, the fair value estimates could significantly increase or decrease.

The Notes are carried at their principal amount less unamortized debt discount and issuance costs, and are not carried at fair value at each period end. The original debt discount was calculated at a market interest rate for nonconvertible debt at the time of issuance, which represented a Level 3 fair value measurement. The approximate fair value of the 2025 Notes as of June 30, 2021 and December 31, 2020 was $376.3 million and $263.4 million, respectively, and the approximate fair value of the 2023 Notes as of June 30, 2021 and December 31, 2020 was $10.3 million and $7.1 million, respectively. The fair values were estimated on the basis of inputs that are observable in the market and are considered Level 2 fair value measurements.

15. Leases

The Company leases office space under various operating lease agreements, which have remaining lease terms of less than one year to eight years. Operating leases are included in operating lease right-of-use assets, other current liabilities, and operating lease liabilities on the consolidated balance sheet. Operating lease expense for the three and six months ended June 30, 2021 was $3.3 million and $6.6 million, respectively, and $2.9 million and $5.7 million for the three and six months ended June 30, 2020, respectively.

Supplemental balance sheet information related to leases was as follows (in thousands):

 June 30, 2021December 31, 2020
Other current liabilities$10,148 $10,321 
Operating lease liabilities25,871 29,098 
Total$36,019 $39,419 

Future minimum lease payments as of June 30, 2021 were as follows (in thousands):

 June 30, 2021
2021 remaining$3,803 
202210,304 
20238,092 
20246,257 
20254,706 
Thereafter5,901 
Total future lease payments39,063 
     Less implied interest(3,044)
Total$36,019 

16. Commitments and Contingencies

From time to time the Company is involved in legal proceedings, claims and litigation related to employee claims, contractual disputes and taxes in the ordinary course of business. Although the Company cannot predict the outcome of such matters, currently the Company has no reason to believe the disposition of any current matter could reasonably be expected to have a material adverse impact on the Company’s financial position, results of operations or the ability to carry on any of its business activities.

22


Item 2. Managements Discussion and Analysis of Financial Condition and Results of Operations

Statements made in this Form 10-Q, including without limitation this Managements Discussion and Analysis of Financial Condition and Results of Operations, other than statements of historical information, are forward looking statements within the meaning of Section 27A of the Securities Act, and Section 21E of the Securities Exchange Act of 1934, as amended (the “Exchange Act”). These forward-looking statements may sometimes be identified by such words as “may,” “will,” “should,” “expects,” “plans,” “anticipates,” “believes,” “estimates,” “predicts,” “potential,” or “continue” or the negative of those words and other comparable words. We believe that it is important to communicate our future expectations to investors. However, these forward-looking statements involve many risks and uncertainties. Our actual results could differ materially from those indicated in such forward-looking statements as a result of certain factors, including but not limited to, those set forth under “Risk Factors” in our Annual Report on Form 10-K previously filed with the SEC and elsewhere in this Form 10-Q. We are under no duty to update any of the forward-looking statements after the date of this Form 10-Q to conform these statements to actual results. For additional information, see the “Special Note Regarding Forward-Looking Statements” contained in this Form 10-Q.

Overview

Perficient is a global digital consultancy transforming how the world’s biggest brands connect with customers and grow their businesses. We help clients, primarily focused in North America, gain competitive advantage by using digital technology to: make their businesses more responsive to market opportunities; strengthen relationships with customers, suppliers, and partners; improve productivity; and reduce information technology costs. With unparalleled strategy, creative and technology capabilities, across industries, our end-to-end digital consulting services help our clients drive faster speed-to-market capabilities and stronger, more compelling experiences for consumers. We deliver a deep and broad portfolio of solutions that enable our clients to operate a real-time enterprise that dynamically adapts business processes and the systems that support them to meet the changing demands of a global and competitive marketplace.

COVID-19 Pandemic

In March 2020, the World Health Organization recognized a novel strain of coronavirus (COVID-19) as a pandemic. In response to the pandemic, the United States and various foreign, state and local governments have, among other actions, imposed travel and business restrictions and required or advised communities in which we do business to adopt stay-at-home orders and social distancing guidelines, causing some businesses to adjust, reduce or suspend operating activities. While certain of these restrictions and guidelines have been lifted or relaxed, they may be reinstituted in response to continuing effects of the pandemic including emerging variants. The pandemic and the various governments’ response have caused, and continue to cause, significant and widespread uncertainty, volatility and disruptions in the U.S. and global economies, including in the regions in which we operate.

Through June 30, 2021, we have not experienced a material impact to our business, operations or financial results as a result of the pandemic. However, in the current and future periods, we may experience weaker customer demand, requests for discounts or extended payment terms, customer bankruptcies, supply chain disruption, employee staffing constraints and difficulties, government restrictions or other factors that could negatively impact the Company and its business, operations and financial results. As we cannot predict the duration or scope of the pandemic or its impact on economic and financial markets, any negative impact to our results cannot be reasonably estimated, but it could be material.

We continue to monitor closely the Company’s financial health and liquidity and the impact of the pandemic on the Company, including emerging variants. We have been able to serve the needs of our customers while taking steps to protect the health and safety of our employees, customers, partners, and communities. Among these steps, we have transitioned to primarily working remotely and ceasing travel, which has not resulted in a material disruption to the Company’s operations. We are proactively planning to reopen our offices in a manner that ensures the safety and well-being of our Perficient colleagues, while complying with state and local government and health regulations.

Services Revenues

Services revenues are derived from professional services that include developing, implementing, integrating, automating and extending business processes, technology infrastructure, and software applications. Professional services revenues are recognized over time as services are rendered. Most of our projects are performed on a time and materials basis, while a portion of our revenues is derived from projects performed on a fixed fee or fixed fee percent complete basis. For time and material projects, revenues are recognized and billed by multiplying the number of hours our professionals expend in the performance of the project by the hourly rates. For fixed fee contracts, revenues are recognized and billed by multiplying the established fixed rate per time period by the number of time periods elapsed. For fixed fee percent complete projects, revenues are generally recognized using an input method based on the ratio of hours expended to total estimated hours. Fixed fee percent
23


complete engagements represented 7% of our services revenues for both the three and six months ended June 30, 2021 and 10% and 9% for the three and six months ended June 30, 2020, respectively. On most projects, we are reimbursed for out-of-pocket expenses including travel and other project-related expenses. These reimbursements are included as a component of the transaction price of the respective professional services contract. The aggregate amount of reimbursed expenses will fluctuate depending on the location of our clients, the total number of our projects that require travel, the impact of travel restrictions imposed as a result of the COVID-19 pandemic, and whether our arrangements with our clients provide for the reimbursement of such expenses. In conjunction with services provided, we occasionally receive referral fees under partner programs. These referral fees are recognized at a point in time when earned and recorded within services revenues.

Software and Hardware Revenues

Software and hardware revenues are derived from sales of third-party software and hardware resales, in which we are considered the agent, and sales of internally developed software, in which we are considered the principal. Revenues from sales of third-party software and hardware are recorded on a net basis, while revenues from internally developed software sales are recorded on a gross basis. Software and hardware revenues are expected to fluctuate depending on our clients’ demand for these products, which may be impacted by the COVID-19 pandemic.
 
There are no significant cancellation or termination-type provisions for our software and hardware sales. Contracts for our professional services provide for a general right, to the client or us, to cancel or terminate the contract within a given period of time (generally 10 to 30 days’ notice is required). The client is responsible for any time and expenses incurred up to the date of cancellation or termination of the contract.

Cost of Revenues

Cost of revenues consists of cost of services primarily related to cash and non-cash compensation and benefits (including bonuses and non-cash compensation related to equity awards), costs associated with subcontractors, reimbursable expenses and other project-related expenses. Cost of revenues does not include depreciation of assets used in the production of revenues which are primarily personal computers, servers, and other information technology related equipment. In accordance with Accounting Standards Codification (“ASC”) Topic 606, sales of third-party software and hardware are presented on a net basis, and as such, third-party software and hardware costs are not presented within cost of revenues.

Our cost of services as a percentage of services revenues is affected by the utilization rates of our professionals (defined as the percentage of our professionals’ time billed to clients divided by the total available hours in the respective period), the salaries we pay our professionals, and the average billing rate we receive from our clients. If a project ends earlier than scheduled, we retain professionals in advance of receiving project assignments, or demand for our services declines, our utilization rate will decline and adversely affect our cost of services as a percentage of services revenues.

Selling, General, and Administrative Expenses

Selling, general and administrative (“SG&A”) expenses are primarily composed of sales-related costs, general and administrative salaries, stock compensation expense, office costs, recruiting expense, variable compensation costs, marketing costs and other miscellaneous expenses. We have access to sales leads generated by our software vendors whose products we use to design and implement solutions for our clients. These relationships enable us to optimize our selling costs and sales cycle times and increase win rates through leveraging our partners’ marketing efforts and endorsements.

Plans for Growth and Acquisitions

Our goal is to continue to build one of the leading information technology consulting firms by expanding our relationships with existing and new clients and through the continuation of our disciplined acquisition strategy. Our future growth plan includes expanding our business with a primary focus on customers in the United States, both organically and through acquisitions. We also intend to further leverage our existing offshore and nearshore capabilities to support our future growth and provide our clients flexible options for project delivery. Our ability to continue to implement our growth plan may be negatively affected by the impact of the COVID-19 pandemic on our operations.

When analyzing revenue growth by base business compared to acquired companies in the Results of Operations section below, revenue attributable to base business includes revenue from an acquired company that has been owned for a full four quarters after the date of acquisition.

24


Acquisition of PSL

On June 17, 2020, a wholly-owned subsidiary of the Company acquired Productora de Software S.A.S. (“PSL”) pursuant to the terms of a Stock Purchase Agreement. PSL is based in Medellin, Colombia, with additional locations in Bogota and Cali, Colombia. The acquisition of PSL strengthens the Company’s global delivery capabilities, enhancing its nearshore systems and custom software application development, testing, and ongoing support for customers. PSL added more than 600 skilled professionals and strategic client relationships with customers across several industries. Refer to Note 9, Business Combinations, in the Notes to Interim Condensed Consolidated Financial Statements for additional information on the acquisition.

Results of Operations

Three months ended June 30, 2021 compared to three months ended June 30, 2020

Revenues. Total revenues increased 26% to $184.1 million for the three months ended June 30, 2021 from $146.3 million for the three months ended June 30, 2020.

 Financial Results
(in thousands)
Explanation for Increases (Decreases) Over Prior Year Period
(in thousands)
 Three Months Ended June 30,Total Increase (Decrease) Over Prior Year PeriodIncrease Attributable to Revenue Delivered by Resources of Acquired CompaniesIncrease (Decrease) Attributable to Revenue Delivered by Base Business Resources
 20212020
Services revenues$183,775 $145,836 $37,939 $9,081 $28,858 
Software and hardware revenues361 503 (142)— (142)
Total revenues$184,136 $146,339 $37,797 $9,081 $28,716 

Services revenues increased 26.0% to $183.8 million for the three months ended June 30, 2021 from $145.8 million for the three months ended June 30, 2020. Services revenues delivered by base business resources increased by $28.9 million while services revenues delivered by resources of acquired companies was $9.1 million, resulting in a total net increase of $37.9 million.

Software and hardware revenues decreased 28.2% to $0.4 million for the three months ended June 30, 2021 from $0.5 million for the three months ended June 30, 2020.

Cost of Revenues (exclusive of depreciation and amortization, discussed separately below). Cost of revenues increased 24.2% to $113.2 million for the three months ended June 30, 2021 from $91.2 million for the three months ended June 30, 2020 primarily due to higher headcount and the acquisition of PSL. Services costs as a percentage of services revenues decreased to 61.6% for the three months ended June 30, 2021 from 62.5% for the three months ended June 30, 2020, primarily due to a continued shift to higher margin offshore and nearshore delivery.

Selling, General and Administrative. SG&A expenses increased to $37.4 million for the three months ended June 30, 2021 from $33.9 million for the three months ended June 30, 2020. SG&A expenses as a percentage of revenues decreased to 20.3% for the three months ended June 30, 2021 from 23.1% for the three months ended June 30, 2020, primarily due to a 25.8% increase in revenues for the three months ended June 30, 2021 compared to the three months ended June 30, 2020.

Depreciation. Depreciation expense increased 23% to $1.6 million for the three months ended June 30, 2021 from $1.3 million for the three months ended June 30, 2020. Depreciation expense as a percentage of revenues was 0.9% for each of the three months ended June 30, 2021 and 2020.

Amortization. Amortization expense increased 44% to $6.3 million for the three months ended June 30, 2021 from $4.4 million for the three months ended June 30, 2020. Amortization expense as a percentage of revenues was 3.4% for the three months ended June 30, 2021 and 3.0% for the three months ended June 30, 2020. The increase in amortization expense was primarily due to the addition of intangibles from the PSL acquisition in 2020.

25


Acquisition Costs. Acquisition-related costs were immaterial for the three months ended June 30, 2021 and $1.8 million for the three months ended June 30, 2020. Costs were incurred for legal, accounting, tax, investment bank and advisor fees, and valuation services performed by third parties in connection with merger and acquisition-related activities.

Adjustment to Fair Value of Contingent Consideration. An adjustment of $0.5 million was recorded during the three months ended June 30, 2021 which represents the net fair market adjustment to the Productora de Software S.A.S. (“PSL”), Catalyst Networks Inc. ("Brainjocks"), and MedTouch LLC (“MedTouch”) revenue and earnings-based consideration liabilities, net of accretion. An adjustment of $2.1 million was recorded during the three months ended June 30, 2020 which represents the fair market adjustment to the MedTouch revenue and earnings-based consideration liability, in addition to accretion.

Net Interest Expense. Net interest expense increased to $3.4 million for the three months ended June 30, 2021 from $2.1 million for the three months ended June 30, 2020 as a result of the issuance of the 2025 Notes discussed in Note 11, Long-term debt.

Provision for Income Taxes. We provide for federal, state and foreign income taxes at the applicable statutory rates adjusted for non-deductible expenses. Our effective tax rate decreased to 27.0% for the three months ended June 30, 2021 from 31.8% for the three months ended June 30, 2020. The decrease in the effective tax rate was primarily due to lower non-deductible acquisition costs, partially offset by a decrease in tax benefits recognized related to research and development during the three months ended June 30, 2021 compared to the prior-year quarter.

Six months ended June 30, 2021 compared to six months ended June 30, 2020

Revenues. Total revenues increased 21% to $353.5 million for the six months ended June 30, 2021 from $291.9 million for the six months ended June 30, 2020.

 Financial Results
(in thousands)
Explanation for Increases (Decreases) Over Prior Year Period
(in thousands)
 Six Months Ended
June 30,
Total Increase (Decrease) Over Prior Year PeriodIncrease Attributable to Revenue Delivered by Resources of Acquired CompaniesIncrease (Decrease) Attributable to Revenue Delivered by Base Business Resources
 20212020
Services revenues$352,505 $291,238 $61,267 $21,620 $39,647 
Software and hardware revenues972 663 309 — 309 
Total revenues$353,477 $291,901 $61,576 $21,620 $39,956 

Services revenues increased 21.0% to $352.5 million for the six months ended June 30, 2021 from $291.2 million for the six months ended June 30, 2020. Services revenues delivered by base business resources increased by $39.6 million while services revenues delivered by resources of acquired companies was $21.6 million, resulting in a total net increase of $61.3 million.

Software and hardware revenues increased 46.6% to $1.0 million for the six months ended June 30, 2021 from $0.7 million for the six months ended June 30, 2020.

Cost of Revenues (exclusive of depreciation and amortization, discussed separately below). Cost of revenues increased 18.9% to $219.2 million for the six months ended June 30, 2021 from $184.4 million for the six months ended June 30, 2020 primarily due to higher headcount and acquisitions. Services costs as a percentage of services revenues decreased to 62.2% for the six months ended June 30, 2021 from 63.3% for the six months ended June 30, 2020, primarily due to continued shift to higher margin offshore and nearshore delivery.

Selling, General and Administrative. SG&A expenses increased to $71.4 million for the six months ended June 30, 2021 from $67.1 million for the six months ended June 30, 2020. SG&A expenses as a percentage of revenues decreased to 20.2% for the six months ended June 30, 2021 from 23.0% for the six months ended June 30, 2020, primarily due to a 21.1% increase in revenues for the six months ended June 30, 2021 compared to the six months ended June 30, 2020.

26


Depreciation. Depreciation expense increased 18.0% to $3.1 million for the six months ended June 30, 2021 from $2.6 million for the six months ended June 30, 2020. Depreciation expense as a percentage of revenues was 0.9% for both the six months ended June 30, 2021 and 2020, respectively.

Amortization. Amortization expense increased 60.9% to $13.4 million for the six months ended June 30, 2021 from $8.3 million for the six months ended June 30, 2020. Amortization expense as a percentage of revenues was 3.8% for the six months ended June 30, 2021 and 2.9% for the six months ended June 30, 2020. The increase in amortization expense was primarily due to the addition of intangibles from the PSL acquisition in 2020.

Acquisition Costs. Acquisition-related costs were $0.1 million and $3.6 million for the six months ended June 30, 2021 and 2020, respectively. Costs were incurred for legal, accounting, tax, investment bank and advisor fees, and valuation services performed by third parties in connection with merger and acquisition-related activities.

Adjustment to Fair Value of Contingent Consideration. An immaterial adjustment was recorded during six months ended June 30, 2021 which represents the net impact of the fair market adjustment to the PSL, Brainjocks, and MedTouch revenue and earnings-based consideration liabilities, in addition to accretion. An adjustment of $1.7 million was recorded during the six months ended June 30, 2020 which represents the fair market adjustment to the MedTouch and Sundog Interactive, Inc. (“Sundog”) revenue and earnings-based consideration liability, in addition to accretion.

Net Interest Expense. Net interest expense increased to $6.7 million for the six months ended June 30, 2021 from $4.0 million for the six months ended June 30, 2020 as a result of the issuance of the 2025 Notes discussed in Note 11, Long-term debt.

Provision for Income Taxes. We provide for federal, state and foreign income taxes at the applicable statutory rates adjusted for non-deductible expenses. Our effective tax rate increased to 23.6% for the six months ended June 30, 2021 from 22.8% for the six months ended June 30, 2020. The increase in the effective tax rate was primarily due to the relative decrease in tax benefits recognized related to share-based compensation deductions partially offset by a decrease in non-deductible acquisition costs during the six months ended June 30, 2021 compared to the prior-year period.

Liquidity and Capital Resources

Selected measures of liquidity and capital resources are as follows (in millions):

 June 30, 2021December 31, 2020
Cash and cash equivalents (1)$86.7 $83.2 
Working capital (including cash and cash equivalents) (2)$134.7 $97.6 
Amounts available under credit facility$199.8 $124.8 

(1) The balance at June 30, 2021 and December 31, 2020 includes $5.9 million and $5.1 million, respectively, held by certain foreign subsidiaries which is not available to fund domestic operations unless the funds would be repatriated. We currently do not plan or foresee a need to repatriate such funds. The balance at June 30, 2021 also includes $1.7 million and $1.7 million in cash held by our Colombian and Chinese subsidiaries, respectively. The balance at December 31, 2020 includes $5.7 million and $2.2 million held by our Colombian and Chinese subsidiaries, respectively.
(2) Working capital is total current assets less total current liabilities.

Net Cash Provided by Operating Activities

Net cash provided by operating activities for the six months ended June 30, 2021 was $29.9 million compared to net cash provided by operating activities of $37.5 million for the six months ended June 30, 2020. For the six months ended June 30, 2021, the primary components of operating cash flows were net income of $30.2 million, non-cash charges of $30.9 million and net operating asset investments of $31.2 million. For the six months ended June 30, 2020, the primary components of operating cash flows were net income of $15.6 million, non-cash charges of $24.8 million and net operating asset investments of $2.9 million.




27


Net Cash Used in Investing Activities

During the six months ended June 30, 2021, we used $4.2 million to purchase property and equipment and to develop software. During the six months ended June 30, 2020, we used $3.5 million to purchase property and equipment and to develop software and $91.2 million for the acquisitions of PSL, Brainjocks, and MedTouch, in addition to net working capital settlement related to an acquisition.

Net Cash (Used in) Provided by Financing Activities

During the six months ended June 30, 2021, we used $11.8 million to repurchase shares of our common stock through the stock repurchase program, $5.2 million to remit taxes withheld as part of a net share settlement of restricted stock vesting, $4.2 million to settle contingent consideration for the acquisition of MedTouch, and $0.6 million to amend the 2021 Credit Facility. We also received proceeds from sales of stock through the Employee Stock Purchase Plan of $0.2 million. During the six months ended June 30, 2020, we drew down $20.0 million from our line of credit, repaid $8.0 million on our line of credit, used $4.9 million to remit taxes withheld as part of a net share settlement of restricted stock vesting, and $0.9 million to settle contingent consideration for the purchase of Elixiter Inc. ("Elixiter").

Availability of Funds from Bank Line of Credit Facility

On May 7, 2021, the Company entered into an Amended and Restated Credit Agreement (the "2021 Credit Agreement") with Wells Fargo Bank, National Association, as administrative agent and the other lenders parties thereto. The 2021 Credit Agreement provides for revolving credit borrowings up to a maximum principal amount of $200.0 million, subject to a commitment increase of $75.0 million. All outstanding amounts owed under the 2021 Credit Agreement become due and payable no later than the final maturity date of May 7, 2026. As of June 30, 2021, there was no outstanding balance under the 2021 Credit Agreement. The Company incurred $0.6 million of deferred finance fees as a result of the 2021 Credit Agreement for the three and six months ended June 30, 2021.

The 2021 Credit Agreement also allows for the issuance of letters of credit in the aggregate amount of up to $10.0 million at any one time; outstanding letters of credit reduce the credit available for revolving credit borrowings. As of June 30, 2021, the Company had two outstanding letters of credit for $0.2 million. Substantially all of the Company’s assets are pledged to secure the credit facility.

Borrowings under the 2021 Credit Agreement bear interest at the Company’s option of the prime rate (3.25% on June 30, 2021) plus a margin ranging from 0.00% to 1.00% or one month LIBOR (0.10% on June 30, 2021) plus a margin ranging from 1.00% to 2.00%. The Company incurs an annual commitment fee of 0.15% to 0.20% on the unused portion of the line of credit. The additional margin amount and annual commitment fee are dependent on the level of outstanding borrowings. As of June 30, 2021, the Company had $199.8 million of unused borrowing capacity.

At June 30, 2021, the Company was in compliance with all covenants under the 2021 Credit Agreement.

Stock Repurchase Program

The Company’s Board of Directors authorized the repurchase of up to $315.0 million of Company common stock through a stock repurchase program expiring December 31, 2022. The program could be suspended or discontinued at any time based on market, economic, or business conditions. The timing and amount of repurchase transactions will be determined by management based on its evaluation of market conditions, share price, and other factors. Since the program’s inception on August 11, 2008, the Company has repurchased approximately $251.4 million (16.0 million shares) of outstanding common stock through June 30, 2021.

From time to time, we establish a written trading plan in accordance with Rule 10b5-1 of the Exchange Act, pursuant to which we make a portion of our stock repurchases. Additional repurchases will be at times and in amounts as the Company deems appropriate and will be made through open market transactions in compliance with Rule 10b-18 of the Exchange Act, subject to market conditions, applicable legal requirements, and other factors.

Contractual Obligations

There were no material changes in lease obligations in the first six months of 2021 outside the ordinary course of our business and acquisitions. See Note 15, Leases, in the Notes to Interim Condensed Consolidated Financial Statements for further description of our lease obligations.
28


As of June 30, 2021 and December 31, 2020, there were no balances outstanding under the Credit Agreement. Any balances outstanding under the Credit Agreement would be classified as “Long-term debt” within the Condensed Consolidated Balance Sheet and become due and payable no later than the final maturity date of June 9, 2022. As of June 30, 2021, there were in aggregate $188.7 million of outstanding Notes, net of unamortized debt discount and issuance costs, compared to $183.6 million as of December 31, 2020. These amounts are classified as “Long-term debt” within the Condensed Consolidated Balance Sheets as of June 30, 2021 (unaudited) and December 31, 2020 and will become due and payable no later than the final maturity date of September 15, 2023 for the 2023 Notes and August 1, 2025 for the 2025 Notes. Based on the market price of our common stock during the 30 trading days preceding June 30, 2021, the 2025 Notes and 2023 Notes are currently convertible, in whole or in part, at the option of the holder during the quarter ending September 30, 2021. Whether the 2025 Notes and 2023 Notes will be convertible following such period will depend on the continued satisfaction of this condition or another conversion condition in the future. As of June 30, 2021, the 2025 Notes and 2023 Notes had an aggregate principal amount of $230.0 million and $5.1 million outstanding, respectively.

Off Balance Sheet Arrangements

We do not have any off-balance sheet arrangements that have or are reasonably likely to have a current or future effect on our financial condition, changes in financial condition, revenues or expenses, results of operations, liquidity, capital expenditures or capital resources that are material to investors.

Conclusion

Of the total cash and cash equivalents reported on the Condensed Consolidated Balance Sheet as of June 30, 2021 (unaudited) of $86.7 million, $5.9 million was held by certain foreign subsidiaries and is considered to be indefinitely reinvested in those operations. The Company is able to fund its liquidity needs outside of these subsidiaries, primarily through cash flows generated by domestic operations and our credit facility, as well as the proceeds from the issuance of convertible senior notes. Therefore, the Company has no current plans to repatriate cash from these foreign subsidiaries in the foreseeable future. As of June 30, 2021, the aggregate unremitted earnings of the Company’s foreign subsidiaries for which a deferred income tax liability has not been recorded was approximately $16.4 million, and the unrecognized deferred tax liability on unremitted earnings was approximately $1.1 million. As of June 30, 2021, $1.7 million and $1.7 million of the total cash and cash equivalents was held by the Company’s Colombian and Chinese subsidiaries, respectively, the earnings of which are not considered to be permanently reinvested and may be repatriated from time to time.

We believe that currently available funds, access to capital from our credit facility, and cash flows generated from operations will be sufficient to meet our working capital requirements and other capital needs for the next 12 months. However, while the Company did not experience a material impact on the business, operations or financial results from the COVID-19 pandemic during the six months ended June 30, 2021, the pandemic may materially and adversely affect our business, operations and financial results, including our cash flows, in the future as a result of, among other things, weaker customer demand, requests for discounts or extended payment terms, customer bankruptcies, supply chain disruption, employee staffing constraints and difficulties, government restrictions or other factors. For example, we have experienced certain of our customers requesting discounts or extended payment terms, pausing or slowing services, or declaring bankruptcy. Additionally, we have experienced some delays in obtaining new commitments from customers. Given the uncertain duration and scope of the pandemic and its impact on economic and financial markets, we cannot reliably predict or estimate the impact of the pandemic on our business, operations or financial results.

Critical Accounting Policies

Our accounting policies are fully described in Note 2, Summary of Significant Accounting Policies, to our Consolidated Financial Statements in our Annual Report on Form 10-K for the year ended December 31, 2020. We believe our most critical accounting policies include revenue recognition, purchase accounting and related fair value measurements, convertible debt, and income taxes.

Item 3. Quantitative and Qualitative Disclosures about Market Risk

We are exposed to market risks related to changes in foreign currency exchange rates and interest rates. We believe our exposure to market risks is immaterial.




29


Exchange Rate Sensitivity

We are exposed to market risks associated with changes in foreign currency exchange rates because we generate a portion of our revenues and incur a portion of our expenses in currencies other than the U.S. dollar. As of June 30, 2021, we were exposed to changes in exchange rates between the U.S. dollar and the Canadian dollar, Indian rupee, Chinese yuan, British pound, euro, Colombian peso and Serbian dinar. We hedge material foreign currency exchange rate exposures when feasible using forward contracts. These instruments are subject to fluctuations in foreign currency exchange rates and credit risk. Credit risk is managed through careful selection and ongoing evaluation of the financial institutions utilized as counter parties. Refer to Note 13, Derivatives, in the Notes to Interim Unaudited Consolidated Financial Statements for further discussion.

Interest Rate Sensitivity

As of June 30, 2021, there was no outstanding balance and $199.8 million of available borrowing capacity under our credit facility. To the extent we have outstanding borrowings under the credit facility, our interest expense will fluctuate as the interest rate for the line of credit floats based, at our option, on the prime rate plus a margin or the one-month LIBOR rate plus a margin.

During the third quarter of 2018 and 2020, we issued the 2023 Notes and the 2025 Notes (together, the “Notes”), respectively, which have a fixed interest rate of 2.375% and 1.250%, respectively. The fair value of the Notes may increase or decrease for various reasons, including fluctuations in the market price of our common stock, fluctuations in market interest rates and fluctuations in general economic conditions. Based upon the quoted market price as of June 30, 2021, the fair value of the 2023 Notes and 2025 Notes was approximately $10.3 million and $376.3 million, respectively.

We had unrestricted cash and cash equivalents totaling $86.7 million at June 30, 2021 and $83.2 million at December 31, 2020. The unrestricted cash and cash equivalents are primarily held for working capital purposes and acquisitions. We do not enter into investments for trading or speculative purposes.

Item 4. Controls and Procedures

The Company maintains disclosure controls and procedures that are designed to ensure that information required to be disclosed in the Company’s reports under the Exchange Act is recorded, processed, summarized, and reported within the time periods specified in the SEC’s rules and forms, and that such information is accumulated and communicated to management, including the principal executive officer and principal financial officer of the Company, as appropriate, to allow timely decisions regarding required disclosure. The Company’s management, with the participation of the Company’s principal executive officer and principal financial officer, has evaluated the effectiveness of the Company’s disclosure controls and procedures as of the end of the period covered by this Form 10-Q. Based on that evaluation, the Company’s principal executive and principal financial officers have determined that the Company’s disclosure controls and procedures were effective.

There was no change in the Company’s internal control over financial reporting as defined in Exchange Act Rule 13a-15(f) during the three months ended June 30, 2021, that has materially affected, or is reasonably likely to materially affect, the Company’s internal control over financial reporting. The Company’s remote work in response to the COVID-19 pandemic has not resulted in a material impact to the Company’s internal controls over financial reporting.

PART II. OTHER INFORMATION

Item 1A. Risk Factors

In evaluating all forward-looking statements, you should specifically consider various risk factors that may cause actual results to vary from those contained in the forward-looking statements. Our risk factors are described in our Annual Report on Form 10-K for the year ended December 31, 2020, as filed with the SEC on February 25, 2021 and available at www.sec.gov.








30


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

Issuer Purchases of Securities

Stock Repurchase Program

The Company’s Board of Directors authorized the repurchase of up to $315.0 million of Company common stock through a stock repurchase program expiring December 31, 2022. The program could be suspended or discontinued at any time based on market, economic, or business conditions. The timing and amount of repurchase transactions will be determined by management based on its evaluation of market conditions, share price, and other factors. Since the program’s inception on August 11, 2008, the Company has repurchased approximately $251.4 million (16.0 million shares) of outstanding common stock through June 30, 2021.

From time to time, we establish a written trading plan in accordance with Rule 10b5-1 of the Exchange Act, pursuant to which we make a portion of our stock repurchases. Additional repurchases will be at times and in amounts as the Company deems appropriate and will be made through open market transactions in compliance with Rule 10b-18 of the Exchange Act, subject to market conditions, applicable legal requirements, and other factors.

PeriodTotal Number of
Shares Purchased
Average Price
Paid Per Share (1)
Total Number of Shares
Purchased as Part of Publicly
Announced Plans or Programs
Approximate Dollar Value
of Shares that May Yet
Be Purchased Under
the Plans or Programs (2)
Beginning balance as of March 31, 202115,922,868 $15.36 15,922,868 $20,483,858 
April 1-30, 2021— $— — $70,483,858 
May 1-31, 202193,100 $68.63 93,100 $64,094,405 
June 1-30, 20217,000 $72.12 7,000 $63,589,681 
Ending balance as of June 30, 202116,022,968 $15.69 16,022,968  

(1)Average price paid per share includes commission.
(2)Subsequent to March 31, 2021, the Company's Board of Directors approved a $50.0 million increase in the share repurchase program.

Item 5. Other Information

None.
31


EXHIBITS INDEX
Exhibit NumberDescription
3.1
Certificate of Incorporation of Perficient, Inc., previously filed with the Securities and Exchange Commission as an Exhibit to our Registration Statement on Form SB-2 (File No. 333-78337) declared effective on July 28, 1999 by the Securities and Exchange Commission and incorporated herein by reference
3.2
Certificate of Amendment to Certificate of Incorporation of Perficient, Inc., previously filed with the Securities and Exchange Commission as an Exhibit to our Form 8-A (File No. 000-51167) filed with the Securities and Exchange Commission pursuant to Section 12(g) of the Securities Exchange Act of 1934 on February 15, 2005 and incorporated herein by reference
3.3
Certificate of Amendment to Certificate of Incorporation of Perficient, Inc., previously filed with the Securities and Exchange Commission as an Exhibit to our Registration Statement on Form S-8 (File No. 333-130624) filed on December 22, 2005 and incorporated herein by reference
3.4
Certificate of Amendment to Certificate of Incorporation of Perficient, Inc., previously filed with the Securities and Exchange Commission as an Exhibit to our Quarterly Report on Form 10-Q (File No. 001-15169) filed August 3, 2017 and incorporated herein by reference
3.5
Amended and Restated Bylaws of Perficient, Inc., previously filed with the Securities and Exchange Commission as an Exhibit to our Annual Report on Form 10-K for the year ended December 31, 2012 (File No. 001-15169) filed March 7, 2013 and incorporated herein by reference
4.1
Specimen Certificate for shares of Perficient, Inc. common stock, previously filed with the Securities and Exchange Commission as an Exhibit to our Quarterly Report on Form 10-Q (File No. 001-15169) filed May 7, 2009 and incorporated herein by reference
4.2
Indenture, dated August 14, 2020, between Perficient, Inc. and U.S. Bank National Association, as trustee, relating to the Company’s 1.250% Convertible Senior Notes due 2025, previously filed with the Securities and Exchange Commission as an Exhibit to our Quarterly Report on Form 8-K (File No. 001-15169) filed August 18, 2020 and incorporated herein by reference
4.3
Form of 2.375% Convertible Senior Notes due 2023, previously filed with the Securities and Exchange Commission as an Exhibit to our Current Report on Form 8-K filed September 11, 2018 and incorporated herein by reference
4.4
Form of 1.250% Convertible Senior Notes due 2025, previously filed with the Securities and Exchange Commission as an Exhibit to our Current Report on Form 8-K filed August 18, 2020 and incorporated herein by reference
4.5
Indenture, dated September 11, 2018, between Perficient, Inc. and U.S. Bank National Associate, as trustee, relating to the Company's 2.375% Convertible Senior Notes due 2023, previously filed with the Securities and Exchange Commission as an Exhibit to our Current Report on Form 8-K filed September 11, 2018 and incorporated herein by reference
10.1
Amended and Restated Credit Agreement, dated as of May 7, 2021, by and among Perficient, Inc., as Borrower, Wells Fargo Bank, National Association, as administrative agent, swingline lender and issuing lender, Bank of America, N.A. and U.S. Bank National Association, as syndication agents, JPMorgan Chase Bank, N.A., as documentation agent, Wells Fargo Securities, LLC, BofA Securities, Inc. and U.S. Bank National Association as joint lead arrangers and joint bookrunners and the other lenders parties thereto, previously filed with the Securities and Exchange Commission as an Exhibit to our Current Report on Form 8-K (File No. 001-15169) filed May 7, 2021 and incorporated herein by reference
Certification by the Chief Executive Officer of Perficient, Inc. as required by Section 302 of the Sarbanes-Oxley Act of 2002
Certification by the Chief Financial Officer of Perficient, Inc. as required by Section 302 of the Sarbanes-Oxley Act of 2002
Certification by the Chief Executive Officer and Chief Financial Officer of Perficient, Inc. pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002
101*
The following financial information from Perficient, Inc.’s Quarterly Report on Form 10-Q for the quarterly period ended June 30, 2021 formatted in iXBRL (inline eXtensible Business Reporting Language): (i) Condensed Consolidated Balance Sheets as of June 30, 2021 (Unaudited) and December 31, 2020, (ii) Unaudited Condensed Consolidated Statements of Operations for the three and six months ended June 30, 2021 and 2020, (iii) Unaudited Condensed Consolidated Statements of Comprehensive Income for the three and six months ended June 30, 2021 and 2020, (iv) Unaudited Condensed Consolidated Statements of Shareholders’ Equity for the three and six months ended June 30, 2021 and 2020, (v) Unaudited Condensed Consolidated Statements of Cash Flows for the six months ended June 30, 2021 and 2020, and (vi) the Notes to Interim Unaudited Condensed Consolidated Financial Statements
104Cover Page Interactive Data File (formatted as iXBRL and contained in Exhibit 101)
32


Identifies an Exhibit that consists of or includes a management contract or compensatory plan or arrangement.
*Filed herewith.
**Included but not to be considered “filed”for the purposes of Section 18 of the Securities Exchange Act of 1934, as amended, or otherwise subject to the liabilities of that section.

SIGNATURES

Pursuant to the requirements of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned, thereunto duly authorized.
 PERFICIENT, INC.
   
Date:July 29, 2021By:/s/ Jeffrey S. Davis
 Jeffrey S. Davis
 
Chief Executive Officer (Principal Executive Officer)
Date:July 29, 2021By:/s/ Paul E. Martin
 Paul E. Martin
 
Chief Financial Officer (Principal Financial Officer)

33
EX-31.1 2 prftq22021_exhibit311.htm CEO CERTIFICATION Document

EXHIBIT 31.1

CERTIFICATIONS

I, Jeffrey S. Davis, certify that:

    1. I have reviewed this quarterly report on Form 10-Q of Perficient, 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:July 29, 2021By:/s/ Jeffrey S. Davis
 Jeffrey S. Davis
 Chief Executive Officer


EX-31.2 3 prftq22021_exhibit312.htm CFO CERTIFICATION Document

EXHIBIT 31.2

CERTIFICATIONS

I, Paul E. Martin, certify that:

    1. I have reviewed this quarterly report on Form 10-Q of Perficient, 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: July 29, 2021By:/s/ Paul E. Martin
 Paul E. Martin
 Chief Financial Officer


EX-32.1 4 prftq22021_exhibit321.htm CEO AND CFO CERTIFICATION Document

EXHIBIT 32.1
 
CERTIFICATION OF
CHIEF EXECUTIVE OFFICER AND CHIEF FINANCIAL OFFICER
 
Pursuant to 18 U.S.C. Sec. 1350 and in connection with the accompanying report on Form 10-Q for the fiscal period ended June 30, 2021, that contains financial statements of Perficient, Inc. (the “Company”) filed for such period and that is being filed concurrently with the Securities and Exchange Commission on the date hereof (the “Report”), each of the undersigned officers of the Company hereby certify that:
 
1.The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and
2.The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.
 
 
  
Date:July 29, 2021By:  /s/ Jeffrey S. Davis
 Jeffrey S. Davis
 
Chief Executive Officer (Principal Executive Officer)
 
Date:July 29, 2021By:  /s/ Paul E. Martin
 Paul E. Martin
 
Chief Financial Officer (Principal Financial Officer)


EX-101.SCH 5 prft-20210630.xsd XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT 0001001 - Document - Cover Page link:presentationLink link:calculationLink link:definitionLink 1001002 - Statement - Condensed Consolidated Balance Sheets link:presentationLink link:calculationLink link:definitionLink 1002003 - Statement - Condensed Consolidated Balance Sheets (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 1003004 - Statement - Unaudited Condensed Consolidated Statements of Operations link:presentationLink link:calculationLink link:definitionLink 1004005 - Statement - Unaudited Condensed Consolidated Statements of Comprehensive Income link:presentationLink link:calculationLink link:definitionLink 1005006 - Statement - Unaudited Condensed Consolidated Statement of Stockholders' Equity link:presentationLink link:calculationLink link:definitionLink 1006007 - Statement - Unaudited Condensed Consolidated Statements of Cash Flows link:presentationLink link:calculationLink link:definitionLink 2101101 - Disclosure - Basis of Presentation link:presentationLink link:calculationLink link:definitionLink 2102102 - Disclosure - Summary of Significant Accounting Policies link:presentationLink link:calculationLink link:definitionLink 2203201 - Disclosure - Summary of Significant Accounting Policies (Policies) link:presentationLink link:calculationLink link:definitionLink 2104103 - Disclosure - Recent Accounting Pronouncements link:presentationLink link:calculationLink link:definitionLink 2105104 - Disclosure - Revenue link:presentationLink link:calculationLink link:definitionLink 2306301 - Disclosure - Revenue (Tables) link:presentationLink link:calculationLink link:definitionLink 2407401 - Disclosure - Revenue - Services Revenue (Details) link:presentationLink link:calculationLink link:definitionLink 2408402 - Disclosure - Revenue - Deferred Revenue (Details) link:presentationLink link:calculationLink link:definitionLink 2409403 - Disclosure - Revenue - Disaggregation of Revenue by Revenue Source and Pattern of Revenue Recognition (Details) link:presentationLink link:calculationLink link:definitionLink 2410404 - Disclosure - Revenue - Disaggregation of Revenue by Geographic Area (Details) link:presentationLink link:calculationLink link:definitionLink 2111105 - Disclosure - Stock-Based Compensation link:presentationLink link:calculationLink link:definitionLink 2312302 - Disclosure - Stock-Based Compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 2413405 - Disclosure - Stock-Based Compensation - Stock Award Plans (Details) link:presentationLink link:calculationLink link:definitionLink 2414406 - Disclosure - Stock-Based Compensation - Restricted Stock Activity (Details) link:presentationLink link:calculationLink link:definitionLink 2115106 - Disclosure - Net Income per Share link:presentationLink link:calculationLink link:definitionLink 2316303 - Disclosure - Net Income per Share (Tables) link:presentationLink link:calculationLink link:definitionLink 2417407 - Disclosure - Net Income per Share - Basic and Diluted (Details) link:presentationLink link:calculationLink link:definitionLink 2418408 - Disclosure - Net Income per Share - Anti-dilutive Securities (Details) link:presentationLink link:calculationLink link:definitionLink 2419409 - Disclosure - Net Income per Share - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 2120107 - Disclosure - Balance Sheet Components link:presentationLink link:calculationLink link:definitionLink 2321304 - Disclosure - Balance Sheet Components (Tables) link:presentationLink link:calculationLink link:definitionLink 2422410 - Disclosure - Balance Sheet Components - Accounts Receivable (Details) link:presentationLink link:calculationLink link:definitionLink 2423411 - Disclosure - Balance Sheet Components - Property and Equipment) (Details) link:presentationLink link:calculationLink link:definitionLink 2424412 - Disclosure - Balance Sheet Components - Other Current Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 2425413 - Disclosure - Balance Sheet Components - Other Non-Current Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 2126108 - Disclosure - Allowance for Credit Losses link:presentationLink link:calculationLink link:definitionLink 2327305 - Disclosure - Allowance for Credit Losses (Tables) link:presentationLink link:calculationLink link:definitionLink 2428414 - Disclosure - Allowance for Credit Losses (Details) link:presentationLink link:calculationLink link:definitionLink 2129109 - Disclosure - Business Combinations link:presentationLink link:calculationLink link:definitionLink 2330306 - Disclosure - Business Combinations (Tables) link:presentationLink link:calculationLink link:definitionLink 2431415 - Disclosure - Business Combinations MedTouch (Details) link:presentationLink link:calculationLink link:definitionLink 2432416 - Disclosure - Business Combinations Brainjocks (Details) link:presentationLink link:calculationLink link:definitionLink 2433417 - Disclosure - Business Combinations PSL (Details) link:presentationLink link:calculationLink link:definitionLink 2434418 - Disclosure - Business Combinations Intangible Assets Acquired (Details) link:presentationLink link:calculationLink link:definitionLink 2435419 - Disclosure - Business Combinations Pro Forma Results of Operations (Details) link:presentationLink link:calculationLink link:definitionLink 2136110 - Disclosure - Goodwill and Intangible Assets link:presentationLink link:calculationLink link:definitionLink 2337307 - Disclosure - Goodwill and Intangible Assets (Tables) link:presentationLink link:calculationLink link:definitionLink 2438420 - Disclosure - Goodwill and Intangible Assets - Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 2439421 - Disclosure - Goodwill and Intangible Assets - Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 2440422 - Disclosure - Goodwill and Intangible Assets - Estimated Useful Lives (Details) link:presentationLink link:calculationLink link:definitionLink 2441423 - Disclosure - Goodwill and Intangible Assets - Estimated Amortization Expense (Details) link:presentationLink link:calculationLink link:definitionLink 2142111 - Disclosure - Long-term Debt link:presentationLink link:calculationLink link:definitionLink 2343308 - Disclosure - Long-term Debt (Tables) link:presentationLink link:calculationLink link:definitionLink 2444424 - Disclosure - Long-term Debt - Revolving Credit Facility (Details) link:presentationLink link:calculationLink link:definitionLink 2445425 - Disclosure - Long-term Debt - Convertible Senior Notes (Additional Notes) (Details) link:presentationLink link:calculationLink link:definitionLink 2446426 - Disclosure - Long-term Debt - Liability and Equity Component of Note (Details) link:presentationLink link:calculationLink link:definitionLink 2447427 - Disclosure - Long-term Debt - Interest Expense on Note (Details) link:presentationLink link:calculationLink link:definitionLink 2448428 - Disclosure - Long-term Debt - Convertible Note Hedges and Warrants (Details) link:presentationLink link:calculationLink link:definitionLink 2149112 - Disclosure - Income Taxes link:presentationLink link:calculationLink link:definitionLink 2450429 - Disclosure - Income Taxes (Details) link:presentationLink link:calculationLink link:definitionLink 2151113 - Disclosure - Derivatives link:presentationLink link:calculationLink link:definitionLink 2352309 - Disclosure - Derivatives (Tables) link:presentationLink link:calculationLink link:definitionLink 2453430 - Disclosure - Derivatives - Notional Amounts (Details) link:presentationLink link:calculationLink link:definitionLink 2154114 - Disclosure - Fair Value Measurements link:presentationLink link:calculationLink link:definitionLink 2455431 - Disclosure - Fair Value Measurements (Details) link:presentationLink link:calculationLink link:definitionLink 2156115 - Disclosure - Leases link:presentationLink link:calculationLink link:definitionLink 2357310 - Disclosure - Leases (Tables) link:presentationLink link:calculationLink link:definitionLink 2458432 - Disclosure - Leases - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 2459433 - Disclosure - Leases - Lease Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 2460434 - Disclosure - Leases - Future Minimum Lease Payments under ASC Topic 842 (Details) link:presentationLink link:calculationLink link:definitionLink 2460434 - Disclosure - Leases - Future Minimum Lease Payments under ASC Topic 842 (Details) link:presentationLink link:calculationLink link:definitionLink 2161116 - Disclosure - Commitments and Contingencies link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 6 prft-20210630_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 7 prft-20210630_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 8 prft-20210630_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT Hedging Designation [Domain] Hedging Designation [Domain] Shares authorized to repurchase Stock Repurchase Program, Authorized Amount Supplemental Disclosures: Supplemental Cash Flow Information [Abstract] Convertible debt Convertible Debt [Member] Awards vested (in shares) Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period Fair Value Hierarchy and NAV [Domain] Fair Value Hierarchy and NAV [Domain] Leasehold improvements Leasehold Improvements [Member] Net income Net income Net income Net Income (Loss) Attributable to Parent Cumulative number of shares repurchased (in shares) Stock Repurchase Program, Cumulative amount repurchased, Shares The cumulative number of shares of stock repurchased under the plan. Entity Emerging Growth Company Entity Emerging Growth Company Operating lease right-of-use assets Operating Lease, Right-of-Use Asset Allocation of total purchase price consideration Schedule of Business Acquisitions, by Acquisition [Table Text Block] Schedule of notional amounts of outstanding derivative positions Schedule of Notional Amounts of Outstanding Derivative Positions [Table Text Block] Basic income per share (USD per share) Business Acquisition, Pro Forma Earnings Per Share, Basic Preferred stock, shares outstanding Preferred Stock, Shares Outstanding Accumulated Amortization Finite-Lived Intangible Assets, Accumulated Amortization Statistical Measurement [Domain] Statistical Measurement [Domain] Acquisition costs Business Combination, Acquisition Related Costs Entity Address, Address Line One Entity Address, Address Line One Entity Address, Address Line Two Entity Address, Address Line Two Initial conversion price (in dollars per share) Debt Instrument, Convertible, Conversion Price MedTouch MedTouch [Member] MedTouch Awards 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 Revenues Revenue from Contract with Customer [Abstract] Payment of contingent consideration for purchase of business Payment for Contingent Consideration Liability, Financing Activities Additional paid-in capital Additional Paid in Capital, Common Stock Entity Filer Category Entity Filer Category Other non-current assets Other Assets, Noncurrent Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Derivatives Derivatives, Policy [Policy Text Block] Number of shares available for issuance under the incentive plan (in shares) Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant Change in cash and cash equivalents Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect Acquired Finite-Lived Intangible Assets [Line Items] Acquired Finite-Lived Intangible Assets [Line Items] Stock compensation related to restricted stock vesting and retirement savings plan contributions APIC, Share-based Payment Arrangement, Increase for Cost Recognition Purchase price allocation for acquisitions Goodwill, Purchase Accounting Adjustments Maturity date Long-term Debt, Maturity Date Document Fiscal Year Focus Document Fiscal Year Focus Lessee, Lease, Description [Line Items] Lessee, Lease, Description [Line Items] Debt Conversion, Name [Domain] Debt Conversion, Name [Domain] Organization, Consolidation and Presentation of Financial Statements [Abstract] Amortization Amortization of Intangible Assets Identified intangible assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill Weighted average useful life (in years) Acquired Finite-lived Intangible Assets, Weighted Average Useful Life Impact of ASC topic 606 adoption Difference between Revenue Guidance in Effect before and after Topic 606 [Member] Payment for credit facility financing fees Payment for credit facility financing fees Payments of Financing Costs Shares issuable for conversion of convertible senior notes (in shares) Incremental Common Shares Attributable to Dilutive Effect of Conversion of Debt Securities Anti-dilutive securities Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount Recognition of deferred revenue Contract with Customer, Liability, Revenue Recognized Business Acquisition [Axis] Business Acquisition [Axis] Awards 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 Liability component: Debt Instruments [Abstract] Line of Credit [Abstract] Line of Credit Facility [Abstract] Income Tax Authority, Name [Axis] Income Tax Authority, Name [Axis] Award Type [Domain] Award Type [Domain] Technology Service Services Technology Service [Member] Estimated Amortization Expense [Abstract] Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract] Credit Facility [Domain] Credit Facility [Domain] Assets Assets [Abstract] Revenue, Initial Application Period Cumulative Effect Transition [Table] Revenue, Initial Application Period Cumulative Effect Transition [Table] Goodwill and Intangible Assets Goodwill and Intangible Assets, Policy [Policy Text Block] Derivatives Derivative Instruments and Hedging Activities Disclosure [Text Block] Awards granted (in shares) Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period Goodwill and Intangible Assets Goodwill and Intangible Assets Disclosure [Text Block] Accrued variable compensation Accrued Variable Compensation Accrued variable compensation. Preferred stock (par value $0.001 per share; 8,000,000 authorized; no shares issued or outstanding as of June 30, 2021 and December 31, 2020) Preferred Stock, Value, Issued Aggregate Acquisitions Finite-lived Intangible Assets Acquired EBITDA Ratio Ratio of EBITDA plus stock compensation to interest expense for the previous four consecutive fiscal quarters Ratio of earnings before interest, taxes, depreciation, and amortization (EBITDA) plus stock compensation to interest expense for the previous four consecutive fiscal quarters. Increase to goodwill Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Goodwill Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Goodwill Timing of Transfer of Good or Service [Axis] Timing of Transfer of Good or Service [Axis] Entity Address, City or Town Entity Address, City or Town Consecutive trading day period (in days) Debt Instrument, Convertible, Threshold Consecutive Trading Days Trade name Trade Names [Member] Retained Earnings Retained Earnings [Member] Debt Instrument [Axis] Debt Instrument [Axis] Note, debt instrument Debt Instrument, Fair Value Disclosure Commitments and Contingencies Commitments and Contingencies Disclosure [Text Block] Other current liabilities Other Sundry Liabilities, Current Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table] Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table] Conversion option to acquire shares (in shares) Debt Instrument, Convertible Option to Acquire Shares Debt Instrument, Convertible Option to Acquire Shares Increase to the total purchase price Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Consideration Transferred Payroll related costs Payroll Related Costs Payroll related costs Liability incurred for purchase of property and equipment Capital Expenditures Incurred but Not yet Paid Pro-forma results of operations Business Acquisition, Pro Forma Information [Table Text Block] Additional commitment increase Line of Credit Facility, Additional commitment increase Amount of additional commitment increase on the credit facility. Derivative Instruments and Hedging Activities Disclosure [Abstract] Property, Plant and Equipment [Line Items] Property, Plant and Equipment [Line Items] Commitments and Contingencies Disclosure [Abstract] Stock-based compensation expense for retirement savings plan contributions Pension and Other Postretirement Benefits Cost (Reversal of Cost) Other non-current liabilities Other Noncurrent Liabilities [Table Text Block] Tax Period [Domain] Tax Period [Domain] Entity Interactive Data Current Entity Interactive Data Current Prime rate Prime Rate [Member] Available borrowing capacity Line of Credit Facility, Remaining Borrowing Capacity Estimated fair value of contingent consideration liability Business Combination, Contingent Consideration, Liability, Current Basic net income per share (in dollars per share) Earnings Per Share, Basic Initial fair value estimate of additional earnings-based contingent consideration Initial Fair Value of Contingent Consideration To Be Earned-Business Acquisition Initial fair value estimate, as of the acquisition date, of potential payments under the contingent consideration arrangement including cash and shares. Operating lease expense Operating Lease, Expense 2024 Lessee, Operating Lease, Liability, to be Paid, Year Three Revenue Revenue from Contract with Customer [Text Block] Allowance for Credit Losses Credit Loss, Financial Instrument [Policy Text Block] Revenue, Initial Application Period Cumulative Effect Transition [Line Items] Revenue, Initial Application Period Cumulative Effect Transition [Line Items] Thereafter Finite-Lived Intangible Asset, Expected Amortization, after Year Five Restricted stock awards outstanding at beginning of period (in shares) Restricted stock awards outstanding at end of period (in shares) Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number Document Type Document Type Commitments and Contingencies Commitments and Contingencies, Policy [Policy Text Block] Total interest expense recognized Interest Expense, Debt Prepaid expenses Prepaid Expense, Current Disaggregation of revenue Disaggregation of Revenue [Table Text Block] Shares Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward] Entity Current Reporting Status Entity Current Reporting Status Cumulative effect, period of adoption, adjustment Cumulative Effect, Period of Adoption, Adjustment [Member] Deferred income taxes Deferred Tax Liabilities, Net Maximum number of shares authorized under plan (in shares) Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized Capitalization of internally developed software costs Payments for software development costs The cash outflow associated with the development or modification of software programs or applications for internal use and resale that qualify for capitalization. Accounts receivable, net Total Receivables, Net, Current Charges to expense, net of recoveries Accounts Receivable, Credit Loss Expense (Reversal) Principal Long-term Debt, Gross Goodwill [Roll Forward] Goodwill [Roll Forward] Convertible debt, liability component Convertible Debt, Liability Component [Member] Convertible Debt, Liability Component Plan Name [Axis] Plan Name [Axis] Purchases of treasury stock Payments for Repurchase of Equity Long-term debt, net Net carrying amount Long-term Debt Level 1 Fair Value, Inputs, Level 1 [Member] Investing Activities Net Cash Provided by (Used in) Investing Activities [Abstract] Document Transition Report Document Transition Report Income Tax Disclosure [Abstract] Leverage Ratio Ratio of indebtedness to EBITDA plus stock compensation Ratio of indebtedness to EBITDA plus stock compensation (Leverage Ratio). Developed software Software Development [Member] Finite-Lived Intangible Assets [Line Items] Finite-Lived Intangible Assets [Line Items] Total liabilities and stockholders’ equity Liabilities and Equity Non-compete agreements Noncompete Agreements [Member] Lessee, Lease, Description [Table] Lessee, Lease, Description [Table] Liabilities and Stockholders’ Equity Liabilities and Equity [Abstract] Accounts payable Increase (Decrease) in Accounts Payable Property and Equipment [Abstract] Property, Plant and Equipment, Net [Abstract] Basis of Presentation Business Description and Basis of Presentation [Text Block] Remittance of taxes withheld as part of a net share settlement of restricted stock vesting Remittance of taxes withheld as part of a net share settlement of restricted stock vesting This element is related to remittance of taxes withheld as part of a net share settlement of restricted stock vesting Timing of Transfer of Good or Service [Domain] Timing of Transfer of Good or Service [Domain] Purchases of treasury stock and buyback of shares for taxes Treasury Stock, Value, Acquired, Cost Method Cash and Cash Equivalents [Domain] Cash and Cash Equivalents [Domain] 2025 Finite-Lived Intangible Asset, Expected Amortization, Year Four Convertible debt, equity component Convertible Debt, Equity Component [Member] Convertible Debt, Equity Component Minimum Minimum [Member] Payments for repurchase of 2023 convertible notes Payments for Repurchase of Convertible Debt Payments for Repurchase of Convertible Debt Adjustment to fair value of contingent consideration Adjustment to fair value of contingent consideration for purchase of businesses Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability 2023 Lessee, Operating Lease, Liability, to be Paid, Year Two Effect of exchange rate on cash and cash equivalents Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents Shares conversion rate Debt Instrument, Convertible, Conversion Ratio Income before income taxes Income (Loss) from Continuing Operations before Equity Method Investments, Income Taxes, Noncontrolling Interest Selling, general and administrative Selling, General and Administrative Expense Unamortized debt issuance costs Debt Issuance Costs, Net Other comprehensive (loss) income: Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract] Preferred stock, shares authorized Preferred Stock, Shares Authorized Unrecognized tax benefits Unrecognized Tax Benefits Income Tax Authority [Domain] Income Tax Authority [Domain] Cumulative Effect, Period Of Adoption [Axis] Cumulative Effect, Period of Adoption [Axis] Trading Symbol Trading Symbol Issuance of stock in conjunction with acquisition including stock attributed to future compensation Stock Issued During Period, Value, Acquisitions Current liabilities: Liabilities, Current [Abstract] Purchase of businesses, net of cash acquired Payments to Acquire Businesses, Net of Cash Acquired Long-term Debt Debt Disclosure [Text Block] Stock-Based Compensation Share-based Payment Arrangement [Text Block] Senior notes Senior Notes [Member] Accounting Policies [Abstract] Derivative Instrument [Axis] Derivative Instrument [Axis] Total Operating Lease, Liability Letters of credit outstanding Letters of Credit Outstanding, Amount Common stock (par value $0.001 per share; 100,000,000 authorized; 50,572,384 shares issued and 32,070,673 shares outstanding as of June 30, 2021; 50,296,453 shares issued and 32,074,094 shares outstanding as of December 31, 2020) Common Stock, Value, Issued Disaggregation of Revenue [Line Items] Disaggregation of Revenue [Line Items] Contract with Customer, Basis of Pricing [Axis] Contract with Customer, Basis of Pricing [Axis] Unrecognized compensation cost, weighted-average period for recognition (in years) Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition Business Acquisition, Pro Forma Information [Abstract] Business Acquisition, Pro Forma Information [Abstract] Awards outstanding at beginning of period (in dollars per share) Awards outstanding at end of period (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 Other services Other Services [Member] Hosting fees, maintenance, training, internally developed SaaS and partner referral fees Leases Lessee, Operating Leases [Text Block] Accumulated other comprehensive (loss) income Accumulated Other Comprehensive Income (Loss), Net of Tax Proceeds from debt, net of issuance costs Proceeds from Debt, Net of Issuance Costs 2021 remaining Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year Business Combinations Business Combination Disclosure [Text Block] Restricted stock subject to vesting Restricted Stock [Member] Notional Disclosures [Abstract] Notional Disclosures [Abstract] Antidilutive Securities, Name [Domain] Antidilutive Securities, Name [Domain] Document Period End Date Document Period End Date Date of acquisition Business Acquisition, Date of Acquisition Agreement Research tax credits Research Tax Credits Amount of research credits taken or expected to be taken in the Company's income tax return for the applicable tax year. Net income Business Acquisition, Pro Forma Net Income (Loss) Cumulative effect, period of adoption, adjusted balance Cumulative Effect, Period of Adoption, Adjusted Balance [Member] Entity Registrant Name Entity Registrant Name Treasury stock, shares Treasury Stock, Shares Other current liabilities Other Current Liabilities [Table Text Block] Less implied interest Lessee, Operating Lease, Liability, Undiscounted Excess Amount Summary of lease liabilities Liabilities, Lessee [Table Text Block] Liabilities, Lessee [Table Text Block] Deferred employer FICA payments Deferred Employer FICA Payments, Noncurrent Deferred Employer FICA Payments, Noncurrent Income Tax Authority [Axis] Income Tax Authority [Axis] Unbilled revenues, net Unbilled Receivables, Current Professional services Professional Services [Member] Development, implementation, automation and extension of business processes, technology infrastructure, and software applications. Revenues Revenue from Contract with Customer, Excluding Assessed Tax Fair Value Hierarchy and NAV [Axis] Fair Value Hierarchy and NAV [Axis] Strike price (in dollars per share) Convertible Notes Hedges, Stock Price Trigger Price of the entity's common stock which would be required to be attained for the hedge options related to the convertible senior notes to be exercised. Common Stock Common Stock [Member] Variable Rate [Axis] Variable Rate [Axis] Income from operations Operating Income (Loss) Reimbursable expenses Reimbursable Expenses [Member] Reimbursement for out-of-pocket expenses, including travel and other project-related expenses without a markup. Property, Plant and Equipment [Table] Property, Plant and Equipment [Table] Current operating lease liabilities Other current liabilities Operating Lease, Liability, Current 2023 Finite-Lived Intangible Asset, Expected Amortization, Year Two Other countries Other Countries [Member] Other countries, excluding the United States and Canada. Hedging Designation [Axis] Hedging Designation [Axis] Increase (Decrease) in Stockholders' Equity [Roll Forward] Increase (Decrease) in Stockholders' Equity [Roll Forward] Non-cash stock compensation and retirement savings plan contributions Share-based Payment Arrangement, Noncash Expense Variable Rate [Domain] Variable Rate [Domain] Additional Paid-in Capital Additional Paid-in Capital [Member] Depreciation Depreciation Allowance for Credit Losses Allowance for Credit Losses [Text Block] Long-term Debt, Type [Domain] Long-term Debt, Type [Domain] Treasury Stock Treasury Stock [Member] Deferred compensation liability Deferred Compensation Liability, Classified, Noncurrent Restricted stock activity Share-based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block] Proceeds from line of credit Proceeds from Lines of Credit Allowable amount of letters of credit for issuance Line of Credit Facility, Allowable Amount for Issuance of Letters of Credit Allowable amount for issuance of letters of credit under the credit facility. Derivative notional amounts Derivative, Notional Amount Accrued medical claims expense Accrued Medical Claims Expense Accrued medical claims expense. Net other expense (income) Other Nonoperating Income (Expense) Other liabilities Increase (Decrease) in Other Operating Liabilities Credit Loss [Abstract] Purchase of property and equipment Payments to Acquire Property, Plant, and Equipment Other current liabilities Total Other Liabilities, Current Deferred employer FICA payments Deferred Employer FICA Payments, Current Deferred Employer FICA Payments, Current Business Combinations [Abstract] Interest rate at end of period Line of Credit Facility, Interest Rate at Period End Maximum Maximum [Member] Share-based Payment Arrangement [Abstract] Total liabilities Liabilities Unrecognized Tax Benefits, Income Tax Penalties Accrued Unrecognized Tax Benefits, Income Tax Penalties Accrued Fixed fee percent complete contracts Fixed-price Percent Complete Contract [Member] Contract with customer in which amount of consideration is fixed and invoiced according to the agreed-upon schedule detailing the amount and timing of payments in the contract using an input method based on the ratio of hours expended to total estimated hours. 2022 Finite-Lived Intangible Asset, Expected Amortization, Year One Award Type [Axis] Award Type [Axis] Financing Activities Net Cash Provided by (Used in) Financing Activities [Abstract] Future minimum leases payments under ASC topic 842 Lessee, Operating Lease, Liability, Maturity [Table Text Block] Total stockholders’ equity Balance Balance Stockholders' Equity Attributable to Parent Accounts receivable Increase (Decrease) in Accounts and Notes Receivable Balance Sheet Related Disclosures [Abstract] Common stock, shares issued Common Stock, Shares, Issued Increase to acquired tangible assets Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Tangible Assets Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Tangible Assets Preferred stock, shares issued Preferred Stock, Shares Issued Financing Receivable, Allowance for Credit Loss [Table] Financing Receivable, Allowance for Credit Loss [Table] Goodwill and Intangible Assets Disclosure [Abstract] Loss on extinguishment of debt Gain (Loss) on Extinguishment of Debt Payments for working capital or other general corporate purposes Payments for Repurchase of Common Stock Useful life Property, Plant and Equipment, Useful Life Stockholders’ equity: Stockholders' Equity Attributable to Parent [Abstract] Income Tax Authority, Name [Domain] Income Tax Authority, Name [Domain] Stock-Based Compensation [Abstract] Share-based Payment Arrangement, Noncash Expense [Abstract] Operating lease liabilities Operating Lease, Liability, Noncurrent Adjustments for New Accounting Pronouncements [Axis] Accounting Standards Update [Axis] Aggregated principal amount Debt Instrument, Face Amount Total purchase price Business Combination, Recognized Identifiable Assets Acquired, Goodwill, and Liabilities Assumed, Net Associated current and future income tax benefits recognized Share-based Payment Arrangement, Expense, Tax Benefit City Area Code City Area Code Share price at closing (in dollars per share) Share Price Leverage Ratio needed for payment of dividends Ratio of indebtedness to EBITDA plus stock compensation needed for payment of dividends Ratio of indebtedness to EBITDA plus stock compensation (Leverage Ratio) needed for payment of dividends. Retained earnings Retained Earnings (Accumulated Deficit) Remaining lease terms (in years) Lessee, Operating Lease, Term of Contract Derivatives, Fair Value [Line Items] Derivatives, Fair Value [Line Items] Annual commitment fee percentage on unused capacity Line of Credit Facility, Unused Capacity, Commitment Fee Percentage Statement of Stockholders' Equity [Abstract] Proceeds from the sales of stock through the Employee Stock Purchase Plan (in shares) Stock Issued During Period, Shares, Employee Stock Purchase Plans Business Acquisition [Line Items] Business Acquisition [Line Items] Stock compensation related to restricted stock vesting and retirement savings plan contributions (in shares) Stock Compensation Related To Restricted Stock Vesting And Retirement Savings Plan Contributions Shares Stock Compensation Related To Restricted Stock Vesting And Retirement Savings Plan Contributions Shares Debt Conversion Description [Axis] Debt Conversion Description [Axis] Customer backlog Customer backlog Order or Production Backlog [Member] Income Statement [Abstract] Amendment Flag Amendment Flag Net Income per Share Earnings Per Share and Treasury Stock [Text Block] The entire disclosure for earnings per share and treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock. Diluted income per share (USD per share) Business Acquisition, Pro Forma Earnings Per Share, Diluted Recent Accounting Pronouncements Accounting Standards Update and Change in Accounting Principle [Text Block] Summary of Significant Accounting Policies Basis of Presentation and Significant Accounting Policies [Text Block] Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets by Major Class [Axis] Provision for income taxes Income Tax Expense (Benefit) Billed accounts receivable, net Accounts Receivable, after Allowance for Credit Loss, Current Equity Components [Axis] Equity Components [Axis] Fair Value Disclosures [Abstract] Antidilutive Securities [Axis] Antidilutive Securities [Axis] Total current assets Assets, Current 2025 Notes Convertible Senior Notes Due 2025 [Member] Convertible Senior Notes Due 2025 Total future lease payments Lessee, Operating Lease, Liability, to be Paid COLI asset Company Owned Life Insurance Company Owned Life Insurance Disaggregation of Revenue [Table] Disaggregation of Revenue [Table] Awards forfeited (in shares) Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Forfeited in Period Over Time Transferred over Time [Member] Sale of hedges (in shares) Debt Instrument, Convertible Debt, Number of Shares Terminated Debt Instrument, Convertible Debt, Number of Shares Terminated Entity File Number Entity File Number Stock-Based Compensation Share-based Payment Arrangement [Policy Text Block] Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] Statement of Financial Position [Abstract] Thereafter Lessee, Operating Lease, Liability, to be Paid, after Year Five Net working capital settlement Net working capital settlement Net working capital settlements paid or to be paid Unrecognized deferred tax liability on unremitted earnings of foreign subsidiaries Deferred Tax Liability Not Recognized, Amount of Unrecognized Deferred Tax Liability, Undistributed Earnings of Foreign Subsidiaries Fair Value Measurement Fair Value Measurement, Policy [Policy Text Block] Product and Service [Axis] Product and Service [Axis] Property, Plant and Equipment, Type [Domain] Long-Lived Tangible Asset [Domain] Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code Accounts Receivable, Allowance for Credit Loss [Roll Forward] Accounts Receivable, Allowance for Credit Loss [Roll Forward] Entity Small Business Entity Small Business Conversion Circumstance One Conversion Circumstance One [Member] Conversion Circumstance One Preferred stock, par value (in dollars per share) Preferred Stock, Par or Stated Value Per Share Accounting Standards Update and Change in Accounting Principle [Abstract] Equity Component [Domain] Equity Component [Domain] Financing Receivable, Allowance for Credit Loss [Line Items] Financing Receivable, Allowance for Credit Loss [Line Items] Disallowed research tax credits being litigated Potential Disallowed Research Tax Credits Amount of research credits potentially disallowed on income tax return for the applicable tax year.. 2022 Lessee, Operating Lease, Liability, to be Paid, Year One Foreign currency translation adjustment, net of tax Foreign currency translation adjustment Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax 2012 Long term incentive plan Long Term Incentive Plan 2012 [Member] The 2012 Long Term Incentive Plan, as amended, allows for the granting of various types of stock awards, not to exceed a total of 5.0 million shares, to eligible individuals. Amortization of debt discount Amortization of Debt Discount (Premium) Stock issued for purchase of businesses Business Combination, Consideration Transferred, Equity Interests Issued and Issuable Statement [Line Items] Statement [Line Items] Issuance of stock in conjunction with acquisition (in shares) Stock Issued During Period, Shares, Acquisitions Shares issuable for acquisition consideration (in shares) Incremental Common Shares Attributable to Dilutive Effect of Equity Unit Purchase Agreements Domestic tax authority Domestic Tax Authority [Member] Contingent consideration, maximum cash payout Business Combination, Contingent Consideration Arrangements, Range of Outcomes, Value, High 2025 Lessee, Operating Lease, Liability, to be Paid, Year Four Debt Disclosure [Abstract] Time and materials contracts Time-and-materials Contract [Member] Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table] Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table] Entity Address, State or Province Entity Address, State or Province Tax Period [Axis] Tax Period [Axis] Level 2 Fair Value, Inputs, Level 2 [Member] Repurchase of warrants related to 2023 convertible notes Payments for Warrants Related to Convertible Notes Payments for Warrants Related to Convertible Notes Type of Adoption [Domain] Accounting Standards Update [Domain] Property, Plant and Equipment, Type [Axis] Long-Lived Tangible Asset [Axis] Coupon interest Interest Expense, Debt, Excluding Amortization Cost of entering into hedges, net of warrants Cost of entering into hedges, net of warrants Cost of entering into hedges, net of warrants Estimated useful lives (in years) Finite-Lived Intangible Asset, Useful Life Use of Estimates Use of Estimates, Policy [Policy Text Block] Basic and diluted net income per share Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] Entity Shell Company Entity Shell Company Threshold trading days (whether or not consecutive) Debt Instrument, Convertible, Threshold Trading Days Schedule of Business Acquisitions, by Acquisition [Table] Schedule of Business Acquisitions, by Acquisition [Table] Unrecognized tax benefits, interest on income taxes accrued Unrecognized Tax Benefits, Interest on Income Taxes Accrued Local Phone Number Local Phone Number Convertible note hedges Convertible Note Hedges [Member] Convertible Note Hedges [Member] Estimated useful life (in years) Finite-Lived Intangible Asset, Acquired Useful Life Useful life 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. Total assets Assets Non-current software accrual Software Accrual, Noncurrent Software Accrual, Noncurrent Plan Name [Domain] Plan Name [Domain] Common stock, shares authorized Common Stock, Shares Authorized Weighted-average shares of common stock outstanding Weighted Average Number of Shares Issued, Basic Cash paid for interest Interest Paid, Excluding Capitalized Interest, Operating Activities Geographical [Domain] Geographical [Domain] Product and Service [Domain] Product and Service [Domain] Balance Sheet Components Supplemental Balance Sheet Disclosures [Text Block] Notice period to cancel or terminate contract Notice period to cancel or terminate contract Period of time for the client or the Company to cancel or terminate the contract, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Interest rate stated, percentage Debt Instrument, Interest Rate, Stated Percentage Accounts receivable Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block] Derivative Contract [Domain] Derivative Contract [Domain] Unremitted earnings of foreign subsidiaries Undistributed Earnings of Foreign Subsidiaries Contract with Customer, Basis of Pricing [Domain] Contract with Customer, Basis of Pricing [Domain] Fair value of contingent consideration Business Combination, Contingent Consideration, Liability Share-based Compensation Arrangement by Share-based Payment Award [Line Items] Share-based Compensation Arrangement by Share-based Payment Award [Line Items] Revolving credit facility Revolving Credit Facility [Member] Change in Contract with Customer, Asset and Liability [Abstract] Change in Contract with Customer, Asset and Liability [Abstract] Cumulative Effect, Period Of Adoption [Domain] Cumulative Effect, Period of Adoption [Domain] Net cash provided by operating activities Net Cash Provided by (Used in) Operating Activities Fair Value, Recurring and Nonrecurring [Table] Fair Value, Recurring and Nonrecurring [Table] Furniture and fixtures Furniture and Fixtures [Member] Schedule of Long-term Debt Instruments [Table] Schedule of Long-term Debt Instruments [Table] Entity Tax Identification Number Entity Tax Identification Number Geographical [Axis] Geographical [Axis] Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table] Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table] Shares used in computing basic net income per share (in shares) Shares used in computing basic net income per share Weighted Average Number of Shares Outstanding, Basic Diluted net income per share (in dollars per share) Earnings Per Share, Diluted 2023 Notes Convertible Senior Notes Due 2023 [Member] Convertible Senior Notes Due 2023 [Member] Restricted stock subject to vesting Incremental Common Shares Attributable to Restricted Stock Subject to Vesting Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of restricted stock subject to vesting. Effect of dilutive securities: Incremental Weighted Average Shares Attributable to Dilutive Effect [Abstract] Payments on line of credit Repayments of Long-term Lines of Credit Amortization of debt discount and issuance costs Amortization of Debt Issuance Costs and Discounts Conversion rate of the notes on trading day (as percent) Debt Instrument, Convertible, Threshold Percentage of Stock Price Trigger Cash paid for income taxes Income Taxes Paid, Net Tax Credit [Table] Tax Credit [Table] A listing of tax credits included on the Company's tax returns. Acquired tangible assets Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets Comprehensive income Comprehensive Income (Loss), Net of Tax, Attributable to Parent Intangible assets, net Net Carrying Amounts Intangible Assets, Net (Excluding Goodwill) Deferred revenue balance Contract with Customer, Liability Tax deductible amount of Goodwill Business Acquisition, Goodwill, Expected Tax Deductible Amount Fixed fee contracts Fixed-price Contract [Member] Net cash (used in) provided by financing activities Net Cash Provided by (Used in) Financing Activities Treasury stock, at cost (18,501,711 shares as of June 30, 2021; 18,222,359 shares as of December 31, 2020) Treasury Stock, Value Long-term Debt Debt, Policy [Policy Text Block] Business Acquisition, Acquiree [Domain] Business Acquisition, Acquiree [Domain] Proceeds from the sale of stock through the Employee Stock Purchase Plan Proceeds from the sale of stock through the Employee Stock Purchase Plan Aggregate proceeds received by the entity during the period from the sale of stock through the Employee Stock Purchase Plan Fair Value Measurements Fair Value Disclosures [Text Block] Accounts payable Accounts Payable, Current Payment of interest Payments for Interest on Convertible Debt Payments for Interest on Convertible Debt Decrease to identified intangible assets Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Intangibles 2024 Finite-Lived Intangible Asset, Expected Amortization, Year Three Accumulated Other Comprehensive (Loss) Income AOCI Attributable to Parent [Member] 2021 remaining Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year Shares issuable for exercise of warrants (in shares) Incremental Common Shares Attributable to Dilutive Effect of Call Options and Warrants Common stock, shares outstanding Balance (in shares) Balance (in shares) Common Stock, Shares, Outstanding Initial Application Period Cumulative Effect Transition [Axis] Initial Application Period Cumulative Effect Transition [Axis] Common stock issued Business Acquisition, Equity Interest Issued or Issuable, Value Assigned Cost of revenues (cost of services, exclusive of depreciation and amortization, shown separately below) Cost of Goods and Services Sold Shares used in computing basic net income per share (in shares) Business Acquisition Proforma Weighted Average Shares Outstanding Basic Business acquisition proforma weighted average shares outstanding basic. Other non-current liabilities Other Sundry Liabilities, Noncurrent Shares used in computing diluted net income per share (in shares) Business Acquisition Proforma Weighted Average Shares Outstanding Diluted Business acquisition proforma weighted average shares outstanding diluted. Software Computer Software, Intangible Asset [Member] ASU 2014-09 Accounting Standards Update 2014-09 [Member] Initial Application Period Cumulative Effect Transition [Domain] Initial Application Period Cumulative Effect Transition [Domain] Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] Tax years 2011 through March 2021 Tax Years 2011 through 2019 [Member] Tax Years 2011 through 2019 [Member] Property and equipment Property, Plant and Equipment [Table Text Block] Non-Cash Investing Activity: Cash Flow, Noncash Investing and Financing Activities Disclosure [Abstract] Customer relationships Customer Relationships [Member] Transaction costs Business Acquisition, Transaction Costs Property and equipment, net Property and equipment, net Property, Plant and Equipment, Net Other non-current liabilities Total Other Liabilities, Noncurrent Schedule of long-term debt instruments Schedule of Long-term Debt Instruments [Table Text Block] Estimated annual amortization expense Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block] Purchases of treasury stock and buyback of shares for taxes (in shares) Treasury Stock, Shares, Acquired Debt Instrument [Line Items] Debt Instrument [Line Items] Earnings Per Share [Abstract] Revenues Business Acquisition, Pro Forma Revenue Property and equipment Property, Plant and Equipment, Gross Beginning balance Balance at June 30 Accounts Receivable, Allowance for Credit Loss Increase to liabilities assumed Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Liabilities Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Liabilities Document Quarterly Report Document Quarterly Report Other assets Increase (Decrease) in Other Operating Assets Warrant exercise price (in dollars per share) Class of Warrant or Right, Exercise Price of Warrants or Rights Line of Credit Facility [Table] Line of Credit Facility [Table] Proceeds from sale of of hedges related to 2023 convertible notes Proceeds from Sale of Derivatives Related to Convertible Notes Proceeds from Sale of Derivatives Related to Convertible Notes Warrants related to the issuance of convertible senior notes Warrant Warrant [Member] Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding PSL PSL [Member] PSL Stock-based compensation expense Share-based Payment Arrangement, Expense Convertible senior notes Convertible Debt Securities [Member] Net interest expense Interest Income (Expense), Nonoperating, Net, Including Amortization of Debt Discount and Deferred Issuance Costs Interest Income (Expense), Nonoperating, Net, Including Amortization of Debt Discount and Deferred Issuance Costs 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 [Abstract] Document Fiscal Period Focus Document Fiscal Period Focus Effective tax rate Effective Income Tax Rate Reconciliation, Percent Other current liabilities: Other Liabilities, Current [Abstract] Software and hardware Software and Hardware [Member] Third-party software and hardware resales, in which the Company is considered the agent, and sales of internally developed software, in which the Company is considered the principal. Amortization of debt issuance costs Amortization of Debt Issuance Costs Liabilities assumed Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities Cash and cash equivalents Cash and cash equivalents at beginning of period Cash and cash equivalents at end of period Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents United States UNITED STATES Common stock, par value (in dollars per share) Common Stock, Par or Stated Value Per Share Statement of Comprehensive Income [Abstract] Current assets: Assets, Current [Abstract] Gross Carrying Amounts Finite-Lived Intangible Assets, Gross Leases [Abstract] Cost of revenues (cost of services, exclusive of depreciation and amortization, shown separately below) Cost of Goods and Services Sold [Abstract] Finite-Lived Intangible Assets, Net [Abstract] Finite-Lived Intangible Assets, Net [Abstract] Entity Central Index Key Entity Central Index Key Intangible assets Schedule of Finite-Lived Intangible Assets [Table Text Block] London interbank offered rate (LIBOR) London Interbank Offered Rate (LIBOR) [Member] Deferred revenues Deferred Revenue, Current Security Exchange Name Security Exchange Name Internal Revenue Service (IRS) Internal Revenue Service (IRS) [Member] Cash and cash equivalents Cash and Cash Equivalents, Fair Value Disclosure Revenue from Contract with Customer Revenue from Contract with Customer [Policy Text Block] Shares used in computing diluted net income per share (in shares) Shares used in computing diluted net income per share Weighted Average Number of Shares Outstanding, Diluted Conversion Circumstance Two Conversion Circumstance Two [Member] Conversion Circumstance Two Income Taxes Income Tax Disclosure [Text Block] Requisite service period (in years) Share-based Compensation Arrangement by Share-based Payment Award, Award Requisite Service Period Basic: Weighted Average Number of Shares Outstanding, Basic [Abstract] Long-term Debt, Type [Axis] Long-term Debt, Type [Axis] Current Fiscal Year End Date Current Fiscal Year End Date Margin interest rate percentage Debt Instrument, Basis Spread on Variable Rate Point In Time Transferred at Point in Time [Member] Uncollected balances written off Accounts Receivable, Allowance for Credit Loss, Writeoff Antidilutive securities excluded from computation of earnings per share Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block] Other non-current liabilities: Other Liabilities, Noncurrent [Abstract] Statement of Cash Flows [Abstract] Credit agreement Credit Agreement [Member] The Company's credit agreement, as amended, with Silicon Valley Bank, U.S. Bank National Association, and Bank of America, N.A., entered into on July 31, 2013. Professional fees Professional Fees A fee charged for services from professionals such as doctors, lawyers and accountants. The term is often expanded to include other professions, for example, pharmacists charging to maintain a medicinal profile of a client or customer. Finite-Lived Intangible Assets, Gross [Abstract] Intangible Assets [Abstract] Finite-Lived Intangible Assets, Gross [Abstract] Total derivatives not designated as hedges Not Designated as Hedging Instrument [Member] Credit Facility [Axis] Credit Facility [Axis] Finite-Lived Intangible Assets, Major Class Name [Domain] Finite-Lived Intangible Assets, Major Class Name [Domain] Net cash used in investing activities Net Cash Provided by (Used in) Investing Activities Changes in operating assets and liabilities, net of acquisitions: Increase (Decrease) in Operating Capital [Abstract] Less: Accumulated depreciation Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment Proceeds from the sales of stock through the Employee Stock Purchase Plan Stock Issued During Period, Value, Employee Stock Purchase Plan Operating Activities Net Cash Provided by (Used in) Operating Activities [Abstract] Tax Credit [Line Items] Tax Credit [Line Items] 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. Awards vested (in dollars per share) Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value Total current liabilities Liabilities, Current Brainjocks Brainjocks [Member] Brainjocks Foreign exchange contracts Foreign Exchange Forward [Member] Maximum borrowing capacity Line of Credit Facility, Maximum Borrowing Capacity Money market funds Money Market Funds [Member] Effect of foreign currency translation adjustments Goodwill, Foreign Currency Translation Gain (Loss) Cash paid for acquisition Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Cash and Equivalents Schedule of finite-lived intangible assets acquired Schedule of Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block] Entity Address, Postal Zip Code Entity Address, Postal Zip Code Tax years 2011 through 2015 Tax Years 2011 through 2015 [Member] Identified as tax years 2011 through 2015 Estimated useful lives of intangible assets Schedule of Estimated Useful Lives of Identifiable Intangible Assets [Table Text Block] Tabular disclosure of the estimated used lives of intangible assets. Initial purchasers' discount and issuance costs Debt Instrument, Unamortized Discount (Premium) and Debt Issuance Costs, Net Line of Credit Facility [Line Items] Line of Credit Facility [Line Items] Expiration period for Notes Warrants in trading days Expiration Period for Notes Warrants in Trading Days Expiration Period for Notes Warrants in Trading Days Debt Instrument, Name [Domain] Debt Instrument, Name [Domain] Title of 12(b) Security Title of 12(b) Security Statement [Table] Statement [Table] Other current assets Other Assets, Current Recent Accounting Pronouncements New Accounting Pronouncements, Policy [Policy Text Block] Total unrecognized compensation cost related to non-vested share-based awards Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount Statistical Measurement [Axis] Statistical Measurement [Axis] Less: Unamortized debt discount Debt Instrument, Unamortized Discount (Premium), Net Cover [Abstract] Goodwill Balance at December 31, 2020 Balance at June 30, 2021 Goodwill Cumulative amount repurchased Stock Repurchase Program, Cumulative amount repurchased The cumulative amount of stock repurchased under the plan. Goodwill Schedule of Goodwill [Table Text Block] Adjustments to reconcile net income to net cash provided by operations: Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Cash and Cash Equivalents [Axis] Cash and Cash Equivalents [Axis] Computer hardware Computer Equipment [Member] Allowance for credit losses Accounts Receivable, Allowance for Credit Loss [Table Text Block] Schedule of Finite-Lived Intangible Assets [Table] Schedule of Finite-Lived Intangible Assets [Table] Deferred income taxes Deferred Income Tax Expense (Benefit) EX-101.PRE 9 prft-20210630_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT XML 10 prft-20210630_htm.xml IDEA: XBRL DOCUMENT 0001085869 2021-01-01 2021-06-30 0001085869 2021-07-22 0001085869 2021-06-30 0001085869 2020-12-31 0001085869 2021-04-01 2021-06-30 0001085869 2020-04-01 2020-06-30 0001085869 2020-01-01 2020-06-30 0001085869 us-gaap:CommonStockMember 2021-03-31 0001085869 us-gaap:CommonStockMember 2020-03-31 0001085869 us-gaap:CommonStockMember 2020-12-31 0001085869 us-gaap:CommonStockMember 2019-12-31 0001085869 us-gaap:CommonStockMember 2021-04-01 2021-06-30 0001085869 us-gaap:CommonStockMember 2020-04-01 2020-06-30 0001085869 us-gaap:CommonStockMember 2021-01-01 2021-06-30 0001085869 us-gaap:CommonStockMember 2020-01-01 2020-06-30 0001085869 us-gaap:CommonStockMember 2021-06-30 0001085869 us-gaap:CommonStockMember 2020-06-30 0001085869 us-gaap:AdditionalPaidInCapitalMember 2021-03-31 0001085869 us-gaap:AdditionalPaidInCapitalMember 2020-03-31 0001085869 us-gaap:AdditionalPaidInCapitalMember 2020-12-31 0001085869 us-gaap:AdditionalPaidInCapitalMember 2019-12-31 0001085869 us-gaap:AdditionalPaidInCapitalMember 2021-04-01 2021-06-30 0001085869 us-gaap:AdditionalPaidInCapitalMember 2020-04-01 2020-06-30 0001085869 us-gaap:AdditionalPaidInCapitalMember 2021-01-01 2021-06-30 0001085869 us-gaap:AdditionalPaidInCapitalMember 2020-01-01 2020-06-30 0001085869 us-gaap:AdditionalPaidInCapitalMember 2021-06-30 0001085869 us-gaap:AdditionalPaidInCapitalMember 2020-06-30 0001085869 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-03-31 0001085869 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-03-31 0001085869 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-12-31 0001085869 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2019-12-31 0001085869 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-04-01 2021-06-30 0001085869 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-04-01 2020-06-30 0001085869 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-01-01 2021-06-30 0001085869 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-01-01 2020-06-30 0001085869 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-06-30 0001085869 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-06-30 0001085869 us-gaap:TreasuryStockMember 2021-03-31 0001085869 us-gaap:TreasuryStockMember 2020-03-31 0001085869 us-gaap:TreasuryStockMember 2020-12-31 0001085869 us-gaap:TreasuryStockMember 2019-12-31 0001085869 us-gaap:TreasuryStockMember 2021-04-01 2021-06-30 0001085869 us-gaap:TreasuryStockMember 2020-04-01 2020-06-30 0001085869 us-gaap:TreasuryStockMember 2021-01-01 2021-06-30 0001085869 us-gaap:TreasuryStockMember 2020-01-01 2020-06-30 0001085869 us-gaap:TreasuryStockMember 2021-06-30 0001085869 us-gaap:TreasuryStockMember 2020-06-30 0001085869 us-gaap:RetainedEarningsMember 2021-03-31 0001085869 us-gaap:RetainedEarningsMember 2020-03-31 0001085869 us-gaap:RetainedEarningsMember 2020-12-31 0001085869 us-gaap:RetainedEarningsMember 2019-12-31 0001085869 srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember us-gaap:RetainedEarningsMember 2021-03-31 0001085869 srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember 2020-03-31 0001085869 srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember us-gaap:RetainedEarningsMember 2020-12-31 0001085869 srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember us-gaap:RetainedEarningsMember 2019-12-31 0001085869 us-gaap:RetainedEarningsMember 2021-04-01 2021-06-30 0001085869 us-gaap:RetainedEarningsMember 2020-04-01 2020-06-30 0001085869 us-gaap:RetainedEarningsMember 2021-01-01 2021-06-30 0001085869 us-gaap:RetainedEarningsMember 2020-01-01 2020-06-30 0001085869 us-gaap:RetainedEarningsMember 2021-06-30 0001085869 us-gaap:RetainedEarningsMember 2020-06-30 0001085869 2020-06-30 0001085869 2021-03-31 0001085869 2020-03-31 0001085869 2019-12-31 0001085869 us-gaap:TechnologyServiceMember srt:MinimumMember 2021-01-01 2021-06-30 0001085869 us-gaap:TechnologyServiceMember srt:MaximumMember 2021-01-01 2021-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TimeAndMaterialsContractMember us-gaap:TransferredOverTimeMember 2021-04-01 2021-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TimeAndMaterialsContractMember us-gaap:TransferredAtPointInTimeMember 2021-04-01 2021-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TimeAndMaterialsContractMember 2021-04-01 2021-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TimeAndMaterialsContractMember us-gaap:TransferredOverTimeMember 2020-04-01 2020-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TimeAndMaterialsContractMember us-gaap:TransferredAtPointInTimeMember 2020-04-01 2020-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TimeAndMaterialsContractMember 2020-04-01 2020-06-30 0001085869 prft:ProfessionalServicesMember prft:FixedPricePercentCompleteContractMember us-gaap:TransferredOverTimeMember 2021-04-01 2021-06-30 0001085869 prft:ProfessionalServicesMember prft:FixedPricePercentCompleteContractMember us-gaap:TransferredAtPointInTimeMember 2021-04-01 2021-06-30 0001085869 prft:ProfessionalServicesMember prft:FixedPricePercentCompleteContractMember 2021-04-01 2021-06-30 0001085869 prft:ProfessionalServicesMember prft:FixedPricePercentCompleteContractMember us-gaap:TransferredOverTimeMember 2020-04-01 2020-06-30 0001085869 prft:ProfessionalServicesMember prft:FixedPricePercentCompleteContractMember us-gaap:TransferredAtPointInTimeMember 2020-04-01 2020-06-30 0001085869 prft:ProfessionalServicesMember prft:FixedPricePercentCompleteContractMember 2020-04-01 2020-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:FixedPriceContractMember us-gaap:TransferredOverTimeMember 2021-04-01 2021-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:FixedPriceContractMember us-gaap:TransferredAtPointInTimeMember 2021-04-01 2021-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:FixedPriceContractMember 2021-04-01 2021-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:FixedPriceContractMember us-gaap:TransferredOverTimeMember 2020-04-01 2020-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:FixedPriceContractMember us-gaap:TransferredAtPointInTimeMember 2020-04-01 2020-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:FixedPriceContractMember 2020-04-01 2020-06-30 0001085869 prft:ProfessionalServicesMember prft:ReimbursableExpensesMember us-gaap:TransferredOverTimeMember 2021-04-01 2021-06-30 0001085869 prft:ProfessionalServicesMember prft:ReimbursableExpensesMember us-gaap:TransferredAtPointInTimeMember 2021-04-01 2021-06-30 0001085869 prft:ProfessionalServicesMember prft:ReimbursableExpensesMember 2021-04-01 2021-06-30 0001085869 prft:ProfessionalServicesMember prft:ReimbursableExpensesMember us-gaap:TransferredOverTimeMember 2020-04-01 2020-06-30 0001085869 prft:ProfessionalServicesMember prft:ReimbursableExpensesMember us-gaap:TransferredAtPointInTimeMember 2020-04-01 2020-06-30 0001085869 prft:ProfessionalServicesMember prft:ReimbursableExpensesMember 2020-04-01 2020-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TransferredOverTimeMember 2021-04-01 2021-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TransferredAtPointInTimeMember 2021-04-01 2021-06-30 0001085869 prft:ProfessionalServicesMember 2021-04-01 2021-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TransferredOverTimeMember 2020-04-01 2020-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TransferredAtPointInTimeMember 2020-04-01 2020-06-30 0001085869 prft:ProfessionalServicesMember 2020-04-01 2020-06-30 0001085869 prft:OtherServicesMember us-gaap:TransferredOverTimeMember 2021-04-01 2021-06-30 0001085869 prft:OtherServicesMember us-gaap:TransferredAtPointInTimeMember 2021-04-01 2021-06-30 0001085869 prft:OtherServicesMember 2021-04-01 2021-06-30 0001085869 prft:OtherServicesMember us-gaap:TransferredOverTimeMember 2020-04-01 2020-06-30 0001085869 prft:OtherServicesMember us-gaap:TransferredAtPointInTimeMember 2020-04-01 2020-06-30 0001085869 prft:OtherServicesMember 2020-04-01 2020-06-30 0001085869 us-gaap:TechnologyServiceMember us-gaap:TransferredOverTimeMember 2021-04-01 2021-06-30 0001085869 us-gaap:TechnologyServiceMember us-gaap:TransferredAtPointInTimeMember 2021-04-01 2021-06-30 0001085869 us-gaap:TechnologyServiceMember 2021-04-01 2021-06-30 0001085869 us-gaap:TechnologyServiceMember us-gaap:TransferredOverTimeMember 2020-04-01 2020-06-30 0001085869 us-gaap:TechnologyServiceMember us-gaap:TransferredAtPointInTimeMember 2020-04-01 2020-06-30 0001085869 us-gaap:TechnologyServiceMember 2020-04-01 2020-06-30 0001085869 prft:SoftwareAndHardwareMember us-gaap:TransferredOverTimeMember 2021-04-01 2021-06-30 0001085869 prft:SoftwareAndHardwareMember us-gaap:TransferredAtPointInTimeMember 2021-04-01 2021-06-30 0001085869 prft:SoftwareAndHardwareMember 2021-04-01 2021-06-30 0001085869 prft:SoftwareAndHardwareMember us-gaap:TransferredOverTimeMember 2020-04-01 2020-06-30 0001085869 prft:SoftwareAndHardwareMember us-gaap:TransferredAtPointInTimeMember 2020-04-01 2020-06-30 0001085869 prft:SoftwareAndHardwareMember 2020-04-01 2020-06-30 0001085869 us-gaap:TransferredOverTimeMember 2021-04-01 2021-06-30 0001085869 us-gaap:TransferredAtPointInTimeMember 2021-04-01 2021-06-30 0001085869 us-gaap:TransferredOverTimeMember 2020-04-01 2020-06-30 0001085869 us-gaap:TransferredAtPointInTimeMember 2020-04-01 2020-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TimeAndMaterialsContractMember us-gaap:TransferredOverTimeMember 2021-01-01 2021-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TimeAndMaterialsContractMember us-gaap:TransferredAtPointInTimeMember 2021-01-01 2021-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TimeAndMaterialsContractMember 2021-01-01 2021-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TimeAndMaterialsContractMember us-gaap:TransferredOverTimeMember 2020-01-01 2020-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TimeAndMaterialsContractMember us-gaap:TransferredAtPointInTimeMember 2020-01-01 2020-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TimeAndMaterialsContractMember 2020-01-01 2020-06-30 0001085869 prft:ProfessionalServicesMember prft:FixedPricePercentCompleteContractMember us-gaap:TransferredOverTimeMember 2021-01-01 2021-06-30 0001085869 prft:ProfessionalServicesMember prft:FixedPricePercentCompleteContractMember us-gaap:TransferredAtPointInTimeMember 2021-01-01 2021-06-30 0001085869 prft:ProfessionalServicesMember prft:FixedPricePercentCompleteContractMember 2021-01-01 2021-06-30 0001085869 prft:ProfessionalServicesMember prft:FixedPricePercentCompleteContractMember us-gaap:TransferredOverTimeMember 2020-01-01 2020-06-30 0001085869 prft:ProfessionalServicesMember prft:FixedPricePercentCompleteContractMember us-gaap:TransferredAtPointInTimeMember 2020-01-01 2020-06-30 0001085869 prft:ProfessionalServicesMember prft:FixedPricePercentCompleteContractMember 2020-01-01 2020-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:FixedPriceContractMember us-gaap:TransferredOverTimeMember 2021-01-01 2021-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:FixedPriceContractMember us-gaap:TransferredAtPointInTimeMember 2021-01-01 2021-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:FixedPriceContractMember 2021-01-01 2021-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:FixedPriceContractMember us-gaap:TransferredOverTimeMember 2020-01-01 2020-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:FixedPriceContractMember us-gaap:TransferredAtPointInTimeMember 2020-01-01 2020-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:FixedPriceContractMember 2020-01-01 2020-06-30 0001085869 prft:ProfessionalServicesMember prft:ReimbursableExpensesMember us-gaap:TransferredOverTimeMember 2021-01-01 2021-06-30 0001085869 prft:ProfessionalServicesMember prft:ReimbursableExpensesMember us-gaap:TransferredAtPointInTimeMember 2021-01-01 2021-06-30 0001085869 prft:ProfessionalServicesMember prft:ReimbursableExpensesMember 2021-01-01 2021-06-30 0001085869 prft:ProfessionalServicesMember prft:ReimbursableExpensesMember us-gaap:TransferredOverTimeMember 2020-01-01 2020-06-30 0001085869 prft:ProfessionalServicesMember prft:ReimbursableExpensesMember us-gaap:TransferredAtPointInTimeMember 2020-01-01 2020-06-30 0001085869 prft:ProfessionalServicesMember prft:ReimbursableExpensesMember 2020-01-01 2020-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TransferredOverTimeMember 2021-01-01 2021-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TransferredAtPointInTimeMember 2021-01-01 2021-06-30 0001085869 prft:ProfessionalServicesMember 2021-01-01 2021-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TransferredOverTimeMember 2020-01-01 2020-06-30 0001085869 prft:ProfessionalServicesMember us-gaap:TransferredAtPointInTimeMember 2020-01-01 2020-06-30 0001085869 prft:ProfessionalServicesMember 2020-01-01 2020-06-30 0001085869 prft:OtherServicesMember us-gaap:TransferredOverTimeMember 2021-01-01 2021-06-30 0001085869 prft:OtherServicesMember us-gaap:TransferredAtPointInTimeMember 2021-01-01 2021-06-30 0001085869 prft:OtherServicesMember 2021-01-01 2021-06-30 0001085869 prft:OtherServicesMember us-gaap:TransferredOverTimeMember 2020-01-01 2020-06-30 0001085869 prft:OtherServicesMember us-gaap:TransferredAtPointInTimeMember 2020-01-01 2020-06-30 0001085869 prft:OtherServicesMember 2020-01-01 2020-06-30 0001085869 us-gaap:TechnologyServiceMember us-gaap:TransferredOverTimeMember 2021-01-01 2021-06-30 0001085869 us-gaap:TechnologyServiceMember us-gaap:TransferredAtPointInTimeMember 2021-01-01 2021-06-30 0001085869 us-gaap:TechnologyServiceMember 2021-01-01 2021-06-30 0001085869 us-gaap:TechnologyServiceMember us-gaap:TransferredOverTimeMember 2020-01-01 2020-06-30 0001085869 us-gaap:TechnologyServiceMember us-gaap:TransferredAtPointInTimeMember 2020-01-01 2020-06-30 0001085869 us-gaap:TechnologyServiceMember 2020-01-01 2020-06-30 0001085869 prft:SoftwareAndHardwareMember us-gaap:TransferredOverTimeMember 2021-01-01 2021-06-30 0001085869 prft:SoftwareAndHardwareMember us-gaap:TransferredAtPointInTimeMember 2021-01-01 2021-06-30 0001085869 prft:SoftwareAndHardwareMember 2021-01-01 2021-06-30 0001085869 prft:SoftwareAndHardwareMember us-gaap:TransferredOverTimeMember 2020-01-01 2020-06-30 0001085869 prft:SoftwareAndHardwareMember us-gaap:TransferredAtPointInTimeMember 2020-01-01 2020-06-30 0001085869 prft:SoftwareAndHardwareMember 2020-01-01 2020-06-30 0001085869 us-gaap:TransferredOverTimeMember 2021-01-01 2021-06-30 0001085869 us-gaap:TransferredAtPointInTimeMember 2021-01-01 2021-06-30 0001085869 us-gaap:TransferredOverTimeMember 2020-01-01 2020-06-30 0001085869 us-gaap:TransferredAtPointInTimeMember 2020-01-01 2020-06-30 0001085869 country:US 2021-04-01 2021-06-30 0001085869 country:US 2020-04-01 2020-06-30 0001085869 country:US 2021-01-01 2021-06-30 0001085869 country:US 2020-01-01 2020-06-30 0001085869 prft:OtherCountriesMember 2021-04-01 2021-06-30 0001085869 prft:OtherCountriesMember 2020-04-01 2020-06-30 0001085869 prft:OtherCountriesMember 2021-01-01 2021-06-30 0001085869 prft:OtherCountriesMember 2020-01-01 2020-06-30 0001085869 prft:LongTermIncentivePlan2012Member 2021-06-30 0001085869 us-gaap:RestrictedStockMember prft:LongTermIncentivePlan2012Member 2020-12-31 0001085869 us-gaap:RestrictedStockMember prft:LongTermIncentivePlan2012Member 2021-01-01 2021-06-30 0001085869 us-gaap:RestrictedStockMember prft:LongTermIncentivePlan2012Member 2021-06-30 0001085869 us-gaap:RestrictedStockMember 2021-04-01 2021-06-30 0001085869 us-gaap:RestrictedStockMember 2020-04-01 2020-06-30 0001085869 us-gaap:RestrictedStockMember 2021-01-01 2021-06-30 0001085869 us-gaap:RestrictedStockMember 2020-01-01 2020-06-30 0001085869 us-gaap:ConvertibleDebtSecuritiesMember 2021-04-01 2021-06-30 0001085869 us-gaap:ConvertibleDebtSecuritiesMember 2020-04-01 2020-06-30 0001085869 us-gaap:ConvertibleDebtSecuritiesMember 2021-01-01 2021-06-30 0001085869 us-gaap:ConvertibleDebtSecuritiesMember 2020-01-01 2020-06-30 0001085869 us-gaap:WarrantMember 2021-04-01 2021-06-30 0001085869 us-gaap:WarrantMember 2020-04-01 2020-06-30 0001085869 us-gaap:WarrantMember 2021-01-01 2021-06-30 0001085869 us-gaap:WarrantMember 2020-01-01 2020-06-30 0001085869 us-gaap:ComputerEquipmentMember 2021-01-01 2021-06-30 0001085869 us-gaap:ComputerEquipmentMember 2021-06-30 0001085869 us-gaap:ComputerEquipmentMember 2020-12-31 0001085869 srt:MinimumMember us-gaap:ComputerSoftwareIntangibleAssetMember 2021-01-01 2021-06-30 0001085869 srt:MaximumMember us-gaap:ComputerSoftwareIntangibleAssetMember 2021-01-01 2021-06-30 0001085869 us-gaap:ComputerSoftwareIntangibleAssetMember 2021-06-30 0001085869 us-gaap:ComputerSoftwareIntangibleAssetMember 2020-12-31 0001085869 us-gaap:FurnitureAndFixturesMember 2021-01-01 2021-06-30 0001085869 us-gaap:FurnitureAndFixturesMember 2021-06-30 0001085869 us-gaap:FurnitureAndFixturesMember 2020-12-31 0001085869 us-gaap:LeaseholdImprovementsMember 2021-01-01 2021-06-30 0001085869 us-gaap:LeaseholdImprovementsMember 2021-06-30 0001085869 us-gaap:LeaseholdImprovementsMember 2020-12-31 0001085869 srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember 2020-12-31 0001085869 srt:CumulativeEffectPeriodOfAdoptionAdjustmentMember 2019-12-31 0001085869 srt:CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember 2020-12-31 0001085869 srt:CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember 2019-12-31 0001085869 prft:MedTouchMember 2020-01-06 2020-01-06 0001085869 prft:MedTouchMember 2020-01-06 0001085869 prft:BrainjocksMember 2020-03-23 2020-03-23 0001085869 prft:BrainjocksMember 2020-03-23 0001085869 prft:PSLMember 2020-06-17 2020-06-17 0001085869 prft:PSLMember 2020-06-17 0001085869 prft:MedTouchMember 2021-06-30 0001085869 prft:MedTouchMember 2021-04-01 2021-06-30 0001085869 prft:MedTouchMember 2021-01-01 2021-06-30 0001085869 prft:BrainjocksMember 2021-06-30 0001085869 prft:BrainjocksMember 2021-04-01 2021-06-30 0001085869 prft:BrainjocksMember 2021-01-01 2021-06-30 0001085869 prft:PSLMember 2021-06-30 0001085869 prft:PSLMember 2021-04-01 2021-06-30 0001085869 prft:PSLMember 2021-01-01 2021-06-30 0001085869 prft:PSLMember 2020-06-17 2021-03-31 0001085869 2020-06-17 2021-03-31 0001085869 us-gaap:CustomerRelationshipsMember 2021-01-01 2021-03-31 0001085869 srt:MinimumMember us-gaap:CustomerRelationshipsMember 2021-01-01 2021-03-31 0001085869 srt:MaximumMember us-gaap:CustomerRelationshipsMember 2021-01-01 2021-03-31 0001085869 us-gaap:OrderOrProductionBacklogMember 2021-01-01 2021-03-31 0001085869 us-gaap:NoncompeteAgreementsMember 2021-01-01 2021-03-31 0001085869 us-gaap:TradeNamesMember 2021-01-01 2021-03-31 0001085869 us-gaap:SoftwareDevelopmentMember 2021-01-01 2021-03-31 0001085869 srt:MinimumMember us-gaap:SoftwareDevelopmentMember 2021-01-01 2021-03-31 0001085869 srt:MaximumMember us-gaap:SoftwareDevelopmentMember 2021-01-01 2021-03-31 0001085869 2021-01-01 2021-03-31 0001085869 us-gaap:CustomerRelationshipsMember 2021-06-30 0001085869 us-gaap:CustomerRelationshipsMember 2020-12-31 0001085869 us-gaap:NoncompeteAgreementsMember 2021-06-30 0001085869 us-gaap:NoncompeteAgreementsMember 2020-12-31 0001085869 us-gaap:OrderOrProductionBacklogMember 2021-06-30 0001085869 us-gaap:OrderOrProductionBacklogMember 2020-12-31 0001085869 us-gaap:TradeNamesMember 2021-06-30 0001085869 us-gaap:TradeNamesMember 2020-12-31 0001085869 us-gaap:SoftwareDevelopmentMember 2021-06-30 0001085869 us-gaap:SoftwareDevelopmentMember 2020-12-31 0001085869 srt:MinimumMember us-gaap:CustomerRelationshipsMember 2021-01-01 2021-06-30 0001085869 srt:MaximumMember us-gaap:CustomerRelationshipsMember 2021-01-01 2021-06-30 0001085869 srt:MinimumMember us-gaap:NoncompeteAgreementsMember 2021-01-01 2021-06-30 0001085869 srt:MaximumMember us-gaap:NoncompeteAgreementsMember 2021-01-01 2021-06-30 0001085869 us-gaap:OrderOrProductionBacklogMember 2021-01-01 2021-06-30 0001085869 us-gaap:TradeNamesMember 2021-01-01 2021-06-30 0001085869 srt:MinimumMember us-gaap:SoftwareDevelopmentMember 2021-01-01 2021-06-30 0001085869 srt:MaximumMember us-gaap:SoftwareDevelopmentMember 2021-01-01 2021-06-30 0001085869 us-gaap:RevolvingCreditFacilityMember prft:CreditAgreementMember 2021-05-07 0001085869 us-gaap:RevolvingCreditFacilityMember prft:CreditAgreementMember 2021-06-30 0001085869 us-gaap:RevolvingCreditFacilityMember prft:CreditAgreementMember 2021-04-01 2021-06-30 0001085869 us-gaap:RevolvingCreditFacilityMember prft:CreditAgreementMember 2021-01-01 2021-06-30 0001085869 us-gaap:RevolvingCreditFacilityMember prft:CreditAgreementMember us-gaap:PrimeRateMember 2021-06-30 0001085869 srt:MinimumMember us-gaap:RevolvingCreditFacilityMember prft:CreditAgreementMember us-gaap:PrimeRateMember 2021-01-01 2021-06-30 0001085869 srt:MaximumMember us-gaap:RevolvingCreditFacilityMember prft:CreditAgreementMember us-gaap:PrimeRateMember 2021-01-01 2021-06-30 0001085869 us-gaap:RevolvingCreditFacilityMember prft:CreditAgreementMember us-gaap:LondonInterbankOfferedRateLIBORMember 2021-06-30 0001085869 srt:MinimumMember us-gaap:RevolvingCreditFacilityMember us-gaap:LondonInterbankOfferedRateLIBORMember 2021-01-01 2021-06-30 0001085869 srt:MaximumMember us-gaap:RevolvingCreditFacilityMember us-gaap:LondonInterbankOfferedRateLIBORMember 2021-01-01 2021-06-30 0001085869 srt:MinimumMember us-gaap:RevolvingCreditFacilityMember prft:CreditAgreementMember 2021-01-01 2021-06-30 0001085869 srt:MaximumMember us-gaap:RevolvingCreditFacilityMember prft:CreditAgreementMember 2021-01-01 2021-06-30 0001085869 us-gaap:RevolvingCreditFacilityMember 2021-01-01 2021-06-30 0001085869 prft:ConvertibleSeniorNotesDue2025Member us-gaap:ConvertibleDebtMember 2020-08-14 0001085869 prft:ConvertibleSeniorNotesDue2025Member us-gaap:ConvertibleDebtMember 2020-08-14 2020-08-14 0001085869 prft:ConvertibleSeniorNotesDue2025Member us-gaap:ConvertibleDebtMember 2021-06-30 0001085869 prft:ConvertibleSeniorNotesDue2025Member us-gaap:WarrantMember 2021-06-30 0001085869 prft:ConvertibleSeniorNotesDue2023Member us-gaap:ConvertibleDebtMember 2018-09-11 0001085869 prft:ConvertibleSeniorNotesDue2023Member us-gaap:ConvertibleDebtMember 2018-09-11 2018-09-11 0001085869 prft:ConvertibleSeniorNotesDue2023Member us-gaap:ConvertibleDebtMember 2021-06-30 0001085869 prft:ConvertibleSeniorNotesDue2023Member us-gaap:WarrantMember 2018-09-11 0001085869 prft:ConvertibleSeniorNotesDue2023Member us-gaap:ConvertibleDebtMember 2020-12-31 0001085869 prft:ConvertibleSeniorNotesDue2023Member us-gaap:ConvertibleDebtMember 2020-08-01 2020-08-31 0001085869 prft:ConvertibleSeniorNotesDue2023Member us-gaap:ConvertibleDebtMember 2020-12-01 2020-12-31 0001085869 prft:ConvertibleSeniorNotesDue2023Member prft:ConvertibleDebtLiabilityComponentMember 2020-01-01 2020-12-31 0001085869 prft:ConvertibleSeniorNotesDue2023Member prft:ConvertibleDebtEquityComponentMember 2020-01-01 2020-12-31 0001085869 prft:ConvertibleSeniorNotesDue2023Member us-gaap:ConvertibleDebtMember 2020-01-01 2020-12-31 0001085869 prft:ConversionCircumstanceOneMember us-gaap:ConvertibleDebtMember 2021-01-01 2021-06-30 0001085869 prft:ConversionCircumstanceTwoMember us-gaap:ConvertibleDebtMember 2021-01-01 2021-06-30 0001085869 prft:ConvertibleSeniorNotesDue2025Member us-gaap:ConvertibleDebtMember 2020-12-31 0001085869 prft:ConvertibleSeniorNotesDue2025Member us-gaap:SeniorNotesMember 2021-04-01 2021-06-30 0001085869 prft:ConvertibleSeniorNotesDue2025Member us-gaap:SeniorNotesMember 2020-04-01 2020-06-30 0001085869 prft:ConvertibleSeniorNotesDue2025Member us-gaap:SeniorNotesMember 2021-01-01 2021-06-30 0001085869 prft:ConvertibleSeniorNotesDue2025Member us-gaap:SeniorNotesMember 2020-01-01 2020-06-30 0001085869 prft:ConvertibleSeniorNotesDue2023Member us-gaap:SeniorNotesMember 2021-04-01 2021-06-30 0001085869 prft:ConvertibleSeniorNotesDue2023Member us-gaap:SeniorNotesMember 2020-04-01 2020-06-30 0001085869 prft:ConvertibleSeniorNotesDue2023Member us-gaap:SeniorNotesMember 2021-01-01 2021-06-30 0001085869 prft:ConvertibleSeniorNotesDue2023Member us-gaap:SeniorNotesMember 2020-01-01 2020-06-30 0001085869 prft:ConvertibleSeniorNotesDue2025Member prft:ConvertibleNoteHedgesMember 2020-08-14 2020-08-14 0001085869 prft:ConvertibleSeniorNotesDue2023Member prft:ConvertibleNoteHedgesMember 2018-09-11 2018-09-11 0001085869 prft:ConvertibleSeniorNotesDue2023Member prft:ConvertibleNoteHedgesMember 2020-08-01 2020-08-31 0001085869 prft:ConvertibleSeniorNotesDue2023Member prft:ConvertibleNoteHedgesMember 2020-12-01 2020-12-31 0001085869 prft:ConvertibleSeniorNotesDue2023Member us-gaap:WarrantMember 2021-06-30 0001085869 prft:ConvertibleSeniorNotesDue2023Member us-gaap:ConvertibleDebtMember us-gaap:WarrantMember 2020-08-01 2020-08-31 0001085869 us-gaap:DomesticCountryMember us-gaap:InternalRevenueServiceIRSMember prft:TaxYears2011through2015Member 2021-06-30 0001085869 us-gaap:DomesticCountryMember us-gaap:InternalRevenueServiceIRSMember prft:TaxYears2011through2019Member 2021-06-30 0001085869 us-gaap:ForeignExchangeForwardMember us-gaap:NondesignatedMember 2021-06-30 0001085869 us-gaap:ForeignExchangeForwardMember us-gaap:NondesignatedMember 2020-12-31 0001085869 us-gaap:NondesignatedMember 2021-06-30 0001085869 us-gaap:NondesignatedMember 2020-12-31 0001085869 us-gaap:MoneyMarketFundsMember us-gaap:FairValueInputsLevel1Member 2021-06-30 0001085869 us-gaap:MoneyMarketFundsMember us-gaap:FairValueInputsLevel1Member 2020-12-31 0001085869 us-gaap:FairValueInputsLevel2Member 2021-06-30 0001085869 us-gaap:FairValueInputsLevel2Member 2020-12-31 0001085869 prft:ConvertibleSeniorNotesDue2025Member us-gaap:FairValueInputsLevel2Member 2021-06-30 0001085869 prft:ConvertibleSeniorNotesDue2025Member us-gaap:FairValueInputsLevel2Member 2020-12-31 0001085869 prft:ConvertibleSeniorNotesDue2023Member us-gaap:FairValueInputsLevel2Member 2021-06-30 0001085869 prft:ConvertibleSeniorNotesDue2023Member us-gaap:FairValueInputsLevel2Member 2020-12-31 0001085869 srt:MinimumMember 2021-06-30 0001085869 srt:MaximumMember 2021-06-30 shares iso4217:USD iso4217:USD shares pure prft:day utr:Rate 0001085869 --12-31 2021 Q2 false 10-Q true 2021-06-30 false 001-15169 PERFICIENT, INC. DE 74-2853258 555 Maryville University Drive Suite 600 Saint Louis MO 63141 314 529-3600 Common Stock, $0.001 par value PRFT NASDAQ Yes Yes Large Accelerated Filer false false false 32931290 86686000 83204000 149718000 133085000 6354000 5575000 5795000 4646000 248553000 226510000 12124000 11902000 35056000 38539000 420508000 427928000 48937000 63571000 21017000 17311000 786195000 785761000 26167000 25613000 87683000 103267000 113850000 128880000 188667000 183624000 25871000 29098000 45814000 50081000 374202000 391683000 0.001 0.001 8000000 8000000 0 0 0 0 0 0 0.001 0.001 100000000 100000000 50572384 32070673 50296453 32074094 51000 50000 470218000 459866000 -1813000 3746000 18501711 18222359 306270000 289225000 249807000 219641000 411993000 394078000 786195000 785761000 184136000 146339000 353477000 291901000 113180000 91155000 219242000 184372000 37424000 33876000 71403000 67097000 1615000 1317000 3075000 2605000 6333000 4398000 13385000 8320000 0 1787000 68000 3600000 -510000 2067000 4000 1732000 26094000 11739000 46300000 24175000 -3367000 -2061000 -6663000 -3987000 -9000 15000 -131000 8000 22718000 9693000 39506000 20196000 6145000 3084000 9340000 4613000 16573000 6609000 30166000 15583000 0.52 0.21 0.95 0.49 0.49 0.20 0.90 0.48 31922000 31888000 31893000 31763000 33867000 32377000 33500000 32444000 16573000 6609000 30166000 15583000 -1273000 -78000 -5559000 -1052000 15300000 6531000 24607000 14531000 51000 50000 50000 49000 0 0 1000 1000 51000 50000 51000 50000 465156000 465123000 459866000 455465000 106000 76000 211000 116000 4956000 4679000 10141000 9405000 0 5269000 0 10161000 470218000 475147000 470218000 475147000 -540000 -3624000 3746000 -2650000 -1273000 -78000 -5559000 -1052000 -1813000 -3702000 -1813000 -3702000 -299367000 -266459000 -289225000 -261624000 6903000 26000 17045000 4861000 -306270000 -266485000 -306270000 -266485000 233234000 198434000 219641000 189775000 0 0 0 -315000 16573000 6609000 30166000 15583000 249807000 205043000 249807000 205043000 411993000 410053000 411993000 410053000 32151000 32061000 32074000 31687000 2000 3000 4000 4000 18000 38000 272000 358000 100000 0 279000 114000 0 170000 0 337000 32071000 32272000 32071000 32272000 30166000 15583000 3075000 2605000 13385000 8320000 -963000 252000 10320000 9472000 5090000 2416000 4000 1732000 16366000 -13634000 5371000 -2166000 2173000 -6996000 -11633000 -11684000 29880000 37500000 3623000 2447000 569000 1080000 12000 91201000 -4204000 -94728000 633000 0 0 20000000 0 8000000 4208000 876000 211000 116000 11802000 0 -5243000 -4861000 -21675000 6379000 -519000 -335000 3482000 -51184000 83204000 70728000 86686000 19544000 10014000 1588000 1455000 1813000 0 8729000 0 486000 Basis of Presentation<div style="text-align:justify"><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-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying interim unaudited condensed consolidated financial statements of Perficient, Inc. and its subsidiaries (collectively, the “Company”) have been prepared in accordance with U.S. generally accepted accounting principles (“U.S. GAAP”) and are presented in accordance with the rules and regulations of the Securities and Exchange Commission (the “SEC”) applicable to interim financial information. Accordingly, certain note disclosures have been condensed or omitted. In the opinion of management, the interim unaudited condensed consolidated financial statements reflect all adjustments (consisting of only normal recurring adjustments) necessary for a fair presentation of the Company’s financial position, results of operations and cash flows for the periods presented. These financial statements should be read in conjunction with the Company’s consolidated financial statements and notes thereto filed with the SEC in the Company’s Annual Report on Form 10-K for the year ended December 31, 2020. </span></div><div style="text-align:justify;text-indent:36pt"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Through June 30, 2021, the Company had not experienced a material impact to its business, operations or financial results as a result of the novel coronavirus (COVID-19) pandemic. However, operating results for the three and six months ended June 30, 2021 are not necessarily indicative of the results that may be expected for the year ended December 31, 2021, particularly in light of the COVID-19 pandemic, including emerging variants, and its effects on domestic and global economies. To limit the spread of COVID-19, governments have imposed, and may continue to impose, among other things, travel and business operation restrictions and stay-at-home orders and social distancing guidelines, causing some businesses to adjust, reduce or suspend operating activities. While certain of these restrictions and guidelines have been lifted or relaxed, they may be reinstituted in response to continuing effects of the pandemic, including as a result of emerging variants. These disruptions and restrictions could adversely affect our operating results due to, among other things, reduced demand for our services and solutions, requests for discounts or extended payment terms, or customer bankruptcies. For more information, refer to the statements included under the heading “Risk Factors” in our Annual Report on Form 10-K for the year ended December 31, 2020.</span></div> Summary of Significant Accounting Policies<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Use of Estimates </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting periods. Actual results could differ from those estimates, and such differences could be material to the financial statements.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">There have been no changes to significant accounting policies described in the Annual Report on Form 10-K for the year ended December 31, 2020 that have had a material impact on the Company’s condensed consolidated financial statements and related notes.</span></div> <div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting periods. Actual results could differ from those estimates, and such differences could be material to the financial statements.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">There have been no changes to significant accounting policies described in the Annual Report on Form 10-K for the year ended December 31, 2020 that have had a material impact on the Company’s condensed consolidated financial statements and related notes.</span></div> Recent Accounting Pronouncements<span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In August 2020, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) No. 2020-06, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Debt—Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging - Contracts in Entity’s Own Equity (Subtopic 815-40)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">, which simplifies the accounting for convertible instruments. The guidance removes certain accounting models that separate the embedded conversion features from the host contract for convertible instruments, requiring bifurcation only if the convertible debt feature qualifies as a derivative or for convertible debt issued at a substantial premium. The ASU removes certain settlement conditions required for equity contracts to qualify for the derivative scope exception, permitting more contracts to qualify for the exception. In addition, the guidance eliminates the treasury stock method to calculate diluted earnings per share for convertible instruments and requires the use of the if-converted method. The ASU is effective for annual reporting periods beginning after December 15, 2021, including interim reporting periods within those annual periods, with early adoption permitted no earlier than the fiscal year beginning after December 15, 2020. The ASU allows entities to use a modified or full retrospective transition method. Under the modified approach, entities will apply the guidance to all financial instruments that are outstanding as of the beginning of the year of adoption with the cumulative effect recognized as an adjustment to the opening balance of retained earnings. Under the full retrospective method, entities will apply the guidance to all outstanding financial instruments for each prior reporting period presented. The Company will adopt this </span>ASU on January 1, 2022 and is currently evaluating the method of adoption and the related impact of the new guidance on earnings per share and on its financial statements. <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In August 2020, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) No. 2020-06, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Debt—Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging - Contracts in Entity’s Own Equity (Subtopic 815-40)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">, which simplifies the accounting for convertible instruments. The guidance removes certain accounting models that separate the embedded conversion features from the host contract for convertible instruments, requiring bifurcation only if the convertible debt feature qualifies as a derivative or for convertible debt issued at a substantial premium. The ASU removes certain settlement conditions required for equity contracts to qualify for the derivative scope exception, permitting more contracts to qualify for the exception. In addition, the guidance eliminates the treasury stock method to calculate diluted earnings per share for convertible instruments and requires the use of the if-converted method. The ASU is effective for annual reporting periods beginning after December 15, 2021, including interim reporting periods within those annual periods, with early adoption permitted no earlier than the fiscal year beginning after December 15, 2020. The ASU allows entities to use a modified or full retrospective transition method. Under the modified approach, entities will apply the guidance to all financial instruments that are outstanding as of the beginning of the year of adoption with the cumulative effect recognized as an adjustment to the opening balance of retained earnings. Under the full retrospective method, entities will apply the guidance to all outstanding financial instruments for each prior reporting period presented. The Company will adopt this </span>ASU on January 1, 2022 and is currently evaluating the method of adoption and the related impact of the new guidance on earnings per share and on its financial statements. Revenue<div style="text-align:justify"><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-align:justify;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 revenues consist of services and software and hardware sales. In accordance with Accounting Standards Codification (“ASC”) Topic 606</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">, Revenue from Contracts with Customers, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">revenues are recognized when control of services or goods are transferred to clients, in an amount that reflects the consideration the Company expects to be entitled to in exchange for those services or goods.</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%">Services Revenues</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Services revenues are primarily comprised of professional services that include developing, implementing, automating and extending business processes, technology infrastructure, and software applications. The Company’s professional services span multiple industries, platforms and solutions; however, the Company has remained relatively diversified and does not believe that it has significant revenue concentration within any single industry, platform or solution.</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Professional services revenues are recognized over time as services are rendered. Most projects are performed on a time and materials basis, while a portion of revenues is derived from projects performed on a fixed fee or fixed fee percent complete basis. For time and material contracts, revenues are generally recognized and invoiced by multiplying the number of hours expended in the performance of the contract by the hourly rates. For fixed fee contracts, revenues are generally recognized and invoiced by multiplying the fixed rate per time period established in the contract by the number of time periods elapsed. For fixed fee percent complete contracts, revenues are generally recognized using an input method based on the ratio of hours expended to total estimated hours, and the client is invoiced according to the agreed-upon schedule detailing the amount and timing of payments in the contract.</span></div><div style="text-align:justify;text-indent:36pt"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Clients are typically billed monthly for services provided during that month but can be billed on a more or less frequent basis as determined by the contract. If the time is worked and approved at the end of a fiscal period and the invoice has not yet been sent to the client, the amount is recorded as revenue once the Company verifies all other revenue recognition criteria have been met, and the amount is classified as a receivable as the right to consideration is unconditional at that point. Amounts invoiced in excess of revenues recognized are contract liabilities, which are classified as deferred revenues in the Unaudited Condensed Consolidated Balance Sheet. The term between invoicing and payment due date is not significant. Contracts for professional services provide for a general right, to the client or the Company, to cancel or terminate the contract within a given period of time (generally 10 to 30 days’ notice is required). The client is responsible for any time and expenses incurred up to the date of cancellation or termination of the contract. Certain contracts may include volume discounts or holdbacks, which are accounted for as variable consideration, but are not typically significant. The Company estimates variable consideration based on historical experience and forecasted sales and includes the variable consideration in the transaction price.</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other services revenues are comprised of hosting fees, partner referral fees, maintenance agreements, training and internally developed software-as-a-service (“SaaS”) sales. Revenues from hosting fees, maintenance agreements, training and internally developed SaaS sales are generally recognized over time using a time-based measure of progress as services are rendered. Partner referral fees are recorded at a point in time upon meeting specified requirements to earn the respective fee.</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On many professional service projects, the Company is also reimbursed for out-of-pocket expenses including travel and other project-related expenses. These reimbursements are included as a component of the transaction price of the respective professional services contract and are invoiced as the expenses are incurred. The Company structures its professional services arrangements to recover the cost of reimbursable expenses without a markup.</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%">Software and Hardware Revenues</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Software and hardware revenues are comprised of third-party software and hardware resales, in which the Company is considered the agent, and sales of internally developed software, in which the Company is considered the principal. Third-party software and hardware revenues are recognized and invoiced when the Company fulfills its obligation to arrange the sale, which occurs when the purchase order with the vendor is executed and the customer has access to the software or the hardware has been shipped to the customer. Internally developed software revenues are recognized and invoiced when control is transferred to the customer, which occurs when the software has been made available to the customer and the license term has commenced. Revenues from third-party software and hardware sales are recorded on a net basis, while revenues from internally developed </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">software sales are recorded on a gross basis. There are no significant cancellation or termination-type provisions for the Company’s software and hardware sales, and the term between invoicing and payment due date is not significant.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    Revenues are presented net of taxes assessed by governmental authorities. Sales taxes are generally collected and subsequently remitted on all software and hardware sales and certain services transactions as appropriate.</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%">Arrangements with Multiple Performance Obligations</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Arrangements with clients may contain multiple promises such as delivery of software, hardware, professional services or post-contract support services. These promises are accounted for as separate performance obligations if they are distinct. For arrangements with clients that contain multiple performance obligations, the transaction price is allocated to the separate performance obligations based on estimated relative standalone selling price, which is estimated by the expected cost plus a margin approach, taking into consideration market conditions and competitive factors. Because contracts that contain multiple performance obligations are typically short term due to the contract cancellation provisions, the allocation of the transaction price to the separate performance obligations is not considered a significant estimate.</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%">Contract Costs</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In accordance with the terms of the Company’s sales commission plan, commissions are not earned until the related revenue is recognized. Therefore, sales commissions are expensed as they are earned. Certain sales incentives are accrued based on achievement of specified bookings goals. For these incentives, the Company applies the practical expedient that allows the Company to expense the incentives as incurred because the amortization period would have been one year or less.</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%">Deferred Revenue</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;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 deferred revenue balance as of June 30, 2021 and December 31, 2020 was $6.3 million and $9.4 million, respectively. Substantially all of the December 31, 2020 deferred revenue balance was recognized in revenue during the six months ended June 30, 2021.</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%">Transaction Price Allocated to Remaining Performance Obligations</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%"> </span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Due to the ability of the client or the Company to cancel or terminate the contract within a given period of time (generally 10 to 30 days’ notice is required), the majority of the Company’s contracts have a term of less than one year. The Company does not disclose the value of unsatisfied performance obligations for contracts with an original maturity date of one year or less or time and materials contracts for which the Company has the right to invoice for services performed. Revenue related to unsatisfied performance obligations for remaining contracts as of June 30, 2021 was immaterial.</span></div><div style="text-align:justify"><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-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Disaggregation of Revenue</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following tables present revenue disaggregated by revenue source and pattern of revenue recognition (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:29.398%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.750%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.750%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.897%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.119%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.750%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.750%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.754%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="33" style="border-bottom:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="15" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Over Time</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Point In Time</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align: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 Revenues</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Over Time</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Point In Time</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align: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 Revenues</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%">Time and materials contracts</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">139,274 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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 style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">139,274 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">102,294 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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 style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">102,294 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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 fee percent complete contracts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">12,100 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">12,100 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">14,015 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">14,015 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 fee contracts</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">26,571 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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 style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">26,571 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">24,260 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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 style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">24,260 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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%">Reimbursable expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">2,562 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">2,562 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">1,530 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">1,530 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 professional services fees</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">180,507 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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 style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">180,507 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">142,099 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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 style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">142,099 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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 services revenue*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">2,880 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">388 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">3,268 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">3,316 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">421 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">3,737 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 services</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">183,387 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">388 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">183,775 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">145,415 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">421 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">145,836 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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%">Software and hardware</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">361 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">361 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">503 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">503 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">183,387 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">749 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">184,136 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">145,415 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">924 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">146,339 </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:top"/></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">*Other services revenue primarily consists of hosting fees, maintenance, training, internally developed SaaS revenue and partner referral fees.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><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 style="width:29.309%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.864%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.864%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.864%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.115%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.718%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.718%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.728%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="33" style="border-bottom:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Six Months Ended June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="15" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Over Time</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Point In Time</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align: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 Revenues</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Over Time</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Point In Time</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align: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 Revenues</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%">Time and materials contracts</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">267,865 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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 style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">267,865 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">202,285 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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 style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">202,285 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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 fee percent complete contracts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">23,680 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">23,680 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">25,636 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">25,636 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 fee contracts</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">49,048 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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 style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">49,048 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">49,288 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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 style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">49,288 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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%">Reimbursable expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">4,816 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">4,816 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">5,924 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">5,924 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 professional services fees</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">345,409 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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 style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">345,409 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">283,133 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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 style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">283,133 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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 services revenue*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">5,997 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">1,099 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">7,096 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">6,946 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">1,159 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">8,105 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 services</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">351,406 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">1,099 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">352,505 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">290,079 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">1,159 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">291,238 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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%">Software and hardware</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">972 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">972 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">663 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">663 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">351,406 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,071 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">353,477 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">290,079 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">291,901 </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:top"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">* Other services revenue primarily consists of hosting fees, maintenance, training, internally developed SaaS revenue and partner referral fees.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents revenue disaggregated by geographic area, as determined by the billing address of customers (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:29.353%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.591%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.591%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.117%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.591%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.593%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</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:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">180,350 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">143,492 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">346,158 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">286,062 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 countries</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,786 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,847 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,319 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,839 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">184,136 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">146,339 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">353,477 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">291,901 </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"/></tr></table></div> <div style="text-align:justify;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 revenues consist of services and software and hardware sales. In accordance with Accounting Standards Codification (“ASC”) Topic 606</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">, Revenue from Contracts with Customers, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">revenues are recognized when control of services or goods are transferred to clients, in an amount that reflects the consideration the Company expects to be entitled to in exchange for those services or goods.</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%">Services Revenues</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Services revenues are primarily comprised of professional services that include developing, implementing, automating and extending business processes, technology infrastructure, and software applications. The Company’s professional services span multiple industries, platforms and solutions; however, the Company has remained relatively diversified and does not believe that it has significant revenue concentration within any single industry, platform or solution.</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Professional services revenues are recognized over time as services are rendered. Most projects are performed on a time and materials basis, while a portion of revenues is derived from projects performed on a fixed fee or fixed fee percent complete basis. For time and material contracts, revenues are generally recognized and invoiced by multiplying the number of hours expended in the performance of the contract by the hourly rates. For fixed fee contracts, revenues are generally recognized and invoiced by multiplying the fixed rate per time period established in the contract by the number of time periods elapsed. For fixed fee percent complete contracts, revenues are generally recognized using an input method based on the ratio of hours expended to total estimated hours, and the client is invoiced according to the agreed-upon schedule detailing the amount and timing of payments in the contract.</span></div><div style="text-align:justify;text-indent:36pt"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Clients are typically billed monthly for services provided during that month but can be billed on a more or less frequent basis as determined by the contract. If the time is worked and approved at the end of a fiscal period and the invoice has not yet been sent to the client, the amount is recorded as revenue once the Company verifies all other revenue recognition criteria have been met, and the amount is classified as a receivable as the right to consideration is unconditional at that point. Amounts invoiced in excess of revenues recognized are contract liabilities, which are classified as deferred revenues in the Unaudited Condensed Consolidated Balance Sheet. The term between invoicing and payment due date is not significant. Contracts for professional services provide for a general right, to the client or the Company, to cancel or terminate the contract within a given period of time (generally 10 to 30 days’ notice is required). The client is responsible for any time and expenses incurred up to the date of cancellation or termination of the contract. Certain contracts may include volume discounts or holdbacks, which are accounted for as variable consideration, but are not typically significant. The Company estimates variable consideration based on historical experience and forecasted sales and includes the variable consideration in the transaction price.</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other services revenues are comprised of hosting fees, partner referral fees, maintenance agreements, training and internally developed software-as-a-service (“SaaS”) sales. Revenues from hosting fees, maintenance agreements, training and internally developed SaaS sales are generally recognized over time using a time-based measure of progress as services are rendered. Partner referral fees are recorded at a point in time upon meeting specified requirements to earn the respective fee.</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On many professional service projects, the Company is also reimbursed for out-of-pocket expenses including travel and other project-related expenses. These reimbursements are included as a component of the transaction price of the respective professional services contract and are invoiced as the expenses are incurred. The Company structures its professional services arrangements to recover the cost of reimbursable expenses without a markup.</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%">Software and Hardware Revenues</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Software and hardware revenues are comprised of third-party software and hardware resales, in which the Company is considered the agent, and sales of internally developed software, in which the Company is considered the principal. Third-party software and hardware revenues are recognized and invoiced when the Company fulfills its obligation to arrange the sale, which occurs when the purchase order with the vendor is executed and the customer has access to the software or the hardware has been shipped to the customer. Internally developed software revenues are recognized and invoiced when control is transferred to the customer, which occurs when the software has been made available to the customer and the license term has commenced. Revenues from third-party software and hardware sales are recorded on a net basis, while revenues from internally developed </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">software sales are recorded on a gross basis. There are no significant cancellation or termination-type provisions for the Company’s software and hardware sales, and the term between invoicing and payment due date is not significant.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">    Revenues are presented net of taxes assessed by governmental authorities. Sales taxes are generally collected and subsequently remitted on all software and hardware sales and certain services transactions as appropriate.</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%">Arrangements with Multiple Performance Obligations</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Arrangements with clients may contain multiple promises such as delivery of software, hardware, professional services or post-contract support services. These promises are accounted for as separate performance obligations if they are distinct. For arrangements with clients that contain multiple performance obligations, the transaction price is allocated to the separate performance obligations based on estimated relative standalone selling price, which is estimated by the expected cost plus a margin approach, taking into consideration market conditions and competitive factors. Because contracts that contain multiple performance obligations are typically short term due to the contract cancellation provisions, the allocation of the transaction price to the separate performance obligations is not considered a significant estimate.</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%">Contract Costs</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In accordance with the terms of the Company’s sales commission plan, commissions are not earned until the related revenue is recognized. Therefore, sales commissions are expensed as they are earned. Certain sales incentives are accrued based on achievement of specified bookings goals. For these incentives, the Company applies the practical expedient that allows the Company to expense the incentives as incurred because the amortization period would have been one year or less.</span></div> P10D P30D 6300000 9400000 P10D P30D <div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following tables present revenue disaggregated by revenue source and pattern of revenue recognition (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:29.398%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.750%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.750%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.897%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.119%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.750%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.750%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.754%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="33" style="border-bottom:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="15" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Over Time</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Point In Time</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align: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 Revenues</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Over Time</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Point In Time</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align: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 Revenues</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%">Time and materials contracts</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">139,274 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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 style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">139,274 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">102,294 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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 style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">102,294 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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 fee percent complete contracts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">12,100 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">12,100 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">14,015 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">14,015 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 fee contracts</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">26,571 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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 style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">26,571 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">24,260 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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 style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">24,260 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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%">Reimbursable expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">2,562 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">2,562 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">1,530 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">1,530 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 professional services fees</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">180,507 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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 style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">180,507 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">142,099 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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 style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">142,099 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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 services revenue*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">2,880 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">388 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">3,268 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">3,316 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">421 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">3,737 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 services</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">183,387 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">388 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">183,775 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">145,415 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">421 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">145,836 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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%">Software and hardware</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">361 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">361 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">503 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">503 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">183,387 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">749 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">184,136 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">145,415 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">924 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">146,339 </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:top"/></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">*Other services revenue primarily consists of hosting fees, maintenance, training, internally developed SaaS revenue and partner referral fees.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><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 style="width:29.309%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.864%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.864%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.864%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.115%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.718%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.718%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.728%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="33" style="border-bottom:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Six Months Ended June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="15" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Over Time</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Point In Time</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align: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 Revenues</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Over Time</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Point In Time</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align: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 Revenues</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%">Time and materials contracts</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">267,865 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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 style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">267,865 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">202,285 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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 style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">202,285 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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 fee percent complete contracts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">23,680 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">23,680 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">25,636 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">25,636 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 fee contracts</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">49,048 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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 style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">49,048 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">49,288 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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 style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">49,288 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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%">Reimbursable expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">4,816 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">4,816 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">5,924 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">5,924 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 professional services fees</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">345,409 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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 style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">345,409 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">283,133 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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 style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">283,133 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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 services revenue*</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">5,997 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">1,099 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">7,096 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">6,946 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">1,159 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">8,105 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 services</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">351,406 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">1,099 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">352,505 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">290,079 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">1,159 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 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%">291,238 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></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%">Software and hardware</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">972 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">972 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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 style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">663 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">663 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">351,406 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,071 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">353,477 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">290,079 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,822 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">291,901 </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:top"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">* Other services revenue primarily consists of hosting fees, maintenance, training, internally developed SaaS revenue and partner referral fees.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents revenue disaggregated by geographic area, as determined by the billing address of customers (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:29.353%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.591%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.591%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.117%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.591%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.593%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</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:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">180,350 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">143,492 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">346,158 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">286,062 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 countries</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,786 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,847 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,319 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,839 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total revenues</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">184,136 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">146,339 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">353,477 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">291,901 </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"/></tr></table></div> 139274000 0 139274000 102294000 0 102294000 12100000 0 12100000 14015000 0 14015000 26571000 0 26571000 24260000 0 24260000 2562000 0 2562000 1530000 0 1530000 180507000 0 180507000 142099000 0 142099000 2880000 388000 3268000 3316000 421000 3737000 183387000 388000 183775000 145415000 421000 145836000 0 361000 361000 0 503000 503000 183387000 749000 184136000 145415000 924000 146339000 267865000 0 267865000 202285000 0 202285000 23680000 0 23680000 25636000 0 25636000 49048000 0 49048000 49288000 0 49288000 4816000 0 4816000 5924000 0 5924000 345409000 0 345409000 283133000 0 283133000 5997000 1099000 7096000 6946000 1159000 8105000 351406000 1099000 352505000 290079000 1159000 291238000 0 972000 972000 0 663000 663000 351406000 2071000 353477000 290079000 1822000 291901000 180350000 143492000 346158000 286062000 3786000 2847000 7319000 5839000 184136000 146339000 353477000 291901000 Stock-Based Compensation<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Stock-based compensation is accounted for in accordance with ASC Topic 718, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Compensation – Stock Compensation</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. Under this guidance, the Company recognizes share-based compensation ratably using the straight-line attribution method over the requisite service period, which is generally three years. The fair value of restricted stock awards is based on the value of the Company’s common stock on the date of the grant.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Stock Award Plans</span></div><div style="text-align:justify"><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-align:justify;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 Amended and Restated 2012 Long Term Incentive Plan (as amended, the “Incentive Plan”) allows for the granting of various types of stock awards, not to exceed a total of 7.0 million shares, to eligible individuals. The Compensation Committee of the Board of Directors administers the Incentive Plan and determines the terms of all stock awards made under the Incentive Plan. As of June 30, 2021, there were 1.3 million shares of common stock available for issuance under the Incentive Plan.</span></div><div style="text-align:justify;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-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock-based compensation cost recognized for the three and six months ended June 30, 2021 was $5.5 million and $10.8 million, respectively, which included $1.1 million and $2.0 million, respectively, of expense for retirement savings plan contributions. The associated current and future income tax benefit recognized was $1.6 million and $3.2 million for the three and six months ended June 30, 2021, respectively. Stock-based compensation cost recognized for the three and six months ended June 30, 2020 was $5.1 million and $9.7 million, respectively, which included $0.9 million and $1.7 million, respectively, of expense for retirement savings plan contributions. The associated current and future income tax benefit recognized was $1.5 million and $2.9 million for the three and six months ended June 30, 2020, respectively. As of June 30, 2021, there was $27.0 million of total unrecognized compensation cost related to non-vested share-based awards with a weighted-average remaining life of two years.    </span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Restricted stock activity for the six months ended June 30, 2021 was as follows (shares in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:53.752%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.517%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.711%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.520%"/><td style="width:0.1%"/></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%"> </span></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%">Shares</span></td><td colspan="3" style="padding:0 1pt"/><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 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:400;line-height:100%">Restricted stock awards outstanding at December 31, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:2pt 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%">905 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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.34 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Awards granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">192 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55.70 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Awards vested</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(238)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.90 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Awards forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(44)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.90 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restricted stock awards outstanding at June 30, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">815 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">41.68 </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"/></tr></table></div> Stock-based compensation is accounted for in accordance with ASC Topic 718, <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Compensation – Stock Compensation</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. Under this guidance, the Company recognizes share-based compensation ratably using the straight-line attribution method over the requisite service period, which is generally three years. The fair value of restricted stock awards is based on the value of the Company’s common stock on the date of the grant.</span> P3Y 7000000.0 1300000 5500000 10800000 1100000 2000000.0 1600000 3200000 5100000 9700000 900000 1700000 1500000 2900000 27000000.0 P2Y <div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Restricted stock activity for the six months ended June 30, 2021 was as follows (shares in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"/><td style="width:53.752%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.517%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.711%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.520%"/><td style="width:0.1%"/></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%"> </span></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%">Shares</span></td><td colspan="3" style="padding:0 1pt"/><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 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:400;line-height:100%">Restricted stock awards outstanding at December 31, 2020</span></td><td colspan="2" style="background-color:#cceeff;border-top:2pt 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%">905 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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.34 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Awards granted</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">192 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55.70 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Awards vested</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(238)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.90 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Awards forfeited</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(44)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.90 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restricted stock awards outstanding at June 30, 2021</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">815 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">41.68 </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"/></tr></table></div> 905000 35.34 192000 55.70 238000 29.90 44000 35.90 815000 41.68 Net Income per Share<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the calculation of basic and diluted net income per share (in thousands, except per share information):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"/><td style="width:46.917%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.822%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.822%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.974%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.647%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.650%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</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%">Net income</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,573 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,609 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,166 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,583 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Basic:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></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%">Weighted-average shares of common stock 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%">31,922 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,888 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,893 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,763 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Shares used in computing basic net income per share</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,922 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,888 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,893 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,763 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 securities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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%">Restricted stock subject to vesting</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%">460 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">265 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">461 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">401 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Shares issuable for acquisition consideration (1)</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">188 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">203 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Shares issuable for conversion of convertible senior 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%">1,251 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">893 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">77 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Shares issuable for exercise of warrants</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%">46 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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"/></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%">Shares used in computing diluted net income per share</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,867 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,377 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,500 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,444 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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%">Basic net income per share</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.52 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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.21 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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.95 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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.49 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 net income per share</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.49 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">0.20 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">0.90 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">0.48 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div style="padding-left:36pt;text-align:justify;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:24.34pt">For the three and six months ended June 30, 2021, this represents the shares held in escrow pursuant to: (i) the Asset Purchase Agreement with Zeon Solutions Incorporated and certain related entities (collectively, “Zeon”); (ii) the Asset Purchase Agreement with MedTouch LLC (“MedTouch”); (iii) the Asset Purchase Agreement with Catalyst Networks, Inc. (“Brainjocks”); and (iv) the Stock Purchase Agreement with the shareholders of Productora de Software S.A.S. (“PSL”), as part of the consideration. For the three and six months ended June 30, 2020, this represents the shares held in escrow pursuant to: (i) the Asset Purchase Agreement with RAS &amp; Associates, LLC (“RAS”); (ii) the Asset Purchase Agreement with Zeon; (iii) the Asset Purchase Agreement with Stone Temple Consulting Corporation (“Stone Temple”); (iv) the Asset Purchase Agreement with Sundog Interactive, Inc. (“Sundog”); (v) the Asset Purchase Agreement with MedTouch; (vi) the Asset Purchase Agreement with Brainjocks; and (vii) the Stock Purchase Agreement with the shareholders of PSL, as part of the consideration. </span></div><div style="text-align:justify;text-indent:-18pt"><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%">    The number of anti-dilutive securities not included in the calculation of diluted net income per share were as follows (in thousands):</span></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:46.122%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.180%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.185%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</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%">Restricted stock subject to vesting</span></td><td colspan="2" style="background-color:#cceeff;border-top:2pt 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%">— </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:2pt 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%">174 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:2pt 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%">— </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:2pt 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%">121 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Convertible senior 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%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,823 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Warrants related to the issuance of convertible senior notes</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,451 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,823 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,451 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,823 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 anti-dilutive securities</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,451 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,820 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,451 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,944 </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"/></tr></table></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Note 11, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Long-term Debt </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 the convertible senior notes and warrants related to the issuance of convertible notes.</span></div><div style="text-align:justify;text-indent:36pt"><span><br/></span></div><div style="text-align:justify;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 Board of Directors authorized the repurchase of up to $315.0 million of Company common stock through a stock repurchase program expiring December 31, 2022. The program could be suspended or discontinued at any time, based on market, economic, or business conditions. The timing and amount of repurchase transactions will be determined by management based on its evaluation of market conditions, share price, and other factors. Since the program’s inception on August 11, 2008, the Company has repurchased approximately $251.4 million (16.0 million shares) of outstanding common stock through June 30, 2021.</span></div> <div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the calculation of basic and diluted net income per share (in thousands, except per share information):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"/><td style="width:46.917%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.822%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.822%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.974%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.647%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.650%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</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%">Net income</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,573 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,609 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,166 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,583 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Basic:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></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%">Weighted-average shares of common stock 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%">31,922 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,888 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,893 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,763 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Shares used in computing basic net income per share</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,922 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,888 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,893 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,763 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 securities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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%">Restricted stock subject to vesting</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%">460 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">265 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">461 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">401 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Shares issuable for acquisition consideration (1)</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">188 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">203 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Shares issuable for conversion of convertible senior 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%">1,251 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">893 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">77 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Shares issuable for exercise of warrants</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%">46 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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"/></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%">Shares used in computing diluted net income per share</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,867 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,377 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,500 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,444 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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%">Basic net income per share</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.52 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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.21 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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.95 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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.49 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 net income per share</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.49 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">0.20 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">0.90 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">0.48 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div>(1)For the three and six months ended June 30, 2021, this represents the shares held in escrow pursuant to: (i) the Asset Purchase Agreement with Zeon Solutions Incorporated and certain related entities (collectively, “Zeon”); (ii) the Asset Purchase Agreement with MedTouch LLC (“MedTouch”); (iii) the Asset Purchase Agreement with Catalyst Networks, Inc. (“Brainjocks”); and (iv) the Stock Purchase Agreement with the shareholders of Productora de Software S.A.S. (“PSL”), as part of the consideration. For the three and six months ended June 30, 2020, this represents the shares held in escrow pursuant to: (i) the Asset Purchase Agreement with RAS &amp; Associates, LLC (“RAS”); (ii) the Asset Purchase Agreement with Zeon; (iii) the Asset Purchase Agreement with Stone Temple Consulting Corporation (“Stone Temple”); (iv) the Asset Purchase Agreement with Sundog Interactive, Inc. (“Sundog”); (v) the Asset Purchase Agreement with MedTouch; (vi) the Asset Purchase Agreement with Brainjocks; and (vii) the Stock Purchase Agreement with the shareholders of PSL, as part of the consideration. 16573000 6609000 30166000 15583000 31922000 31888000 31893000 31763000 31922000 31888000 31893000 31763000 460000 265000 461000 401000 188000 224000 217000 203000 1251000 893000 77000 46000 0 36000 0 33867000 32377000 33500000 32444000 0.52 0.21 0.95 0.49 0.49 0.20 0.90 0.48 The number of anti-dilutive securities not included in the calculation of diluted net income per share were as follows (in thousands):<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 style="width:46.122%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.619%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.180%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.185%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</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%">Restricted stock subject to vesting</span></td><td colspan="2" style="background-color:#cceeff;border-top:2pt 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%">— </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:2pt 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%">174 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:2pt 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%">— </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:2pt 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%">121 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Convertible senior 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%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,823 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Warrants related to the issuance of convertible senior notes</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,451 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,823 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,451 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,823 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 anti-dilutive securities</span></td><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,451 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,820 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,451 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,944 </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"/></tr></table> 0 174000 0 121000 0 3823000 0 0 4451000 3823000 4451000 3823000 4451000 7820000 4451000 3944000 315000000.0 251400000 16000000.0 Balance Sheet Components<div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:61.803%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.083%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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%">June 30, 2021 (unaudited)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:2pt solid #000000;padding:2px 1pt;text-align: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, 2020</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%">Accounts receivable:</span></td><td colspan="9" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(in thousands)</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 accounts receivable, net</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%">87,920 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">85,998 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Unbilled revenues, 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%">61,798 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,087 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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%">149,718 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">133,085 </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"/></tr></table></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:61.803%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.083%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Property and equipment:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><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%"> </span></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%">Computer hardware (useful life of 3 years)</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%">17,344 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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,640 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Software (useful life of 1 to 7 years)</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%">6,012 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,342 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Furniture and fixtures (useful life of 5 years)</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%">4,490 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,597 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Leasehold improvements (useful life of 5 years)</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%">7,041 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,607 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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:#cceeff;padding:2px 0 2px 1pt;text-align: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,763)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,284)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,124 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,902 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:61.803%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.083%"/><td style="width:0.1%"/></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%">Other current liabilities:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><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%"> </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%">Estimated fair value of contingent consideration liability (1)</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%">24,836 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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,943 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 operating lease 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%">10,148 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,321 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 variable compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,322 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,527 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Deferred revenues</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,287 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,422 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 current 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%">6,032 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,652 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Deferred employer FICA payments</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%">11,038 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,523 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 related costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,759 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,738 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Professional fees</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%">885 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">736 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 medical claims expense</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,376 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,405 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">87,683 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">103,267 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:61.803%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.083%"/><td style="width:0.1%"/></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%">Other non-current liabilities:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><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%"> </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%">Deferred income taxes</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%">17,481 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,911 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Reserve for uncertain tax positions</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%">10,687 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,009 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 compensation liability</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,709 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,456 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current software accrual</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,491 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,748 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 employer FICA payments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,523 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 non-current 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%">3,446 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,434 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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%">45,814 </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 colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><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%">50,081 </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"/></tr></table></div><div><span><br/></span></div><div style="padding-left:36pt;text-align:justify;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:24.34pt">As of June 30, 2021 and December 31, 2020, represents the fair value estimate of revenue and earnings-based contingent consideration that may be realized by MedTouch, Brainjocks and the shareholders of PSL 12 months after the respective acquisitions.</span></div> <table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:61.803%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.083%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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%">June 30, 2021 (unaudited)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:2pt solid #000000;padding:2px 1pt;text-align: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, 2020</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%">Accounts receivable:</span></td><td colspan="9" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(in thousands)</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 accounts receivable, net</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%">87,920 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">85,998 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Unbilled revenues, 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%">61,798 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,087 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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%">149,718 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">133,085 </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"/></tr></table> 87920000 85998000 61798000 47087000 149718000 133085000 <table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:61.803%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.083%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:justify;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Property and equipment:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><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%"> </span></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%">Computer hardware (useful life of 3 years)</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%">17,344 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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,640 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Software (useful life of 1 to 7 years)</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%">6,012 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,342 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Furniture and fixtures (useful life of 5 years)</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%">4,490 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,597 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Leasehold improvements (useful life of 5 years)</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%">7,041 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,607 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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:#cceeff;padding:2px 0 2px 1pt;text-align: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,763)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,284)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,124 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,902 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table> P3Y 17344000 15640000 P1Y P7Y 6012000 5342000 P5Y 4490000 4597000 P5Y 7041000 6607000 22763000 20284000 12124000 11902000 <table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:61.803%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.083%"/><td style="width:0.1%"/></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%">Other current liabilities:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><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%"> </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%">Estimated fair value of contingent consideration liability (1)</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%">24,836 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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,943 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 operating lease 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%">10,148 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,321 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 variable compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,322 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,527 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Deferred revenues</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,287 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,422 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 current 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%">6,032 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,652 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Deferred employer FICA payments</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%">11,038 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,523 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 related costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,759 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,738 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Professional fees</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%">885 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">736 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 medical claims expense</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,376 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,405 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">87,683 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">103,267 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table> 24836000 33943000 10148000 10321000 19322000 27527000 6287000 9422000 6032000 7652000 11038000 5523000 6759000 5738000 885000 736000 2376000 2405000 87683000 103267000 <div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:61.803%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.081%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.083%"/><td style="width:0.1%"/></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%">Other non-current liabilities:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><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%"> </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%">Deferred income taxes</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%">17,481 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,911 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Reserve for uncertain tax positions</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%">10,687 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,009 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 compensation liability</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,709 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,456 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current software accrual</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,491 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,748 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 employer FICA payments</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,523 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 non-current 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%">3,446 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,434 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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%">45,814 </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 colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><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%">50,081 </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"/></tr></table></div><div><span><br/></span></div><div style="padding-left:36pt;text-align:justify;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:24.34pt">As of June 30, 2021 and December 31, 2020, represents the fair value estimate of revenue and earnings-based contingent consideration that may be realized by MedTouch, Brainjocks and the shareholders of PSL 12 months after the respective acquisitions.</span></div> 17481000 20911000 10687000 8009000 8709000 7456000 5491000 5748000 0 5523000 3446000 2434000 45814000 50081000 Allowance for Credit Losses<div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In accordance with ASU No. 2016-13, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">, the Company evaluates its allowance based on expected losses rather than incurred losses, which is known as the current expected credit loss model. The allowance is determined using the loss rate approach and is measured on a collective (pool) basis when similar risk characteristics exist. Where financial instruments do not share risk characteristics, they are evaluated on an individual basis. The allowance is based on relevant available information, from internal and external sources, relating to past events, current conditions, and reasonable and supportable forecasts. </span></div><div style="text-align:justify;text-indent:36pt"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">A higher allowance for credit losses on customers within certain industries was recorded during the six months ended June 30, 2020 due to the potential adverse impact the COVID-19 pandemic may have had on the estimate of future credit losses. As of June 30, 2021, the Company reassessed its allowance and determined that a higher loss rate was no longer necessary based on the Company's loss experience over the past year, the Company's risk assessment of customers, and its expectations for continued successful collection of its accounts receivable balances.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Activity in the allowance for credit losses is summarized as follows (in thousands):</span></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:67.028%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.250%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.253%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,065 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">464 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Impact of ASU No. 2016-13 adoption</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">423 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Opening balance at January 1</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,065 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">887 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Charges to expense, net of recoveries</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%">672 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">956 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Uncollected balances written off</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%">(60)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at June 30</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%">1,677 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">1,715 </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"/></tr></table></div> <div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In accordance with ASU No. 2016-13, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">, the Company evaluates its allowance based on expected losses rather than incurred losses, which is known as the current expected credit loss model. The allowance is determined using the loss rate approach and is measured on a collective (pool) basis when similar risk characteristics exist. Where financial instruments do not share risk characteristics, they are evaluated on an individual basis. The allowance is based on relevant available information, from internal and external sources, relating to past events, current conditions, and reasonable and supportable forecasts. </span></div><div style="text-align:justify;text-indent:36pt"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">A higher allowance for credit losses on customers within certain industries was recorded during the six months ended June 30, 2020 due to the potential adverse impact the COVID-19 pandemic may have had on the estimate of future credit losses. As of June 30, 2021, the Company reassessed its allowance and determined that a higher loss rate was no longer necessary based on the Company's loss experience over the past year, the Company's risk assessment of customers, and its expectations for continued successful collection of its accounts receivable balances.</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:115%">Activity in the allowance for credit losses is summarized as follows (in thousands):</span></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:67.028%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.250%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.253%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,065 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">464 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Impact of ASU No. 2016-13 adoption</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">423 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Opening balance at January 1</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,065 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">887 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Charges to expense, net of recoveries</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%">672 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">956 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Uncollected balances written off</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%">(60)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at June 30</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%">1,677 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">1,715 </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"/></tr></table></div> 1065000 464000 0 423000 1065000 887000 672000 956000 60000 128000 1677000 1715000 Business Combinations<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">2020 Acquisitions</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On January 6, 2020, the Company acquired substantially all of the assets of MedTouch, pursuant to the terms of an Asset Purchase Agreement. The acquisition of MedTouch expands the Company’s digital healthcare marketing services. The Company’s total allocable purchase price consideration was $20.0 million. The Company incurred approximately $0.6 million in transaction costs, which were expensed when incurred. The amount of goodwill deductible for tax purposes is $20.4 million.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On March 23, 2020, the Company acquired substantially all of the assets of Brainjocks, pursuant to the terms of an Asset Purchase Agreement. The acquisition of Brainjocks expands the Company’s strategic marketing and technical delivery services. On May 4, 2020, pursuant to a separate Asset Purchase Agreement, a wholly-owned subsidiary of the Company completed the acquisition of substantially all of the assets of Brainjocks Europe d.o.o. Novi Sad, an affiliate of Brainjocks operating in Serbia. With the completion of this acquisition, the Company has facilities located in Novi Sad, Serbia. The Company's total allocable purchase price consideration was $21.2 million. The Company incurred approximately $1.1 million in transaction costs, which were expensed when incurred. The amount of goodwill deductible for tax purposes, excluding contingent consideration, is $8.7 million.</span></div><div style="text-align:justify;text-indent:36pt"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On June 17, 2020, a wholly-owned subsidiary of the Company acquired PSL pursuant to the terms of a Stock Purchase Agreement. PSL is based in Medellin, Colombia, with additional locations in Bogota and Cali, Colombia. The acquisition of PSL strengthens the Company’s global delivery capabilities, enhancing its nearshore systems and custom software application development, testing, and ongoing support for customers. PSL added more than 600 professionals and strategic client relationships with customers across several industries. The Company's total allocable purchase price consideration was $83.1 million, net of cash acquired. The Company incurred approximately $2.1 million in transaction costs, which were expensed when incurred. The goodwill is non-deductible for tax purposes.</span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The acquisition date fair value of the consideration transferred for the 2020 acquisitions consisted of the following (in millions):</span></div><div style="text-align:justify"><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 style="width:39.689%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.958%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.139%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.543%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.139%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.689%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.143%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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%">MedTouch</span></td><td colspan="3" style="padding:0 1pt"/><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%">Brainjocks</span></td><td colspan="3" style="padding:0 1pt"/><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%">PSL</span></td><td colspan="3" style="padding:0 1pt"/></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%">Cash</span></td><td style="border-top:2pt 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="border-top:2pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13.9 </span></td><td style="border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:2pt 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="border-top:2pt 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%">15.8 </span></td><td style="border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:2pt 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="border-top:2pt 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%">60.8 </span></td><td style="border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Company common stock issued at closing</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.9 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.4 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.5 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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 consideration (1)</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.2 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><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%">(2)</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.3 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><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%">(3)</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%">17.7 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><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%">(4)</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%">Net working capital adjustment due to the seller(s)</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.7 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.1 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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 allocable purchase price consideration</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%">20.0 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">21.2 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">83.1 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr></table></div><div style="text-align:justify;text-indent:36pt"><span><br/></span></div><div style="padding-left:36pt;text-align:justify;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:24.34pt">Represents the initial fair value estimate of additional revenue and earnings-based contingent consideration, which may be realized by the seller(s) 12 months after the closing date of the acquisition.</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(2)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:24.34pt">MedTouch achieved a portion of the potential maximum cash payout pursuant to the Asset Purchase Agreement, and as a result, the Company paid $9.2 million in contingent consideration in the second quarter of 2021. The maximum cash payout that may have been realized by MedTouch was $10.2 million. The Company recorded a pre-tax adjustment in “Adjustment to fair value of contingent consideration” on the Unaudited Condensed Consolidated Statements of Operations of $0.2 million and $0.3 million during the three and six months ended June 30, 2021, respectively.</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(3)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:24.34pt">The maximum cash payout that may be realized by Brainjocks is $4.8 million. As of June 30, 2021, the fair value of the contingent consideration was $3.9 million. The Company recorded a pre-tax adjustment in “Adjustment to fair value of contingent consideration” on the Consolidated Statements of Operations of $0.1 million and $0.3 million during the three and six months ended June 30, 2021.</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(4)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:24.34pt">The maximum cash payout that may be realized by PSL is $22.2 million. As of June 30, 2021, the Company’s best estimate of the fair value of the contingent consideration was $20.9 million. The Company recorded a pre-tax adjustment to reduce the liability in “Adjustment to fair value of contingent consideration” on the Consolidated Statements of Operations of $0.7 million and $0.6 million during the three and six months ended June 30, 2021, respectively.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has allocated the total purchase price consideration between tangible assets, identified intangible assets, liabilities, and goodwill as follows (in millions):</span></div><div><span><br/></span></div><div style="text-align:justify"><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 style="width:53.090%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.784%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.378%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.784%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.378%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.786%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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%">MedTouch</span></td><td colspan="3" style="padding:0 1pt"/><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%">Brainjocks</span></td><td colspan="3" style="padding:0 1pt"/><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%">PSL</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Acquired tangible assets</span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 0;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%">4.7 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 0;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%">7.0 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 0;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%">11.6 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;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%">Identified intangible 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%">6.7 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.4 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.6 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Liabilities assumed</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%">(6.0)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.9)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.7)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;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%">Goodwill</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%">14.6 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.7 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59.6 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 purchase price</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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20.0 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.2 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83.1 </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:top"/></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As the Company completed its evaluation of the acquired assets and assumed liabilities of PSL, the Company recorded certain adjustments during the measurement period based on facts and circumstances that existed as of acquisition date. The measurement period adjustments resulted in an increase to the total purchase price of $1.1 million, an increase to acquired tangible assets of $0.5 million, a decrease to identified intangible assets of $0.4 million, an increase to liabilities assumed of $1.7 million and an increase to goodwill of $2.7 million from the acquisition date through June 30, 2021. The measurement period for the PSL acquisition is now closed.</span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents details of the intangible assets acquired during the year ended December 31, 2020 (dollars in millions).</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><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 style="width:42.686%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.252%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.378%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.252%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.378%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.254%"/><td style="width:0.1%"/></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%"> </span></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 Useful Life</span></td><td colspan="3" style="padding:0 1pt"/><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%">Estimated Useful Life</span></td><td colspan="3" style="padding:0 1pt"/><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%">Aggregate Acquisitions</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6 years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 - 7 years</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">33.0 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;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%">Customer backlog</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 year</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 year</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">9.6 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Non-compete agreements</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">0.2 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;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%">Trade name</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 year</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 year</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">0.4 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Developed software</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4 years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 - 5 years</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">1.5 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;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%">Total acquired intangible assets</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;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="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:top"><span style="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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44.7 </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:top"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Pro-forma Results of Operations</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following presents the unaudited pro-forma combined results of operations of the Company with PSL for the six months ended June 30, 2020, after giving effect to certain pro-forma adjustments and assuming PSL was acquired as of the beginning of 2019. Pro-forma results of operations have not been presented for MedTouch or Brainjocks because the effect of these acquisitions on the Company's consolidated financial statements were not material individually or in the aggregate.</span></div><div style="text-align:justify;text-indent:36pt"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">These unaudited pro-forma results are presented in compliance with the adoption of ASU No. 2010-29, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Business Combinations (Topic 805): Disclosure of Supplementary Pro Forma Information for Business Combinations</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, and are not necessarily indicative of the actual consolidated results of operations had the acquisition of PSL actually occurred on January 1, 2019 or of future results of operations of the consolidated entities (in thousands except per share data):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><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 style="width:80.040%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.760%"/><td style="width:0.1%"/></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%"> </span></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 June 30,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</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%">Revenues</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">308,529 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income</span></td><td style="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%">19,400 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 net income per share</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.61 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 net income per share</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.60 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Shares used in computing basic net income per share</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%">31,896 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Shares used in computing diluted net income per share</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%">32,602 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 2020-01-06 20000000.0 600000 20400000 2020-03-23 21200000 1100000 8700000 2020-06-17 83100000 2100000 <div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The acquisition date fair value of the consideration transferred for the 2020 acquisitions consisted of the following (in millions):</span></div><div style="text-align:justify"><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 style="width:39.689%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.958%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.139%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.543%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.139%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.689%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.143%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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%">MedTouch</span></td><td colspan="3" style="padding:0 1pt"/><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%">Brainjocks</span></td><td colspan="3" style="padding:0 1pt"/><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%">PSL</span></td><td colspan="3" style="padding:0 1pt"/></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%">Cash</span></td><td style="border-top:2pt 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="border-top:2pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13.9 </span></td><td style="border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:2pt 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="border-top:2pt 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%">15.8 </span></td><td style="border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="border-top:2pt 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="border-top:2pt 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%">60.8 </span></td><td style="border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Company common stock issued at closing</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.9 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.4 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.5 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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 consideration (1)</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.2 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><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%">(2)</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.3 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><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%">(3)</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%">17.7 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><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%">(4)</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%">Net working capital adjustment due to the seller(s)</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.7 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.1 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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 allocable purchase price consideration</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%">20.0 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">21.2 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">83.1 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr></table></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has allocated the total purchase price consideration between tangible assets, identified intangible assets, liabilities, and goodwill as follows (in millions):</span></div><div><span><br/></span></div><div style="text-align:justify"><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 style="width:53.090%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.784%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.378%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.784%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.378%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.786%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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%">MedTouch</span></td><td colspan="3" style="padding:0 1pt"/><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%">Brainjocks</span></td><td colspan="3" style="padding:0 1pt"/><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%">PSL</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Acquired tangible assets</span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 0;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%">4.7 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 0;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%">7.0 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 0;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%">11.6 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;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%">Identified intangible 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%">6.7 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.4 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.6 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Liabilities assumed</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%">(6.0)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.9)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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.7)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;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%">Goodwill</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%">14.6 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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.7 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59.6 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 purchase price</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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20.0 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21.2 </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:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:top"><span style="color:#000000;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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83.1 </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:top"/></tr></table></div> 13900000 15800000 60800000 1900000 2400000 4500000 4200000 2300000 17700000 0 700000 100000 20000000.0 21200000 83100000 9200000 10200000 200000 300000 4800000 3900000 100000 300000 22200000 20900000 -700000 -600000 4700000 7000000.0 11600000 6700000 8400000 29600000 6000000.0 4900000 17700000 14600000 10700000 59600000 20000000.0 21200000 83100000 1100000 500000 -400000 1700000 2700000 <div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents details of the intangible assets acquired during the year ended December 31, 2020 (dollars in millions).</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><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 style="width:42.686%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.252%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.378%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.252%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.378%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.254%"/><td style="width:0.1%"/></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%"> </span></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 Useful Life</span></td><td colspan="3" style="padding:0 1pt"/><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%">Estimated Useful Life</span></td><td colspan="3" style="padding:0 1pt"/><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%">Aggregate Acquisitions</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6 years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 - 7 years</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;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%">33.0 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;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%">Customer backlog</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 year</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 year</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">9.6 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Non-compete agreements</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">0.2 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;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%">Trade name</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 year</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 year</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 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%">0.4 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Developed software</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4 years</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 - 5 years</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 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%">1.5 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;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%">Total acquired intangible assets</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;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="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:top"><span style="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:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44.7 </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:top"/></tr></table></div> P6Y P5Y P7Y 33000000.0 P1Y P1Y 9600000 P5Y P5Y 200000 P1Y P1Y 400000 P4Y P3Y P5Y 1500000 44700000 <div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">These unaudited pro-forma results are presented in compliance with the adoption of ASU No. 2010-29, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Business Combinations (Topic 805): Disclosure of Supplementary Pro Forma Information for Business Combinations</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, and are not necessarily indicative of the actual consolidated results of operations had the acquisition of PSL actually occurred on January 1, 2019 or of future results of operations of the consolidated entities (in thousands except per share data):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><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 style="width:80.040%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.760%"/><td style="width:0.1%"/></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%"> </span></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 June 30,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2020</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%">Revenues</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">308,529 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income</span></td><td style="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%">19,400 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 net income per share</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.61 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 net income per share</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.60 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Shares used in computing basic net income per share</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%">31,896 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Shares used in computing diluted net income per share</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%">32,602 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 308529000 19400000 0.61 0.60 31896000 32602000 Goodwill and Intangible Assets<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill represents the excess purchase price over the fair value of net assets acquired, or net liabilities assumed, in a business combination. In accordance with ASC Topic 350, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Intangibles – Goodwill and Other</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, the Company performs an annual impairment review in the fourth quarter and more frequently if events or changes in circumstances indicate that goodwill might be impaired. There was no indication that goodwill became impaired for the three and six months ended June 30, 2021.</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other intangible assets include customer relationships, non-compete arrangements, trade names, customer backlog, and developed software, which are being amortized over the assets’ estimated useful lives using the straight-line method. Estimated useful lives range from less than one year to ten years. Amortization of customer relationships, non-compete arrangements, trade names, customer backlog, and developed software is considered an operating expense and is included in “Amortization” in the accompanying Unaudited Condensed Consolidated Statements of Operations. The Company periodically reviews the estimated useful lives of its identifiable intangible assets, taking into consideration any events or circumstances that might result in a lack of recoverability or revised useful life. There was no indication that other intangible assets became impaired for the three and six months ended June 30, 2021.</span></div><div style="text-align:justify"><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><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-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The changes in the carrying amount of goodwill for the six months ended June 30, 2021 are as follows (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><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 style="width:80.040%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.760%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2020</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%">427,928 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Purchase price allocation 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%">(1,811)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 foreign currency translation adjustments</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%">(5,609)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Balance at June 30, 2021</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%">420,508 </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"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><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 with Definite Lives</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents a summary of the Company’s intangible assets that are subject to amortization (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:25.839%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.887%"/><td style="width:0.1%"/></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%"> </span></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%">June 30, 2021</span></td><td colspan="3" style="padding:0 1pt"/><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, 2020</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align: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/>Amounts</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align: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/>Carrying<br/>Amounts</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align: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/>Amounts</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align: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/>Carrying<br/>Amounts</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,306 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,035)</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,271 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,497 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,185)</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">53,312 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,424 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(937)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,479 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(831)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">648 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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:#cceeff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,353 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,941)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,412 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade name</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">449 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(281)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">168 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 software</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%">13,802 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(9,623)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,179 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,962 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,931)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,031 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">105,532 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">(56,595)</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">48,937 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">123,740 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">(60,169)</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63,571 </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"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The estimated useful lives of identifiable intangible assets are as follows:</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:78.548%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.252%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 - 10 years</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4 - 5 years</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer backlog</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 year</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade name</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 year</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Developed software</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 - 7 years</span></div></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Estimated annual amortization expense for the next five years ended December 31 and thereafter is as follows: (in thousands):</span></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:82.062%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.738%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021 remaining</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%">8,135 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2022</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,615 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,772 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2024</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,624 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td 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%">4,431 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td 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%">2,360 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> <div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Goodwill represents the excess purchase price over the fair value of net assets acquired, or net liabilities assumed, in a business combination. In accordance with ASC Topic 350, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Intangibles – Goodwill and Other</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, the Company performs an annual impairment review in the fourth quarter and more frequently if events or changes in circumstances indicate that goodwill might be impaired. There was no indication that goodwill became impaired for the three and six months ended June 30, 2021.</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other intangible assets include customer relationships, non-compete arrangements, trade names, customer backlog, and developed software, which are being amortized over the assets’ estimated useful lives using the straight-line method. Estimated useful lives range from less than one year to ten years. Amortization of customer relationships, non-compete arrangements, trade names, customer backlog, and developed software is considered an operating expense and is included in “Amortization” in the accompanying Unaudited Condensed Consolidated Statements of Operations. The Company periodically reviews the estimated useful lives of its identifiable intangible assets, taking into consideration any events or circumstances that might result in a lack of recoverability or revised useful life. There was no indication that other intangible assets became impaired for the three and six months ended June 30, 2021.</span></div> <div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The changes in the carrying amount of goodwill for the six months ended June 30, 2021 are as follows (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><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 style="width:80.040%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.760%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at December 31, 2020</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%">427,928 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Purchase price allocation 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%">(1,811)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 foreign currency translation adjustments</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%">(5,609)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Balance at June 30, 2021</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%">420,508 </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"/></tr></table></div> 427928000 -1811000 -5609000 420508000 <div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents a summary of the Company’s intangible assets that are subject to amortization (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:25.839%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.880%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.637%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.887%"/><td style="width:0.1%"/></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%"> </span></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%">June 30, 2021</span></td><td colspan="3" style="padding:0 1pt"/><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, 2020</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align: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/>Amounts</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align: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/>Carrying<br/>Amounts</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align: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/>Amounts</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align: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/>Carrying<br/>Amounts</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,306 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,035)</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,271 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,497 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,185)</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">53,312 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,424 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(937)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,479 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(831)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">648 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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:#cceeff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,353 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,941)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,412 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade name</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">449 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(281)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">168 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 software</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%">13,802 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(9,623)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,179 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,962 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,931)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,031 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">105,532 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">(56,595)</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">48,937 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">123,740 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">(60,169)</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63,571 </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"/></tr></table></div> 90306000 46035000 44271000 97497000 44185000 53312000 1424000 937000 487000 1479000 831000 648000 0 0 0 10353000 5941000 4412000 0 0 0 449000 281000 168000 13802000 9623000 4179000 13962000 8931000 5031000 105532000 56595000 48937000 123740000 60169000 63571000 <div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The estimated useful lives of identifiable intangible assets are as follows:</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:78.548%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.252%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 - 10 years</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4 - 5 years</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer backlog</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 year</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade name</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 year</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Developed software</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 - 7 years</span></div></td></tr></table></div> P5Y P10Y P4Y P5Y P1Y P1Y P1Y P7Y <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%">Estimated annual amortization expense for the next five years ended December 31 and thereafter is as follows: (in thousands):</span></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:82.062%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.738%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021 remaining</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%">8,135 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2022</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,615 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,772 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2024</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,624 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td 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%">4,431 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td 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%">2,360 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 8135000 15615000 10772000 7624000 4431000 2360000 Long-term Debt<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Revolving Credit Facility</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">On May 7, 2021, the Company entered into an Amended and Restated Credit Agreement (the "2021 Credit Agreement") with Wells Fargo Bank, National Association, as administrative agent and the other lenders parties thereto. The 2021 Credit Agreement provides for revolving credit borrowings up to a maximum principal amount of $200.0 million, subject to a commitment increase of $75.0 million. All outstanding amounts owed under the 2021 Credit Agreement become due and </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">payable no later than the final maturity date of May 7, 2026. As of June 30, 2021, there was no outstanding balance under the 2021 Credit Agreement. The Company incurred $0.6 million of deferred finance fees as a result of the 2021 Credit Agreement for the three and six months ended June 30, 2021.</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The 2021 Credit Agreement also allows for the issuance of letters of credit in the aggregate amount of up to $10.0 million at any one time; outstanding letters of credit reduce the credit available for revolving credit borrowings. As of June 30, 2021, the Company had two outstanding letters of credit for $0.2 million. Substantially all of the Company’s assets are pledged to secure the credit facility.</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Borrowings under the 2021 Credit Agreement bear interest at the Company’s option of the prime rate (3.25% on June 30, 2021) plus a margin ranging from 0.00% to 1.00% or one month LIBOR (0.10% on June 30, 2021) plus a margin ranging from 1.00% to 2.00%. The Company incurs an annual commitment fee of 0.15% to 0.20% on the unused portion of the line of credit. The additional margin amount and annual commitment fee are dependent on the level of outstanding borrowings. As of June 30, 2021, the Company had $199.8 million of unused borrowing capacity.</span></div><div><span><br/></span></div><div style="text-align:justify;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 required to comply with various financial covenants under the 2021 Credit Agreement. Specifically, the Company is required to maintain a ratio of earnings before interest, taxes, depreciation, and amortization (“EBITDA”) plus stock compensation to interest expense for the previous four consecutive fiscal quarters of not less than 3.50 to 1.00, a ratio of indebtedness less the sum of all unsecured indebtedness, on a consolidated basis and without duplication, less all unrestricted cash and cash equivalents not to exceed $50,000,000 to EBITDA plus stock compensation of not more than 2.50 to 1.00, and a ratio of indebtedness less all unrestricted cash and cash equivalents not to exceed $50,000,000 to EBITDA plus stock compensation (“Consolidated Total Net Leverage Ratio”) of not more than 5.00 to 1.00. Additionally, the 2021 Credit Agreement currently restricts the payment of dividends that would result in a pro-forma Consolidated Total Net Leverage Ratio of more than 3.50 to 1.00.</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At June 30, 2021, the Company was in compliance with all covenants under the 2021 Credit Agreement.</span></div><div style="text-align:justify"><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-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Convertible Senior Notes due 2025</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;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 14, 2020, the Company issued $230.0 million aggregate principal amount of 1.250% Convertible Senior Notes Due 2025 (the “2025 Notes”) in a private placement to qualified institutional purchasers pursuant to an exemption from registration provided by Section 4(a)(2) and Rule 144A under the Securities Act of 1933, as amended (the “Securities Act”). The net proceeds from the offerings, after deducting the initial purchasers’ discount and issuance costs of $7.3 million, were $222.7 million. The Company used (i) $172.0 million of the net proceeds to partially repurchase the 2023 Notes (as defined and described below), and (ii) $26.7 million of the net proceeds to fund the cost of entering into the 2025 Notes Hedges (as defined below), after such cost was partially offset by the proceeds that the Company received from entering into the 2025 Notes Warrants (as defined below). The remaining proceeds of $24.0 million will be used for working capital or other general corporate purposes.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The 2025 Notes bear interest at a rate of 1.250% per year. Interest is payable in cash on February 1 and August 1 of each year. The 2025 Notes mature on August 1, 2025 unless earlier converted, redeemed or repurchased in accordance with their terms prior to such date. The initial conversion rate is 19.3538 shares of the Company’s common stock per $1,000 principal amount of 2025 Notes, which is equivalent to an initial conversion price of approximately $51.67 per share of common stock. After consideration of the 2025 Notes Hedges and 2025 Notes Warrants, the conversion rate is effectively hedged to a price of $81.05 per share of common stock. The conversion rate, and thus the conversion price, may be adjusted under certain circumstances as described in the indenture governing the 2025 Notes (the “2025 Indenture”). The Company may settle conversions by paying or delivering, as applicable, cash, shares of its common stock or a combination of cash and shares of its common stock, at the Company’s election, based on the applicable conversion rate(s). If a “make-whole fundamental change” (as defined in the 2025 Indenture) occurs, then the Company will in certain circumstances increase the conversion rate for a specified period of time. The Company’s intent is to settle the principal amount of the 2025 Notes in cash upon conversion.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Convertible Senior Notes due 2023</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On September 11, 2018, the Company issued $143.8 million aggregate principal amount of 2.375% Convertible Senior Notes Due 2023 (the “2023 Notes”) in a private placement to qualified institutional purchasers pursuant to an exemption from registration provided by Section 4(a)(2) and Rule 144A under the Securities Act. The net proceeds from the offerings, after deducting the initial purchasers’ discount and issuance costs of $4.4 million, were $139.4 million.</span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The 2023 Notes bear interest at a rate of 2.375% per year. Interest is payable in cash on March 15 and September 15 of each year. The 2023 Notes mature on September 15, 2023, unless earlier converted, redeemed or repurchased in accordance with their terms prior to such date. The initial conversion rate is 26.5957 shares of the Company’s common stock per $1,000 principal amount of 2023 Notes, which is equivalent to an initial conversion price of approximately $37.60 per share of common stock. After consideration of the 2023 Notes Hedges (as defined below) and 2023 Notes Warrants (as defined below), the conversion rate is effectively hedged to a price of $46.62 per share of common stock. The conversion rate, and thus the conversion price, may be adjusted under certain circumstances as described in the indenture governing the 2023 Notes (the “2023 Indenture”). The Company may settle conversions by paying or delivering, as applicable, cash, shares of its common stock or a combination of cash and shares of its common stock, at the Company’s election, based on the applicable conversion rate(s). If a “make-whole fundamental change” (as defined in the 2023 Indenture) occurs, then the Company will in certain circumstances increase the conversion rate for a specified period of time. The Company’s intent is to settle the principal amount of the 2023 Notes in cash upon conversion.</span></div><div style="text-align:justify;text-indent:36pt"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In August and December 2020, the Company repurchased a portion of the outstanding 2023 Notes through individual, privately negotiated transactions (the “2023 Notes Partial Repurchase”), leaving 2023 Notes with an aggregate principal amount of $5.1 million outstanding as of June 30, 2021. The Company used $172.0 million of the net proceeds from the 2025 Notes issuance in August 2020 and $9.7 million of additional cash in December 2020 to complete the 2023 Notes Partial Repurchase, of which a total of $127.7 million and $52.7 million were allocated to the liability and equity components of the 2023 Notes, respectively, and $1.3 million was related to the payment of interest. The 2023 Notes Partial Repurchase resulted in a $4.5 million loss on extinguishment during the year ended December 31, 2020, which includes the proportionate amounts of unamortized debt discount and the remaining unamortized debt issuance costs of $2.4 million.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Other Terms of the Notes</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The 2025 Notes and 2023 Notes (together, the “Notes”) may be converted at the holder’s option prior to the close of business on the business day immediately preceding August 1, 2025 and September 15, 2023 for the 2025 Notes and 2023 Notes, respectively, but only under the following circumstances:</span></div><div><span><br/></span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">during any calendar quarter commencing after the calendar quarter ending on September 30, 2020 and December 31, 2018 for the 2025 Notes and 2023 Notes, respectively, if the last reported sale price per share of the Company’s common stock exceeds 130% of the applicable conversion price for each of at least 20 trading days during the 30 consecutive trading days ending on, and including, the last trading day of the immediately preceding calendar quarter;</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">during the five consecutive business days immediately after any 10 consecutive trading day period (such 10 consecutive trading day period, the “measurement period”) in which the trading price per $1,000 principal amount of notes for each trading day of the measurement period was less than 98% of the product of the last reported sale price per share of the Company’s common stock on such trading day and the applicable conversion rate on such trading day;</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">upon the occurrence of certain corporate events or distributions on the Company’s common stock described in the 2025 Indenture or the 2023 Indenture, as applicable; and</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">at any time from, and including, February 3, 2025 and March 15, 2023 for the 2025 Notes and 2023 Notes, respectively, until the close of business on the second scheduled trading day immediately before the applicable maturity date.</span></div><div><span><br/></span></div><div style="text-align:justify;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 may not redeem the Notes at its option before maturity. If a “fundamental change” (as defined in the 2025 Indenture or 2023 Indenture) occurs, then, except as described in the 2025 Indenture or 2023 Indenture, noteholders may require the Company to repurchase their Notes at a cash repurchase price equal to the principal amount of the Notes to be repurchased, plus accrued and unpaid interest, if any.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">During the three months ended June 30, 2021, the conditional conversion features of the 2023 Notes and 2025 Notes were triggered as the last reported sale price of the Company's common stock was greater than or equal to 130% of the conversion price for at least 20 trading days in the period of 30 consecutive trading days ending on June 30, 2021 (the last trading day of the fiscal quarter). Therefore, the 2023 Notes and 2025 Notes are currently convertible, in whole or in part, at the option of the holder during the quarter ending September 30, 2021. Whether the 2023 Notes and 2025 Notes will be convertible following such period will depend on the continued satisfaction of this condition or another conversion condition in the future. Since the Company has the election of repaying the 2023 Notes and 2025 Notes in cash, shares of the Company’s common stock, or a combination of both, the Company continued to classify the liability component of the 2023 Notes and 2025 Notes as long-term debt on the Condensed Consolidated Balance Sheet as of June 30, 2021 (unaudited). As of the date of this filing, none of the holders of the 2023 Notes and 2025 Notes have submitted requests for conversion. Based on the closing price of the Company's common stock of $80.42 per share on June 30, 2021, the conversion values of the 2023 Notes and 2025 Notes were greater than the principal amount of the Notes outstanding on a per note basis.</span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The liability component of the 2025 Notes and 2023 Notes consisted of the following (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><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 style="width:42.759%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.139%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.769%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"> </span></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%">June 30, 2021 (unaudited)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2020</span></div></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">Liability component:</span></td><td colspan="3" style="border-top:2pt 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%">2025 Notes</span></td><td colspan="3" style="border-top:2pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023 Notes</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt 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%">2025 Notes</span></td><td colspan="3" style="border-top:2pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023 Notes</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">     Principal</span></td><td style="background-color:#cceeff;border-top:2pt 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:2pt 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%">230,000 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt 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:2pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,090 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt 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:2pt 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%">230,000 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt 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:2pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,090 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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: Unamortized debt discount</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%">(41,311)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(352)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,690)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(426)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">               Unamortized debt issuance costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,696)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(64)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,271)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 carrying amount</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%">183,993 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">4,674 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">179,039 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">4,585 </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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Interest expense for the three and six months ended June 30, 2021 and 2020 related to the 2025 Notes and 2023 Notes consisted of the following (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">2025 Notes</span></div><div style="text-align:justify"><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 style="width:42.028%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.350%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.350%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.700%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.769%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:2pt 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%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:2pt 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%">2020</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%">Coupon interest</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">719 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,438 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Amortization of debt discount</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,200 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,379 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of debt issuance costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">288 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">575 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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"/></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 interest expense recognized</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%">3,207 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">— </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="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:2pt solid #000000;padding:2px 0;text-align: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,392 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="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:2pt solid #000000;padding:2px 0;text-align: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;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">2023 Notes</span></div><div style="text-align:justify"><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 style="width:42.028%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.350%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.350%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.700%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.769%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:2pt 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%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:2pt 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%">2020</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%">Coupon interest</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">853 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,707 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Amortization of debt discount</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%">37 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">992 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">74 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,969 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of debt issuance costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">206 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">412 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 interest expense recognized</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%">75 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">2,051 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="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:2pt solid #000000;padding:2px 0;text-align: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 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="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:2pt solid #000000;padding:2px 0;text-align: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,088 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Convertible Notes Hedges</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In connection with the issuance of the 2025 Notes and 2023 Notes, the Company entered into privately negotiated convertible note hedge transactions (the “2025 Notes Hedges” and the “2023 Notes Hedges,” respectively, and together, the “Notes Hedges”) with certain of the initial purchasers or their respective affiliates and/or other financial institutions (the “Option Counterparties”). The 2025 Notes Hedges provide the Company with the option to acquire, on a net settlement basis, approximately 4.5 million shares of common stock at a strike price of $51.67, which is equal to the number of shares of common stock that notionally underlie the 2025 Notes and correspond to the conversion price of the 2025 Notes. The 2023 Notes Hedges provide the Company with the option to acquire, on a net settlement basis, approximately 0.1 million shares (after consideration of the 2023 Notes Partial Repurchase) of common stock at a strike price of $37.60, which is equal to the number of shares of common stock that notionally underlie the 2023 Notes and correspond to the conversion price of the 2023 Notes after the partial repurchase discussed above. If the Company elects cash settlement and exercises the 2025 Notes Hedges or the 2023 Notes Hedges, the aggregate amount of cash received from the Option Counterparties will cover the aggregate amount of cash that the Company would be required to pay to the holders of the Notes, less the principal amount thereof. The Notes Hedges do not meet the criteria for separate accounting as a derivative as they are indexed to the Company’s stock and are accounted for as freestanding financial instruments. In August and December 2020, in connection with the 2023 Notes Partial Repurchase, the Company terminated 2023 Notes Hedges corresponding to approximately 3.7 million shares for cash proceeds of $50.1 million. The proceeds were recorded as an increase to additional paid-in capital within stockholders' equity.</span></div><div style="text-align:justify"><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%">Convertible Notes Warrants</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In connection with the issuance of the 2025 Notes and 2023 Notes, the Company also sold net-share-settled warrants (the “2025 Notes Warrants” and the “2023 Notes Warrants,” respectively, and together, the “Notes Warrants”) in privately negotiated transactions with the Option Counterparties. The strike price of the 2025 Notes Warrants and 2023 Notes Warrants </span></div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">was approximately $81.05 and $46.62 per share, respectively, and is subject to certain adjustments under the terms of their respective Notes Warrants. As a result of the 2025 Notes Warrants and 2023 Notes Warrants and related transactions, the Company is required to recognize incremental dilution of earnings per share to the extent the average share price is over $81.05 for any fiscal quarter for the 2025 Notes Warrants and $46.62 for the 2023 Notes Warrants. The 2025 Notes Warrants and 2023 Notes Warrants expire over a period of 100 trading days commencing on November 1, 2025 and December 15, 2023, respectively, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%">and </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">may be settled in net shares of common stock or net cash at the Company’s election. In August and December 2020, in connection with the 2023 Notes Partial Repurchase, the Company repurchased a portion of the 2023 Notes Warrants through a cash payment of $43.0 million. The repurchase was recorded as a reduction in additional paid-in capital within stockholders' equity.</span> 200000000.0 75000000.0 600000 600000 10000000.0 200000 0.0325 0.0000 0.0100 0.0010 0.0100 0.0200 0.0015 0.0020 199800000 3.50 50000000 2.50 50000000 5.00 3.50 230000000.0 0.01250 7300000 222700000 172000000.0 26700000 24000000.0 0.01250 2025-08-01 19.3538 51.67 81.05 143800000 0.02375 4400000 139400000 0.02375 2023-09-15 26.5957 37.60 46.62 , the Company repurchased a portion of the outstanding 2023 Notes through individual, privately negotiated transactions (the “2023 Notes Partial Repurchase”), leaving 2023 Notes with an aggregate principal amount of $5.1 million outstanding as of June 30, 2021. The Company used $172.0 million of the net proceeds from the 2025 Notes issuance in August 2020 and $9.7 million of additional cash in December 2020 to complete the 2023 Notes Partial Repurchase, of which a total of $127.7 million and $52.7 million were allocated to the liability and equity components of the 2023 Notes, respectively, and $1.3 million was related to the payment of interest. The 2023 Notes Partial Repurchase resulted in a $4.5 million loss on extinguishment during the year ended December 31, 2020, which includes the proportionate amounts of unamortized debt discount and the remaining unamortized debt issuance costs of $2.4 million.<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Convertible Notes Hedges</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In connection with the issuance of the 2025 Notes and 2023 Notes, the Company entered into privately negotiated convertible note hedge transactions (the “2025 Notes Hedges” and the “2023 Notes Hedges,” respectively, and together, the “Notes Hedges”) with certain of the initial purchasers or their respective affiliates and/or other financial institutions (the “Option Counterparties”). The 2025 Notes Hedges provide the Company with the option to acquire, on a net settlement basis, approximately 4.5 million shares of common stock at a strike price of $51.67, which is equal to the number of shares of common stock that notionally underlie the 2025 Notes and correspond to the conversion price of the 2025 Notes. The 2023 Notes Hedges provide the Company with the option to acquire, on a net settlement basis, approximately 0.1 million shares (after consideration of the 2023 Notes Partial Repurchase) of common stock at a strike price of $37.60, which is equal to the number of shares of common stock that notionally underlie the 2023 Notes and correspond to the conversion price of the 2023 Notes after the partial repurchase discussed above. If the Company elects cash settlement and exercises the 2025 Notes Hedges or the 2023 Notes Hedges, the aggregate amount of cash received from the Option Counterparties will cover the aggregate amount of cash that the Company would be required to pay to the holders of the Notes, less the principal amount thereof. The Notes Hedges do not meet the criteria for separate accounting as a derivative as they are indexed to the Company’s stock and are accounted for as freestanding financial instruments. In August and December 2020, in connection with the 2023 Notes Partial Repurchase, the Company terminated 2023 Notes Hedges corresponding to approximately 3.7 million shares for cash proceeds of $50.1 million. The proceeds were recorded as an increase to additional paid-in capital within stockholders' equity.</span></div><div style="text-align:justify"><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%">Convertible Notes Warrants</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In connection with the issuance of the 2025 Notes and 2023 Notes, the Company also sold net-share-settled warrants (the “2025 Notes Warrants” and the “2023 Notes Warrants,” respectively, and together, the “Notes Warrants”) in privately negotiated transactions with the Option Counterparties. The strike price of the 2025 Notes Warrants and 2023 Notes Warrants </span></div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">was approximately $81.05 and $46.62 per share, respectively, and is subject to certain adjustments under the terms of their respective Notes Warrants. As a result of the 2025 Notes Warrants and 2023 Notes Warrants and related transactions, the Company is required to recognize incremental dilution of earnings per share to the extent the average share price is over $81.05 for any fiscal quarter for the 2025 Notes Warrants and $46.62 for the 2023 Notes Warrants. The 2025 Notes Warrants and 2023 Notes Warrants expire over a period of 100 trading days commencing on November 1, 2025 and December 15, 2023, respectively, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:11pt;font-weight:400;line-height:120%">and </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">may be settled in net shares of common stock or net cash at the Company’s election. In August and December 2020, in connection with the 2023 Notes Partial Repurchase, the Company repurchased a portion of the 2023 Notes Warrants through a cash payment of $43.0 million. The repurchase was recorded as a reduction in additional paid-in capital within stockholders' equity.</span> 5100000 172000000.0 9700000 127700000 52700000 1300000 -4500000 -2400000 2025-08-01 2023-09-15 1.30 20 30 5 10 10 0.98 1.30 20 30 80.42 <div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The liability component of the 2025 Notes and 2023 Notes consisted of the following (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><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 style="width:42.759%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.139%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.769%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"> </span></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%">June 30, 2021 (unaudited)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2020</span></div></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">Liability component:</span></td><td colspan="3" style="border-top:2pt 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%">2025 Notes</span></td><td colspan="3" style="border-top:2pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023 Notes</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt 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%">2025 Notes</span></td><td colspan="3" style="border-top:2pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2023 Notes</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">     Principal</span></td><td style="background-color:#cceeff;border-top:2pt 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:2pt 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%">230,000 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt 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:2pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,090 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt 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:2pt 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%">230,000 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt 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:2pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,090 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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: Unamortized debt discount</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%">(41,311)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(352)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,690)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(426)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">               Unamortized debt issuance costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,696)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(64)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,271)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 carrying amount</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%">183,993 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">4,674 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">179,039 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">4,585 </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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Interest expense for the three and six months ended June 30, 2021 and 2020 related to the 2025 Notes and 2023 Notes consisted of the following (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">2025 Notes</span></div><div style="text-align:justify"><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 style="width:42.028%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.350%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.350%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.700%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.769%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:2pt 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%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:2pt 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%">2020</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%">Coupon interest</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">719 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,438 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Amortization of debt discount</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,200 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,379 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of debt issuance costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">288 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">575 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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"/></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 interest expense recognized</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%">3,207 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">— </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="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:2pt solid #000000;padding:2px 0;text-align: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,392 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="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:2pt solid #000000;padding:2px 0;text-align: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;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">2023 Notes</span></div><div style="text-align:justify"><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 style="width:42.028%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.350%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.350%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.700%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.765%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.969%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.769%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td><td colspan="3" style="padding:0 1pt"/><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 June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:2pt 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%">2020</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2021</span></td><td colspan="3" style="border-top:2pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:2pt 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%">2020</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%">Coupon interest</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">853 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,707 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Amortization of debt discount</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%">37 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">992 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">74 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,969 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of debt issuance costs</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">206 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">412 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 interest expense recognized</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%">75 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">2,051 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="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:2pt solid #000000;padding:2px 0;text-align: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 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="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:2pt solid #000000;padding:2px 0;text-align: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,088 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 230000000 5090000 230000000 5090000 41311000 352000 45690000 426000 4696000 64000 5271000 79000 183993000 4674000 179039000 4585000 719000 0 1438000 0 2200000 0 4379000 0 288000 0 575000 0 3207000 0 6392000 0 30000 853000 60000 1707000 37000 992000 74000 1969000 8000 206000 15000 412000 75000 2051000 149000 4088000 4500000 51.67 100000 37.60 3700000 3700000 50100000 81.05 46.62 81.05 46.62 P100D 43000000.0 Income Taxes<div style="text-align:justify"><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-align:justify;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 files income tax returns in the U.S. federal jurisdiction and various state and foreign jurisdictions. The Internal Revenue Service (the “IRS”) has completed examinations of the Company’s U.S. income tax returns or the statute of limitations has passed on returns for the years through 2015. The Company’s 2016 and 2017 U.S. income tax returns are currently under examination by the IRS. The IRS has sought to disallow research credits in the total amount of $5.7 million on the Company’s 2011 through 2015 U.S. income tax returns. The Company has exhausted all administrative appeals and formal mediation and has filed suit to resolve this dispute. The Company is awaiting a court date to be set by the U.S. Tax Court for the 2011 through 2013 returns. The Company believes the research credits taken are appropriate and intends to vigorously defend its position. An amount of adjustment, if any, and the timing of such adjustment are not reasonably possible to estimate at this time. The total amount of research credits taken, or expected to be taken, in the Company’s income tax returns for 2011 through June 30, 2021 is approximately $23.4 million.</span></div><div style="text-align:justify"><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-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Under the provisions of the ASC Subtopic 740-10-25, Income Taxes - Recognition, the Company had an unrecognized tax benefit of $9.5 million (excluding $1.2 million of interest) as of June 30, 2021.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;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 effective tax rate was 27.0% and 23.6% for the three and six months ended June 30, 2021, respectively, compared to 31.8% and 22.8% for the three and six months ended June 30, 2020, respectively. The effective tax rate increased during the six months ended June 30, 2021 primarily due to the relative decrease in tax benefits recognized for share-based compensation deductions partially offset by a decrease in non-deductible acquisition costs during the six months ended June 30, 2021 compared to the prior year. As of June 30, 2021, the Company’s net non-current deferred tax liability was $17.5 million. Deferred tax liabilities primarily relate to goodwill, other intangibles, fixed assets, prepaid expenses and issuance of the Notes. Net non-current deferred tax liabilities are recorded in “Other non-current liabilities” on the Condensed Consolidated Balance Sheets as of June 30, 2021 (unaudited) and December 31, 2020.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In general, it is the Company’s practice and intention to reinvest the earnings of the Company’s foreign subsidiaries in those operations. However, the Company has determined that the foreign earnings of the Company’s Chinese and Colombian subsidiaries are no longer permanently reinvested and may repatriate available earnings from time to time. Management intends to continue to permanently reinvest all other remaining current and prior earnings in its other foreign subsidiaries.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Excluding China and Colombia, foreign unremitted earnings of entities not included in the United States tax return have been included in the consolidated financial statements without giving effect to the United States taxes that may be payable on distribution to the United States because it is not anticipated such earnings will be remitted to the United States. Under current applicable tax laws, if the Company elects to remit some or all of the funds it has designated as indefinitely reinvested outside the United States, the amount remitted would be subject to non-U.S. withholding taxes. As of June 30, 2021, the aggregate unremitted earnings of the Company’s foreign subsidiaries for which a deferred income tax liability has not been recorded was approximately $16.4 million, and the unrecognized deferred tax liability on unremitted earnings was approximately $1.1 million.</span></div> 5700000 23400000 9500000 1200000 0.270 0.236 0.318 0.228 17500000 16400000 1100000 DerivativesIn the normal course of business, the Company uses derivative financial instruments to manage foreign currency exchange rate risk. Currency exposure is monitored and managed by the Company as part of its risk management program which seeks to reduce the potentially adverse effects that market volatility could have on operating results. The Company’s derivative financial instruments consist of non-deliverable and deliverable foreign currency forward contracts. Derivative financial instruments are neither held nor issued by the Company for trading purposes.<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Derivatives Not Designated as Hedging Instruments</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Both the gain or loss on the derivatives not designated as hedging instruments and the offsetting loss or gain on the hedged item attributable to the hedged risk are recognized in current earnings. Realized gains or losses and changes in the estimated fair value of foreign currency forward contracts that have not been designated as hedges were immaterial during each of the three and six months ended June 30, 2021 and 2020. Gains and losses on these contracts are recorded in net other expense (income) and net interest expense in the Unaudited Condensed Consolidated Statements of Operations and are offset by losses and gains on the related hedged items.</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The notional amounts of the Company’s derivative instruments outstanding were as follows (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:60.979%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.494%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.495%"/><td style="width:0.1%"/></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%"> </span></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%">June 30, 2021 (unaudited)</span></td><td colspan="3" style="padding:0 1pt"/><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, 2020</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Derivatives not designated as hedges</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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%">Foreign exchange contracts</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%">20,753 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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,008 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 derivatives not designated as hedges</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%">20,753 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">16,008 </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"/></tr></table></div> In the normal course of business, the Company uses derivative financial instruments to manage foreign currency exchange rate risk. Currency exposure is monitored and managed by the Company as part of its risk management program which seeks to reduce the potentially adverse effects that market volatility could have on operating results. The Company’s derivative financial instruments consist of non-deliverable and deliverable foreign currency forward contracts. Derivative financial instruments are neither held nor issued by the Company for trading purposes.<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Derivatives Not Designated as Hedging Instruments</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Both the gain or loss on the derivatives not designated as hedging instruments and the offsetting loss or gain on the hedged item attributable to the hedged risk are recognized in current earnings. Realized gains or losses and changes in the estimated fair value of foreign currency forward contracts that have not been designated as hedges were immaterial during each of the three and six months ended June 30, 2021 and 2020. Gains and losses on these contracts are recorded in net other expense (income) and net interest expense in the Unaudited Condensed Consolidated Statements of Operations and are offset by losses and gains on the related hedged items.</span></div> <div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The notional amounts of the Company’s derivative instruments outstanding were as follows (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:60.979%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.494%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.495%"/><td style="width:0.1%"/></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%"> </span></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%">June 30, 2021 (unaudited)</span></td><td colspan="3" style="padding:0 1pt"/><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, 2020</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Derivatives not designated as hedges</span></td><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:2pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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%">Foreign exchange contracts</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%">20,753 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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,008 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 derivatives not designated as hedges</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%">20,753 </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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">16,008 </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"/></tr></table></div> 20753000 16008000 20753000 16008000 Fair Value Measurements<div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value hierarchy is based on inputs to valuation techniques that are used to measure fair value that are either observable or unobservable. Observable inputs reflect assumptions market participants would use in pricing an asset or liability based on market data obtained from independent sources while unobservable inputs reflect a reporting entity’s pricing based upon its own market assumptions.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value hierarchy consists of the following three levels:</span></div><div style="text-align:justify"><span><br/></span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 1 – Inputs are quoted prices in active markets for identical assets or liabilities.</span></div><div style="padding-left:36pt;text-align:justify"><span><br/></span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 2 – Inputs are quoted prices for similar assets or liabilities in an active market, quoted prices for identical or similar assets or liabilities in markets that are not active, inputs other than quoted prices that are observable and market-corroborated inputs which are derived principally from or corroborated by observable market data.</span></div><div style="padding-left:36pt;text-align:justify"><span><br/></span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 3 – Inputs are derived from valuation techniques in which one or more significant inputs or value drivers are unobservable.</span></div><div style="margin-bottom:3pt;margin-top:3pt;text-align:justify"><span><br/></span></div><div style="margin-bottom:3pt;margin-top:3pt;text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">All highly liquid investments with maturities at date of purchase of three months or less are considered to be cash equivalents. Based on their short-term nature, the carrying value of cash equivalents approximate their fair value. As of June 30, 2021 and December 31, 2020, $76.6 million and $66.0 million, respectively, of the Company’s cash and cash equivalents balance related to money-market fund investments. These short-term money-market funds are considered Level 1 investments.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;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 a deferred compensation plan, which is funded through company-owned life insurance (“COLI”) policies. The COLI asset is carried at fair value derived from quoted market prices of investments within the COLI policies, which are considered Level 2 inputs. The fair value of the COLI asset was $9.8 million and $7.4 million as of June 30, 2021 and December 31, 2020, respectively.</span></div><div style="text-align:justify;text-indent:36pt"><span><br/></span></div><div style="text-align:justify;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 estimates the fair value of each foreign exchange forward contract by using the present value of expected cash flows. The estimate takes into account the difference between the current market forward price and contracted forward price for each foreign exchange contract and applies the difference in the rates to each outstanding contract. Valuations for all derivatives fall within Level 2 of the GAAP valuation hierarchy. The fair values of the Company’s derivative instruments outstanding as of June 30, 2021 and December 31, 2020 were immaterial.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;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 contingent consideration liabilities related to acquisitions which are measured on a recurring basis and recorded at fair value, determined using the discounted cash flow method. The inputs used to calculate the fair value of the contingent consideration liabilities are considered to be Level 3 inputs due to the lack of relevant market activity and significant management judgment. An increase in future cash flows may result in a higher estimated fair value while a decrease in future cash flows may result in a lower estimated fair value of the contingent consideration liabilities. Remeasurements to fair value are recorded in adjustment to fair value of contingent consideration in the Unaudited Condensed Consolidated Statements of </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Operations. Refer to Note 7, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Balance Sheet Components,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> for the estimated fair value of the contingent consideration liabilities as of June 30, 2021 and December 31, 2020.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of the Notes is measured using quoted price inputs. The Notes are not actively traded, and thus the price inputs represent a Level 2 measurement. As the quoted price inputs are highly variable from day to day, the fair value estimates could significantly increase or decrease.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Notes are carried at their principal amount less unamortized debt discount and issuance costs, and are not carried at fair value at each period end. The original debt discount was calculated at a market interest rate for nonconvertible debt at the time of issuance, which represented a Level 3 fair value measurement. The approximate fair value of the 2025 Notes as of June 30, 2021 and December 31, 2020 was $376.3 million and $263.4 million, respectively, and the approximate fair value of the 2023 Notes as of June 30, 2021 and December 31, 2020 was $10.3 million and $7.1 million, respectively. The fair values were estimated on the basis of inputs that are observable in the market and are considered Level 2 fair value measurements.</span></div> <div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value hierarchy is based on inputs to valuation techniques that are used to measure fair value that are either observable or unobservable. Observable inputs reflect assumptions market participants would use in pricing an asset or liability based on market data obtained from independent sources while unobservable inputs reflect a reporting entity’s pricing based upon its own market assumptions.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value hierarchy consists of the following three levels:</span></div><div style="text-align:justify"><span><br/></span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 1 – Inputs are quoted prices in active markets for identical assets or liabilities.</span></div><div style="padding-left:36pt;text-align:justify"><span><br/></span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 2 – Inputs are quoted prices for similar assets or liabilities in an active market, quoted prices for identical or similar assets or liabilities in markets that are not active, inputs other than quoted prices that are observable and market-corroborated inputs which are derived principally from or corroborated by observable market data.</span></div><div style="padding-left:36pt;text-align:justify"><span><br/></span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Level 3 – Inputs are derived from valuation techniques in which one or more significant inputs or value drivers are unobservable.</span></div><div style="margin-bottom:3pt;margin-top:3pt;text-align:justify"><span><br/></span></div><div style="margin-bottom:3pt;margin-top:3pt;text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">All highly liquid investments with maturities at date of purchase of three months or less are considered to be cash equivalents. Based on their short-term nature, the carrying value of cash equivalents approximate their fair value. As of June 30, 2021 and December 31, 2020, $76.6 million and $66.0 million, respectively, of the Company’s cash and cash equivalents balance related to money-market fund investments. These short-term money-market funds are considered Level 1 investments.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;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 a deferred compensation plan, which is funded through company-owned life insurance (“COLI”) policies. The COLI asset is carried at fair value derived from quoted market prices of investments within the COLI policies, which are considered Level 2 inputs. The fair value of the COLI asset was $9.8 million and $7.4 million as of June 30, 2021 and December 31, 2020, respectively.</span></div><div style="text-align:justify;text-indent:36pt"><span><br/></span></div><div style="text-align:justify;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 estimates the fair value of each foreign exchange forward contract by using the present value of expected cash flows. The estimate takes into account the difference between the current market forward price and contracted forward price for each foreign exchange contract and applies the difference in the rates to each outstanding contract. Valuations for all derivatives fall within Level 2 of the GAAP valuation hierarchy. The fair values of the Company’s derivative instruments outstanding as of June 30, 2021 and December 31, 2020 were immaterial.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;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 contingent consideration liabilities related to acquisitions which are measured on a recurring basis and recorded at fair value, determined using the discounted cash flow method. The inputs used to calculate the fair value of the contingent consideration liabilities are considered to be Level 3 inputs due to the lack of relevant market activity and significant management judgment. An increase in future cash flows may result in a higher estimated fair value while a decrease in future cash flows may result in a lower estimated fair value of the contingent consideration liabilities. Remeasurements to fair value are recorded in adjustment to fair value of contingent consideration in the Unaudited Condensed Consolidated Statements of </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Operations. Refer to Note 7, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Balance Sheet Components,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> for the estimated fair value of the contingent consideration liabilities as of June 30, 2021 and December 31, 2020.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of the Notes is measured using quoted price inputs. The Notes are not actively traded, and thus the price inputs represent a Level 2 measurement. As the quoted price inputs are highly variable from day to day, the fair value estimates could significantly increase or decrease.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Notes are carried at their principal amount less unamortized debt discount and issuance costs, and are not carried at fair value at each period end. The original debt discount was calculated at a market interest rate for nonconvertible debt at the time of issuance, which represented a Level 3 fair value measurement. The approximate fair value of the 2025 Notes as of June 30, 2021 and December 31, 2020 was $376.3 million and $263.4 million, respectively, and the approximate fair value of the 2023 Notes as of June 30, 2021 and December 31, 2020 was $10.3 million and $7.1 million, respectively. The fair values were estimated on the basis of inputs that are observable in the market and are considered Level 2 fair value measurements.</span></div> 76600000 66000000.0 9800000 7400000 376300000 263400000 10300000 7100000 Leases<div style="text-align:justify;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 leases office space under various operating lease agreements, which have remaining lease terms of less than one year to eight years. Operating leases are included in operating lease right-of-use assets, other current liabilities, and operating lease liabilities on the consolidated balance sheet. Operating lease expense for the three and six months ended June 30, 2021 was $3.3 million and $6.6 million, respectively, and $2.9 million and $5.7 million for the three and six months ended June 30, 2020, respectively.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental balance sheet information related to leases was as follows (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.976%"><tr><td style="width:1.0%"/><td style="width:63.892%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.886%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.833%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.889%"/><td style="width:0.1%"/></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%"> </span></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%">June 30, 2021</span></td><td colspan="3" style="padding:0 1pt"/><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, 2020</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%">Other current liabilities</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,148 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,321 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Operating lease 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%">25,871 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,098 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 #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%">36,019 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">39,419 </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"/></tr></table></div><div style="text-align:justify;text-indent:36pt"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future minimum lease payments as of June 30, 2021 were as follows (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.830%"><tr><td style="width:1.0%"/><td style="width:81.296%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.504%"/><td style="width:0.1%"/></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%"> </span></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%">June 30, 2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021 remaining</span></td><td style="background-color:#cceeff;border-top:2pt 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:2pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,803 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2022</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%">10,304 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</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,092 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2024</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,257 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,706 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,901 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 future lease payments</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,063 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 implied interest</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,044)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 #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%">36,019 </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"/></tr></table></div> P1Y P8Y 3300000 6600000 2900000 5700000 <div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental balance sheet information related to leases was as follows (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.976%"><tr><td style="width:1.0%"/><td style="width:63.892%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.886%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.833%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.889%"/><td style="width:0.1%"/></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%"> </span></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%">June 30, 2021</span></td><td colspan="3" style="padding:0 1pt"/><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, 2020</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%">Other current liabilities</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,148 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 0;text-align: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,321 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Operating lease 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%">25,871 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,098 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 #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%">36,019 </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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">39,419 </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"/></tr></table></div> 10148000 10321000 25871000 29098000 36019000 39419000 <div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future minimum lease payments as of June 30, 2021 were as follows (in thousands):</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.830%"><tr><td style="width:1.0%"/><td style="width:81.296%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.504%"/><td style="width:0.1%"/></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%"> </span></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%">June 30, 2021</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2021 remaining</span></td><td style="background-color:#cceeff;border-top:2pt 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:2pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,803 </span></td><td style="background-color:#cceeff;border-top:2pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2022</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%">10,304 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2023</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,092 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2024</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,257 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align: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,706 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,901 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 future lease payments</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,063 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 implied interest</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,044)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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 #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%">36,019 </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"/></tr></table></div> 3803000 10304000 8092000 6257000 4706000 5901000 39063000 3044000 36019000 Commitments and ContingenciesFrom time to time the Company is involved in legal proceedings, claims and litigation related to employee claims, contractual disputes and taxes in the ordinary course of business. Although the Company cannot predict the outcome of such matters, currently the Company has no reason to believe the disposition of any current matter could reasonably be expected to have a material adverse impact on the Company’s financial position, results of operations or the ability to carry on any of its business activities. From time to time the Company is involved in legal proceedings, claims and litigation related to employee claims, contractual disputes and taxes in the ordinary course of business. Although the Company cannot predict the outcome of such matters, currently the Company has no reason to believe the disposition of any current matter could reasonably be expected to have a material adverse impact on the Company’s financial position, results of operations or the ability to carry on any of its business activities. XML 11 R1.htm IDEA: XBRL DOCUMENT v3.21.2
Cover Page - shares
6 Months Ended
Jun. 30, 2021
Jul. 22, 2021
Cover [Abstract]    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Jun. 30, 2021  
Document Transition Report false  
Entity File Number 001-15169  
Entity Registrant Name PERFICIENT, INC.  
Entity Incorporation, State or Country Code DE  
Entity Tax Identification Number 74-2853258  
Entity Address, Address Line One 555 Maryville University Drive  
Entity Address, Address Line Two Suite 600  
Entity Address, City or Town Saint Louis  
Entity Address, State or Province MO  
Entity Address, Postal Zip Code 63141  
City Area Code 314  
Local Phone Number 529-3600  
Title of 12(b) Security Common Stock, $0.001 par value  
Trading Symbol PRFT  
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   32,931,290
Entity Central Index Key 0001085869  
Current Fiscal Year End Date --12-31  
Document Fiscal Year Focus 2021  
Document Fiscal Period Focus Q2  
Amendment Flag false  
XML 12 R2.htm IDEA: XBRL DOCUMENT v3.21.2
Condensed Consolidated Balance Sheets - USD ($)
$ in Thousands
Jun. 30, 2021
Dec. 31, 2020
Current assets:    
Cash and cash equivalents $ 86,686 $ 83,204
Accounts receivable, net 149,718 133,085
Prepaid expenses 6,354 5,575
Other current assets 5,795 4,646
Total current assets 248,553 226,510
Property and equipment, net 12,124 11,902
Operating lease right-of-use assets 35,056 38,539
Goodwill 420,508 427,928
Intangible assets, net 48,937 63,571
Other non-current assets 21,017 17,311
Total assets 786,195 785,761
Current liabilities:    
Accounts payable 26,167 25,613
Other current liabilities 87,683 103,267
Total current liabilities 113,850 128,880
Long-term debt, net 188,667 183,624
Operating lease liabilities 25,871 29,098
Other non-current liabilities 45,814 50,081
Total liabilities 374,202 391,683
Stockholders’ equity:    
Preferred stock (par value $0.001 per share; 8,000,000 authorized; no shares issued or outstanding as of June 30, 2021 and December 31, 2020) 0 0
Common stock (par value $0.001 per share; 100,000,000 authorized; 50,572,384 shares issued and 32,070,673 shares outstanding as of June 30, 2021; 50,296,453 shares issued and 32,074,094 shares outstanding as of December 31, 2020) 51 50
Additional paid-in capital 470,218 459,866
Accumulated other comprehensive (loss) income (1,813) 3,746
Treasury stock, at cost (18,501,711 shares as of June 30, 2021; 18,222,359 shares as of December 31, 2020) (306,270) (289,225)
Retained earnings 249,807 219,641
Total stockholders’ equity 411,993 394,078
Total liabilities and stockholders’ equity $ 786,195 $ 785,761
XML 13 R3.htm IDEA: XBRL DOCUMENT v3.21.2
Condensed Consolidated Balance Sheets (Parenthetical) - $ / shares
Jun. 30, 2021
Dec. 31, 2020
Statement of Financial Position [Abstract]    
Preferred stock, par value (in dollars per share) $ 0.001 $ 0.001
Preferred stock, shares authorized 8,000,000 8,000,000
Preferred stock, shares issued 0 0
Preferred stock, shares outstanding 0 0
Common stock, par value (in dollars per share) $ 0.001 $ 0.001
Common stock, shares authorized 100,000,000 100,000,000
Common stock, shares issued 50,572,384 50,296,453
Common stock, shares outstanding 32,070,673 32,074,094
Treasury stock, shares 18,501,711 18,222,359
XML 14 R4.htm IDEA: XBRL DOCUMENT v3.21.2
Unaudited Condensed Consolidated Statements of Operations - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Revenues        
Revenues $ 184,136 $ 146,339 $ 353,477 $ 291,901
Cost of revenues (cost of services, exclusive of depreciation and amortization, shown separately below)        
Cost of revenues (cost of services, exclusive of depreciation and amortization, shown separately below) 113,180 91,155 219,242 184,372
Selling, general and administrative 37,424 33,876 71,403 67,097
Depreciation 1,615 1,317 3,075 2,605
Amortization 6,333 4,398 13,385 8,320
Acquisition costs 0 1,787 68 3,600
Adjustment to fair value of contingent consideration (510) 2,067 4 1,732
Income from operations 26,094 11,739 46,300 24,175
Net interest expense 3,367 2,061 6,663 3,987
Net other expense (income) 9 (15) 131 (8)
Income before income taxes 22,718 9,693 39,506 20,196
Provision for income taxes 6,145 3,084 9,340 4,613
Net income $ 16,573 $ 6,609 $ 30,166 $ 15,583
Basic net income per share (in dollars per share) $ 0.52 $ 0.21 $ 0.95 $ 0.49
Diluted net income per share (in dollars per share) $ 0.49 $ 0.20 $ 0.90 $ 0.48
Shares used in computing basic net income per share (in shares) 31,922 31,888 31,893 31,763
Shares used in computing diluted net income per share (in shares) 33,867 32,377 33,500 32,444
XML 15 R5.htm IDEA: XBRL DOCUMENT v3.21.2
Unaudited Condensed Consolidated Statements of Comprehensive Income - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Statement of Comprehensive Income [Abstract]        
Net income $ 16,573 $ 6,609 $ 30,166 $ 15,583
Other comprehensive (loss) income:        
Foreign currency translation adjustment, net of tax (1,273) (78) (5,559) (1,052)
Comprehensive income $ 15,300 $ 6,531 $ 24,607 $ 14,531
XML 16 R6.htm IDEA: XBRL DOCUMENT v3.21.2
Unaudited Condensed Consolidated Statement of Stockholders' Equity - USD ($)
$ in Thousands
Total
Cumulative effect, period of adoption, adjustment
Common Stock
Additional Paid-in Capital
Accumulated Other Comprehensive (Loss) Income
Treasury Stock
Retained Earnings
Retained Earnings
Cumulative effect, period of adoption, adjustment
Balance at Dec. 31, 2019     $ 49 $ 455,465 $ (2,650) $ (261,624) $ 189,775 $ (315)
Balance (in shares) at Dec. 31, 2019 31,687,000              
Increase (Decrease) in Stockholders' Equity [Roll Forward]                
Stock compensation related to restricted stock vesting and retirement savings plan contributions     1 9,405        
Proceeds from the sales of stock through the Employee Stock Purchase Plan (in shares) 4,000              
Proceeds from the sales of stock through the Employee Stock Purchase Plan       116        
Stock compensation related to restricted stock vesting and retirement savings plan contributions (in shares) 358,000              
Issuance of stock in conjunction with acquisition including stock attributed to future compensation       10,161        
Purchases of treasury stock and buyback of shares for taxes (in shares) (114,000)              
Foreign currency translation adjustment $ (1,052)       (1,052)      
Purchases of treasury stock and buyback of shares for taxes           (4,861)    
Issuance of stock in conjunction with acquisition (in shares) 337,000              
Net income $ 15,583           15,583  
Balance at Jun. 30, 2020 $ 410,053   50 475,147 (3,702) (266,485) 205,043  
Balance (in shares) at Jun. 30, 2020 32,272,000              
Balance at Mar. 31, 2020   $ 0 50 465,123 (3,624) (266,459) 198,434  
Balance (in shares) at Mar. 31, 2020 32,061,000              
Increase (Decrease) in Stockholders' Equity [Roll Forward]                
Stock compensation related to restricted stock vesting and retirement savings plan contributions     0 4,679        
Proceeds from the sales of stock through the Employee Stock Purchase Plan (in shares) 3,000              
Proceeds from the sales of stock through the Employee Stock Purchase Plan       76        
Stock compensation related to restricted stock vesting and retirement savings plan contributions (in shares) 38,000              
Issuance of stock in conjunction with acquisition including stock attributed to future compensation       5,269        
Purchases of treasury stock and buyback of shares for taxes (in shares) 0              
Foreign currency translation adjustment $ (78)       (78)      
Purchases of treasury stock and buyback of shares for taxes           (26)    
Issuance of stock in conjunction with acquisition (in shares) 170,000              
Net income $ 6,609           6,609  
Balance at Jun. 30, 2020 $ 410,053   50 475,147 (3,702) (266,485) 205,043  
Balance (in shares) at Jun. 30, 2020 32,272,000              
Balance at Dec. 31, 2020 $ 394,078   50 459,866 3,746 (289,225) 219,641 0
Balance (in shares) at Dec. 31, 2020 32,074,094              
Increase (Decrease) in Stockholders' Equity [Roll Forward]                
Stock compensation related to restricted stock vesting and retirement savings plan contributions     1 10,141        
Proceeds from the sales of stock through the Employee Stock Purchase Plan (in shares) 4,000              
Proceeds from the sales of stock through the Employee Stock Purchase Plan       211        
Stock compensation related to restricted stock vesting and retirement savings plan contributions (in shares) 272,000              
Issuance of stock in conjunction with acquisition including stock attributed to future compensation       0        
Purchases of treasury stock and buyback of shares for taxes (in shares) (279,000)              
Foreign currency translation adjustment $ (5,559)       (5,559)      
Purchases of treasury stock and buyback of shares for taxes           (17,045)    
Issuance of stock in conjunction with acquisition (in shares) 0              
Net income $ 30,166           30,166  
Balance at Jun. 30, 2021 $ 411,993   51 470,218 (1,813) (306,270) 249,807  
Balance (in shares) at Jun. 30, 2021 32,070,673              
Balance at Mar. 31, 2021     51 465,156 (540) (299,367) 233,234 $ 0
Balance (in shares) at Mar. 31, 2021 32,151,000              
Increase (Decrease) in Stockholders' Equity [Roll Forward]                
Stock compensation related to restricted stock vesting and retirement savings plan contributions     0 4,956        
Proceeds from the sales of stock through the Employee Stock Purchase Plan (in shares) 2,000              
Proceeds from the sales of stock through the Employee Stock Purchase Plan       106        
Stock compensation related to restricted stock vesting and retirement savings plan contributions (in shares) 18,000              
Issuance of stock in conjunction with acquisition including stock attributed to future compensation       0        
Purchases of treasury stock and buyback of shares for taxes (in shares) (100,000)              
Foreign currency translation adjustment $ (1,273)       (1,273)      
Purchases of treasury stock and buyback of shares for taxes           (6,903)    
Issuance of stock in conjunction with acquisition (in shares) 0              
Net income $ 16,573           16,573  
Balance at Jun. 30, 2021 $ 411,993   $ 51 $ 470,218 $ (1,813) $ (306,270) $ 249,807  
Balance (in shares) at Jun. 30, 2021 32,070,673              
XML 17 R7.htm IDEA: XBRL DOCUMENT v3.21.2
Unaudited Condensed Consolidated Statements of Cash Flows - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Operating Activities    
Net income $ 30,166 $ 15,583
Adjustments to reconcile net income to net cash provided by operations:    
Depreciation 3,075 2,605
Amortization 13,385 8,320
Deferred income taxes (963) 252
Non-cash stock compensation and retirement savings plan contributions 10,320 9,472
Amortization of debt discount and issuance costs 5,090 2,416
Adjustment to fair value of contingent consideration for purchase of businesses 4 1,732
Changes in operating assets and liabilities, net of acquisitions:    
Accounts receivable (16,366) 13,634
Other assets (5,371) 2,166
Accounts payable 2,173 (6,996)
Other liabilities (11,633) (11,684)
Net cash provided by operating activities 29,880 37,500
Investing Activities    
Purchase of property and equipment (3,623) (2,447)
Capitalization of internally developed software costs (569) (1,080)
Purchase of businesses, net of cash acquired (12) (91,201)
Net cash used in investing activities (4,204) (94,728)
Financing Activities    
Payment for credit facility financing fees (633) 0
Proceeds from line of credit 0 20,000
Payments on line of credit 0 (8,000)
Payment of contingent consideration for purchase of business (4,208) (876)
Proceeds from the sale of stock through the Employee Stock Purchase Plan 211 116
Purchases of treasury stock (11,802) 0
Remittance of taxes withheld as part of a net share settlement of restricted stock vesting (5,243) (4,861)
Net cash (used in) provided by financing activities (21,675) 6,379
Effect of exchange rate on cash and cash equivalents (519) (335)
Change in cash and cash equivalents 3,482 (51,184)
Cash and cash equivalents at beginning of period 83,204 70,728
Cash and cash equivalents at end of period 86,686 19,544
Supplemental Disclosures:    
Cash paid for income taxes 10,014 1,588
Cash paid for interest 1,455 1,813
Non-Cash Investing Activity:    
Stock issued for purchase of businesses 0 8,729
Liability incurred for purchase of property and equipment $ 0 $ 486
XML 18 R8.htm IDEA: XBRL DOCUMENT v3.21.2
Basis of Presentation
6 Months Ended
Jun. 30, 2021
Organization, Consolidation and Presentation of Financial Statements [Abstract]  
Basis of Presentation Basis of Presentation
 
The accompanying interim unaudited condensed consolidated financial statements of Perficient, Inc. and its subsidiaries (collectively, the “Company”) have been prepared in accordance with U.S. generally accepted accounting principles (“U.S. GAAP”) and are presented in accordance with the rules and regulations of the Securities and Exchange Commission (the “SEC”) applicable to interim financial information. Accordingly, certain note disclosures have been condensed or omitted. In the opinion of management, the interim unaudited condensed consolidated financial statements reflect all adjustments (consisting of only normal recurring adjustments) necessary for a fair presentation of the Company’s financial position, results of operations and cash flows for the periods presented. These financial statements should be read in conjunction with the Company’s consolidated financial statements and notes thereto filed with the SEC in the Company’s Annual Report on Form 10-K for the year ended December 31, 2020.

Through June 30, 2021, the Company had not experienced a material impact to its business, operations or financial results as a result of the novel coronavirus (COVID-19) pandemic. However, operating results for the three and six months ended June 30, 2021 are not necessarily indicative of the results that may be expected for the year ended December 31, 2021, particularly in light of the COVID-19 pandemic, including emerging variants, and its effects on domestic and global economies. To limit the spread of COVID-19, governments have imposed, and may continue to impose, among other things, travel and business operation restrictions and stay-at-home orders and social distancing guidelines, causing some businesses to adjust, reduce or suspend operating activities. While certain of these restrictions and guidelines have been lifted or relaxed, they may be reinstituted in response to continuing effects of the pandemic, including as a result of emerging variants. These disruptions and restrictions could adversely affect our operating results due to, among other things, reduced demand for our services and solutions, requests for discounts or extended payment terms, or customer bankruptcies. For more information, refer to the statements included under the heading “Risk Factors” in our Annual Report on Form 10-K for the year ended December 31, 2020.
XML 19 R9.htm IDEA: XBRL DOCUMENT v3.21.2
Summary of Significant Accounting Policies
6 Months Ended
Jun. 30, 2021
Accounting Policies [Abstract]  
Summary of Significant Accounting Policies Summary of Significant Accounting Policies
 
Use of Estimates
 
The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting periods. Actual results could differ from those estimates, and such differences could be material to the financial statements.

There have been no changes to significant accounting policies described in the Annual Report on Form 10-K for the year ended December 31, 2020 that have had a material impact on the Company’s condensed consolidated financial statements and related notes.
XML 20 R10.htm IDEA: XBRL DOCUMENT v3.21.2
Recent Accounting Pronouncements
6 Months Ended
Jun. 30, 2021
Accounting Standards Update and Change in Accounting Principle [Abstract]  
Recent Accounting Pronouncements Recent Accounting PronouncementsIn August 2020, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) No. 2020-06, Debt—Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging - Contracts in Entity’s Own Equity (Subtopic 815-40), which simplifies the accounting for convertible instruments. The guidance removes certain accounting models that separate the embedded conversion features from the host contract for convertible instruments, requiring bifurcation only if the convertible debt feature qualifies as a derivative or for convertible debt issued at a substantial premium. The ASU removes certain settlement conditions required for equity contracts to qualify for the derivative scope exception, permitting more contracts to qualify for the exception. In addition, the guidance eliminates the treasury stock method to calculate diluted earnings per share for convertible instruments and requires the use of the if-converted method. The ASU is effective for annual reporting periods beginning after December 15, 2021, including interim reporting periods within those annual periods, with early adoption permitted no earlier than the fiscal year beginning after December 15, 2020. The ASU allows entities to use a modified or full retrospective transition method. Under the modified approach, entities will apply the guidance to all financial instruments that are outstanding as of the beginning of the year of adoption with the cumulative effect recognized as an adjustment to the opening balance of retained earnings. Under the full retrospective method, entities will apply the guidance to all outstanding financial instruments for each prior reporting period presented. The Company will adopt this ASU on January 1, 2022 and is currently evaluating the method of adoption and the related impact of the new guidance on earnings per share and on its financial statements.
XML 21 R11.htm IDEA: XBRL DOCUMENT v3.21.2
Revenue
6 Months Ended
Jun. 30, 2021
Revenue from Contract with Customer [Abstract]  
Revenue Revenue
 
The Company’s revenues consist of services and software and hardware sales. In accordance with Accounting Standards Codification (“ASC”) Topic 606, Revenue from Contracts with Customers, revenues are recognized when control of services or goods are transferred to clients, in an amount that reflects the consideration the Company expects to be entitled to in exchange for those services or goods.

Services Revenues

Services revenues are primarily comprised of professional services that include developing, implementing, automating and extending business processes, technology infrastructure, and software applications. The Company’s professional services span multiple industries, platforms and solutions; however, the Company has remained relatively diversified and does not believe that it has significant revenue concentration within any single industry, platform or solution.

Professional services revenues are recognized over time as services are rendered. Most projects are performed on a time and materials basis, while a portion of revenues is derived from projects performed on a fixed fee or fixed fee percent complete basis. For time and material contracts, revenues are generally recognized and invoiced by multiplying the number of hours expended in the performance of the contract by the hourly rates. For fixed fee contracts, revenues are generally recognized and invoiced by multiplying the fixed rate per time period established in the contract by the number of time periods elapsed. For fixed fee percent complete contracts, revenues are generally recognized using an input method based on the ratio of hours expended to total estimated hours, and the client is invoiced according to the agreed-upon schedule detailing the amount and timing of payments in the contract.

Clients are typically billed monthly for services provided during that month but can be billed on a more or less frequent basis as determined by the contract. If the time is worked and approved at the end of a fiscal period and the invoice has not yet been sent to the client, the amount is recorded as revenue once the Company verifies all other revenue recognition criteria have been met, and the amount is classified as a receivable as the right to consideration is unconditional at that point. Amounts invoiced in excess of revenues recognized are contract liabilities, which are classified as deferred revenues in the Unaudited Condensed Consolidated Balance Sheet. The term between invoicing and payment due date is not significant. Contracts for professional services provide for a general right, to the client or the Company, to cancel or terminate the contract within a given period of time (generally 10 to 30 days’ notice is required). The client is responsible for any time and expenses incurred up to the date of cancellation or termination of the contract. Certain contracts may include volume discounts or holdbacks, which are accounted for as variable consideration, but are not typically significant. The Company estimates variable consideration based on historical experience and forecasted sales and includes the variable consideration in the transaction price.

Other services revenues are comprised of hosting fees, partner referral fees, maintenance agreements, training and internally developed software-as-a-service (“SaaS”) sales. Revenues from hosting fees, maintenance agreements, training and internally developed SaaS sales are generally recognized over time using a time-based measure of progress as services are rendered. Partner referral fees are recorded at a point in time upon meeting specified requirements to earn the respective fee.

On many professional service projects, the Company is also reimbursed for out-of-pocket expenses including travel and other project-related expenses. These reimbursements are included as a component of the transaction price of the respective professional services contract and are invoiced as the expenses are incurred. The Company structures its professional services arrangements to recover the cost of reimbursable expenses without a markup.

Software and Hardware Revenues

Software and hardware revenues are comprised of third-party software and hardware resales, in which the Company is considered the agent, and sales of internally developed software, in which the Company is considered the principal. Third-party software and hardware revenues are recognized and invoiced when the Company fulfills its obligation to arrange the sale, which occurs when the purchase order with the vendor is executed and the customer has access to the software or the hardware has been shipped to the customer. Internally developed software revenues are recognized and invoiced when control is transferred to the customer, which occurs when the software has been made available to the customer and the license term has commenced. Revenues from third-party software and hardware sales are recorded on a net basis, while revenues from internally developed
software sales are recorded on a gross basis. There are no significant cancellation or termination-type provisions for the Company’s software and hardware sales, and the term between invoicing and payment due date is not significant.

    Revenues are presented net of taxes assessed by governmental authorities. Sales taxes are generally collected and subsequently remitted on all software and hardware sales and certain services transactions as appropriate.

Arrangements with Multiple Performance Obligations

Arrangements with clients may contain multiple promises such as delivery of software, hardware, professional services or post-contract support services. These promises are accounted for as separate performance obligations if they are distinct. For arrangements with clients that contain multiple performance obligations, the transaction price is allocated to the separate performance obligations based on estimated relative standalone selling price, which is estimated by the expected cost plus a margin approach, taking into consideration market conditions and competitive factors. Because contracts that contain multiple performance obligations are typically short term due to the contract cancellation provisions, the allocation of the transaction price to the separate performance obligations is not considered a significant estimate.

Contract Costs

In accordance with the terms of the Company’s sales commission plan, commissions are not earned until the related revenue is recognized. Therefore, sales commissions are expensed as they are earned. Certain sales incentives are accrued based on achievement of specified bookings goals. For these incentives, the Company applies the practical expedient that allows the Company to expense the incentives as incurred because the amortization period would have been one year or less.

Deferred Revenue

The Company’s deferred revenue balance as of June 30, 2021 and December 31, 2020 was $6.3 million and $9.4 million, respectively. Substantially all of the December 31, 2020 deferred revenue balance was recognized in revenue during the six months ended June 30, 2021.

Transaction Price Allocated to Remaining Performance Obligations
 
Due to the ability of the client or the Company to cancel or terminate the contract within a given period of time (generally 10 to 30 days’ notice is required), the majority of the Company’s contracts have a term of less than one year. The Company does not disclose the value of unsatisfied performance obligations for contracts with an original maturity date of one year or less or time and materials contracts for which the Company has the right to invoice for services performed. Revenue related to unsatisfied performance obligations for remaining contracts as of June 30, 2021 was immaterial.
 
Disaggregation of Revenue

The following tables present revenue disaggregated by revenue source and pattern of revenue recognition (in thousands):

 Three Months Ended June 30,
20212020
 Over TimePoint In TimeTotal RevenuesOver TimePoint In TimeTotal Revenues
Time and materials contracts$139,274 $— $139,274 $102,294 $— $102,294 
Fixed fee percent complete contracts12,100 — 12,100 14,015 — 14,015 
Fixed fee contracts26,571 — 26,571 24,260 — 24,260 
Reimbursable expenses2,562 — 2,562 1,530 — 1,530 
Total professional services fees180,507 — 180,507 142,099 — 142,099 
Other services revenue*2,880 388 3,268 3,316 421 3,737 
Total services183,387 388 183,775 145,415 421 145,836 
Software and hardware— 361 361 — 503 503 
Total revenues$183,387 $749 $184,136 $145,415 $924 $146,339 
*Other services revenue primarily consists of hosting fees, maintenance, training, internally developed SaaS revenue and partner referral fees.

 Six Months Ended June 30,
20212020
 Over TimePoint In TimeTotal RevenuesOver TimePoint In TimeTotal Revenues
Time and materials contracts$267,865 $— $267,865 $202,285 $— $202,285 
Fixed fee percent complete contracts23,680 — 23,680 25,636 — 25,636 
Fixed fee contracts49,048 — 49,048 49,288 — 49,288 
Reimbursable expenses4,816 — 4,816 5,924 — 5,924 
Total professional services fees345,409 — 345,409 283,133 — 283,133 
Other services revenue*5,997 1,099 7,096 6,946 1,159 8,105 
Total services351,406 1,099 352,505 290,079 1,159 291,238 
Software and hardware— 972 972 — 663 663 
Total revenues$351,406 $2,071 $353,477 $290,079 $1,822 $291,901 

* Other services revenue primarily consists of hosting fees, maintenance, training, internally developed SaaS revenue and partner referral fees.

The following table presents revenue disaggregated by geographic area, as determined by the billing address of customers (in thousands):

Three Months Ended June 30,Six Months Ended June 30,
 2021202020212020
United States$180,350 $143,492 $346,158 $286,062 
Other countries3,786 2,847 7,319 5,839 
Total revenues$184,136 $146,339 $353,477 $291,901 
XML 22 R12.htm IDEA: XBRL DOCUMENT v3.21.2
Stock-Based Compensation
6 Months Ended
Jun. 30, 2021
Share-based Payment Arrangement [Abstract]  
Stock-Based Compensation Stock-Based Compensation
 
Stock-based compensation is accounted for in accordance with ASC Topic 718, Compensation – Stock Compensation. Under this guidance, the Company recognizes share-based compensation ratably using the straight-line attribution method over the requisite service period, which is generally three years. The fair value of restricted stock awards is based on the value of the Company’s common stock on the date of the grant.

Stock Award Plans
 
The Company’s Second Amended and Restated 2012 Long Term Incentive Plan (as amended, the “Incentive Plan”) allows for the granting of various types of stock awards, not to exceed a total of 7.0 million shares, to eligible individuals. The Compensation Committee of the Board of Directors administers the Incentive Plan and determines the terms of all stock awards made under the Incentive Plan. As of June 30, 2021, there were 1.3 million shares of common stock available for issuance under the Incentive Plan.
 
Stock-based compensation cost recognized for the three and six months ended June 30, 2021 was $5.5 million and $10.8 million, respectively, which included $1.1 million and $2.0 million, respectively, of expense for retirement savings plan contributions. The associated current and future income tax benefit recognized was $1.6 million and $3.2 million for the three and six months ended June 30, 2021, respectively. Stock-based compensation cost recognized for the three and six months ended June 30, 2020 was $5.1 million and $9.7 million, respectively, which included $0.9 million and $1.7 million, respectively, of expense for retirement savings plan contributions. The associated current and future income tax benefit recognized was $1.5 million and $2.9 million for the three and six months ended June 30, 2020, respectively. As of June 30, 2021, there was $27.0 million of total unrecognized compensation cost related to non-vested share-based awards with a weighted-average remaining life of two years.    
Restricted stock activity for the six months ended June 30, 2021 was as follows (shares in thousands):

 
 SharesWeighted-Average
Grant Date Fair Value
Restricted stock awards outstanding at December 31, 2020905 $35.34 
Awards granted192 55.70 
Awards vested(238)29.90 
Awards forfeited(44)35.90 
Restricted stock awards outstanding at June 30, 2021815 $41.68 
XML 23 R13.htm IDEA: XBRL DOCUMENT v3.21.2
Net Income per Share
6 Months Ended
Jun. 30, 2021
Earnings Per Share [Abstract]  
Net Income per Share Net Income per Share
 
The following table presents the calculation of basic and diluted net income per share (in thousands, except per share information):

Three Months Ended June 30,Six Months Ended June 30,
 2021202020212020
Net income$16,573 $6,609 $30,166 $15,583 
Basic:
Weighted-average shares of common stock outstanding31,922 31,888 31,893 31,763 
Shares used in computing basic net income per share31,922 31,888 31,893 31,763 
Effect of dilutive securities:
Restricted stock subject to vesting460 265 461 401 
Shares issuable for acquisition consideration (1)188 224 217 203 
Shares issuable for conversion of convertible senior notes1,251 — 893 77 
Shares issuable for exercise of warrants46 — 36 — 
Shares used in computing diluted net income per share33,867 32,377 33,500 32,444 
Basic net income per share$0.52 $0.21 $0.95 $0.49 
Diluted net income per share$0.49 $0.20 $0.90 $0.48 
 
(1)For the three and six months ended June 30, 2021, this represents the shares held in escrow pursuant to: (i) the Asset Purchase Agreement with Zeon Solutions Incorporated and certain related entities (collectively, “Zeon”); (ii) the Asset Purchase Agreement with MedTouch LLC (“MedTouch”); (iii) the Asset Purchase Agreement with Catalyst Networks, Inc. (“Brainjocks”); and (iv) the Stock Purchase Agreement with the shareholders of Productora de Software S.A.S. (“PSL”), as part of the consideration. For the three and six months ended June 30, 2020, this represents the shares held in escrow pursuant to: (i) the Asset Purchase Agreement with RAS & Associates, LLC (“RAS”); (ii) the Asset Purchase Agreement with Zeon; (iii) the Asset Purchase Agreement with Stone Temple Consulting Corporation (“Stone Temple”); (iv) the Asset Purchase Agreement with Sundog Interactive, Inc. (“Sundog”); (v) the Asset Purchase Agreement with MedTouch; (vi) the Asset Purchase Agreement with Brainjocks; and (vii) the Stock Purchase Agreement with the shareholders of PSL, as part of the consideration.

    The number of anti-dilutive securities not included in the calculation of diluted net income per share were as follows (in thousands):

Three Months Ended June 30,Six Months Ended June 30,
 2021202020212020
Restricted stock subject to vesting— 174 — 121 
Convertible senior notes— 3,823 — — 
Warrants related to the issuance of convertible senior notes4,451 3,823 4,451 3,823 
Total anti-dilutive securities4,451 7,820 4,451 3,944 
See Note 11, Long-term Debt for further information on the convertible senior notes and warrants related to the issuance of convertible notes.

The Company’s Board of Directors authorized the repurchase of up to $315.0 million of Company common stock through a stock repurchase program expiring December 31, 2022. The program could be suspended or discontinued at any time, based on market, economic, or business conditions. The timing and amount of repurchase transactions will be determined by management based on its evaluation of market conditions, share price, and other factors. Since the program’s inception on August 11, 2008, the Company has repurchased approximately $251.4 million (16.0 million shares) of outstanding common stock through June 30, 2021.
XML 24 R14.htm IDEA: XBRL DOCUMENT v3.21.2
Balance Sheet Components
6 Months Ended
Jun. 30, 2021
Balance Sheet Related Disclosures [Abstract]  
Balance Sheet Components Balance Sheet Components
June 30, 2021 (unaudited)December 31, 2020
Accounts receivable:(in thousands)
Billed accounts receivable, net$87,920 $85,998 
Unbilled revenues, net61,798 47,087 
Total$149,718 $133,085 
Property and equipment:  
Computer hardware (useful life of 3 years)
$17,344 $15,640 
Software (useful life of 1 to 7 years)
6,012 5,342 
Furniture and fixtures (useful life of 5 years)
4,490 4,597 
Leasehold improvements (useful life of 5 years)
7,041 6,607 
Less: Accumulated depreciation(22,763)(20,284)
Total$12,124 $11,902 
Other current liabilities:  
Estimated fair value of contingent consideration liability (1)$24,836 $33,943 
Current operating lease liabilities10,148 10,321 
Accrued variable compensation19,322 27,527 
Deferred revenues6,287 9,422 
Other current liabilities6,032 7,652 
Deferred employer FICA payments11,038 5,523 
Payroll related costs6,759 5,738 
Professional fees885 736 
Accrued medical claims expense2,376 2,405 
Total$87,683 $103,267 
Other non-current liabilities:  
Deferred income taxes$17,481 $20,911 
Reserve for uncertain tax positions10,687 8,009 
Deferred compensation liability8,709 7,456 
Non-current software accrual5,491 5,748 
Deferred employer FICA payments— 5,523 
Other non-current liabilities3,446 2,434 
Total$45,814 $50,081 

(1)As of June 30, 2021 and December 31, 2020, represents the fair value estimate of revenue and earnings-based contingent consideration that may be realized by MedTouch, Brainjocks and the shareholders of PSL 12 months after the respective acquisitions.
XML 25 R15.htm IDEA: XBRL DOCUMENT v3.21.2
Allowance for Credit Losses
6 Months Ended
Jun. 30, 2021
Credit Loss [Abstract]  
Allowance for Credit Losses Allowance for Credit Losses
In accordance with ASU No. 2016-13, Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments, the Company evaluates its allowance based on expected losses rather than incurred losses, which is known as the current expected credit loss model. The allowance is determined using the loss rate approach and is measured on a collective (pool) basis when similar risk characteristics exist. Where financial instruments do not share risk characteristics, they are evaluated on an individual basis. The allowance is based on relevant available information, from internal and external sources, relating to past events, current conditions, and reasonable and supportable forecasts.

A higher allowance for credit losses on customers within certain industries was recorded during the six months ended June 30, 2020 due to the potential adverse impact the COVID-19 pandemic may have had on the estimate of future credit losses. As of June 30, 2021, the Company reassessed its allowance and determined that a higher loss rate was no longer necessary based on the Company's loss experience over the past year, the Company's risk assessment of customers, and its expectations for continued successful collection of its accounts receivable balances.

Activity in the allowance for credit losses is summarized as follows (in thousands):

Six Months Ended June 30,
 20212020
Balance at December 31$1,065 $464 
Impact of ASU No. 2016-13 adoption— 423 
Opening balance at January 11,065 887 
Charges to expense, net of recoveries672 956 
Uncollected balances written off(60)(128)
Balance at June 30$1,677 $1,715 
XML 26 R16.htm IDEA: XBRL DOCUMENT v3.21.2
Business Combinations
6 Months Ended
Jun. 30, 2021
Business Combinations [Abstract]  
Business Combinations Business Combinations
2020 Acquisitions

On January 6, 2020, the Company acquired substantially all of the assets of MedTouch, pursuant to the terms of an Asset Purchase Agreement. The acquisition of MedTouch expands the Company’s digital healthcare marketing services. The Company’s total allocable purchase price consideration was $20.0 million. The Company incurred approximately $0.6 million in transaction costs, which were expensed when incurred. The amount of goodwill deductible for tax purposes is $20.4 million.

On March 23, 2020, the Company acquired substantially all of the assets of Brainjocks, pursuant to the terms of an Asset Purchase Agreement. The acquisition of Brainjocks expands the Company’s strategic marketing and technical delivery services. On May 4, 2020, pursuant to a separate Asset Purchase Agreement, a wholly-owned subsidiary of the Company completed the acquisition of substantially all of the assets of Brainjocks Europe d.o.o. Novi Sad, an affiliate of Brainjocks operating in Serbia. With the completion of this acquisition, the Company has facilities located in Novi Sad, Serbia. The Company's total allocable purchase price consideration was $21.2 million. The Company incurred approximately $1.1 million in transaction costs, which were expensed when incurred. The amount of goodwill deductible for tax purposes, excluding contingent consideration, is $8.7 million.

On June 17, 2020, a wholly-owned subsidiary of the Company acquired PSL pursuant to the terms of a Stock Purchase Agreement. PSL is based in Medellin, Colombia, with additional locations in Bogota and Cali, Colombia. The acquisition of PSL strengthens the Company’s global delivery capabilities, enhancing its nearshore systems and custom software application development, testing, and ongoing support for customers. PSL added more than 600 professionals and strategic client relationships with customers across several industries. The Company's total allocable purchase price consideration was $83.1 million, net of cash acquired. The Company incurred approximately $2.1 million in transaction costs, which were expensed when incurred. The goodwill is non-deductible for tax purposes.
The acquisition date fair value of the consideration transferred for the 2020 acquisitions consisted of the following (in millions):
MedTouchBrainjocksPSL
Cash$13.9 $15.8 $60.8 
Company common stock issued at closing1.9 2.4 4.5 
Contingent consideration (1)4.2 (2)2.3 (3)17.7 (4)
Net working capital adjustment due to the seller(s)— 0.7 0.1 
Total allocable purchase price consideration$20.0 $21.2 $83.1 

(1)Represents the initial fair value estimate of additional revenue and earnings-based contingent consideration, which may be realized by the seller(s) 12 months after the closing date of the acquisition.
(2)MedTouch achieved a portion of the potential maximum cash payout pursuant to the Asset Purchase Agreement, and as a result, the Company paid $9.2 million in contingent consideration in the second quarter of 2021. The maximum cash payout that may have been realized by MedTouch was $10.2 million. The Company recorded a pre-tax adjustment in “Adjustment to fair value of contingent consideration” on the Unaudited Condensed Consolidated Statements of Operations of $0.2 million and $0.3 million during the three and six months ended June 30, 2021, respectively.
(3)The maximum cash payout that may be realized by Brainjocks is $4.8 million. As of June 30, 2021, the fair value of the contingent consideration was $3.9 million. The Company recorded a pre-tax adjustment in “Adjustment to fair value of contingent consideration” on the Consolidated Statements of Operations of $0.1 million and $0.3 million during the three and six months ended June 30, 2021.
(4)The maximum cash payout that may be realized by PSL is $22.2 million. As of June 30, 2021, the Company’s best estimate of the fair value of the contingent consideration was $20.9 million. The Company recorded a pre-tax adjustment to reduce the liability in “Adjustment to fair value of contingent consideration” on the Consolidated Statements of Operations of $0.7 million and $0.6 million during the three and six months ended June 30, 2021, respectively.

The Company has allocated the total purchase price consideration between tangible assets, identified intangible assets, liabilities, and goodwill as follows (in millions):

MedTouchBrainjocksPSL
Acquired tangible assets$4.7 $7.0 $11.6 
Identified intangible assets6.7 8.4 29.6 
Liabilities assumed(6.0)(4.9)(17.7)
Goodwill14.6 10.7 59.6 
Total purchase price$20.0 $21.2 $83.1 

As the Company completed its evaluation of the acquired assets and assumed liabilities of PSL, the Company recorded certain adjustments during the measurement period based on facts and circumstances that existed as of acquisition date. The measurement period adjustments resulted in an increase to the total purchase price of $1.1 million, an increase to acquired tangible assets of $0.5 million, a decrease to identified intangible assets of $0.4 million, an increase to liabilities assumed of $1.7 million and an increase to goodwill of $2.7 million from the acquisition date through June 30, 2021. The measurement period for the PSL acquisition is now closed.
The following table presents details of the intangible assets acquired during the year ended December 31, 2020 (dollars in millions).

 Weighted Average Useful LifeEstimated Useful LifeAggregate Acquisitions
Customer relationships6 years
5 - 7 years
$33.0 
Customer backlog1 year1 year9.6 
Non-compete agreements5 years5 years0.2 
Trade name1 year1 year0.4 
Developed software4 years
3 - 5 years
1.5 
Total acquired intangible assets $44.7 

Pro-forma Results of Operations

The following presents the unaudited pro-forma combined results of operations of the Company with PSL for the six months ended June 30, 2020, after giving effect to certain pro-forma adjustments and assuming PSL was acquired as of the beginning of 2019. Pro-forma results of operations have not been presented for MedTouch or Brainjocks because the effect of these acquisitions on the Company's consolidated financial statements were not material individually or in the aggregate.

These unaudited pro-forma results are presented in compliance with the adoption of ASU No. 2010-29, Business Combinations (Topic 805): Disclosure of Supplementary Pro Forma Information for Business Combinations, and are not necessarily indicative of the actual consolidated results of operations had the acquisition of PSL actually occurred on January 1, 2019 or of future results of operations of the consolidated entities (in thousands except per share data):

 Six Months Ended June 30,
 2020
Revenues$308,529 
Net income$19,400 
Basic net income per share$0.61 
Diluted net income per share$0.60 
Shares used in computing basic net income per share31,896 
Shares used in computing diluted net income per share32,602 
XML 27 R17.htm IDEA: XBRL DOCUMENT v3.21.2
Goodwill and Intangible Assets
6 Months Ended
Jun. 30, 2021
Goodwill and Intangible Assets Disclosure [Abstract]  
Goodwill and Intangible Assets Goodwill and Intangible Assets
 
Goodwill represents the excess purchase price over the fair value of net assets acquired, or net liabilities assumed, in a business combination. In accordance with ASC Topic 350, Intangibles – Goodwill and Other, the Company performs an annual impairment review in the fourth quarter and more frequently if events or changes in circumstances indicate that goodwill might be impaired. There was no indication that goodwill became impaired for the three and six months ended June 30, 2021.

Other intangible assets include customer relationships, non-compete arrangements, trade names, customer backlog, and developed software, which are being amortized over the assets’ estimated useful lives using the straight-line method. Estimated useful lives range from less than one year to ten years. Amortization of customer relationships, non-compete arrangements, trade names, customer backlog, and developed software is considered an operating expense and is included in “Amortization” in the accompanying Unaudited Condensed Consolidated Statements of Operations. The Company periodically reviews the estimated useful lives of its identifiable intangible assets, taking into consideration any events or circumstances that might result in a lack of recoverability or revised useful life. There was no indication that other intangible assets became impaired for the three and six months ended June 30, 2021.
Goodwill
 
The changes in the carrying amount of goodwill for the six months ended June 30, 2021 are as follows (in thousands):

 
Balance at December 31, 2020$427,928 
Purchase price allocation for acquisitions(1,811)
Effect of foreign currency translation adjustments(5,609)
Balance at June 30, 2021$420,508 

Intangible Assets with Definite Lives
 
The following table presents a summary of the Company’s intangible assets that are subject to amortization (in thousands):

 June 30, 2021December 31, 2020
 Gross
Carrying
Amounts
Accumulated
Amortization
Net
Carrying
Amounts
Gross
Carrying
Amounts
Accumulated
Amortization
Net
Carrying
Amounts
Customer relationships$90,306 $(46,035)$44,271 $97,497 $(44,185)$53,312 
Non-compete agreements1,424 (937)487 1,479 (831)648 
Customer backlog— — — 10,353 (5,941)4,412 
Trade name— — — 449 (281)168 
Developed software13,802 (9,623)4,179 13,962 (8,931)5,031 
Total$105,532 $(56,595)$48,937 $123,740 $(60,169)$63,571 

The estimated useful lives of identifiable intangible assets are as follows:

 
Customer relationships
5 - 10 years
Non-compete agreements
4 - 5 years
Customer backlog1 year
Trade name1 year
Developed software
1 - 7 years
 
Estimated annual amortization expense for the next five years ended December 31 and thereafter is as follows: (in thousands):

2021 remaining$8,135 
2022$15,615 
2023$10,772 
2024$7,624 
2025$4,431 
Thereafter$2,360 
XML 28 R18.htm IDEA: XBRL DOCUMENT v3.21.2
Long-term Debt
6 Months Ended
Jun. 30, 2021
Debt Disclosure [Abstract]  
Long-term Debt Long-term Debt
Revolving Credit Facility

On May 7, 2021, the Company entered into an Amended and Restated Credit Agreement (the "2021 Credit Agreement") with Wells Fargo Bank, National Association, as administrative agent and the other lenders parties thereto. The 2021 Credit Agreement provides for revolving credit borrowings up to a maximum principal amount of $200.0 million, subject to a commitment increase of $75.0 million. All outstanding amounts owed under the 2021 Credit Agreement become due and
payable no later than the final maturity date of May 7, 2026. As of June 30, 2021, there was no outstanding balance under the 2021 Credit Agreement. The Company incurred $0.6 million of deferred finance fees as a result of the 2021 Credit Agreement for the three and six months ended June 30, 2021.

The 2021 Credit Agreement also allows for the issuance of letters of credit in the aggregate amount of up to $10.0 million at any one time; outstanding letters of credit reduce the credit available for revolving credit borrowings. As of June 30, 2021, the Company had two outstanding letters of credit for $0.2 million. Substantially all of the Company’s assets are pledged to secure the credit facility.

Borrowings under the 2021 Credit Agreement bear interest at the Company’s option of the prime rate (3.25% on June 30, 2021) plus a margin ranging from 0.00% to 1.00% or one month LIBOR (0.10% on June 30, 2021) plus a margin ranging from 1.00% to 2.00%. The Company incurs an annual commitment fee of 0.15% to 0.20% on the unused portion of the line of credit. The additional margin amount and annual commitment fee are dependent on the level of outstanding borrowings. As of June 30, 2021, the Company had $199.8 million of unused borrowing capacity.

The Company is required to comply with various financial covenants under the 2021 Credit Agreement. Specifically, the Company is required to maintain a ratio of earnings before interest, taxes, depreciation, and amortization (“EBITDA”) plus stock compensation to interest expense for the previous four consecutive fiscal quarters of not less than 3.50 to 1.00, a ratio of indebtedness less the sum of all unsecured indebtedness, on a consolidated basis and without duplication, less all unrestricted cash and cash equivalents not to exceed $50,000,000 to EBITDA plus stock compensation of not more than 2.50 to 1.00, and a ratio of indebtedness less all unrestricted cash and cash equivalents not to exceed $50,000,000 to EBITDA plus stock compensation (“Consolidated Total Net Leverage Ratio”) of not more than 5.00 to 1.00. Additionally, the 2021 Credit Agreement currently restricts the payment of dividends that would result in a pro-forma Consolidated Total Net Leverage Ratio of more than 3.50 to 1.00.

At June 30, 2021, the Company was in compliance with all covenants under the 2021 Credit Agreement.
 
Convertible Senior Notes due 2025

On August 14, 2020, the Company issued $230.0 million aggregate principal amount of 1.250% Convertible Senior Notes Due 2025 (the “2025 Notes”) in a private placement to qualified institutional purchasers pursuant to an exemption from registration provided by Section 4(a)(2) and Rule 144A under the Securities Act of 1933, as amended (the “Securities Act”). The net proceeds from the offerings, after deducting the initial purchasers’ discount and issuance costs of $7.3 million, were $222.7 million. The Company used (i) $172.0 million of the net proceeds to partially repurchase the 2023 Notes (as defined and described below), and (ii) $26.7 million of the net proceeds to fund the cost of entering into the 2025 Notes Hedges (as defined below), after such cost was partially offset by the proceeds that the Company received from entering into the 2025 Notes Warrants (as defined below). The remaining proceeds of $24.0 million will be used for working capital or other general corporate purposes.

The 2025 Notes bear interest at a rate of 1.250% per year. Interest is payable in cash on February 1 and August 1 of each year. The 2025 Notes mature on August 1, 2025 unless earlier converted, redeemed or repurchased in accordance with their terms prior to such date. The initial conversion rate is 19.3538 shares of the Company’s common stock per $1,000 principal amount of 2025 Notes, which is equivalent to an initial conversion price of approximately $51.67 per share of common stock. After consideration of the 2025 Notes Hedges and 2025 Notes Warrants, the conversion rate is effectively hedged to a price of $81.05 per share of common stock. The conversion rate, and thus the conversion price, may be adjusted under certain circumstances as described in the indenture governing the 2025 Notes (the “2025 Indenture”). The Company may settle conversions by paying or delivering, as applicable, cash, shares of its common stock or a combination of cash and shares of its common stock, at the Company’s election, based on the applicable conversion rate(s). If a “make-whole fundamental change” (as defined in the 2025 Indenture) occurs, then the Company will in certain circumstances increase the conversion rate for a specified period of time. The Company’s intent is to settle the principal amount of the 2025 Notes in cash upon conversion.

Convertible Senior Notes due 2023

On September 11, 2018, the Company issued $143.8 million aggregate principal amount of 2.375% Convertible Senior Notes Due 2023 (the “2023 Notes”) in a private placement to qualified institutional purchasers pursuant to an exemption from registration provided by Section 4(a)(2) and Rule 144A under the Securities Act. The net proceeds from the offerings, after deducting the initial purchasers’ discount and issuance costs of $4.4 million, were $139.4 million.
The 2023 Notes bear interest at a rate of 2.375% per year. Interest is payable in cash on March 15 and September 15 of each year. The 2023 Notes mature on September 15, 2023, unless earlier converted, redeemed or repurchased in accordance with their terms prior to such date. The initial conversion rate is 26.5957 shares of the Company’s common stock per $1,000 principal amount of 2023 Notes, which is equivalent to an initial conversion price of approximately $37.60 per share of common stock. After consideration of the 2023 Notes Hedges (as defined below) and 2023 Notes Warrants (as defined below), the conversion rate is effectively hedged to a price of $46.62 per share of common stock. The conversion rate, and thus the conversion price, may be adjusted under certain circumstances as described in the indenture governing the 2023 Notes (the “2023 Indenture”). The Company may settle conversions by paying or delivering, as applicable, cash, shares of its common stock or a combination of cash and shares of its common stock, at the Company’s election, based on the applicable conversion rate(s). If a “make-whole fundamental change” (as defined in the 2023 Indenture) occurs, then the Company will in certain circumstances increase the conversion rate for a specified period of time. The Company’s intent is to settle the principal amount of the 2023 Notes in cash upon conversion.

In August and December 2020, the Company repurchased a portion of the outstanding 2023 Notes through individual, privately negotiated transactions (the “2023 Notes Partial Repurchase”), leaving 2023 Notes with an aggregate principal amount of $5.1 million outstanding as of June 30, 2021. The Company used $172.0 million of the net proceeds from the 2025 Notes issuance in August 2020 and $9.7 million of additional cash in December 2020 to complete the 2023 Notes Partial Repurchase, of which a total of $127.7 million and $52.7 million were allocated to the liability and equity components of the 2023 Notes, respectively, and $1.3 million was related to the payment of interest. The 2023 Notes Partial Repurchase resulted in a $4.5 million loss on extinguishment during the year ended December 31, 2020, which includes the proportionate amounts of unamortized debt discount and the remaining unamortized debt issuance costs of $2.4 million.

Other Terms of the Notes

The 2025 Notes and 2023 Notes (together, the “Notes”) may be converted at the holder’s option prior to the close of business on the business day immediately preceding August 1, 2025 and September 15, 2023 for the 2025 Notes and 2023 Notes, respectively, but only under the following circumstances:

during any calendar quarter commencing after the calendar quarter ending on September 30, 2020 and December 31, 2018 for the 2025 Notes and 2023 Notes, respectively, if the last reported sale price per share of the Company’s common stock exceeds 130% of the applicable conversion price for each of at least 20 trading days during the 30 consecutive trading days ending on, and including, the last trading day of the immediately preceding calendar quarter;
during the five consecutive business days immediately after any 10 consecutive trading day period (such 10 consecutive trading day period, the “measurement period”) in which the trading price per $1,000 principal amount of notes for each trading day of the measurement period was less than 98% of the product of the last reported sale price per share of the Company’s common stock on such trading day and the applicable conversion rate on such trading day;
upon the occurrence of certain corporate events or distributions on the Company’s common stock described in the 2025 Indenture or the 2023 Indenture, as applicable; and
at any time from, and including, February 3, 2025 and March 15, 2023 for the 2025 Notes and 2023 Notes, respectively, until the close of business on the second scheduled trading day immediately before the applicable maturity date.

The Company may not redeem the Notes at its option before maturity. If a “fundamental change” (as defined in the 2025 Indenture or 2023 Indenture) occurs, then, except as described in the 2025 Indenture or 2023 Indenture, noteholders may require the Company to repurchase their Notes at a cash repurchase price equal to the principal amount of the Notes to be repurchased, plus accrued and unpaid interest, if any.

During the three months ended June 30, 2021, the conditional conversion features of the 2023 Notes and 2025 Notes were triggered as the last reported sale price of the Company's common stock was greater than or equal to 130% of the conversion price for at least 20 trading days in the period of 30 consecutive trading days ending on June 30, 2021 (the last trading day of the fiscal quarter). Therefore, the 2023 Notes and 2025 Notes are currently convertible, in whole or in part, at the option of the holder during the quarter ending September 30, 2021. Whether the 2023 Notes and 2025 Notes will be convertible following such period will depend on the continued satisfaction of this condition or another conversion condition in the future. Since the Company has the election of repaying the 2023 Notes and 2025 Notes in cash, shares of the Company’s common stock, or a combination of both, the Company continued to classify the liability component of the 2023 Notes and 2025 Notes as long-term debt on the Condensed Consolidated Balance Sheet as of June 30, 2021 (unaudited). As of the date of this filing, none of the holders of the 2023 Notes and 2025 Notes have submitted requests for conversion. Based on the closing price of the Company's common stock of $80.42 per share on June 30, 2021, the conversion values of the 2023 Notes and 2025 Notes were greater than the principal amount of the Notes outstanding on a per note basis.
The liability component of the 2025 Notes and 2023 Notes consisted of the following (in thousands):

 June 30, 2021 (unaudited)
December 31, 2020
Liability component:2025 Notes2023 Notes2025 Notes2023 Notes
     Principal$230,000 $5,090 $230,000 $5,090 
     Less: Unamortized debt discount(41,311)(352)(45,690)(426)
               Unamortized debt issuance costs(4,696)(64)(5,271)(79)
Net carrying amount$183,993 $4,674 $179,039 $4,585 

Interest expense for the three and six months ended June 30, 2021 and 2020 related to the 2025 Notes and 2023 Notes consisted of the following (in thousands):

2025 Notes
Three Months Ended June 30,Six Months Ended June 30,
2021202020212020
Coupon interest$719 $— $1,438 $— 
Amortization of debt discount2,200 — 4,379 — 
Amortization of debt issuance costs288 — 575 — 
     Total interest expense recognized$3,207 $— $6,392 $— 

2023 Notes
Three Months Ended June 30,Six Months Ended June 30,
2021202020212020
Coupon interest$30 $853 $60 $1,707 
Amortization of debt discount37 992 74 1,969 
Amortization of debt issuance costs206 15 412 
     Total interest expense recognized$75 $2,051 $149 $4,088 

Convertible Notes Hedges

In connection with the issuance of the 2025 Notes and 2023 Notes, the Company entered into privately negotiated convertible note hedge transactions (the “2025 Notes Hedges” and the “2023 Notes Hedges,” respectively, and together, the “Notes Hedges”) with certain of the initial purchasers or their respective affiliates and/or other financial institutions (the “Option Counterparties”). The 2025 Notes Hedges provide the Company with the option to acquire, on a net settlement basis, approximately 4.5 million shares of common stock at a strike price of $51.67, which is equal to the number of shares of common stock that notionally underlie the 2025 Notes and correspond to the conversion price of the 2025 Notes. The 2023 Notes Hedges provide the Company with the option to acquire, on a net settlement basis, approximately 0.1 million shares (after consideration of the 2023 Notes Partial Repurchase) of common stock at a strike price of $37.60, which is equal to the number of shares of common stock that notionally underlie the 2023 Notes and correspond to the conversion price of the 2023 Notes after the partial repurchase discussed above. If the Company elects cash settlement and exercises the 2025 Notes Hedges or the 2023 Notes Hedges, the aggregate amount of cash received from the Option Counterparties will cover the aggregate amount of cash that the Company would be required to pay to the holders of the Notes, less the principal amount thereof. The Notes Hedges do not meet the criteria for separate accounting as a derivative as they are indexed to the Company’s stock and are accounted for as freestanding financial instruments. In August and December 2020, in connection with the 2023 Notes Partial Repurchase, the Company terminated 2023 Notes Hedges corresponding to approximately 3.7 million shares for cash proceeds of $50.1 million. The proceeds were recorded as an increase to additional paid-in capital within stockholders' equity.

Convertible Notes Warrants

In connection with the issuance of the 2025 Notes and 2023 Notes, the Company also sold net-share-settled warrants (the “2025 Notes Warrants” and the “2023 Notes Warrants,” respectively, and together, the “Notes Warrants”) in privately negotiated transactions with the Option Counterparties. The strike price of the 2025 Notes Warrants and 2023 Notes Warrants
was approximately $81.05 and $46.62 per share, respectively, and is subject to certain adjustments under the terms of their respective Notes Warrants. As a result of the 2025 Notes Warrants and 2023 Notes Warrants and related transactions, the Company is required to recognize incremental dilution of earnings per share to the extent the average share price is over $81.05 for any fiscal quarter for the 2025 Notes Warrants and $46.62 for the 2023 Notes Warrants. The 2025 Notes Warrants and 2023 Notes Warrants expire over a period of 100 trading days commencing on November 1, 2025 and December 15, 2023, respectively, and may be settled in net shares of common stock or net cash at the Company’s election. In August and December 2020, in connection with the 2023 Notes Partial Repurchase, the Company repurchased a portion of the 2023 Notes Warrants through a cash payment of $43.0 million. The repurchase was recorded as a reduction in additional paid-in capital within stockholders' equity.
XML 29 R19.htm IDEA: XBRL DOCUMENT v3.21.2
Income Taxes
6 Months Ended
Jun. 30, 2021
Income Tax Disclosure [Abstract]  
Income Taxes Income Taxes
 
The Company files income tax returns in the U.S. federal jurisdiction and various state and foreign jurisdictions. The Internal Revenue Service (the “IRS”) has completed examinations of the Company’s U.S. income tax returns or the statute of limitations has passed on returns for the years through 2015. The Company’s 2016 and 2017 U.S. income tax returns are currently under examination by the IRS. The IRS has sought to disallow research credits in the total amount of $5.7 million on the Company’s 2011 through 2015 U.S. income tax returns. The Company has exhausted all administrative appeals and formal mediation and has filed suit to resolve this dispute. The Company is awaiting a court date to be set by the U.S. Tax Court for the 2011 through 2013 returns. The Company believes the research credits taken are appropriate and intends to vigorously defend its position. An amount of adjustment, if any, and the timing of such adjustment are not reasonably possible to estimate at this time. The total amount of research credits taken, or expected to be taken, in the Company’s income tax returns for 2011 through June 30, 2021 is approximately $23.4 million.
 
Under the provisions of the ASC Subtopic 740-10-25, Income Taxes - Recognition, the Company had an unrecognized tax benefit of $9.5 million (excluding $1.2 million of interest) as of June 30, 2021.

The Company’s effective tax rate was 27.0% and 23.6% for the three and six months ended June 30, 2021, respectively, compared to 31.8% and 22.8% for the three and six months ended June 30, 2020, respectively. The effective tax rate increased during the six months ended June 30, 2021 primarily due to the relative decrease in tax benefits recognized for share-based compensation deductions partially offset by a decrease in non-deductible acquisition costs during the six months ended June 30, 2021 compared to the prior year. As of June 30, 2021, the Company’s net non-current deferred tax liability was $17.5 million. Deferred tax liabilities primarily relate to goodwill, other intangibles, fixed assets, prepaid expenses and issuance of the Notes. Net non-current deferred tax liabilities are recorded in “Other non-current liabilities” on the Condensed Consolidated Balance Sheets as of June 30, 2021 (unaudited) and December 31, 2020.

In general, it is the Company’s practice and intention to reinvest the earnings of the Company’s foreign subsidiaries in those operations. However, the Company has determined that the foreign earnings of the Company’s Chinese and Colombian subsidiaries are no longer permanently reinvested and may repatriate available earnings from time to time. Management intends to continue to permanently reinvest all other remaining current and prior earnings in its other foreign subsidiaries.

Excluding China and Colombia, foreign unremitted earnings of entities not included in the United States tax return have been included in the consolidated financial statements without giving effect to the United States taxes that may be payable on distribution to the United States because it is not anticipated such earnings will be remitted to the United States. Under current applicable tax laws, if the Company elects to remit some or all of the funds it has designated as indefinitely reinvested outside the United States, the amount remitted would be subject to non-U.S. withholding taxes. As of June 30, 2021, the aggregate unremitted earnings of the Company’s foreign subsidiaries for which a deferred income tax liability has not been recorded was approximately $16.4 million, and the unrecognized deferred tax liability on unremitted earnings was approximately $1.1 million.
XML 30 R20.htm IDEA: XBRL DOCUMENT v3.21.2
Derivatives
6 Months Ended
Jun. 30, 2021
Derivative Instruments and Hedging Activities Disclosure [Abstract]  
Derivatives DerivativesIn the normal course of business, the Company uses derivative financial instruments to manage foreign currency exchange rate risk. Currency exposure is monitored and managed by the Company as part of its risk management program which seeks to reduce the potentially adverse effects that market volatility could have on operating results. The Company’s derivative financial instruments consist of non-deliverable and deliverable foreign currency forward contracts. Derivative financial instruments are neither held nor issued by the Company for trading purposes.
Derivatives Not Designated as Hedging Instruments

Both the gain or loss on the derivatives not designated as hedging instruments and the offsetting loss or gain on the hedged item attributable to the hedged risk are recognized in current earnings. Realized gains or losses and changes in the estimated fair value of foreign currency forward contracts that have not been designated as hedges were immaterial during each of the three and six months ended June 30, 2021 and 2020. Gains and losses on these contracts are recorded in net other expense (income) and net interest expense in the Unaudited Condensed Consolidated Statements of Operations and are offset by losses and gains on the related hedged items.

The notional amounts of the Company’s derivative instruments outstanding were as follows (in thousands):

 June 30, 2021 (unaudited)December 31, 2020
Derivatives not designated as hedges  
Foreign exchange contracts$20,753 $16,008 
Total derivatives not designated as hedges$20,753 $16,008 
XML 31 R21.htm IDEA: XBRL DOCUMENT v3.21.2
Fair Value Measurements
6 Months Ended
Jun. 30, 2021
Fair Value Disclosures [Abstract]  
Fair Value Measurements Fair Value Measurements
The fair value hierarchy is based on inputs to valuation techniques that are used to measure fair value that are either observable or unobservable. Observable inputs reflect assumptions market participants would use in pricing an asset or liability based on market data obtained from independent sources while unobservable inputs reflect a reporting entity’s pricing based upon its own market assumptions.

The fair value hierarchy consists of the following three levels:

Level 1 – Inputs are quoted prices in active markets for identical assets or liabilities.

Level 2 – Inputs are quoted prices for similar assets or liabilities in an active market, quoted prices for identical or similar assets or liabilities in markets that are not active, inputs other than quoted prices that are observable and market-corroborated inputs which are derived principally from or corroborated by observable market data.

Level 3 – Inputs are derived from valuation techniques in which one or more significant inputs or value drivers are unobservable.

All highly liquid investments with maturities at date of purchase of three months or less are considered to be cash equivalents. Based on their short-term nature, the carrying value of cash equivalents approximate their fair value. As of June 30, 2021 and December 31, 2020, $76.6 million and $66.0 million, respectively, of the Company’s cash and cash equivalents balance related to money-market fund investments. These short-term money-market funds are considered Level 1 investments.

The Company has a deferred compensation plan, which is funded through company-owned life insurance (“COLI”) policies. The COLI asset is carried at fair value derived from quoted market prices of investments within the COLI policies, which are considered Level 2 inputs. The fair value of the COLI asset was $9.8 million and $7.4 million as of June 30, 2021 and December 31, 2020, respectively.

The Company estimates the fair value of each foreign exchange forward contract by using the present value of expected cash flows. The estimate takes into account the difference between the current market forward price and contracted forward price for each foreign exchange contract and applies the difference in the rates to each outstanding contract. Valuations for all derivatives fall within Level 2 of the GAAP valuation hierarchy. The fair values of the Company’s derivative instruments outstanding as of June 30, 2021 and December 31, 2020 were immaterial.

The Company has contingent consideration liabilities related to acquisitions which are measured on a recurring basis and recorded at fair value, determined using the discounted cash flow method. The inputs used to calculate the fair value of the contingent consideration liabilities are considered to be Level 3 inputs due to the lack of relevant market activity and significant management judgment. An increase in future cash flows may result in a higher estimated fair value while a decrease in future cash flows may result in a lower estimated fair value of the contingent consideration liabilities. Remeasurements to fair value are recorded in adjustment to fair value of contingent consideration in the Unaudited Condensed Consolidated Statements of
Operations. Refer to Note 7, Balance Sheet Components, for the estimated fair value of the contingent consideration liabilities as of June 30, 2021 and December 31, 2020.

The fair value of the Notes is measured using quoted price inputs. The Notes are not actively traded, and thus the price inputs represent a Level 2 measurement. As the quoted price inputs are highly variable from day to day, the fair value estimates could significantly increase or decrease.

The Notes are carried at their principal amount less unamortized debt discount and issuance costs, and are not carried at fair value at each period end. The original debt discount was calculated at a market interest rate for nonconvertible debt at the time of issuance, which represented a Level 3 fair value measurement. The approximate fair value of the 2025 Notes as of June 30, 2021 and December 31, 2020 was $376.3 million and $263.4 million, respectively, and the approximate fair value of the 2023 Notes as of June 30, 2021 and December 31, 2020 was $10.3 million and $7.1 million, respectively. The fair values were estimated on the basis of inputs that are observable in the market and are considered Level 2 fair value measurements.
XML 32 R22.htm IDEA: XBRL DOCUMENT v3.21.2
Leases
6 Months Ended
Jun. 30, 2021
Commitments and Contingencies Disclosure [Abstract]  
Leases Leases
The Company leases office space under various operating lease agreements, which have remaining lease terms of less than one year to eight years. Operating leases are included in operating lease right-of-use assets, other current liabilities, and operating lease liabilities on the consolidated balance sheet. Operating lease expense for the three and six months ended June 30, 2021 was $3.3 million and $6.6 million, respectively, and $2.9 million and $5.7 million for the three and six months ended June 30, 2020, respectively.

Supplemental balance sheet information related to leases was as follows (in thousands):

 June 30, 2021December 31, 2020
Other current liabilities$10,148 $10,321 
Operating lease liabilities25,871 29,098 
Total$36,019 $39,419 

Future minimum lease payments as of June 30, 2021 were as follows (in thousands):

 June 30, 2021
2021 remaining$3,803 
202210,304 
20238,092 
20246,257 
20254,706 
Thereafter5,901 
Total future lease payments39,063 
     Less implied interest(3,044)
Total$36,019 
XML 33 R23.htm IDEA: XBRL DOCUMENT v3.21.2
Commitments and Contingencies
6 Months Ended
Jun. 30, 2021
Commitments and Contingencies Disclosure [Abstract]  
Commitments and Contingencies Commitments and ContingenciesFrom time to time the Company is involved in legal proceedings, claims and litigation related to employee claims, contractual disputes and taxes in the ordinary course of business. Although the Company cannot predict the outcome of such matters, currently the Company has no reason to believe the disposition of any current matter could reasonably be expected to have a material adverse impact on the Company’s financial position, results of operations or the ability to carry on any of its business activities.
XML 34 R24.htm IDEA: XBRL DOCUMENT v3.21.2
Summary of Significant Accounting Policies (Policies)
6 Months Ended
Jun. 30, 2021
Accounting Policies [Abstract]  
Use of Estimates
The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues and expenses during the reporting periods. Actual results could differ from those estimates, and such differences could be material to the financial statements.

There have been no changes to significant accounting policies described in the Annual Report on Form 10-K for the year ended December 31, 2020 that have had a material impact on the Company’s condensed consolidated financial statements and related notes.
Recent Accounting Pronouncements In August 2020, the Financial Accounting Standards Board (the “FASB”) issued Accounting Standards Update (“ASU”) No. 2020-06, Debt—Debt with Conversion and Other Options (Subtopic 470-20) and Derivatives and Hedging - Contracts in Entity’s Own Equity (Subtopic 815-40), which simplifies the accounting for convertible instruments. The guidance removes certain accounting models that separate the embedded conversion features from the host contract for convertible instruments, requiring bifurcation only if the convertible debt feature qualifies as a derivative or for convertible debt issued at a substantial premium. The ASU removes certain settlement conditions required for equity contracts to qualify for the derivative scope exception, permitting more contracts to qualify for the exception. In addition, the guidance eliminates the treasury stock method to calculate diluted earnings per share for convertible instruments and requires the use of the if-converted method. The ASU is effective for annual reporting periods beginning after December 15, 2021, including interim reporting periods within those annual periods, with early adoption permitted no earlier than the fiscal year beginning after December 15, 2020. The ASU allows entities to use a modified or full retrospective transition method. Under the modified approach, entities will apply the guidance to all financial instruments that are outstanding as of the beginning of the year of adoption with the cumulative effect recognized as an adjustment to the opening balance of retained earnings. Under the full retrospective method, entities will apply the guidance to all outstanding financial instruments for each prior reporting period presented. The Company will adopt this ASU on January 1, 2022 and is currently evaluating the method of adoption and the related impact of the new guidance on earnings per share and on its financial statements.
Revenue from Contract with Customer
The Company’s revenues consist of services and software and hardware sales. In accordance with Accounting Standards Codification (“ASC”) Topic 606, Revenue from Contracts with Customers, revenues are recognized when control of services or goods are transferred to clients, in an amount that reflects the consideration the Company expects to be entitled to in exchange for those services or goods.

Services Revenues

Services revenues are primarily comprised of professional services that include developing, implementing, automating and extending business processes, technology infrastructure, and software applications. The Company’s professional services span multiple industries, platforms and solutions; however, the Company has remained relatively diversified and does not believe that it has significant revenue concentration within any single industry, platform or solution.

Professional services revenues are recognized over time as services are rendered. Most projects are performed on a time and materials basis, while a portion of revenues is derived from projects performed on a fixed fee or fixed fee percent complete basis. For time and material contracts, revenues are generally recognized and invoiced by multiplying the number of hours expended in the performance of the contract by the hourly rates. For fixed fee contracts, revenues are generally recognized and invoiced by multiplying the fixed rate per time period established in the contract by the number of time periods elapsed. For fixed fee percent complete contracts, revenues are generally recognized using an input method based on the ratio of hours expended to total estimated hours, and the client is invoiced according to the agreed-upon schedule detailing the amount and timing of payments in the contract.

Clients are typically billed monthly for services provided during that month but can be billed on a more or less frequent basis as determined by the contract. If the time is worked and approved at the end of a fiscal period and the invoice has not yet been sent to the client, the amount is recorded as revenue once the Company verifies all other revenue recognition criteria have been met, and the amount is classified as a receivable as the right to consideration is unconditional at that point. Amounts invoiced in excess of revenues recognized are contract liabilities, which are classified as deferred revenues in the Unaudited Condensed Consolidated Balance Sheet. The term between invoicing and payment due date is not significant. Contracts for professional services provide for a general right, to the client or the Company, to cancel or terminate the contract within a given period of time (generally 10 to 30 days’ notice is required). The client is responsible for any time and expenses incurred up to the date of cancellation or termination of the contract. Certain contracts may include volume discounts or holdbacks, which are accounted for as variable consideration, but are not typically significant. The Company estimates variable consideration based on historical experience and forecasted sales and includes the variable consideration in the transaction price.

Other services revenues are comprised of hosting fees, partner referral fees, maintenance agreements, training and internally developed software-as-a-service (“SaaS”) sales. Revenues from hosting fees, maintenance agreements, training and internally developed SaaS sales are generally recognized over time using a time-based measure of progress as services are rendered. Partner referral fees are recorded at a point in time upon meeting specified requirements to earn the respective fee.

On many professional service projects, the Company is also reimbursed for out-of-pocket expenses including travel and other project-related expenses. These reimbursements are included as a component of the transaction price of the respective professional services contract and are invoiced as the expenses are incurred. The Company structures its professional services arrangements to recover the cost of reimbursable expenses without a markup.

Software and Hardware Revenues

Software and hardware revenues are comprised of third-party software and hardware resales, in which the Company is considered the agent, and sales of internally developed software, in which the Company is considered the principal. Third-party software and hardware revenues are recognized and invoiced when the Company fulfills its obligation to arrange the sale, which occurs when the purchase order with the vendor is executed and the customer has access to the software or the hardware has been shipped to the customer. Internally developed software revenues are recognized and invoiced when control is transferred to the customer, which occurs when the software has been made available to the customer and the license term has commenced. Revenues from third-party software and hardware sales are recorded on a net basis, while revenues from internally developed
software sales are recorded on a gross basis. There are no significant cancellation or termination-type provisions for the Company’s software and hardware sales, and the term between invoicing and payment due date is not significant.

    Revenues are presented net of taxes assessed by governmental authorities. Sales taxes are generally collected and subsequently remitted on all software and hardware sales and certain services transactions as appropriate.

Arrangements with Multiple Performance Obligations

Arrangements with clients may contain multiple promises such as delivery of software, hardware, professional services or post-contract support services. These promises are accounted for as separate performance obligations if they are distinct. For arrangements with clients that contain multiple performance obligations, the transaction price is allocated to the separate performance obligations based on estimated relative standalone selling price, which is estimated by the expected cost plus a margin approach, taking into consideration market conditions and competitive factors. Because contracts that contain multiple performance obligations are typically short term due to the contract cancellation provisions, the allocation of the transaction price to the separate performance obligations is not considered a significant estimate.

Contract Costs

In accordance with the terms of the Company’s sales commission plan, commissions are not earned until the related revenue is recognized. Therefore, sales commissions are expensed as they are earned. Certain sales incentives are accrued based on achievement of specified bookings goals. For these incentives, the Company applies the practical expedient that allows the Company to expense the incentives as incurred because the amortization period would have been one year or less.
Stock-Based Compensation Stock-based compensation is accounted for in accordance with ASC Topic 718, Compensation – Stock Compensation. Under this guidance, the Company recognizes share-based compensation ratably using the straight-line attribution method over the requisite service period, which is generally three years. The fair value of restricted stock awards is based on the value of the Company’s common stock on the date of the grant.
Allowance for Credit Losses
In accordance with ASU No. 2016-13, Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments, the Company evaluates its allowance based on expected losses rather than incurred losses, which is known as the current expected credit loss model. The allowance is determined using the loss rate approach and is measured on a collective (pool) basis when similar risk characteristics exist. Where financial instruments do not share risk characteristics, they are evaluated on an individual basis. The allowance is based on relevant available information, from internal and external sources, relating to past events, current conditions, and reasonable and supportable forecasts.

A higher allowance for credit losses on customers within certain industries was recorded during the six months ended June 30, 2020 due to the potential adverse impact the COVID-19 pandemic may have had on the estimate of future credit losses. As of June 30, 2021, the Company reassessed its allowance and determined that a higher loss rate was no longer necessary based on the Company's loss experience over the past year, the Company's risk assessment of customers, and its expectations for continued successful collection of its accounts receivable balances.
Goodwill and Intangible Assets
Goodwill represents the excess purchase price over the fair value of net assets acquired, or net liabilities assumed, in a business combination. In accordance with ASC Topic 350, Intangibles – Goodwill and Other, the Company performs an annual impairment review in the fourth quarter and more frequently if events or changes in circumstances indicate that goodwill might be impaired. There was no indication that goodwill became impaired for the three and six months ended June 30, 2021.

Other intangible assets include customer relationships, non-compete arrangements, trade names, customer backlog, and developed software, which are being amortized over the assets’ estimated useful lives using the straight-line method. Estimated useful lives range from less than one year to ten years. Amortization of customer relationships, non-compete arrangements, trade names, customer backlog, and developed software is considered an operating expense and is included in “Amortization” in the accompanying Unaudited Condensed Consolidated Statements of Operations. The Company periodically reviews the estimated useful lives of its identifiable intangible assets, taking into consideration any events or circumstances that might result in a lack of recoverability or revised useful life. There was no indication that other intangible assets became impaired for the three and six months ended June 30, 2021.
Long-term Debt , the Company repurchased a portion of the outstanding 2023 Notes through individual, privately negotiated transactions (the “2023 Notes Partial Repurchase”), leaving 2023 Notes with an aggregate principal amount of $5.1 million outstanding as of June 30, 2021. The Company used $172.0 million of the net proceeds from the 2025 Notes issuance in August 2020 and $9.7 million of additional cash in December 2020 to complete the 2023 Notes Partial Repurchase, of which a total of $127.7 million and $52.7 million were allocated to the liability and equity components of the 2023 Notes, respectively, and $1.3 million was related to the payment of interest. The 2023 Notes Partial Repurchase resulted in a $4.5 million loss on extinguishment during the year ended December 31, 2020, which includes the proportionate amounts of unamortized debt discount and the remaining unamortized debt issuance costs of $2.4 million.
Convertible Notes Hedges

In connection with the issuance of the 2025 Notes and 2023 Notes, the Company entered into privately negotiated convertible note hedge transactions (the “2025 Notes Hedges” and the “2023 Notes Hedges,” respectively, and together, the “Notes Hedges”) with certain of the initial purchasers or their respective affiliates and/or other financial institutions (the “Option Counterparties”). The 2025 Notes Hedges provide the Company with the option to acquire, on a net settlement basis, approximately 4.5 million shares of common stock at a strike price of $51.67, which is equal to the number of shares of common stock that notionally underlie the 2025 Notes and correspond to the conversion price of the 2025 Notes. The 2023 Notes Hedges provide the Company with the option to acquire, on a net settlement basis, approximately 0.1 million shares (after consideration of the 2023 Notes Partial Repurchase) of common stock at a strike price of $37.60, which is equal to the number of shares of common stock that notionally underlie the 2023 Notes and correspond to the conversion price of the 2023 Notes after the partial repurchase discussed above. If the Company elects cash settlement and exercises the 2025 Notes Hedges or the 2023 Notes Hedges, the aggregate amount of cash received from the Option Counterparties will cover the aggregate amount of cash that the Company would be required to pay to the holders of the Notes, less the principal amount thereof. The Notes Hedges do not meet the criteria for separate accounting as a derivative as they are indexed to the Company’s stock and are accounted for as freestanding financial instruments. In August and December 2020, in connection with the 2023 Notes Partial Repurchase, the Company terminated 2023 Notes Hedges corresponding to approximately 3.7 million shares for cash proceeds of $50.1 million. The proceeds were recorded as an increase to additional paid-in capital within stockholders' equity.

Convertible Notes Warrants

In connection with the issuance of the 2025 Notes and 2023 Notes, the Company also sold net-share-settled warrants (the “2025 Notes Warrants” and the “2023 Notes Warrants,” respectively, and together, the “Notes Warrants”) in privately negotiated transactions with the Option Counterparties. The strike price of the 2025 Notes Warrants and 2023 Notes Warrants
was approximately $81.05 and $46.62 per share, respectively, and is subject to certain adjustments under the terms of their respective Notes Warrants. As a result of the 2025 Notes Warrants and 2023 Notes Warrants and related transactions, the Company is required to recognize incremental dilution of earnings per share to the extent the average share price is over $81.05 for any fiscal quarter for the 2025 Notes Warrants and $46.62 for the 2023 Notes Warrants. The 2025 Notes Warrants and 2023 Notes Warrants expire over a period of 100 trading days commencing on November 1, 2025 and December 15, 2023, respectively, and may be settled in net shares of common stock or net cash at the Company’s election. In August and December 2020, in connection with the 2023 Notes Partial Repurchase, the Company repurchased a portion of the 2023 Notes Warrants through a cash payment of $43.0 million. The repurchase was recorded as a reduction in additional paid-in capital within stockholders' equity.
Derivatives In the normal course of business, the Company uses derivative financial instruments to manage foreign currency exchange rate risk. Currency exposure is monitored and managed by the Company as part of its risk management program which seeks to reduce the potentially adverse effects that market volatility could have on operating results. The Company’s derivative financial instruments consist of non-deliverable and deliverable foreign currency forward contracts. Derivative financial instruments are neither held nor issued by the Company for trading purposes.
Derivatives Not Designated as Hedging Instruments

Both the gain or loss on the derivatives not designated as hedging instruments and the offsetting loss or gain on the hedged item attributable to the hedged risk are recognized in current earnings. Realized gains or losses and changes in the estimated fair value of foreign currency forward contracts that have not been designated as hedges were immaterial during each of the three and six months ended June 30, 2021 and 2020. Gains and losses on these contracts are recorded in net other expense (income) and net interest expense in the Unaudited Condensed Consolidated Statements of Operations and are offset by losses and gains on the related hedged items.
Fair Value Measurement
The fair value hierarchy is based on inputs to valuation techniques that are used to measure fair value that are either observable or unobservable. Observable inputs reflect assumptions market participants would use in pricing an asset or liability based on market data obtained from independent sources while unobservable inputs reflect a reporting entity’s pricing based upon its own market assumptions.

The fair value hierarchy consists of the following three levels:

Level 1 – Inputs are quoted prices in active markets for identical assets or liabilities.

Level 2 – Inputs are quoted prices for similar assets or liabilities in an active market, quoted prices for identical or similar assets or liabilities in markets that are not active, inputs other than quoted prices that are observable and market-corroborated inputs which are derived principally from or corroborated by observable market data.

Level 3 – Inputs are derived from valuation techniques in which one or more significant inputs or value drivers are unobservable.

All highly liquid investments with maturities at date of purchase of three months or less are considered to be cash equivalents. Based on their short-term nature, the carrying value of cash equivalents approximate their fair value. As of June 30, 2021 and December 31, 2020, $76.6 million and $66.0 million, respectively, of the Company’s cash and cash equivalents balance related to money-market fund investments. These short-term money-market funds are considered Level 1 investments.

The Company has a deferred compensation plan, which is funded through company-owned life insurance (“COLI”) policies. The COLI asset is carried at fair value derived from quoted market prices of investments within the COLI policies, which are considered Level 2 inputs. The fair value of the COLI asset was $9.8 million and $7.4 million as of June 30, 2021 and December 31, 2020, respectively.

The Company estimates the fair value of each foreign exchange forward contract by using the present value of expected cash flows. The estimate takes into account the difference between the current market forward price and contracted forward price for each foreign exchange contract and applies the difference in the rates to each outstanding contract. Valuations for all derivatives fall within Level 2 of the GAAP valuation hierarchy. The fair values of the Company’s derivative instruments outstanding as of June 30, 2021 and December 31, 2020 were immaterial.

The Company has contingent consideration liabilities related to acquisitions which are measured on a recurring basis and recorded at fair value, determined using the discounted cash flow method. The inputs used to calculate the fair value of the contingent consideration liabilities are considered to be Level 3 inputs due to the lack of relevant market activity and significant management judgment. An increase in future cash flows may result in a higher estimated fair value while a decrease in future cash flows may result in a lower estimated fair value of the contingent consideration liabilities. Remeasurements to fair value are recorded in adjustment to fair value of contingent consideration in the Unaudited Condensed Consolidated Statements of
Operations. Refer to Note 7, Balance Sheet Components, for the estimated fair value of the contingent consideration liabilities as of June 30, 2021 and December 31, 2020.

The fair value of the Notes is measured using quoted price inputs. The Notes are not actively traded, and thus the price inputs represent a Level 2 measurement. As the quoted price inputs are highly variable from day to day, the fair value estimates could significantly increase or decrease.

The Notes are carried at their principal amount less unamortized debt discount and issuance costs, and are not carried at fair value at each period end. The original debt discount was calculated at a market interest rate for nonconvertible debt at the time of issuance, which represented a Level 3 fair value measurement. The approximate fair value of the 2025 Notes as of June 30, 2021 and December 31, 2020 was $376.3 million and $263.4 million, respectively, and the approximate fair value of the 2023 Notes as of June 30, 2021 and December 31, 2020 was $10.3 million and $7.1 million, respectively. The fair values were estimated on the basis of inputs that are observable in the market and are considered Level 2 fair value measurements.
Commitments and Contingencies From time to time the Company is involved in legal proceedings, claims and litigation related to employee claims, contractual disputes and taxes in the ordinary course of business. Although the Company cannot predict the outcome of such matters, currently the Company has no reason to believe the disposition of any current matter could reasonably be expected to have a material adverse impact on the Company’s financial position, results of operations or the ability to carry on any of its business activities.
XML 35 R25.htm IDEA: XBRL DOCUMENT v3.21.2
Revenue (Tables)
6 Months Ended
Jun. 30, 2021
Revenue from Contract with Customer [Abstract]  
Disaggregation of revenue
The following tables present revenue disaggregated by revenue source and pattern of revenue recognition (in thousands):

 Three Months Ended June 30,
20212020
 Over TimePoint In TimeTotal RevenuesOver TimePoint In TimeTotal Revenues
Time and materials contracts$139,274 $— $139,274 $102,294 $— $102,294 
Fixed fee percent complete contracts12,100 — 12,100 14,015 — 14,015 
Fixed fee contracts26,571 — 26,571 24,260 — 24,260 
Reimbursable expenses2,562 — 2,562 1,530 — 1,530 
Total professional services fees180,507 — 180,507 142,099 — 142,099 
Other services revenue*2,880 388 3,268 3,316 421 3,737 
Total services183,387 388 183,775 145,415 421 145,836 
Software and hardware— 361 361 — 503 503 
Total revenues$183,387 $749 $184,136 $145,415 $924 $146,339 
*Other services revenue primarily consists of hosting fees, maintenance, training, internally developed SaaS revenue and partner referral fees.

 Six Months Ended June 30,
20212020
 Over TimePoint In TimeTotal RevenuesOver TimePoint In TimeTotal Revenues
Time and materials contracts$267,865 $— $267,865 $202,285 $— $202,285 
Fixed fee percent complete contracts23,680 — 23,680 25,636 — 25,636 
Fixed fee contracts49,048 — 49,048 49,288 — 49,288 
Reimbursable expenses4,816 — 4,816 5,924 — 5,924 
Total professional services fees345,409 — 345,409 283,133 — 283,133 
Other services revenue*5,997 1,099 7,096 6,946 1,159 8,105 
Total services351,406 1,099 352,505 290,079 1,159 291,238 
Software and hardware— 972 972 — 663 663 
Total revenues$351,406 $2,071 $353,477 $290,079 $1,822 $291,901 

* Other services revenue primarily consists of hosting fees, maintenance, training, internally developed SaaS revenue and partner referral fees.

The following table presents revenue disaggregated by geographic area, as determined by the billing address of customers (in thousands):

Three Months Ended June 30,Six Months Ended June 30,
 2021202020212020
United States$180,350 $143,492 $346,158 $286,062 
Other countries3,786 2,847 7,319 5,839 
Total revenues$184,136 $146,339 $353,477 $291,901 
XML 36 R26.htm IDEA: XBRL DOCUMENT v3.21.2
Stock-Based Compensation (Tables)
6 Months Ended
Jun. 30, 2021
Share-based Payment Arrangement [Abstract]  
Restricted stock activity
Restricted stock activity for the six months ended June 30, 2021 was as follows (shares in thousands):

 
 SharesWeighted-Average
Grant Date Fair Value
Restricted stock awards outstanding at December 31, 2020905 $35.34 
Awards granted192 55.70 
Awards vested(238)29.90 
Awards forfeited(44)35.90 
Restricted stock awards outstanding at June 30, 2021815 $41.68 
XML 37 R27.htm IDEA: XBRL DOCUMENT v3.21.2
Net Income per Share (Tables)
6 Months Ended
Jun. 30, 2021
Earnings Per Share [Abstract]  
Basic and diluted net income per share
The following table presents the calculation of basic and diluted net income per share (in thousands, except per share information):

Three Months Ended June 30,Six Months Ended June 30,
 2021202020212020
Net income$16,573 $6,609 $30,166 $15,583 
Basic:
Weighted-average shares of common stock outstanding31,922 31,888 31,893 31,763 
Shares used in computing basic net income per share31,922 31,888 31,893 31,763 
Effect of dilutive securities:
Restricted stock subject to vesting460 265 461 401 
Shares issuable for acquisition consideration (1)188 224 217 203 
Shares issuable for conversion of convertible senior notes1,251 — 893 77 
Shares issuable for exercise of warrants46 — 36 — 
Shares used in computing diluted net income per share33,867 32,377 33,500 32,444 
Basic net income per share$0.52 $0.21 $0.95 $0.49 
Diluted net income per share$0.49 $0.20 $0.90 $0.48 
 
(1)For the three and six months ended June 30, 2021, this represents the shares held in escrow pursuant to: (i) the Asset Purchase Agreement with Zeon Solutions Incorporated and certain related entities (collectively, “Zeon”); (ii) the Asset Purchase Agreement with MedTouch LLC (“MedTouch”); (iii) the Asset Purchase Agreement with Catalyst Networks, Inc. (“Brainjocks”); and (iv) the Stock Purchase Agreement with the shareholders of Productora de Software S.A.S. (“PSL”), as part of the consideration. For the three and six months ended June 30, 2020, this represents the shares held in escrow pursuant to: (i) the Asset Purchase Agreement with RAS & Associates, LLC (“RAS”); (ii) the Asset Purchase Agreement with Zeon; (iii) the Asset Purchase Agreement with Stone Temple Consulting Corporation (“Stone Temple”); (iv) the Asset Purchase Agreement with Sundog Interactive, Inc. (“Sundog”); (v) the Asset Purchase Agreement with MedTouch; (vi) the Asset Purchase Agreement with Brainjocks; and (vii) the Stock Purchase Agreement with the shareholders of PSL, as part of the consideration.
Antidilutive securities excluded from computation of earnings per share The number of anti-dilutive securities not included in the calculation of diluted net income per share were as follows (in thousands):
Three Months Ended June 30,Six Months Ended June 30,
 2021202020212020
Restricted stock subject to vesting— 174 — 121 
Convertible senior notes— 3,823 — — 
Warrants related to the issuance of convertible senior notes4,451 3,823 4,451 3,823 
Total anti-dilutive securities4,451 7,820 4,451 3,944 
XML 38 R28.htm IDEA: XBRL DOCUMENT v3.21.2
Balance Sheet Components (Tables)
6 Months Ended
Jun. 30, 2021
Balance Sheet Related Disclosures [Abstract]  
Accounts receivable
June 30, 2021 (unaudited)December 31, 2020
Accounts receivable:(in thousands)
Billed accounts receivable, net$87,920 $85,998 
Unbilled revenues, net61,798 47,087 
Total$149,718 $133,085 
Property and equipment
Property and equipment:  
Computer hardware (useful life of 3 years)
$17,344 $15,640 
Software (useful life of 1 to 7 years)
6,012 5,342 
Furniture and fixtures (useful life of 5 years)
4,490 4,597 
Leasehold improvements (useful life of 5 years)
7,041 6,607 
Less: Accumulated depreciation(22,763)(20,284)
Total$12,124 $11,902 
Other current liabilities
Other current liabilities:  
Estimated fair value of contingent consideration liability (1)$24,836 $33,943 
Current operating lease liabilities10,148 10,321 
Accrued variable compensation19,322 27,527 
Deferred revenues6,287 9,422 
Other current liabilities6,032 7,652 
Deferred employer FICA payments11,038 5,523 
Payroll related costs6,759 5,738 
Professional fees885 736 
Accrued medical claims expense2,376 2,405 
Total$87,683 $103,267 
Other non-current liabilities
Other non-current liabilities:  
Deferred income taxes$17,481 $20,911 
Reserve for uncertain tax positions10,687 8,009 
Deferred compensation liability8,709 7,456 
Non-current software accrual5,491 5,748 
Deferred employer FICA payments— 5,523 
Other non-current liabilities3,446 2,434 
Total$45,814 $50,081 

(1)As of June 30, 2021 and December 31, 2020, represents the fair value estimate of revenue and earnings-based contingent consideration that may be realized by MedTouch, Brainjocks and the shareholders of PSL 12 months after the respective acquisitions.
XML 39 R29.htm IDEA: XBRL DOCUMENT v3.21.2
Allowance for Credit Losses (Tables)
6 Months Ended
Jun. 30, 2021
Credit Loss [Abstract]  
Allowance for credit losses
Activity in the allowance for credit losses is summarized as follows (in thousands):

Six Months Ended June 30,
 20212020
Balance at December 31$1,065 $464 
Impact of ASU No. 2016-13 adoption— 423 
Opening balance at January 11,065 887 
Charges to expense, net of recoveries672 956 
Uncollected balances written off(60)(128)
Balance at June 30$1,677 $1,715 
XML 40 R30.htm IDEA: XBRL DOCUMENT v3.21.2
Business Combinations (Tables)
6 Months Ended
Jun. 30, 2021
Business Combinations [Abstract]  
Allocation of total purchase price consideration
The acquisition date fair value of the consideration transferred for the 2020 acquisitions consisted of the following (in millions):
MedTouchBrainjocksPSL
Cash$13.9 $15.8 $60.8 
Company common stock issued at closing1.9 2.4 4.5 
Contingent consideration (1)4.2 (2)2.3 (3)17.7 (4)
Net working capital adjustment due to the seller(s)— 0.7 0.1 
Total allocable purchase price consideration$20.0 $21.2 $83.1 
The Company has allocated the total purchase price consideration between tangible assets, identified intangible assets, liabilities, and goodwill as follows (in millions):

MedTouchBrainjocksPSL
Acquired tangible assets$4.7 $7.0 $11.6 
Identified intangible assets6.7 8.4 29.6 
Liabilities assumed(6.0)(4.9)(17.7)
Goodwill14.6 10.7 59.6 
Total purchase price$20.0 $21.2 $83.1 
Schedule of finite-lived intangible assets acquired
The following table presents details of the intangible assets acquired during the year ended December 31, 2020 (dollars in millions).

 Weighted Average Useful LifeEstimated Useful LifeAggregate Acquisitions
Customer relationships6 years
5 - 7 years
$33.0 
Customer backlog1 year1 year9.6 
Non-compete agreements5 years5 years0.2 
Trade name1 year1 year0.4 
Developed software4 years
3 - 5 years
1.5 
Total acquired intangible assets $44.7 
Pro-forma results of operations
These unaudited pro-forma results are presented in compliance with the adoption of ASU No. 2010-29, Business Combinations (Topic 805): Disclosure of Supplementary Pro Forma Information for Business Combinations, and are not necessarily indicative of the actual consolidated results of operations had the acquisition of PSL actually occurred on January 1, 2019 or of future results of operations of the consolidated entities (in thousands except per share data):

 Six Months Ended June 30,
 2020
Revenues$308,529 
Net income$19,400 
Basic net income per share$0.61 
Diluted net income per share$0.60 
Shares used in computing basic net income per share31,896 
Shares used in computing diluted net income per share32,602 
XML 41 R31.htm IDEA: XBRL DOCUMENT v3.21.2
Goodwill and Intangible Assets (Tables)
6 Months Ended
Jun. 30, 2021
Goodwill and Intangible Assets Disclosure [Abstract]  
Goodwill
The changes in the carrying amount of goodwill for the six months ended June 30, 2021 are as follows (in thousands):

 
Balance at December 31, 2020$427,928 
Purchase price allocation for acquisitions(1,811)
Effect of foreign currency translation adjustments(5,609)
Balance at June 30, 2021$420,508 
Intangible assets
The following table presents a summary of the Company’s intangible assets that are subject to amortization (in thousands):

 June 30, 2021December 31, 2020
 Gross
Carrying
Amounts
Accumulated
Amortization
Net
Carrying
Amounts
Gross
Carrying
Amounts
Accumulated
Amortization
Net
Carrying
Amounts
Customer relationships$90,306 $(46,035)$44,271 $97,497 $(44,185)$53,312 
Non-compete agreements1,424 (937)487 1,479 (831)648 
Customer backlog— — — 10,353 (5,941)4,412 
Trade name— — — 449 (281)168 
Developed software13,802 (9,623)4,179 13,962 (8,931)5,031 
Total$105,532 $(56,595)$48,937 $123,740 $(60,169)$63,571 
Estimated useful lives of intangible assets
The estimated useful lives of identifiable intangible assets are as follows:

 
Customer relationships
5 - 10 years
Non-compete agreements
4 - 5 years
Customer backlog1 year
Trade name1 year
Developed software
1 - 7 years
Estimated annual amortization expense
Estimated annual amortization expense for the next five years ended December 31 and thereafter is as follows: (in thousands):

2021 remaining$8,135 
2022$15,615 
2023$10,772 
2024$7,624 
2025$4,431 
Thereafter$2,360 
XML 42 R32.htm IDEA: XBRL DOCUMENT v3.21.2
Long-term Debt (Tables)
6 Months Ended
Jun. 30, 2021
Debt Disclosure [Abstract]  
Schedule of long-term debt instruments
The liability component of the 2025 Notes and 2023 Notes consisted of the following (in thousands):

 June 30, 2021 (unaudited)
December 31, 2020
Liability component:2025 Notes2023 Notes2025 Notes2023 Notes
     Principal$230,000 $5,090 $230,000 $5,090 
     Less: Unamortized debt discount(41,311)(352)(45,690)(426)
               Unamortized debt issuance costs(4,696)(64)(5,271)(79)
Net carrying amount$183,993 $4,674 $179,039 $4,585 

Interest expense for the three and six months ended June 30, 2021 and 2020 related to the 2025 Notes and 2023 Notes consisted of the following (in thousands):

2025 Notes
Three Months Ended June 30,Six Months Ended June 30,
2021202020212020
Coupon interest$719 $— $1,438 $— 
Amortization of debt discount2,200 — 4,379 — 
Amortization of debt issuance costs288 — 575 — 
     Total interest expense recognized$3,207 $— $6,392 $— 

2023 Notes
Three Months Ended June 30,Six Months Ended June 30,
2021202020212020
Coupon interest$30 $853 $60 $1,707 
Amortization of debt discount37 992 74 1,969 
Amortization of debt issuance costs206 15 412 
     Total interest expense recognized$75 $2,051 $149 $4,088 
XML 43 R33.htm IDEA: XBRL DOCUMENT v3.21.2
Derivatives (Tables)
6 Months Ended
Jun. 30, 2021
Derivative Instruments and Hedging Activities Disclosure [Abstract]  
Schedule of notional amounts of outstanding derivative positions
The notional amounts of the Company’s derivative instruments outstanding were as follows (in thousands):

 June 30, 2021 (unaudited)December 31, 2020
Derivatives not designated as hedges  
Foreign exchange contracts$20,753 $16,008 
Total derivatives not designated as hedges$20,753 $16,008 
XML 44 R34.htm IDEA: XBRL DOCUMENT v3.21.2
Leases (Tables)
6 Months Ended
Jun. 30, 2021
Commitments and Contingencies Disclosure [Abstract]  
Summary of lease liabilities
Supplemental balance sheet information related to leases was as follows (in thousands):

 June 30, 2021December 31, 2020
Other current liabilities$10,148 $10,321 
Operating lease liabilities25,871 29,098 
Total$36,019 $39,419 
Future minimum leases payments under ASC topic 842
Future minimum lease payments as of June 30, 2021 were as follows (in thousands):

 June 30, 2021
2021 remaining$3,803 
202210,304 
20238,092 
20246,257 
20254,706 
Thereafter5,901 
Total future lease payments39,063 
     Less implied interest(3,044)
Total$36,019 
XML 45 R35.htm IDEA: XBRL DOCUMENT v3.21.2
Revenue - Services Revenue (Details) - Technology Service
6 Months Ended
Jun. 30, 2021
Minimum  
Disaggregation of Revenue [Line Items]  
Notice period to cancel or terminate contract 10 days
Maximum  
Disaggregation of Revenue [Line Items]  
Notice period to cancel or terminate contract 30 days
XML 46 R36.htm IDEA: XBRL DOCUMENT v3.21.2
Revenue - Deferred Revenue (Details) - USD ($)
$ in Millions
Jun. 30, 2021
Dec. 31, 2020
Change in Contract with Customer, Asset and Liability [Abstract]    
Deferred revenue balance $ 6.3 $ 9.4
XML 47 R37.htm IDEA: XBRL DOCUMENT v3.21.2
Revenue - Disaggregation of Revenue by Revenue Source and Pattern of Revenue Recognition (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Disaggregation of Revenue [Line Items]        
Revenues $ 184,136 $ 146,339 $ 353,477 $ 291,901
Over Time        
Disaggregation of Revenue [Line Items]        
Revenues 183,387 145,415 351,406 290,079
Point In Time        
Disaggregation of Revenue [Line Items]        
Revenues 749 924 2,071 1,822
Services        
Disaggregation of Revenue [Line Items]        
Revenues 183,775 145,836 352,505 291,238
Services | Over Time        
Disaggregation of Revenue [Line Items]        
Revenues 183,387 145,415 351,406 290,079
Services | Point In Time        
Disaggregation of Revenue [Line Items]        
Revenues 388 421 1,099 1,159
Professional services        
Disaggregation of Revenue [Line Items]        
Revenues 180,507 142,099 345,409 283,133
Professional services | Over Time        
Disaggregation of Revenue [Line Items]        
Revenues 180,507 142,099 345,409 283,133
Professional services | Point In Time        
Disaggregation of Revenue [Line Items]        
Revenues 0 0 0 0
Professional services | Time and materials contracts        
Disaggregation of Revenue [Line Items]        
Revenues 139,274 102,294 267,865 202,285
Professional services | Time and materials contracts | Over Time        
Disaggregation of Revenue [Line Items]        
Revenues 139,274 102,294 267,865 202,285
Professional services | Time and materials contracts | Point In Time        
Disaggregation of Revenue [Line Items]        
Revenues 0 0 0 0
Professional services | Fixed fee percent complete contracts        
Disaggregation of Revenue [Line Items]        
Revenues 12,100 14,015 23,680 25,636
Professional services | Fixed fee percent complete contracts | Over Time        
Disaggregation of Revenue [Line Items]        
Revenues 12,100 14,015 23,680 25,636
Professional services | Fixed fee percent complete contracts | Point In Time        
Disaggregation of Revenue [Line Items]        
Revenues 0 0 0 0
Professional services | Fixed fee contracts        
Disaggregation of Revenue [Line Items]        
Revenues 26,571 24,260 49,048 49,288
Professional services | Fixed fee contracts | Over Time        
Disaggregation of Revenue [Line Items]        
Revenues 26,571 24,260 49,048 49,288
Professional services | Fixed fee contracts | Point In Time        
Disaggregation of Revenue [Line Items]        
Revenues 0 0 0 0
Professional services | Reimbursable expenses        
Disaggregation of Revenue [Line Items]        
Revenues 2,562 1,530 4,816 5,924
Professional services | Reimbursable expenses | Over Time        
Disaggregation of Revenue [Line Items]        
Revenues 2,562 1,530 4,816 5,924
Professional services | Reimbursable expenses | Point In Time        
Disaggregation of Revenue [Line Items]        
Revenues 0 0 0 0
Other services        
Disaggregation of Revenue [Line Items]        
Revenues 3,268 3,737 7,096 8,105
Other services | Over Time        
Disaggregation of Revenue [Line Items]        
Revenues 2,880 3,316 5,997 6,946
Other services | Point In Time        
Disaggregation of Revenue [Line Items]        
Revenues 388 421 1,099 1,159
Software and hardware        
Disaggregation of Revenue [Line Items]        
Revenues 361 503 972 663
Software and hardware | Over Time        
Disaggregation of Revenue [Line Items]        
Revenues 0 0 0 0
Software and hardware | Point In Time        
Disaggregation of Revenue [Line Items]        
Revenues $ 361 $ 503 $ 972 $ 663
XML 48 R38.htm IDEA: XBRL DOCUMENT v3.21.2
Revenue - Disaggregation of Revenue by Geographic Area (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Disaggregation of Revenue [Line Items]        
Revenues $ 184,136 $ 146,339 $ 353,477 $ 291,901
United States        
Disaggregation of Revenue [Line Items]        
Revenues 180,350 143,492 346,158 286,062
Other countries        
Disaggregation of Revenue [Line Items]        
Revenues $ 3,786 $ 2,847 $ 7,319 $ 5,839
XML 49 R39.htm IDEA: XBRL DOCUMENT v3.21.2
Stock-Based Compensation - Stock Award Plans (Details) - USD ($)
shares in Millions, $ in Millions
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Stock-Based Compensation [Abstract]        
Requisite service period (in years)     3 years  
Stock-based compensation expense $ 5.5 $ 5.1 $ 10.8 $ 9.7
Stock-based compensation expense for retirement savings plan contributions 1.1 0.9 2.0 1.7
Associated current and future income tax benefits recognized 1.6 $ 1.5 3.2 $ 2.9
Total unrecognized compensation cost related to non-vested share-based awards $ 27.0   $ 27.0  
Unrecognized compensation cost, weighted-average period for recognition (in years)     2 years  
2012 Long term incentive plan        
Stock-Based Compensation [Abstract]        
Maximum number of shares authorized under plan (in shares) 7.0   7.0  
Number of shares available for issuance under the incentive plan (in shares) 1.3   1.3  
XML 50 R40.htm IDEA: XBRL DOCUMENT v3.21.2
Stock-Based Compensation - Restricted Stock Activity (Details) - 2012 Long term incentive plan - Restricted stock subject to vesting
shares in Thousands
6 Months Ended
Jun. 30, 2021
$ / shares
shares
Shares  
Restricted stock awards outstanding at beginning of period (in shares) | shares 905
Awards granted (in shares) | shares 192
Awards vested (in shares) | shares (238)
Awards forfeited (in shares) | shares (44)
Restricted stock awards outstanding at end of period (in shares) | shares 815
Weighted-Average Grant Date Fair Value  
Awards outstanding at beginning of period (in dollars per share) | $ / shares $ 35.34
Awards granted (in dollars per share) | $ / shares 55.70
Awards vested (in dollars per share) | $ / shares 29.90
Awards forfeited (in dollars per share) | $ / shares 35.90
Awards outstanding at end of period (in dollars per share) | $ / shares $ 41.68
XML 51 R41.htm IDEA: XBRL DOCUMENT v3.21.2
Net Income per Share - Basic and Diluted (Details) - USD ($)
$ / shares in Units, shares in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Earnings Per Share [Abstract]        
Net income $ 16,573,000 $ 6,609,000 $ 30,166,000 $ 15,583,000
Basic:        
Weighted-average shares of common stock outstanding 31,922 31,888 31,893 31,763
Shares used in computing basic net income per share 31,922 31,888 31,893 31,763
Effect of dilutive securities:        
Restricted stock subject to vesting 460 265 461 401
Shares issuable for acquisition consideration (in shares) 188 224 217 203
Shares issuable for conversion of convertible senior notes (in shares) 1,251   893 77
Shares issuable for exercise of warrants (in shares) 46 0 36 0
Shares used in computing diluted net income per share 33,867 32,377 33,500 32,444
Basic net income per share (in dollars per share) $ 0.52 $ 0.21 $ 0.95 $ 0.49
Diluted net income per share (in dollars per share) $ 0.49 $ 0.20 $ 0.90 $ 0.48
Shares authorized to repurchase $ 315,000,000.0   $ 315,000,000.0  
Shares issuable for exercise of warrants (in shares) 46 0 36 0
XML 52 R42.htm IDEA: XBRL DOCUMENT v3.21.2
Net Income per Share - Anti-dilutive Securities (Details) - shares
shares in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Anti-dilutive securities 4,451 7,820 4,451 3,944
Restricted stock subject to vesting        
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Anti-dilutive securities 0 174 0 121
Convertible senior notes        
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Anti-dilutive securities 0 3,823 0 0
Warrants related to the issuance of convertible senior notes        
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Anti-dilutive securities 4,451 3,823 4,451 3,823
XML 53 R43.htm IDEA: XBRL DOCUMENT v3.21.2
Net Income per Share - Additional Information (Details)
shares in Millions
Jun. 30, 2021
USD ($)
shares
Earnings Per Share [Abstract]  
Shares authorized to repurchase $ 315,000,000.0
Cumulative amount repurchased $ 251,400,000
Cumulative number of shares repurchased (in shares) | shares 16.0
XML 54 R44.htm IDEA: XBRL DOCUMENT v3.21.2
Balance Sheet Components - Accounts Receivable (Details) - USD ($)
$ in Thousands
Jun. 30, 2021
Dec. 31, 2020
Balance Sheet Related Disclosures [Abstract]    
Billed accounts receivable, net $ 87,920 $ 85,998
Unbilled revenues, net 61,798 47,087
Total $ 149,718 $ 133,085
XML 55 R45.htm IDEA: XBRL DOCUMENT v3.21.2
Balance Sheet Components - Property and Equipment) (Details) - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2021
Dec. 31, 2020
Property and Equipment [Abstract]    
Less: Accumulated depreciation $ (22,763) $ (20,284)
Property and equipment, net 12,124 11,902
Computer hardware    
Property and Equipment [Abstract]    
Property and equipment $ 17,344 15,640
Useful life 3 years  
Software    
Property and Equipment [Abstract]    
Property and equipment $ 6,012 5,342
Furniture and fixtures    
Property and Equipment [Abstract]    
Property and equipment $ 4,490 4,597
Useful life 5 years  
Leasehold improvements    
Property and Equipment [Abstract]    
Property and equipment $ 7,041 $ 6,607
Useful life 5 years  
Minimum | Software    
Property and Equipment [Abstract]    
Useful life 1 year  
Maximum | Software    
Property and Equipment [Abstract]    
Useful life 7 years  
XML 56 R46.htm IDEA: XBRL DOCUMENT v3.21.2
Balance Sheet Components - Other Current Liabilities (Details) - USD ($)
$ in Thousands
Jun. 30, 2021
Dec. 31, 2020
Other current liabilities:    
Estimated fair value of contingent consideration liability $ 24,836 $ 33,943
Current operating lease liabilities 10,148 10,321
Accrued variable compensation 19,322 27,527
Deferred revenues 6,287 9,422
Other current liabilities 6,032 7,652
Deferred employer FICA payments 11,038 5,523
Payroll related costs 6,759 5,738
Professional fees 885 736
Accrued medical claims expense 2,376 2,405
Total $ 87,683 $ 103,267
XML 57 R47.htm IDEA: XBRL DOCUMENT v3.21.2
Balance Sheet Components - Other Non-Current Liabilities (Details) - USD ($)
$ in Thousands
Jun. 30, 2021
Dec. 31, 2020
Other non-current liabilities:    
Deferred income taxes $ 17,481 $ 20,911
Unrecognized Tax Benefits, Income Tax Penalties Accrued 10,687 8,009
Deferred compensation liability 8,709 7,456
Non-current software accrual 5,491 5,748
Deferred employer FICA payments 0 5,523
Other non-current liabilities 3,446 2,434
Total $ 45,814 $ 50,081
XML 58 R48.htm IDEA: XBRL DOCUMENT v3.21.2
Allowance for Credit Losses (Details) - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Accounts Receivable, Allowance for Credit Loss [Roll Forward]    
Beginning balance $ 1,065 $ 464
Charges to expense, net of recoveries 672 956
Uncollected balances written off (60) (128)
Balance at June 30 1,677 1,715
Cumulative effect, period of adoption, adjustment    
Accounts Receivable, Allowance for Credit Loss [Roll Forward]    
Beginning balance 0 423
Cumulative effect, period of adoption, adjusted balance    
Accounts Receivable, Allowance for Credit Loss [Roll Forward]    
Beginning balance $ 1,065 $ 887
XML 59 R49.htm IDEA: XBRL DOCUMENT v3.21.2
Business Combinations MedTouch (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jan. 06, 2020
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Dec. 31, 2020
Business Acquisition [Line Items]            
Adjustment to fair value of contingent consideration   $ (510) $ 2,067 $ 4 $ 1,732  
Goodwill   420,508   420,508   $ 427,928
MedTouch            
Business Acquisition [Line Items]            
Date of acquisition Jan. 06, 2020          
Total purchase price $ 20,000          
Cash paid for acquisition 13,900          
Common stock issued 1,900          
Initial fair value estimate of additional earnings-based contingent consideration 4,200          
Net working capital settlement 0          
Contingent consideration, maximum cash payout 10,200          
Fair value of contingent consideration   9,200   9,200    
Adjustment to fair value of contingent consideration   $ 200   $ 300    
Transaction costs 600          
Acquired tangible assets 4,700          
Identified intangible assets 6,700          
Liabilities assumed (6,000)          
Goodwill 14,600          
Tax deductible amount of Goodwill $ 20,400          
XML 60 R50.htm IDEA: XBRL DOCUMENT v3.21.2
Business Combinations Brainjocks (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Mar. 23, 2020
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Dec. 31, 2020
Business Acquisition [Line Items]            
Adjustment to fair value of contingent consideration   $ (510) $ 2,067 $ 4 $ 1,732  
Goodwill   420,508   420,508   $ 427,928
Brainjocks            
Business Acquisition [Line Items]            
Date of acquisition Mar. 23, 2020          
Total purchase price $ 21,200          
Cash paid for acquisition 15,800          
Common stock issued 2,400          
Net working capital settlement 700          
Initial fair value estimate of additional earnings-based contingent consideration 2,300          
Contingent consideration, maximum cash payout 4,800          
Fair value of contingent consideration   3,900   3,900    
Adjustment to fair value of contingent consideration   $ 100   $ 300    
Transaction costs 1,100          
Acquired tangible assets 7,000          
Identified intangible assets 8,400          
Liabilities assumed (4,900)          
Goodwill 10,700          
Tax deductible amount of Goodwill $ 8,700          
XML 61 R51.htm IDEA: XBRL DOCUMENT v3.21.2
Business Combinations PSL (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended 9 Months Ended
Jun. 17, 2020
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Mar. 31, 2021
Dec. 31, 2020
Business Acquisition [Line Items]              
Adjustment to fair value of contingent consideration   $ (510) $ 2,067 $ 4 $ 1,732    
Goodwill   420,508   420,508     $ 427,928
Increase to acquired tangible assets           $ 500  
Decrease to identified intangible assets           (400)  
Increase to liabilities assumed           (1,700)  
Increase to goodwill           2,700  
PSL              
Business Acquisition [Line Items]              
Date of acquisition Jun. 17, 2020            
Total purchase price $ 83,100            
Cash paid for acquisition 60,800            
Common stock issued 4,500            
Net working capital settlement 100            
Initial fair value estimate of additional earnings-based contingent consideration 17,700            
Contingent consideration, maximum cash payout 22,200            
Fair value of contingent consideration   20,900   20,900      
Adjustment to fair value of contingent consideration   $ (700)   $ (600)      
Transaction costs 2,100            
Acquired tangible assets 11,600            
Identified intangible assets 29,600            
Liabilities assumed (17,700)            
Goodwill $ 59,600            
Increase to the total purchase price           $ 1,100  
XML 62 R52.htm IDEA: XBRL DOCUMENT v3.21.2
Business Combinations Intangible Assets Acquired (Details)
$ in Millions
3 Months Ended
Mar. 31, 2021
USD ($)
Finite-Lived Intangible Assets, Gross [Abstract]  
Aggregate Acquisitions $ 44.7
Customer relationships  
Finite-Lived Intangible Assets, Gross [Abstract]  
Weighted average useful life (in years) 6 years
Aggregate Acquisitions $ 33.0
Customer relationships | Minimum  
Finite-Lived Intangible Assets, Gross [Abstract]  
Estimated useful life (in years) 5 years
Customer relationships | Maximum  
Finite-Lived Intangible Assets, Gross [Abstract]  
Estimated useful life (in years) 7 years
Customer backlog  
Finite-Lived Intangible Assets, Gross [Abstract]  
Weighted average useful life (in years) 1 year
Estimated useful life (in years) 1 year
Aggregate Acquisitions $ 9.6
Non-compete agreements  
Finite-Lived Intangible Assets, Gross [Abstract]  
Weighted average useful life (in years) 5 years
Estimated useful life (in years) 5 years
Aggregate Acquisitions $ 0.2
Trade name  
Finite-Lived Intangible Assets, Gross [Abstract]  
Weighted average useful life (in years) 1 year
Estimated useful life (in years) 1 year
Aggregate Acquisitions $ 0.4
Developed software  
Finite-Lived Intangible Assets, Gross [Abstract]  
Weighted average useful life (in years) 4 years
Aggregate Acquisitions $ 1.5
Developed software | Minimum  
Finite-Lived Intangible Assets, Gross [Abstract]  
Estimated useful life (in years) 3 years
Developed software | Maximum  
Finite-Lived Intangible Assets, Gross [Abstract]  
Estimated useful life (in years) 5 years
XML 63 R53.htm IDEA: XBRL DOCUMENT v3.21.2
Business Combinations Pro Forma Results of Operations (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2020
Jun. 30, 2020
Business Acquisition, Pro Forma Information [Abstract]    
Revenues   $ 308,529
Net income $ 19,400  
Basic income per share (USD per share) $ 0.61  
Diluted income per share (USD per share) $ 0.60  
Shares used in computing basic net income per share (in shares) 31,896  
Shares used in computing diluted net income per share (in shares) 32,602  
XML 64 R54.htm IDEA: XBRL DOCUMENT v3.21.2
Goodwill and Intangible Assets - Goodwill (Details)
$ in Thousands
6 Months Ended
Jun. 30, 2021
USD ($)
Goodwill [Roll Forward]  
Balance at December 31, 2020 $ 427,928
Purchase price allocation for acquisitions (1,811)
Effect of foreign currency translation adjustments (5,609)
Balance at June 30, 2021 $ 420,508
XML 65 R55.htm IDEA: XBRL DOCUMENT v3.21.2
Goodwill and Intangible Assets - Intangible Assets (Details) - USD ($)
$ in Thousands
Jun. 30, 2021
Dec. 31, 2020
Finite-Lived Intangible Assets, Net [Abstract]    
Gross Carrying Amounts $ 105,532 $ 123,740
Accumulated Amortization (56,595) (60,169)
Net Carrying Amounts 48,937 63,571
Customer relationships    
Finite-Lived Intangible Assets, Net [Abstract]    
Gross Carrying Amounts 90,306 97,497
Accumulated Amortization (46,035) (44,185)
Net Carrying Amounts 44,271 53,312
Non-compete agreements    
Finite-Lived Intangible Assets, Net [Abstract]    
Gross Carrying Amounts 1,424 1,479
Accumulated Amortization (937) (831)
Net Carrying Amounts 487 648
Customer backlog    
Finite-Lived Intangible Assets, Net [Abstract]    
Gross Carrying Amounts 0 10,353
Accumulated Amortization 0 (5,941)
Net Carrying Amounts 0 4,412
Trade name    
Finite-Lived Intangible Assets, Net [Abstract]    
Gross Carrying Amounts 0 449
Accumulated Amortization 0 (281)
Net Carrying Amounts 0 168
Developed software    
Finite-Lived Intangible Assets, Net [Abstract]    
Gross Carrying Amounts 13,802 13,962
Accumulated Amortization (9,623) (8,931)
Net Carrying Amounts $ 4,179 $ 5,031
XML 66 R56.htm IDEA: XBRL DOCUMENT v3.21.2
Goodwill and Intangible Assets - Estimated Useful Lives (Details)
6 Months Ended
Jun. 30, 2021
Customer relationships | Minimum  
Intangible Assets [Abstract]  
Estimated useful lives (in years) 5 years
Customer relationships | Maximum  
Intangible Assets [Abstract]  
Estimated useful lives (in years) 10 years
Non-compete agreements | Minimum  
Intangible Assets [Abstract]  
Estimated useful lives (in years) 4 years
Non-compete agreements | Maximum  
Intangible Assets [Abstract]  
Estimated useful lives (in years) 5 years
Customer backlog  
Intangible Assets [Abstract]  
Estimated useful lives (in years) 1 year
Trade name  
Intangible Assets [Abstract]  
Estimated useful lives (in years) 1 year
Developed software | Minimum  
Intangible Assets [Abstract]  
Estimated useful lives (in years) 1 year
Developed software | Maximum  
Intangible Assets [Abstract]  
Estimated useful lives (in years) 7 years
XML 67 R57.htm IDEA: XBRL DOCUMENT v3.21.2
Goodwill and Intangible Assets - Estimated Amortization Expense (Details)
$ in Thousands
Jun. 30, 2021
USD ($)
Estimated Amortization Expense [Abstract]  
2021 remaining $ 8,135
2022 15,615
2023 10,772
2024 7,624
2025 4,431
Thereafter $ 2,360
XML 68 R58.htm IDEA: XBRL DOCUMENT v3.21.2
Long-term Debt - Revolving Credit Facility (Details) - USD ($)
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2021
Jun. 30, 2020
May 07, 2021
Dec. 31, 2020
Line of Credit [Abstract]          
Payment for credit facility financing fees   $ 633,000 $ 0    
Long-term debt, net $ 188,667,000 $ 188,667,000     $ 183,624,000
Revolving credit facility          
Line of Credit [Abstract]          
EBITDA Ratio   5.00      
Revolving credit facility | London interbank offered rate (LIBOR) | Minimum          
Line of Credit [Abstract]          
Margin interest rate percentage   1.00%      
Revolving credit facility | London interbank offered rate (LIBOR) | Maximum          
Line of Credit [Abstract]          
Margin interest rate percentage   2.00%      
Revolving credit facility | Credit agreement          
Line of Credit [Abstract]          
Maximum borrowing capacity       $ 200,000,000.0  
Additional commitment increase 75,000,000.0 $ 75,000,000.0      
Payment for credit facility financing fees 600,000 600,000      
Allowable amount of letters of credit for issuance   10,000,000.0      
Letters of credit outstanding 200,000 200,000      
Available borrowing capacity 199,800,000 $ 199,800,000      
EBITDA Ratio   3.50      
Long-term debt, net $ 50,000,000 $ 50,000,000      
Leverage Ratio   2.50      
Leverage Ratio needed for payment of dividends   3.50      
Revolving credit facility | Credit agreement | Minimum          
Line of Credit [Abstract]          
Annual commitment fee percentage on unused capacity   0.15%      
Revolving credit facility | Credit agreement | Maximum          
Line of Credit [Abstract]          
Annual commitment fee percentage on unused capacity   0.20%      
Revolving credit facility | Credit agreement | Prime rate          
Line of Credit [Abstract]          
Interest rate at end of period 3.25% 3.25%      
Revolving credit facility | Credit agreement | Prime rate | Minimum          
Line of Credit [Abstract]          
Margin interest rate percentage   0.00%      
Revolving credit facility | Credit agreement | Prime rate | Maximum          
Line of Credit [Abstract]          
Margin interest rate percentage   1.00%      
Revolving credit facility | Credit agreement | London interbank offered rate (LIBOR)          
Line of Credit [Abstract]          
Interest rate at end of period 0.10% 0.10%      
XML 69 R59.htm IDEA: XBRL DOCUMENT v3.21.2
Long-term Debt - Convertible Senior Notes (Additional Notes) (Details)
$ / shares in Units, $ in Thousands
1 Months Ended 6 Months Ended 12 Months Ended
Aug. 14, 2020
USD ($)
$ / shares
Sep. 11, 2018
USD ($)
$ / shares
Dec. 31, 2020
USD ($)
Aug. 31, 2020
USD ($)
Jun. 30, 2021
USD ($)
day
$ / shares
Rate
Dec. 31, 2020
USD ($)
Debt Instrument [Line Items]            
Share price at closing (in dollars per share) | $ / shares         $ 80.42  
2023 Notes | Warrants related to the issuance of convertible senior notes            
Debt Instrument [Line Items]            
Initial conversion price (in dollars per share) | $ / shares   $ 46.62        
Warrant exercise price (in dollars per share) | $ / shares         46.62  
2025 Notes | Warrants related to the issuance of convertible senior notes            
Debt Instrument [Line Items]            
Warrant exercise price (in dollars per share) | $ / shares         $ 81.05  
Convertible debt | Conversion Circumstance One            
Debt Instrument [Line Items]            
Conversion rate of the notes on trading day (as percent)         130.00%  
Threshold trading days (whether or not consecutive) | day         20  
Consecutive trading day period (in days) | day         30  
Convertible debt | Conversion Circumstance Two            
Debt Instrument [Line Items]            
Conversion rate of the notes on trading day (as percent) | Rate         98.00%  
Threshold trading days (whether or not consecutive) | day         5  
Consecutive trading day period (in days) | day         10  
Convertible debt | 2023 Notes            
Debt Instrument [Line Items]            
Aggregated principal amount   $ 143,800        
Interest rate stated, percentage   2.375%        
Initial purchasers' discount and issuance costs   $ 4,400 $ (2,400)     $ (2,400)
Proceeds from debt, net of issuance costs   $ 139,400        
Payments for repurchase of 2023 convertible notes     9,700 $ 172,000    
Shares conversion rate   26.5957        
Initial conversion price (in dollars per share) | $ / shares   $ 37.60        
Maturity date         Sep. 15, 2023  
Principal     5,090   $ 5,090 5,090
Payment of interest           1,300
Loss on extinguishment of debt           4,500
Convertible debt | 2025 Notes            
Debt Instrument [Line Items]            
Aggregated principal amount $ 230,000          
Interest rate stated, percentage 1.25%          
Initial purchasers' discount and issuance costs $ 7,300          
Proceeds from debt, net of issuance costs 222,700          
Payments for repurchase of 2023 convertible notes 172,000          
Cost of entering into hedges, net of warrants 26,700          
Payments for working capital or other general corporate purposes $ 24,000          
Shares conversion rate 19.3538          
Initial conversion price (in dollars per share) | $ / shares $ 51.67          
Maturity date         Aug. 01, 2025  
Principal     $ 230,000   $ 230,000 230,000
Convertible debt, liability component | 2023 Notes            
Debt Instrument [Line Items]            
Payments for repurchase of 2023 convertible notes           127,700
Convertible debt, equity component | 2023 Notes            
Debt Instrument [Line Items]            
Payments for repurchase of 2023 convertible notes           $ 52,700
XML 70 R60.htm IDEA: XBRL DOCUMENT v3.21.2
Long-term Debt - Liability and Equity Component of Note (Details) - USD ($)
$ in Thousands
Jun. 30, 2021
Dec. 31, 2020
Liability component:    
Net carrying amount $ 188,667 $ 183,624
Convertible debt | 2023 Notes    
Liability component:    
Principal 5,090 5,090
Less: Unamortized debt discount (352) (426)
Unamortized debt issuance costs (64) (79)
Net carrying amount 4,674 4,585
Convertible debt | 2025 Notes    
Liability component:    
Principal 230,000 230,000
Less: Unamortized debt discount (41,311) (45,690)
Unamortized debt issuance costs (4,696) (5,271)
Net carrying amount $ 183,993 $ 179,039
XML 71 R61.htm IDEA: XBRL DOCUMENT v3.21.2
Long-term Debt - Interest Expense on Note (Details) - Senior notes - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
2025 Notes        
Debt Instrument [Line Items]        
Coupon interest $ 719 $ 0 $ 1,438 $ 0
Amortization of debt discount 2,200 0 4,379 0
Amortization of debt issuance costs 288 0 575 0
Total interest expense recognized 3,207 0 6,392 0
2023 Notes        
Debt Instrument [Line Items]        
Coupon interest 30 853 60 1,707
Amortization of debt discount 37 992 74 1,969
Amortization of debt issuance costs 8 206 15 412
Total interest expense recognized $ 75 $ 2,051 $ 149 $ 4,088
XML 72 R62.htm IDEA: XBRL DOCUMENT v3.21.2
Long-term Debt - Convertible Note Hedges and Warrants (Details) - USD ($)
$ / shares in Units, $ in Millions
1 Months Ended 6 Months Ended
Aug. 14, 2020
Sep. 11, 2018
Dec. 31, 2020
Aug. 31, 2020
Jun. 30, 2021
Debt Instrument [Line Items]          
Expiration period for Notes Warrants in trading days         100 days
Convertible note hedges | 2025 Notes          
Debt Instrument [Line Items]          
Conversion option to acquire shares (in shares) 4,500,000        
Strike price (in dollars per share) $ 51.67        
Convertible note hedges | 2023 Notes          
Debt Instrument [Line Items]          
Conversion option to acquire shares (in shares)   100,000      
Strike price (in dollars per share)   $ 37.60      
Sale of hedges (in shares)     3,700,000 3,700,000  
Proceeds from sale of of hedges related to 2023 convertible notes       $ 50.1  
Warrant | 2025 Notes          
Debt Instrument [Line Items]          
Warrant exercise price (in dollars per share)         $ 81.05
Warrant | 2023 Notes          
Debt Instrument [Line Items]          
Warrant exercise price (in dollars per share)         $ 46.62
Warrant | Convertible debt | 2023 Notes          
Debt Instrument [Line Items]          
Repurchase of warrants related to 2023 convertible notes       $ 43.0  
XML 73 R63.htm IDEA: XBRL DOCUMENT v3.21.2
Income Taxes (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Dec. 31, 2020
Tax Credit [Line Items]          
Unrecognized tax benefits $ 9,500   $ 9,500    
Unrecognized tax benefits, interest on income taxes accrued $ 1,200   $ 1,200    
Effective tax rate 27.00% 31.80% 23.60% 22.80%  
Deferred income taxes $ 17,481   $ 17,481   $ 20,911
Unremitted earnings of foreign subsidiaries 16,400   16,400    
Unrecognized deferred tax liability on unremitted earnings of foreign subsidiaries 1,100   1,100    
Internal Revenue Service (IRS) | Tax years 2011 through 2015 | Domestic tax authority          
Tax Credit [Line Items]          
Disallowed research tax credits being litigated 5,700   5,700    
Internal Revenue Service (IRS) | Tax years 2011 through March 2021 | Domestic tax authority          
Tax Credit [Line Items]          
Research tax credits $ 23,400   $ 23,400    
XML 74 R64.htm IDEA: XBRL DOCUMENT v3.21.2
Derivatives - Notional Amounts (Details) - Total derivatives not designated as hedges - USD ($)
$ in Thousands
Jun. 30, 2021
Dec. 31, 2020
Notional Disclosures [Abstract]    
Derivative notional amounts $ 20,753 $ 16,008
Foreign exchange contracts    
Notional Disclosures [Abstract]    
Derivative notional amounts $ 20,753 $ 16,008
XML 75 R65.htm IDEA: XBRL DOCUMENT v3.21.2
Fair Value Measurements (Details) - USD ($)
$ in Millions
Jun. 30, 2021
Dec. 31, 2020
Level 2    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
COLI asset $ 9.8 $ 7.4
Level 2 | 2023 Notes    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Note, debt instrument 10.3 7.1
Level 2 | 2025 Notes    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Note, debt instrument 376.3 263.4
Money market funds | Level 1    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Cash and cash equivalents $ 76.6 $ 66.0
XML 76 R66.htm IDEA: XBRL DOCUMENT v3.21.2
Leases - Narrative (Details) - USD ($)
$ in Millions
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Lessee, Lease, Description [Line Items]        
Operating lease expense $ 3.3 $ 2.9 $ 6.6 $ 5.7
Minimum        
Lessee, Lease, Description [Line Items]        
Remaining lease terms (in years) 1 year   1 year  
Maximum        
Lessee, Lease, Description [Line Items]        
Remaining lease terms (in years) 8 years   8 years  
XML 77 R67.htm IDEA: XBRL DOCUMENT v3.21.2
Leases - Lease Liabilities (Details) - USD ($)
$ in Thousands
Jun. 30, 2021
Dec. 31, 2020
Leases [Abstract]    
Other current liabilities $ 10,148 $ 10,321
Operating lease liabilities 25,871 29,098
Total $ 36,019 $ 39,419
XML 78 R68.htm IDEA: XBRL DOCUMENT v3.21.2
Leases - Future Minimum Lease Payments under ASC Topic 842 (Details) - USD ($)
$ in Thousands
Jun. 30, 2021
Dec. 31, 2020
Commitments and Contingencies Disclosure [Abstract]    
2021 remaining $ 3,803  
2022 10,304  
2023 8,092  
2024 6,257  
2025 4,706  
Thereafter 5,901  
Total future lease payments 39,063  
Less implied interest (3,044)  
Total $ 36,019 $ 39,419
EXCEL 79 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( .9I_5('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 " #F:?U2XE;,+^\ K @ $0 &1O8U!R;W!S+V-O&ULS9+! M3L,P#(9?!>7>NNF 0=3ELHD32$A, G&+$F^+:)HH,6KW]J1EZX3@ 3C&_O/Y ML^1&!Z%]Q.?H T:RF*X&UW9)Z+!B!Z(@ )(^H%.IS(DN-W<^.D7Y&?<0E/Y0 M>X2ZJF[!(2FC2,$(+,),9+(Q6NB(BGP\X8V>\>$SMA/,:, 6'7:4@)<HTYE_)"CH&7+'SY-?%>K-]8+*N:EY4RZ*^W_*EX-?BYNY]=/WA=Q%VWMB= M_&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" #F:?U2RI*-74X% %%@ & 'AL+W=O_0L/THIT)L2T#(3L),X20+6T^2&#;V79Z(6P!GK4E*LF0 M_/L>V6"3C#GVM#?@K_/Z\9'T'DE7.ZF^ZS7GAKPFL=#7K;4QF\^.HX,U3Y@^ MEQLNX,Y2JH09.%4K1V\49V$6E,0.==V>D[!(M 97V;6I&ES)U,21X%-%=)HD M3+W=\%CNKEM>ZW#A)5JMC;W@#*XV;,5GW'S=3!6<.85*&"5\9T^.B;V4Q92?K+Z MRC$@;&\[P5[D)A>A)T1ZY$$*L]9D+$(>OH]W *B@H@>J&XH*_IJ*<^*[9X2Z MU*O@&=6%Q^>$TJKP=SA^D20_T_/1)/TU7&BCH-_]C4AV"LE.)MDY(7DK@Q1& M@R'SMPVORC@>[KGM9X2B6U!TFU$\ITP9KN(W\L(W4IDJ(ES*J)0C1+V"J->, M:,I5)$/;HPAT[,H4X4J'/O3#IT\UW>"B8+MHV&:*@8]E-G0Z7;C6DL4:RU>_ M8.JC.F-A(O-&[J*8D\[Q+AN2QX+IOPO/!59 <+).N1 M)96MA^M,QR]WD]%D_#@_(Y/'T3F"YKFEU[E-X"8BD J:C=D6/",S _V+2$5& M,A5&O<%_6$EGW3Y& M2$M"VH1P&(90+?39X8#TW-=#+"L"![NZ1\!1_8,NN5<[D0E'"XW@SF< M(?EPL,]?AX9&.QR23SZT^)G,N-!JB!;E5BXTD@F"1CDS,C@^QGY MT3V'DD8V3)$MB]%I"2UK!\7='6I^&(D5F;TE"QE7,=8(3%_NYAA)62 H[N:' M/)'Q:[!F F;NITILC=#C<'8[Q*:1M"P)M%%)&*5*V0E2/BO*T@4ND58N*6H4 MOWU-_-Y.W6#N 6:ZDJJR M\]?HW#,%?6 8!+ VACD-#W-)C+$T?=K(]&<)BV-RDVJXK:M;$]>IF^[2TNMI M(Z\?)URM; ?[ @IF#>::;)BH3A\N6(M66CW%G?J0K#6'9&% _V]I0$O+IXT6 M!^_=<98M\LE3:J!("NMIE0OL7+F;*=N]H.W IY>^1R_!^[=55*7MTT9+A!&, M/@45:2)"_DI^X]6IPJ5<\'FWW^VC2Q>_]'@?M^B#?=U%VM;*;QPJ"+8 K9%K MMSW:]M$-B-+T?=RKB[7G,=L=7*PW[N$E_I-HOVD]SX7+/%*,Z MVJW!#7H(2&&.%;.JWGU3(W!R!#I'&VW6@++]1TT"NW#,]]R*J\4>YS#;V7/* MQ_,-4ECM@']I$O,EA+KG%S#45+[GF)\8N&PO=V]R M:W-H965T&ULE5A1;]LV$/XKA%<,*6#')"5*5)L$:%-LZ[!A M0=-NSXQ%QT(ET2.II-FOWU%V)%NDY.0AL2C=';\[DO?=\>)1Z>]F(Z5%/ZJR M-I>SC;7;=\NE66UD)+*\NMN)>WDK[;7NC M8;3LK.1%)6M3J!IIN;ZD7/E3JGO;O YOYQAATB6 MV5 4%5U+M?\6,?B ,%$H\H MT+T"?:E"M%>(6D=WR%JW/@DKKBZT>D3:28,U]]#&IM4&;XK:+>.MU?"U #U[ M=:WJ'!9%Y@B>C"J+7%@8?!2EJ%<2W3K#!BW0M]M/Z.S-6_0&%37ZNE&-$75N M+I86,#A+R]5^OH^[^>C(?+\W]3F*\!Q13$E _7I:_9-<@3IIU?&Q^A(\[]RG MG?NTM1>-N=]H+6N+A#'@Y[L)BU%G,6HMQF,6A=D@B U:N0?Y;U,\B!*F",9J M9RII3;D#]W#%DX0G%\N'PY $I"**XT[J"&?3,G M$8L'\'PAQM(1<$D'+ID$]Y?=2 WG]' 7A0 F_MQIQ@8 ?:$XB9,PP+0#F$X" M_*JL*%\ ,/7FIC%G+!I #(C1A!$O"E/B)>/@G(L3<8 ]M1#XA>Q;EF(NZ(L M;"$GJ9?T5$&FN:(CM:UXT\8Y#6,<1"!(%:? M$GB:\&%6#H@1'-$#GX[!]N1!7L,>I\#ZY$ (9# \1!N0HYSS$1(A/8N0:1KY M0]7W"RMU!77\W3A]D S<*B[O!T0DHL2.E)XD9Y#R.M(Y%1^$WAI@"L8)T-^#H@QC/E(5[Q.<88_>'1&,W2A?_ MR?P]+/GNNT&%,0U84AJIQAH@[-QM7F&06B-HZ&37T+4%'/1HLKH#Z\]]VMO@ M"OCD,DP4DR+'<>FIATZW/=>JJE3]DJ"074B\L# \9RF=1SP>A,?Y'M$Y3O$\ M2:/GCRWZFT_P,)413-65["Z)V M7*VJK98;=W7U(-%9J8QYBXH:7@?K"^J3\8)P,N3L@!ADH#'X/6/3$XRM@5(: M_;3;X7,D+. W%IT1/F>8S%-"GG=2<#>"&*6PNUEV+/;"3>93^R+""4V]HQT0 MI#RC=*0?IWT10*>+@"_2"G@%?:30-1R27 M6<'>(R@7Z#V6!U>?[M[Y3Z'OB]I 9;4&17R>0ACT[BIW-[!JV]Z&WBEK5=4^ M;J0 \$X OJ^5LL\#=\':7:A?_0]02P,$% @ YFG]4D_K=$$( P + H M !@ !X;"]W;W)KVAE3KB M)(1 !4@MU;1-FH3*+@_3'DQBB%7'9K8#[3[]CAV:<0FWC@>PG?,_YW>.3[#[ M*ZF>=$ZI0<\%%WK@Y<8L;GU?ISDMB&[)!17P9"9500Q,U=S7"T5)YD0%]T., M.WY!F/"&?;UUX9//" M\%Q!M!9$+M&*S*7U0 P9]I5<(66MP9L=N-HX-63#A-W&B5'PE('.#$=29+ I M-$,PTI*SC!B8W!-.1$K1Q#K6Z&I,%!4FIX:EA%^C]^@=\I'.857W?0,5S'# S$_EZ*%(GR#0AP&#?+1.#G>EON0?5V"L"Y!Z/Q%!_Q- M#*0,G6F0G*$/3$#BC' TEIJY3OMY-]5&0;_].A(LJH-%+EC[0+ Q="E5"DH, M6YL^W: %46A)>$G1%1,HDYP3I=&"JJJ\UTWEK4(D+H1]3Y=#W,(82KG1=DZ2'K/8(DUJTN0HZ4@6!;P7_]' MR5D-?,IJ"[Y;PW[M[!0PP;NS?]RZL/MV]OCB'&#ZV\]86H.1,:<3H# M*6XEX$-55Y-J8N3"G>Y3:>"NX(8Y7.>HL@;P?":E>9W8"T-]01S^!5!+ P04 M " #F:?U2I\;1-[D% !?%P & 'AL+W=OD['1_ M_4A)D6WRI&;KPUX2B?[N>-\=>?S$V5%47^2.,86>B[R4MY.=4ON;Z52N=ZQ( MY;78LU+_LA%5D2K]6FVGB5CDOV7V% M9%T4:?7MCN7B>#O!DY>!![[=*3,PG<_VZ98],O5Y?U_IMVGO)>,%*R47):K8 MYG;R =^L2&/0(/[@["C/GI&A\B3$%_/R,;N=>"8BEK.U,BY2_>_ %BS/C2<= MQ]?.Z:2?TQB>/[]X_ZDAK\D\I9(M1/XGS]3N=A)/4,8V:9VK!W'\F76$ N-O M+7+9_$7'#NM-T+J62A2=L8Z@X&7[/WWN$G%FH/W !J0S(+:!/V! .P/ZVAG\ MSL!_[0Q!9]!0G[;87>7+S/IDH':Z:68!P$5KE=%,$)\8E5 M;F#.V*<1@)3]\FQ%0#1C-^5BZ(A%X 4TQZBLDHQ0]G:QRBF+AYI=1*_L(%^32)+8HN".MR MVQQ=5$R)!W/$WDD=>.,LUU]K+GFSLTT7@ ]RSYG;WK$ !$>Q74P %5K96 $8 M&GI#1,]D$!XGFOVEQ9;1.4@)M$EYA0YI7C?];:V%A-[+YC?]*'G6:2 P%]@) M[WV G72X*.*%3CI9[,&)O5Q-+"C\4G48#I*^U?]8<9+Q;2:5?J(VQLY M#)*F0 .VR[< 4+K(V*;LHL(PM+LT-&,2#W1I?))>>%Q[&<)"[5CUPA:]Y4WI MP=.YDP7#PFG7]Q/07-D,M5:329UA] M=LXN"D@B'-N<75@2)M0F[:)H$GBA31N8T\-).,#\I.GPN*B[K\2!-U_WFOKW MF;NB*,2^?4 #*.K%ODT<4&O4=[:TB_)#3 =HGU08'I=A[8XV9$&:D?OA$ :1 M?4H#L%#W.)NGBZ(>#IT" W,&03S$]*2X\+CDNDLE7Z.RYXMTVVZ_S,V>1IG( M\[22IU%XA[=SQ._&C M^4C&H^OR :&(G0X(E-C9 .<;:'ODI.+(N(I[;"]H:G.YPXV0*_:U433FBFUL MT;07.V!F""##]->5O51 6!S;$A>&V3UT!<*B<&#OD)/X(^/B;S _V?>6T5B& M7&FF9;NC$B 8H?:EQ!+T%CC*"/3F^[Z5H>G9A6'!JFUS4RLU\;I4[250/]K? M!G]H[D"M\3M\L\# ^!+?K-J[WI/[]NKY4UIM>2E1SC9Z*N\ZTK%6[6UN^Z+$ MOKFN?!)*B:)YW+%4:VX#T+]OA% O+V:"_DY]_@]02P,$% @ YFG]4O<; M>;@% P %PD !@ !X;"]W;W)K1!(ED6!Q>N(Y'PSL%QK>_!(EYG2 M!_:PO\)+,B/J:?4@8&.((P_M4^KH=3 W?76^T>3.^0RQY*,>?Z# MIBH;6#<62LD"E[EZY)M/I,XGU/X2GDOSBS:UK6.AI)2*%S48(B@HJY[XI=9A M!P!^V@%>#? . <$)@%\#_/"]#6 -,ZG:5NQ%N@A4>]@7?(*&MP9M> M&/4-&O2B3-?)3 EX2P&GAD\,ERE5)$5CSE*X_VHE>4Y3K(]G"AY0&$HBOH!7 M!91CINMD3= =2WA!T!5ZFDW0^=D%.D.4H6\9+R5FJ>S;"B+4/'921S.JHO%. M1..C>\Y4)M$48DE;\)-N?-2!MT&91AYO*\_(ZW3XN637R'=X;DL\X_?# MG;9T_H]]^L_L>V+X3:WXQI]_PE]3"B?M7"H!?_Y?'71!0Q<8NN $W1?H MDM3X;2ND"AL9K&Z&ZZ$;A;'?M]>[UW-L%47.AWVCR;&1[[A1M&\U;2$,PYLW MPKTAY!10Q)U"@D=%?HE@W8B!&')*X(K M8C+'5:=.?T.7T;=ZB1@Q5ZOP2YOB%4FX(\"5ZQTIWF(5WQP(WF(3AN'!M4S; M^)S0:Q<\;K2(.[78+]O3Y16WW+;O. ?)'EM%H>\>9'MLY 61$Q]DVT(8[/JJ MLK5W.GU!Q-*,6 D%5#)5_9&;TV:*WYKA=7 ^;,G"N86F:9P9<+$=H WB\X5]N-)FB^A89_ M 5!+ P04 " #F:?U2G,$!IZ@( #U- & 'AL+W=O._W^+%:K&[FDKLB>47FY2JFM55U7T.#\7#^[SX4BZ5JKROJS0K MCR;+JEK_/)V6LZ5:Q>7[?*TR^&:1%ZNX@M/B=EJN"Q7/6Z=5.F6$^--5G&23 MX\/VL^OB^#"OJS3)U'7AE?5J%137^C/5W[KT%K\.U'WY=:QUTSE)L^_-"=7 M\Z,):2)2J9I5S1 Q_+M3IRI-FY$@CK_Z02>;:S:.V\>/HW]H)P^3N8E+=9JG M_TGFU?)H$DZ\N5K$=5I]S.\O53\AV8PWR].R_>O=][9DXLWJLLI7O3-$L$JR M[G_\M4_$E@/E#@?6.S##0;JNP'L'_JU7$+V#,!Q8X'"0O8,T'(3OT5C#:,U!VT' MM=Y0\R1KFOU35<"W"?A5QY^SN)XGE9I[IWDVAR;NCLH\3>9Q\_&G"OY!=U=> MOH"3?/9EF:=S593_\,[_JI/JP3OP/G\Z\][\]-;[R4LR[X]E7I=Q-B\/IQ4$ MV%QF.NN#.>F"88Y@_LBK.$7<3L?=3NM5G<;-HO'48@&KZ)VW5D62SYN0XWF^ M;I;5.SCZ$_+93 6YQ-F.2^2K%2S-=OZ(]_FX]R]S2#'$$*?>=9S,#R!+I_$Z MP2?[8<=8LUDW7:C-OZJE*J!<*]CGELT&!!EX\\^\+-]Z5]DL7RED^(L=)8 = MLZR+!^=4+\?]/ZH*=EB([3PNLB2[Q;K@ZCN'>&9]I[ D-NN";=8%:X,0CB!. MXC3.9LJ+*^],S=Y[G+[S&*$1UCK=2'X[4@,N=\<"[.ZV^P,QD5+X0*N7R[A0T)+? MD,J3;E2Y%0NG?A@00O!XQ"8>T7IR1SRP')K&AH @A/;H;;-7H?O9?S_F:>H! ME-['Q?Q_([TD-Q>7H\EHK^+!>@2&4L951Q.Z%5SE<%A613)KSLK6\ X^@+;W M8 ^%+ZNDZ+;?,KYK%H.WALS"8!DXW=3-8-@2.Y-6(JG1DK9%)(BC[/YFIO[H M3*^+?*;4O/061;[R8'>"J%-5-NNTFUNU+/+Z=ME^=;Y:I_F#4ET5O.NZF"V; M$ETW$]QJ'*Q/?"MXX>R18!-\\#+!8P 1V/6@/AYON(DWW&M;[:I!:*]5&3JK M$&UF%8W.ZJHLZW;KV*0]:>/ZL\XZ>GR?5$O@R+!6RQ94X?M9"AP&IM;9QU4W MARX/B[JJ"S5($U:?R*X/H3[%YT*)9E=DO*?ZOFB[J'K$UCY.*,1-_7 3PW$S MV3;3'MR_>%7\5>U,?W_E[9 /*'4O [I%">EHT+#UP3T"9+TN"I7-'B#P."O3 MKL5&6=1)/_( 3"B1S,"YWDPZS8:1:]"FXZC]C'2C5(G988K0V14:'.DX.GY_ MC^_J!00WN1LUJ89-*D8C_1UNMQ,7E3SIG0<,0\J0&SRD-Y-.LV%P&E;I.*YN M<;1?ZPR(!6F(!2-HJ-)F8)00:<1Z1FU8-/G7.6(C DE%8':Y;7< 53$6PP5F MQGQ?A-+,HVW(B"3"E4B-VG0X>"2- M:!BG_5#;M25F66W\M M;*9QG(WC^(NQ<6;#.7R;W('54.G3H,K'0?5[:'@_U$X:SFU$M/@:8H/2<,0. MH^&8&4K#$<,Q&LXU7O-QO'XJ#><(_([2<*XAF#]%!G>$80O)/!+$W&_.N(V\ M=FUM&R#.H>^;M;7M>"!\L[3(?3P+(\:LTMJ&C$:^,+33*\3.E>HMQ?RYDKDC M[0CF,Q(($CEN(+B&?;X'U9QKG.:O3S?GNX5SS(10X5"%N,9Y_DK$<_X]ZCG7 MB,_WJ)]S&_\9=:5(+UY40A<(] (C%HX'C4+#I7AA M#5W8..IJ@ZVGSL^1SX4MGW-"38YS*>R[X*'9,#@-K^))\CE%0\7D43D+9\CB<5 MD\])0/S <2LA-!:+)\GG6!AG M'&K9KAVK@T^3AB=R"%^0,6S(I!,_F!63($ M]3EGW-#:K\38$X!A"C4W$,]6S_&J8NHYE6[U7&A4%WM0SZ5&8OGZU'.Y6SU' M3$0D'=NCU! N7XEZ+FTD=U- J8%<[E$]ES:L4^)*N<9T^;KE.37=2Y>OV!8R;O*KR57NX M5#&PM<8 OE_D>?5XTKS3L7G3Z?C_4$L#!!0 ( .9I_5(.!\G&PO=V]R:W-H965T&ULG9EO;]NV%H>_"F'LQ08L MM4A*LEPD 5*WQ=VP/T&S;J]IB8YY*XL>23GU_?3WD%(D1Z38;$#1R-(A]3N' MY'D.J>LGJ;[H/><&?3W4C;Y9[(TYOETN=;GG!Z;?R"-OX,E.J@,S\%,]+O51 M<5:Y1H=Z29(D7QZ8:!:WU^[>O;J]EJVI1;WP2 MCWMC;RQOKX_LD3]P\_EXK^#7:"$;I/CN9G&'WVY2U\!9_"GXD[ZX M1M:5K91?[(^?JIM%8A7QFI?&=L'@SXEO>%W;GD#'WWVGB^&=MN'E]7/O'YWS MX,R6:;Z1]5^B,ON;1;% %=^QMC:?Y--_>.]09OLK9:W=_^BIMTT6J&RUD8>^ M,2@XB*;[R[[V@;AH /V$&Y"^ 9DV2&<:T+X!=8YVRIQ;[YEAM]=*/B%EK:$W M>^%BXUJ#-Z*QP_A@%#P5T,[NE 5VV]V79:WC7:2 S M&G+TJVS,7J,/H*!ZV7X)_@Q.D6>GWI%HAS^WS1M$DQ\120@.Z-F\OGD2D4.' M&%/7'YWI[_",L&85G4W[OJOS!QNSEC)"SV4C:EJ#EJ M!L7VOOU5VOET5/(D8.31]HQD%RN8@6\C(I:9R^" MM,HF,?*-2)YDX1"M!F&KJ+"[@U1&_&]6V,I[)Z:TF"KSK0IJ9VQ(63$H*[X1 MLAU7"@;C>:#8U^EL[206WLNOUCF=*/2-2$;" M>#P'5\VLOFRDT;R(WE%P0B M 6F:=5!H*IAN1BB7L9!F)UAU&AUKUH!A8Y38MFYRA1Q:^S%/+L/9>>1;K=/5 MC$LX&;-P\NKY8/-LQ;<&54*7L@4_K%M"ZY8U)0<_M DGV<23EB7KJ?Z %4EQ M/N/ !49PW(%AS=NEO6-"H1.K6VZ=L9&'<;#/X%+#4N^6.((J!!U;5>Z!P]9P MVVKH5NOPA.L57"I/I\[Y)GA%YT:'C,Z1:$+;[!G(UQ9SUT0C^P\ M&\$L\.K5-+4%K*[R]7I.X8@L'&=6%[^+*164Z$/I"L,H>R+#=L7<*(_\PG& M_1:!MUT<,X5.K]X'%UD7A9>J?#.ZRI(9P.&1<+B(+N>?FA/7KZ_'\$@F'$?3 M_44N@[A -,S9)0@.N>!HDV,P&CY2KFA.O*$,F)$T786C04;TD#AZ-NPH#*LO MX",:PU7#ZOH,'#K!3N\(PZOESCPQ%>$/\7KB1LA*YP4,X-*1@"1.(#N M@QP9TK&;JRXGJ^D6HU?OH^,*DZGX@-$:DP3/J!\)0\CKEE.K7>D%_Y[G:'PI M]?V^4)229 K&D)FM6XH9X2.42'QO\U$T4)6\>BV1$2,DCI%[=G;5A*T12A@S M 9>LM"GQC';#2W=\)BP!R/C9,6 U-P]'P) X8.Z5+#FO--HI>4#VJ9M^SH.@ M4A\CTSP8,"%),I<'R4@:$B=-'V+8V#>O$>JCQ!,:H$TQ+W2$#8G#YGDN_)M: M,NB*#Q:[:(JI.P&S8C4#>#+BA\1W6"]G"- >]BFUT]SM:,Q>R?9Q[YY\.!QK M>>8XZ$F8_9[7%52N4!NJKH9W]-![ MBSTH9TW-GZ>A@N2L1&D/R+I!Z[-UR%,:XB))I\DH9)86^0Q:Z A&&@?C@);O M>[;\\*)F&W-I'#0T@#XHR+W3DH!=3E?K&2]&0-(X(#_L=KQTH>=?2[<=0[#P MN4U='=JARG(7MM2"G:?-:T$W B#,\+1("5E1.G/F0R_. >,[N&X?:?'^SS3[ M.S6:%M.%$K "S_!M/:J: MEBD!LU4R6Z70$)VE<_$?,4WS:(GUT!Z/ M7>9A-7HO=%E+2*T\>JI 1[;2.%M=:(Y,5(Z@WSKTHX&#R23!WC@&S+)B;AA' MH,X"X-/-R5<"JP#.GWW0D(5U'!\R>4#JIWD;S'!NS=.17 M&N=75PS8$T%>_<-#M-2GS+2*"Y@4*S*3P=.10VF<0[_T)QIG.\E:=\0\E?[Z M/7/_KCSFAF^2%M,J9WGQY>S U:/[H*B1.R/JOC<-=X>/EG?N4]WD_CO\=M-] M>AR[Z;Z$_LH4I$B-:KZ#+I,W*PBLZCXN=C^,/+KO&PO M=V]R:W-H965T&ULI5?;;MPV$/V5P18H$F"]-SN7)K8!VTF: MM ABV$WR4/2!*\VN6%.D0E*VMU_?,Z2D72=.4C2 L19%ZK8T-1Z,JQN;9=!J*BFL5)JYABYF5\[6*&/KU-#2>59DVU6:ZF,T>3VNE M[>CX,+T[]\>'KHU&6S[W%-JZ5GYSRL;='(WFH_[%A5Y745Y,CP\;M>9+CN^; M&_;%AT&Q8)=W:4 M4+Y041T?>G=#7E;#FCRD4--N@--6BG(9/68U]L7C4Q5T(+>B<\^!;522J\-I MA&E9,"TZ,Z?9S.(K9A[36V=C%>BE+;F\NW\*2 .N18_K=/%-@[^U=D+[LS$M M9HOY-^SM#W'N)WO[7['WSJ^5U?^D\,9TYFQP1I,F@80STY\DR1 \B_?4-1 <#HH.$Z.!',_\_S- ?%8/PA:L;93?:KDG;R%[7 MU%K5ECIR285#J6S(3UTV,%@-@8=MX&*>_4H7&L,QO;'%)&5-8RZTRZ!+K;SF M0 _ Q]1PUVPV8XJ \?-/3Q>+V?.SC"6-YL\?4J6NF9;,EB FC?)PK6W"[$L M8/1!K.C]Y')":[;LE3$;F>9&4,JZUD:)K/$:>!LCWCM?:=>O)R?G@S92AT*XT*+,'8R MN"VE\^1J'1'@!%5*H%VC;4?J6ED(;9UJ*%,_1@K(IY2:4!E2Y=_0JOS^@6S5 M(14'3IU%X:P$9[ %"?0RL;/A(5DN. 2<"80DD**5TKXOU="1 GB'1/,GS\,. MKL8%G7L;VZ#(J68XNGQ70:E7H4)%*QQ#(?D1@UB@71FVO)A(ZP2^/^)0N=:4 MR#G)^2<40JA_MS8?, .'/D?Y_50*.JEOD/V>P9"5-E@\F 25Q-U]UD^L;6'M M@AOG([)-_Z M M42/N);21BC8]!.H)/01\B+52""$!O!+-L C0IAO)M_(-E&WI=(X:\;]!6V M#LJ!C'EGU;7V+>AT]N[#FQ=[\U\>$K"47&N(SVMWP]?L!Q=@5&^T#SI6GCEE M-NA;JO/QE)-P)]*D"Q)1BOK]1.,7 M*A=U 5'QR0,9N3$,U.ZB'((<8TEA6I$! DW\6AZN 4^!,>-!?GFU H8@A2]= MS6B[(LVMC5LBU0SR01$XH,X.'B$.R5V^PHGSWO&8ULB]MYF125Q05P4.7])],(GYA#Y6:+=!:7-% G\)=.M^1WV-7L4LO9Z-NI5\8?NF)XEG;5&5 MV':G#HPVL)=RV.4SE;BO8Z;#?2SXK%V^($6O7WJI3*6^O\8YMR6NP+4XD180(X']M2ZX+Z!IDUM9_JD%CMR?^>FN)A)?!^B.-VYKDL-TT=) MJHR-^>8^O!V^>T[R=7^[/'\TO55"@4"&5]@ZFSQY-"*?/T3R(+HF7?Z7+B*3 MZ5&"9R\+,+]R.':Z@3@8O@:/_P502P,$% @ YFG]4COL0L%& P BP< M !@ !X;"]W;W)KGLXW(-BT[%06?(DNFG_^Y&RX^: ID^WET24^7W\2(G4 MXN#\;:@1">X;8\,RJ8G:=VD:BAH;%2:N19:] M21NE;;):Q+V-7RU<1T9;W'@(7=,H_W")QAV6R30Y;ESK?4VRD:X6K=KC%NFF MW7BVTI&EU W:H)T%C]4R64_?7<[%/SK\K?$03M8@F>RKH_L?\;<.9>="GCES ]=4KU,+A(HL5*=H6MW M^(Q#/J^%KW FQ%\X]+[S60)%%\@U Y@5--KV_^I^J,,)X"([ \@'0!YU]X&B MR@^*U&KAW0&\>#.;+&*J$6UWI0EF"=5&X MSI*V>]@XHPN-89$2QQ-46@SL9'L9?Y MLX1?.SN!6?8*\BR?/L,W&Y.?1;[9&;XGLH1_UKM GB_+O\\$F(\!YC' _+=4 M]__BAIN XO8QD.9[S!M_U0C[Z52 &H5@2J MJK@K>8W,TCI/R$Z-Z ZBA?V1>JC1:J>-)CU0E3H4QH7.QXQ8G&0JD<]A^B@E M:Q& K)_,5'#GY'B\0]L- O">YV%@H^R\%/D1)%:+7KLR3/@8J.,(7!X>#X&% M=D;$<]X>*N\:QKEP4J=7D3QT13UXH2WPB-LAB),7S5SAN@J!47* @NG%P3]7A-VN,U*3$47N\X>3YW";*V5I*XCND!WQ,9A##-_O@& M?">BRP,J#RC]#1^PP&;'^,=ES:\E>G'@ M[Y5CF8,A <;W=_4+4$L#!!0 ( .9I_5(UPPN$ P4 +<+ 9 >&PO M=V]R:W-H965TR]>QX9O@"\) MD@!IC+AN'XH^<*G1BHU$*B3ES?;K>V:DE=>IL^E# <-+D9PS9\[,D#Q;^? Y MED1)?:TK%\^S,J7F9#R.IJ1:QWW?D,-*X4.M$S[#7TY&K.^V7#;Y96<6NL.)*%]Y_YXUU^GDV8$%5D M$B-H_#S0-545 X'&EQXS&URRX?9X@_Y&8D_VSR5Y]EQIG(J=%NE M3W[UEOIX#AG/^"K*?[7J]A[-,V7:F'S=&X-!;5WWJ[_V.FP9'$^^8S#K#6;" MNW,D+&]TTA=GP:]4X-U XX&$*M8@9QTGY2X%K%K8I8M/9,@E=6F,;UVR;JEN M@W<8&X+T*9Z-$[SPWK'I$:\ZQ-EW$%^I#]ZE,JK7+J?\J?T8[ :*LPW%J]E. MP/>MVU<'DY&:36;3'7@'0\@'@G?P';RM6.^2=KD.>53W3:X3*7RJZU*[)2GK MGJIBG;%-1>J/RT5, =7TYPXN\X'+7+C,_T?Y=R)R$Y_$1ALZS]"ED<(#93]T MH]XAV':).?//QW/9I/3-Y=W5S*[%?]':7=_>#V2]^7RCL35Z-U TM$J],9Z<\1&ND4EU[]T!!#@7. MUD<0".ICPST>U8N[=I%\8XV:'TWV9I.7LN>&@GW0W/Y1OM]2OF1&>PPFN8R< M[M?@F=;B\.@TJH\K3'UI,;4%>SP]W)L#=J16I36EBK9N*EM8(+,2^C%<')C* M"-=D%Q77$\JF%;GWU:_8NVQM#H$)9UOMF9K!5ARCVR"USZEB:)U4I$8'UHT= M4;V@'/W5NQ Y"M*I1E=M5:V M$+!MTYS3T?M37UK=2Z#QA[6-V@H.OW4JEGUQ("B-ZP#]I!$N"@T56]NV[O1! M6?Q+FD@I55*S#)K;+NL==P"R,^I29H;,)M\S7,LZA[)%,1I<<(J^&I(2&JF& M0FU3KWZ@W4"#W3ZWD,X[1EW_#/FERN+D1N:Z&DFX/&,;U@J'N_FL:DJESQG< MZ,JT%6[T9<#N?CS+; MJ*@H2&Y(\:"=0Z0 :WP0*4# >K3N@M YS$GI(H'4#4X6E&)0T\/N@!Z!D:G: MG+=8ARVV?@:&.QGI!(M(&V?]VJAKC<]]+!7A33W'9&R7O M<=EU)3'8ZJ8)7IMR].A@98&%>43VI$+@&%P0QN;$WU<-L\.K]+)[C#UN[YZT'W1 M;J*JJ(#I9/_H,%.A>R9V'[A3Y&FV\ D//1F6>%E3X U8+[Q/FP]V,+S5+_X! M4$L#!!0 ( .9I_5*[*6N_W0X -XK 9 >&PO=V]R:W-H965TK??<;8#LUD@!!#)_3?BCZ@2=Q M=QE+HD)*=][\^CXSI"AI;_=LMP52P"]+BAS.#&>>>9&>WQO[T>V5:L2GLJC< MBXM]T]1/KZ]=ME>E=%>F5A6>;(TM98.AW5V[VBJ9\Z:RN$XGD^5U*75U\?(Y MS[VS+Y^;MBETI=Y9X=JRE/;P6A7F_L7%]**;>*]W^X8FKE\^K^5.W:CFU_J= MQ>@Z4LEUJ2JG326LVKZX>#5]^GI.ZWG!W[6Z=X/?@B2Y->8C#7[,7UQ,B"%5 MJ*PA"A+_W:DWJBB($-CX/="\B$?2QN'OCOI;EAVRW$JGWICB'SIO]B\NUA"@U)7_7WX*>AAL6$_. M;$C#AI3Y]@ ->+2P VFWVX@WK55GQSU>WCN?_]\*_ILV_%!U/K3"PG2Y&( MD]IV8W6[I.><^+$J,[M*_Z%R<;]7%4G36'C 4!ICQI3[5<9<:L$B.FF\+1! M4GW*]K+:028PT>R-4P_9NA(WW=3[3K0X,Q*VMAJHIXL#V"DQ<#@'@M;6;)4C MB)-%3YYET%56M+D"QMP!.VM<#B0MZT*5BJ\J$;*%7B5?&UVT^M2H*J?1;>M@ M8\X1>=!S"DIJ5+:O3&%V!U#>6@G#;[.FM2HY,IFZ+L*M0[Q3YG>:9UAP)4J MH0:+."+'K5M-)]>%;"A\=+99M$S\F=B;>\AFD]&=["5ICN()-&05]@*VH;8< M_UD'B\0TTS?.@9IFONV+T2[TZ*?*7(':B<_(B("9,^ H("M^%-G]C(V0K M498.IOW@+>R'L+AE9;4L'(4@#9W>[S58EJ(VEL6!*45.M(/-6*@K]^X83SBB MOM6?:(E2)&<_P"K2$]MIH1KEC[P2;XU]R)!W6O+U(^?>J0H>5^#B!DJAG;JZ M,]!%+FX/G;DM-:Q?U)X(7>DYT$ !BXL"L[MD1WD:$P; MZ5#P%WCN)?N?\NK)TCG$EM<,?F@#1W2-O"TTHG+D_)C-7M+!1@AY7^$Q@P5C M$":;B\KRT87U9'B-W%FE\LNVQFF45N9M0;#62%UTV@S@S51U2;,$CO) 6.>. ME7@EWGCH]U'A@##$,M_J@N"[I,0$0\+MZ'EP@CM-(N6M]8<"+7@ET!*:A7H0 M @(%=H_26/:,@H!T:]7O+0G*SD ^#?Z5+1FEPIWV[/WH;9.O%JLI,0T6!70% M(S1H> G43)*2,SH(T5E0I]V@4\8TPKJ#(KQ#K'3$2U"OOX)DJ$?MV L"2PC M2 E"P!'8 J0(42%0@;B+)S:N#0;$Z))9S>X./@"TS "LJ#>"_M2LD*X#:5 E M*DK?P1L8!]G4*$_F\#T*R]C;5IC*^41H0H907AM=0:6O^(B!E?D(37BAU!O>KY5LP1B>(+7)49+X7X@-.F>G M>"T+!J4;2L1]U"3K@*J:>]*6Y[H+U,&N88IP P(0[6]W$+6N!DD4V?'IF!N, MFE?(SOF]AI.Q=0C.8>+%\].,6"[X"5LR<3+"JBY&BAV"2=799H=9W_1@,YT0 MO=D$TAQ!,:"!)"XA%H* O(J7KP1!0[Q#3K#H$>)^?P0V]I(+QQ8^LNB$<84VT-7V(#6ZY _#9#1 [#F"/6+OD?,; M2_182!GYB77(CY4TL3$*A$S-RSH+&[/WG?-!)G7+/1=P^^0NQEP>7 M_@)+)5UK5E:%G0%GV?[ M=.DVRORY,S$\=-L66V2)_C(-TOQ=Z"N8[A)Y.0G610V399151U)U:S-D=)1= M@G7?)&%LAM?#930EX"IK&]4G@EG7LJ),$!&(0"/$PBA<"/%1/EKJD\6]KNN0 MS0]H42OH$:5_A7ZZS@TX/^K1#,\[IXYX8&2XE C(\@[U =OZ$9VHE (

,#_7WCI?D''@+773!-VB MCGGT@C&5A3RP;[?U\8%#,1=I@!+(B\)CB,SLJC]W3:YW@W;$+Q$)W(DMH57) M"2V4XK-0$Y:ZE%)/JD(*:70?NA$8(["1)SH00JA(0*2YCS')M3>VA MN*(+H/&\D]FL4W"3T-7HFRT#Z33'S@/O1K:,%(.2:VI8R+-R]@=$U%1&;J=1?(%4"GX%X$G]0!%0%QW!6*?-\R MQIBC'15*9#IG;&,P*8'EM!5\&H?5%4/;^=++R0 MR"!PRQ'J=1KO*V#\8?PI?2WJMVKN3./RHT_: M5@U:=+ I:G&7(:?M$WIZW0E#&G%F2[5XGL7]^K3''#=3;EV8FXQ](GRZN9 M*)',\?MA+'NRN9IW$\F@.B@."$T(.<"+1K,W<;_,V]Q#VF?9NY>C#I6NXHK8 ME80'Z4^^,>F$;\*.Q('A#5SO';O>JR$JON=W)T3L7'CZOG=_WQ0[Q%[)J5[1 MG],J\E9;RM\H-SB<\^\>&MFFI, C.)E-G[32<=9C5 EP*&MG7(SL6I>=#'!B[>1N9]4NQHRA-V\- MP0N;.Z7WKDL9>V?HM_O VSUP!I63"HEI0YGWH/D[ZEA_PPTMTSJL==\^Q;E6 MJ=$G"T3Z:*?]<.W#U^1B729+%;3 MN#(,TWF2+GNJ8?C^9&[5:X(A%,H?&:!/]7L^69QHJ'5.SY93_=N/%9,9__6&QFGP2CWLB5O,- MC^?)%.2?Q$.?B$W*MC%?)K/91GQW6M#1MP;\@8A[V)\=-$#[KF?R2,NS(^Z= M[T13$B$2D>O_RL72Y2I9+Q;;Y+)?!U7AB'^2]>C61J>=K%YLI[V1_G1(B$KB>;&H\^ZV(Q,;-*[ M4C=.8933V:R7)HS/N1B.V\ QV0U7^'F7 MV?0FG)M >6[#2]:N_^:^*KI^"2CTOWZM^#7K3<,OPIXPU,\6$P8]W-"&[F,& M^)LNUG0SZV4R053Q]\*-#/KDB.!\O22XGZ]@A;/I1A!2;TYA;H^Q'E/'IN O M_M3'@=>#;RZADQU_6>H\#_[SRS@;/UY]Y;_9[)?[+U]_YNZ!0U*XQ=;)U6IQ MX;.[;M"8FK_@O#4-+H!_[I5$\4P+\'QK3-,-Z(#X2>_+?P-02P,$% @ MYFG]4GX[,Z$Y!0 H0T !D !X;"]W;W)K&UL MQ5=M;]LV$/XK!RT8&B"1)=EN[+P!3KIA'58@2-KUP[ /M'2VB$JD1U)VO%^_ M.U)6+;<.NF'#OMA\N7ON_8ZZWFCSR9:(#I[K2MF;J'1N=3D8V+S$6MA8KU#1 MS4*;6CC:FN7 K@R*PC/5U2!+DM>#6D@5W5[[LP=S>ZT;5TF%#P9L4]?";.^P MTIN;*(UV!X]R63H^&-Q>K\02G]!]6#T8V@TZE$+6J*S4"@PN;J)9>GDW8GI/ M\*O$C=U; ULRU_H3;]X6-U'""F&%N6,$07]KO,>J8B!2XX\6,^I$,N/^>H?^ MH[>=;)D+B_>Z^B@+5]Y$DP@*7(BF5];^P";2C801Y8YVN M6V;2H)8J_(OGU@][#)/D"$/6,F1>[R#(:_E&.'%[;?0&#%,3&B^\J9Z;E).* M@_+D#-U*XG.W3T[GG\[OR*X"[G5-L;:"W74]<(3.-(.\1;H+2-D1I-?P3BM7 M6OA!%5CT^0>D5:=:ME/M+GL1\.=&Q3!,SB!+LO0%O&%GZM#C#8^96@J#YW-O MZH/84F8YF!DCU!+]^K?9W#I#:?+["\)&G;"1%S;Z%_SZ(A)7Y:5=B1QO(BH[ MBV:-T5%X"!?!R'S_0EJJ@%PWRM$-%3-(Y0],(52.E'6NA-G3/;S7*YG#13HY MZP-__]TD2].K(*!_%<,'"KD!5Y*092,]XAEMT=,)M:7RS?52R3_1@MT+0T]# M0_D[K[;06*F6GIO#P55USCX!X9R1\\;3UNA*78!>>[%(^'\TTDI'/.0@20:M MT$A=G,&FE'G)UB]1H1$5"7"E080M"F-C>$_<"R$-K$75(.@%89%V$) M&#-+KOID_C"].@5RC]Y8GQZ=DAP,4GHMR)^-!;==41#I8-\W9Z"T Z>!O(WGZ,:U$@-&TV'T+% M,/-K88*B'_2>'A@+-/WWZ[^*3 M[.)SX.)I?/&MX4GBZ4%LC_/^K^$9'V;1])^&)SD,STLER\*S_0;%3<8WKD;M M*?FUJ%;>7FID2JOS-35CGA9[DZWM)WZL"FH./,:P.!3$^WI)3R%TX\[W6:M M;E^*#[;0DYYF#K5KTEHX>(,YUG-J6L.TS==I,H83&([CX2B,-!LF" &ETPS& MX_@BV5VT+GN5#2>GD$WC:7=#-BY0^LO1Z)3AZ.X;=>J[89*R/B.J_@E\[4DW MV'LVUVB6_N. 1S<]DL(+NCOMOC]FX=G]F3Q\O+P39BEI>E>X(-8DOAA'8,(' M0=@XO?*/\+EV]*3WRY*^H= P =TOM':[#0OHOLIN_P)02P,$% @ YFG] M4E><(BZ'!@ 61$ !D !X;"]W;W)K&ULM5AI M;^,V$/TKA!LL$D!KZ_*1$\BQ1;?(+H(X[0(M^H&6:)N[DJ@EJ3CIK^\;ZK#2 M.FFVQQ=3$F<>YWB<(7VR4?J+60MAV4.>%>9TL+:V/!J-3+(6.3=#58H",TNE M49Z/0]R>CG,MB<';BOMWHLQ-5V4P6XD8S4^4YUX\7(E.; MTT$P:#_#LZ#HXN8Y)W MSU)L3.^9D2<+I;[0R_OT=."302(3B24$CN%>7(HL(R"8\;7!''1+DF+_N47_ MWOD.7Q;P7O'=2&+E6$W MK9/LU_.%L1JL^.T%_+C#CQU^_"_#^.TH[&XMV%)EV#UP@%F^R#"KA1&%-L<#]> (1F@AGB29(47"I6@N'YZ9H>31C]][^K@U9H\%$V\\C? P\2;^(49H M!9,)S8R]\2QB%^3,$?OD-I=(W_)[H5$K:AL-N0ND'(YCHR1?&*J.L7"((A4% MWF$8TC";S=QP&-$PG41U9 VK#*Q%'(!15I:4ZN#M#-A+>.^62U09,L?%''6& M&9%46EHIS!&[%6":3"@7M9VF6GPF!:O8/>9HY7B"*$W&& ,6^T%KHC2F]L/#E@ L\(P9F$P1:BCG0C00@1-0Y7ZS4J:!9\D M! IEH1-XX3A@;[Z;A4%XS,C1Z70GGG@0.I%&$-J&:\V)E/&D4XVVC\_&_$6: M1I$WFTQ9%'H13,#;V/?I+8[CFAR[U?:8/QR';@#Q:#@.:"C%;@-IUU&X)VF0']\YK^XJ_T]R I#=K7DRW;T'!7>)-I8]&DN5PIU-/')KV"%?:#CT&;O(;+')U7UY M7\//W19[#KX+_UIEV#ZNAMQHE5:)1=S0T!'.I=T0%^;#\^%\N_#-_+I=T6/< ML))KM^5=#>[OQN&WLL3_GUER>SYG;WA>'I.<2B2H@*CVTP6);\X[D>7U:456 MX/"=R$N4CDN$"\/9^06G0*4;]3.T1SFR., M'P', O20:U6LWH+/.;L2"^LZ[[+2,$WWSVE,%2TS=IM(--Q\HX].LZ;7)5HV M+QY=M*;'AETHKE.2OY):4/G$"A7(H.7OA L-%+26Y1"K2EIL+PK&0Q]WF2QK M"-?@/CW*H72J:K5FO'GO095:K33/N^6E%$Q<4[\(B\,Q!%4N$X_T%I7! ML=T8BE+JSF)->*!,QE"0>:ZJPNW4GMFX;!2&)W6GWL!],BD5E%8 PL!'+%C@ M=.MJ06>$1*[$/<^J;H/69O76]YK-66*_P'ZR0#ER++E+RQ!;CU)KMT'IDD@3 M9\VJ%*Z>C'&[U,\]IM.F!$SUWX&0)K <)[N$(P?9P8AS&75KW@TDOR74G M.R#C^T?TG0E_4A2&N^YFH]YU-Q=ZY2[UE _$O+[Y=E^[_PW.Z^OR5KS^T^$# MURN)=&1B"55_.!T/F*XO\O6+5:6[/"^4Q57LUY@0 '8* 9 >&PO=V]R:W-H965T M[V*CS4>[0G3PT*K.7DY6 MSO7GTZFM5M@*>Z9[[&BGT:85CC[-3J(OR[,U<7 M>G!*=GAGP YM*\QVCDIO+B?Q9/_CG5RNG/\QO;KHQ1+OT7WH[PQ]30\HM6RQ MLU)W8+"YG%S'Y_/4RP>!7R1N[-$:?"0+K3_ZC]?UY23R#J'"RGD$0:\UWJ!2 M'HC<^+3#G!Q,>L7C]1[]-L1.L2R$Q1NM?I6U6UU.R@G4V(A!N7=Z\P/NXLD\ M7J65#4_8C+)I-H%JL$ZW.V7RH)7=^!8/.QZ.%,KH"06^4^#![]%0\/*E<.+J MPN@-&"]-:'X10@W:Y)SL?%+NG:%=27KN:BZ4Z"J$^U !-[KM=8>=LQ=31^A> M9EKMD.8C$G\"*8>WNG,K"Z^Z&NO/]:?DU<$UOG=MSI\%_''HSB")&/"(Q\_@ M)8=0DX"7_*M0WZ$2#FMX*6VEM!T,6OCM>F&=H4+Y_1ESZ<%<&LRE_P.S_PT) MB"$\, 0G0R>&6E)0I_ 2*VP7:"")PVX$UU6E!Z]D:$NNQ4+A.9S(#MQ*#U9T MM3V%N52**!%?BC+HR/2W4!9L1F"TR-AL5L*';C'J&%QC-Z =!?.8%;2;%BPJ M"WBOG5"D$Z"(,4 MG,5F4*!D@Z ;2&"+PI#/!%:P)$W](F-Y&L&];MQ7=6)P&HJ]8LZBF$-&NAQN M!]-)1S40'&GD@POU\'> ;*^;LG06T3.;%? &J2FLM*I!MKW1:VQ#;I[4)4[2 MF*SGD=>U]MRG9FB'L1QKI-Y:21%:U@GGK,B34UI$C)?IZ2.5G,4\Q!RS6<3A M9[<8?,;#M ME=Z2QNWKFVOHQ7;,#9$6)27E/N,)W(FMT4J1O3$#E;;.PQ79C"0*DJ,J;2A1 MY"MQWR 9*ZEV"^)D'UB+M:QHLU)"MA;PP4>'P%E2Y/1,H^R0.3I!>9GXS$4) MXWFQ"ZG3W8NOIN\0B^R(-00G'LB!4/5I&?OT1&P6Q]3/+)HU MW3,%"W,$[X MPRT>H-=6>J)#5G*BLF11-'L$_BP9C\DO64%29"7+X: D?/,64T6&( M/564\']B_KMO2A[S[W?4/QLZ)"Q- WM)>F OS5@9^[K/(FH@<:C0:^O+^?-> MZ(_Q%SV048[I=-G@"9D^/A"X.R4>:E=Y8U,2U!FZI7WAK_[ZZ4/C5L+1O;R% M!9*^4/)/DEYLX2W6[_50K1C,#27D#UU]M '8V[?4WD+K0!-BN+M_0R<;VO$> M%8WO@%Z.?.XQC"]$.G7)73[/OG9+38]F@1;-,DP\%D)''\>"P]_#4'4]SA*/ MXN-$]E:8I:2R4=B0:G16T QCQBEG_'"Z#Y/%0CN:4\)R18,A&B] ^XW6;O_A M#1Q&S:N_ %!+ P04 " #F:?U2::*FA?$$ #Q"@ &0 'AL+W=O[^DFN[/AMD@^W!)[VL@AR,SD];M>0;#E_:CPZ[48]2 MZH:-U]:0X\79X"([N9R*?!3XJGGM=]8DD^;S 'O4E1W%UOT=_&V!'+7'F^LO4W78;J;' \H)(7JJO#)[O^@S?Q M' I>86L??VF=9',(%YT/MMDHPX-&F_2O[C9YV%$X'O] (=\HY-'O9"AZ^48% M=7[J[)J<2 --%C'4J WGM)&BW 2'6PV]<'Y1HRS*%$PH,%TY+G6@/ZWW[$]' M 09$;%1LP"X36/X#L!F]MR94GGXW)9>/]4=PK/),^VDG$F_P ;R<^^OMB[H,#*_YY 7C: T\C\/3_2>.+8-*')[Y5!9\- MT&B>W8H'+UF@:V%W85T9[]YWJ8W^249*_5*EQT@HT?/!-YGWF$TKA3R MIE8*#L]K7)LTYC$OA[1PML$)S!K 21[X;K/QMG.%% 08D);L66J51PU6$L.P MKTEAX9'@X4P@\.'PUD1CLO5=VUH7XAZFN0 &G+Z@"M,4-%"/6+]3U\3 -"#9 M^4AZC0,&F(YYP)73$%N#)0!&=R#LLG/;6GM]!W+$<<4RK@C#AK?#9@Q)EJ!$ MLK4!H4B95+F",>0)Y"Y"(OJ'K]=O7F6O$3Y0&C1/H^ZI4J!&I6*>18I1N$9X MA3Y:= %,>AP,0O9RM^M#]KB3)'.0E.(];B7)XPZ;T3DHZ3:!#XR6/!B+ [/$ MN6'4S^,S_,"''6._^J0H'84DBA6[BEW)J#+A.V@.U9+V*C)FK6C(@V9-FU.$> MA8]>O<0;]$!Z@NA_852)%R*-X1>5;>?AJ\?\NP%#=C]HCZN3:'*97"#D_ T< M:^;(TB2CGRD;CF>'^)_.IG2=Z()(GHQE$,JV,,!22:KQ/$19HQGA^XHC_6='.;T^G-$7L\DI MXMCFC=9.!W ;*@O:FXWW:2_+C_=W@]J$' .:'1W%_Z/LD)[[9HYVGB$H^C(^ MMCS%NJ4727_:O^$ _(H/K+0)MHV/FKD- M8%A<5GB3LA,!W"\LFG:S$0/]*_?\/U!+ P04 " #F:?U2I[1;Q;$* #B M'P &0 'AL+W=O19,=-^@8X;>]N%]O=HFEO/QSN RW1%K>RJ))4G-ROOV>&DBP[MF_3+; ( M$%D29SCSS#OUQ*>MS: MY86KK)(9$ZV*BR2*IA#68Q<]O)K2>%_Q+ MJ[7K_1:DR=R8+W3S0_9J$)% JE"I)PX2ESOU1A4%,8(87QN>@VY+(NS_;KG_ MG76'+G/IU!M3_*HSG[\:7 U$IA:R+OQ'L_ZG:O2Y)'ZI*1S_%^NP=CP>B+1V MWJP:8DBPTF6XROL&AQ[!572 (&D($I8[;,12OI5>OGYIS5I86@UN](-596H( MITLRRJVW>*M!YU_?U Y/G!-OS&JN2TE0N9<7'JQIP47:L+D);)(#;*;BO2E] M[L2[,E/9-OT%1.KD2EJY;I*C#'^LRY$81T.11$E\A-^XTW/,_,9/T5/\>S9W MWL(S_G-DBTFWQ82WF/Q1*(^RH2A\[BJ9JE<#A)E3]DX-#H@/;"(Q2[_6VNGP MY)=2_"C+&N$EIHP=$/2Y(K)*E@\( BRV*D,00G-9>BV+ H^+0I@%KY3.*>_H M[KW*/IDZS8>BJJVKL5AXPVN\LBM>(DLQH_7B0VW3',$A9DNK%(+6C\0GXK81 MKL]2J'N(D[F^;'_]RU42/WOA1*:7VLM"Y$H6/D^E57!X^T5Y72X%X:%3Y0+[ M75)OB!#:F%3."T6"![$J"R*1 B*=*'E/*E3&*2=TD':RD1;&?B^AH$C&?]36 M-Q;Y^S>3?G'?T=H;ID?M31'HU5*G/3-C,?9-\U*GDF ID+KATQOKL^X/8M(J MWA=:8ETEB>E!>8=8M,X-\#@WZ[+!2&>: J9=&MD88 MG\-'>@)NNP, $ N98A>OX4X4(J04V&X$:3?HQ<'?OBFJXE'RM*B*1_&?$55# M\$J+.B. H0_85FG(H7K85>2A02L3/6O_[W>[41>6'VY^.A)JX];#_ MWD@C0DA$O0B;#TD538V&G&A-J#Q(@$4>(K.,_0#&8VMSA0#!C5G"HAQC;V2A M-W1[HYBV0XBJ<@D)R_TAO"S,O!^GJ:SDO/$T0%SFLDS9AQ$2I9+6Y09F= _. M*^A+@H161SBS\&O*^'"/0@>9P?8.S6,5XM8K1U8:,I4IEX:K0EU5QGHV;^"D MK M( 03 M*+]/,00TRB"WYH%BBE#$[;?Y*"TT.0!5A4!L%Q7+L#9,09"UJ 6 M.\AEH;8N,[RR>J+-M"L1;,$BNXLY']SH9I'&6LALD"X6;69/U3 M*-CHZLZ>;YJ,7AHE3WA#*)Z(>#RZILOEZ J7:81++]6O()#CT-/.U80KLD%A M'.T3@S!! 9Z,+D&R/UF(T_@,"Q)QFIQA\5BR MXC9'9K_!>\BY10:(FDR N:50]M2="0ZRY(6(P"."53\]Q:=.!#E#0.M24PWKVXKB;-44I%XFL7#Z$J\I:A#))51QYR$7'4Z@P==6 M*-AS!0Y(.O_%^OG#CJHQBD88(^0"J3#X2@-^UHBR4X1'#'1GN/QYGXBJZ=E(:\-/.$8-HG*]*89RQS>:< J"JW(.VPX'P21X"ZR]5PX;O3GH:,/IX,.X>9+4E[^#BF<-((9OK^]:1 M%,VCH5BWT^203%V=+SEC[$N%^ MUV#;4:+ZLTWW%#/%W]5,(\Z83S5,TQR=)$G?[P^:9+>1F2/K;66^;[$;4NXW M&0XVLE1=%>^!:8!;J(<_SZ#/=@TZ_9YQUP>&AI-0TMI!*[1.1XO;7/DU93\, M8$MN2,+0A7X]HU2_T-P?/WK; LN]*8G=M3@T(7%7X7YO3S%KN_F=75!J)X#O M1#SCZAO'@.Z'(U*)*59?H;=(KK'RIXV$]+Y>@>1T.HK.$!*C:_RGAN),_*.5 M.YZ *"9[71+YIWW0[>T$9EOM?&_4I49=D6O)?@WM9I=&Z% +@WP]5)NI8;LT M=JZ?*NN!8<_Q7=^;5DJZVK)3"OBC-EDSZ4 ,C*_-KJFV:;VBT3M5+B0#=1_: M0QD&J)TNM"FGCYGWQ0@E/4Q5DAMAI!;7]61[79(B)>[W[#N$\I"'A!"[[!%B MT-G0'?/AAG9R<--BCP,%0;=#>H>L"P1:F_36+BQFL]WC#^[($/RF7N:[J?L MV&U[SX-9CQ7/%FON]=JY8]/>^]#FMNUJIN ^A6M]\C$X'>(]KWI J]KDI+Y,E5,6RXE+<2Z>-;]/Q'B,,.THYC+]4AC,'D&%YD)1 M_C.&,0I8Q*N0;7]*S%JFX4K=TR%8G!VN=[6A5HJ,;GC66^HZ$48L%*A0%0YNG-G+T4T67^HB(=J/* MW\N/K51SM=0E#4FAKX^O1SUT]NO#;7UI?&CM&W2:V;BK0_C=*T5SET)1=IO!Q:ZI(,:V-AM&@,^(2!QR-VM#N<= "NK^S3E\V!!YIB9JJT_L]O/>ZP<\J-O$$Z;(QZS^;C#J2N^ M)O2Q?%%[TO%H>&P)0Z6%B\,IV\[4CD_GU7VJ*D[6PN6D*E9+X'B+".I_W]N. M( 0Y'PEP\HJNAI?)-1]TH+(@A5'WOW>VF1*)PHU *D:.4N!\*&+\KAQIN*O^+. MC4=EX)^Y0EJWM #O%\;X]H8VZ#[KO_X?4$L#!!0 ( .9I_5+4PWJ'>@8 M ) / 9 >&PO=V]R:W-H965T M06 #&K?./CRV =LSF\TBQR#C;#XL]@-;HKJ9D<@>DG+;^^OSBE++[?$18!/L MEV[QJ*I7UR-YMC/VL]M(Z>FN;;0[GVR\WYY.IZ[S:2N4GERG&V%6OY2?I?MA\M1M-12Z5:J9TRFJRLSR>7R>E5SOO#AG\IN7,' MW\2>K(SYS(/OJO-)S(!D(TO/&@3^;N6U;!I6!!A?!IV3T20+'G[OM?\]^ Y? M5L+):]/\JBJ_.9\L)E3)6G2-_]GL_B$'?PK65YK&A5_:]7N+;$)EY[QI!V$@ M:)7N_\7=$(<#@47\@D Z"*0!=V\HH'POO+@XLV9'EG=#&W\$5X,TP"G-2?GD M+585Y/S%M\94.]4T)'1%WVDO]%JM&DF7SDGOSJ8>-GCGM!ST7?7ZTA?TS>@' MH_W&T0==R>JQ_!381H#I'N!5^JK"?W;ZA+(XHC1.DU?T9:/#6="7_4\.TWOE MRL:XSDKZ]^7*>8NR^<\K9O/1;![,YG]9G%_5Q[UZZK:BE.<3-*.3]E9._LBW M<=G*(*,QYS>2Y%TIG:-M9\L-"IRV5I62S*VT8;D6RM*M:#K,U:1!%*+7)\HO MG;*RBLC8,-\HL5*-\DHZWM.UO*;0>K3J'!R D=*T*Z4%=^0)($)':6PE- SN ME-_0Y:=KNC%;55)6(.D/3CCZYF^+-$G>T2,O?P)"2U$ >FW:K=#WM)66V0H8 MH%_K3C2DL*(LR,3#^5LF"\ *SIG.PNR73E@/1:RR-4A^;>67#MN;>U(UR=L0 M++B)".DUP$"\5+;L6N<9/$]4JA1>0JOPM-YC;)D5:"4'!+(ZH1L@AK?"D39[ M,2:HQX(K68KV00Q ^VSXC94RX'3J#EA#LTEN-D*KR+%53H;0J(!"X-1?"7*SXU91P%4 MA5 U.#( S]1^)ZR,:+=1Y0:J))Q2>DT"$?;JO]@SUE@/+61X_HZD\PJ$BPV= MDW77H+!N$6*NH778SGW)@7W+;4&M]!N#P'YX7BQX@(2:EAHN0<19DX'MI;-C*DFNLIZ5[%F? [A!B+?^@)CHZ#9= [0W/$I M78DF\"Y4)[.HV6ZH(^/CP5DW0S181CA#' JE D=)=$B M28[I0UWCTL60L07W(G!E9ZW4Y3VWAW;-D-?J-_1'7V]'132+E\>'H!X[PX#B MJ(@7SQQLX>1X+VNE4=WT?:BZFT#N['D@C5!UXZDG]I=0QGAP= P$Y)[)=B@% MCJCK5K^Q=RA3<<@67X?W,?RG$?[6&I#198EB[IK0-3_B"'U^]OI9&D),EG&4 MQ3-\'.6S*,Z*8XY3'J5S#MAR'N7+>5C,HV01%HLLRI*4?CSDKS7JM<]"$N5I M3D?+;'Y,^6+.X_F2CA89DCK+%P\X!C[KS^3TW9/_!+B*C+.ZS"&;1SF,WHS4 M^*)Y;.O MFN_TI106]!8(^^/GI:SDV%,,6YYD(.F/L8/8#C//!0^*YH.BA\-RN"(]*N;] MH;-G&BWO/-5P?9#NZ>:@J /?,5%*4?-%2KE'WG_='*$GK.17([?G&UI$25;P M-""4A M@NOP%N1S%_3:/YC&V?&Y>=F_LAZV]V_5'X1=*Q!>(VN(QB?S8D*V?__U V^V MX&PO=V]R:W-H965T?]5;*4GS9I9G^X6Q;EOOG5USLU4N^]KYX]3*ORE1E M\GTA=+7;1<7CG4SSAQ_.)F?UA0]JLRWIPM6KE_MH(S_*\J_[]P6^7;E9$K63 MF59Y)@JY_N'L=O+\;D;/\P-_4_)!>Y\%[625YY_IR]ODA[,Q$213&9O8?>>_8RRK2\G6>_JJ2GBS,15[K,=W8P*-BIS/P??;%\\ ;@#;Y5'@SB5D5 ^E@7N*HPK7[W+L\VS4A8[ M\4:NRI=7)>:D.U>Q'7]GQD\/C+\6/^59N=7B3UDBD_;X*]#B")K6!-U-CT[X MERH;B7 QXF^!B+2($NBF(L:2D0F8 M,Y8@ FB5''\*D1)5A1;[J"B5U'2GD&4^$I_PR" =8E_D]RK!LW ^\ UHQ6J119+E)(B$9"=C1\K8C#<#A50:)/<)=H:>1_#4HT78*M M2&&H>( X,*E/YRI*HRR6IT@THJC5"GRH"M*K\_'HNN8!K0J?)_D&$4K3 MKB5$1$H &6EX0WKH,!](EG2WW.(*LT*K+V)GO(C1W-:^CBE(E&I(+T5DT6Y> MI77%9(&*5)8EZ1P^6J51AL?1!G-LB+.-@A@E.I]X6B(BTN)'D8.>$K'H18NM M_=GQMXHEKV"O1/>12EG0)W3XL$R=1+81[.DA/T$#K0.131NU_5BMZ/E2@5./ MQ*Y:0';B?_^WF^ED\8)DJ"74.8(6[5.9;" *<$3+F!RGMZFU=4LC<>?9X$G] MCPKR4=!171)CARC(]Z75,KH+,X;%%"2FBW TG?\!@F@SZ!*$5IHMO]A MD64 M;8@MZR+?"0AR_ ?:P80_@"\D1]8T\>[MW2\?Q,5X-!E_Y:R3>M8I?1BP&4U. M.,JR"E;L^158">T+*\YY.$1DEJ:=5EFEP>U]7OC[IW#12-8L%27X:)RPII ^)B(9NX1QS?D?GISRU\F+ZPR O2>3&L*HM?PL+R%/K4T,"4?S<:WU@;\]!>:M 8R>M0^+PF.TTUR M"U5F;#UI/1J0RD1,0YZJA.$$@+#2S 2&50(<6V?@NV&,SRYF9%V5ZB8!L61 MWO(8_D"RN(^ "DK-&P#%\DLL*>#,Q\%XS/_HJN'F02[:_>]R]E'8_[2]?Q+2 M,1[\-Y%9Z\9KGXV?\A*B_!FYUSN88P'8)#[0XTYU>IL#'G&;@XTZ9U!K^[#O MY4B>E;"P>I]&]@ A?)^BNB*HE26L1"5RJ2I-ZGC.5@(P]HR30/&D+="<#=F^ M3H+L\IA?(0"#%=DE*([D[!9(3E_A"$ DR"D5A=Z/,E.PJY_S$D"% !C&S E3 MWU8;I%AB,F,ZQEV'H2L2\S1L(0*''(9 Y@11"E[]X.)OZL49?EN5X M\W\G= MQBH<.!<:Y+;=#\*&SP_P.!Y?/I=#I:-%#)#U$.8!1/B%&<#-K5K7*)/Q.D:Q/AEF4^ZRK>FJG(!IL-02 MAJ0C)C35!&S;* X;CR5"5&)$>9267Z.B8$/N4V.D4$B*T#3TSXB*=&XFW]F-(NH2/718$#]/TH5P7"]*.8L%QK;V.@!EAM)NFLSXF?I.'U M\X&Y764Q%8FPY:;PHN*%@QK+8:?(O MA#9R(W=RYX:8VL#,"J;\1AS )B?+43@/;X3> E3J0WD$X4\,,E&0N'4^X2@Y MY#&;G<,DMPJ$8)DFZ%H?-D 2)C-)7K2'AB#O!XG0U?/Y9'2]X%692,;/'CV( M/JSK!&?@^8K(!]Q]8R&Y#:AM8*VNQR )W\6%1I"R=2E4U%![?H,8.#]&WZ?^ MS(&MI52ZNR[/&T!I'LD0HN0?T!A7C(BA'P1Q8U7$U8Y0?FPR]<;OV'Q8<6Y M>K=!B&44W&5(+V*]K<>T?7KM#(@D>(TR]>G5Y$1@*31_3HX]!:O(29CPL6<, M"2L*V(8"3\]4V=$K#.>ZS0II0BU#!]T.CPL.I9YUH3C@*F]2YTD-35VA7&CL M^"WTK^;*+OHLGSULY"= 74Q;)*I:UD1'Y M.Y+GH%Q=X6I(-=?,+FVR(\HTP?4\8;U'CMV2G.,(.<&,?1M7 5B4-BWOF7%' M66HG6.WSS*/E-"P+"99]E/M2[E;0X D[O\G-,#*;S$(O^3R.S*:C<#$_CJ&IR!J'8C#T_CQGXC- ML^O1]?1?*#:'P[$Y_/_8_!UC<_A_)#:'IV+S6Y=RD)C>()EC7]BOC/C>+NH6 MK?UZLK=JN2WR:K,E;:9*$V)E4(=1F&,F-SE<#9D' F"F(Q;W@&*;R=Z;U%1\ M<(34>DZUQ^B^L[:I'YU"".?ST:1)N/TV7[\2/E I>$*5P(5?'RG5,50Y[A/# M603GRW8)P*O]LP0QI"4E5TF79:_TT&=90%,:YQ]A).?+X,)DNO!693+F7HW$ M!'7JN<5&7+EM540KTZJF$11)\)%HR3,NG?;4D.(GJ;SQQ\:)GD^: @V7( J9 M^HMXY7^?MHII(S-!E+E;),T1VW-"8H1]*J6WO$!2%;67)&'YWJ0B>,7I3Y1M)08^#6TMJ(U\8OAWQJ)PUGBD#6;=TY>,.> M#OSE*+JJM.*2N_7<[GN"R=4.*$H91T#]%N7W)PBUT]6U74 M L-*#6Q>Y]1!YKJ1[[2?&W9TH: M3]+"F-:7C-O>-K09S]?O3-FF8:2I$4TZ"%EI4&(!3@O6G 20ILFAQ22D+N7Z M2+PULQ.YC+')3U$[*F)/1NZ)JQW@8Z T-:T3,$(=!26Q:8 ;G.XSFJL'RWD2I@IQR"?A=&?R19Z<)[P'V M=CU'-';L(_P M*$VQTL?/6$[4Q_C]1 M=",A'8/Z ?O#?3F8H)V:*F#[,^%2\T[M0806J$;(;#>.5-&P(#* SWO F)BD MHI.#1P>POP7@.45Q#[H']I1+'!>5[4=5V3Y2B7?N 3$%M(W$F\97FG-;A\]K MN?2[P:J-R:XE%UL&\&"WTLXP$Y:XV?#AQD@?]S5M#_/'CHF2*P/T;\[9D2>L M6>='N,&P=C"<6?DW^=J3@EJ;72;%.133VH<]3!9?L T$)_A';K=I^\=-V3,P M<80RX9PJ;]SG_.H\P#8NS2ZSA$ M3YKS2[4?PB#@]8I5H%1Z;=)%0[72C?)Q(2(S+4!/M,U]*\%U15HY$A]5%K>M M3K MM*U1H'CBZM=JHDBLBA2DJ,R%[]FL:=7R^BN-9@IN,N M@UMUX]&L50[,#KBZ6K'NH[1ZLG-K.:33_MNO2/"!+**+ HLYC&7"Z7'Q'T@" MN2C+ICNG#]/JR/ZZ3<%_, M\#2>N[B>X<\\F"YHIL7RDH\^Q5%1/#8GPD'3Y"8,ELL0GS!P,:,KBV4P#I=\ M97XS;YH9W:-_3ST878MQW"V3?!=)>Y-\8H+\]SP:0CZ"Q.$[3"*3UWQZG3,B M=^V><[&8$$?8&4Y?$)>"67CC7;GUSU?RX7-?IM-@"@VHGYT%X6)Y?&1'JM.; M&_?\?#%WG\VAMM[A3"25^29C'3D'])Z.%RW:KX-P.?6N>(S_/5D8D@WL&!%Q3-VTVF3Z)0V HS#08SR=$UNL=:3_1$KC1\G6BS&#M68??+ KY;;0T1)T^WQ( MG6#4B6J_5&V>"^H'^T7/PQ6X]AKVI9PZ=ZV+'KU.K&M):(U1=O(OVGG\QB/ UZ8TL[-L[[;92_]B,[5YW.B16G!9C4N\MYCS(GC"F M6KEI99@7!BBL!9U&HU^\;7!5*W)SND1)_&0A_JG[8&],O;OS<>QU^NP>[Z(GM2B[1?8 M+Y\H NX1_VXB"+]5!&Z@*]_:DX]^NDV>L]+<\%KE]Y(+#RU?0_F!-EFZQWMN MAGR11:RT;0_T;27OI4K69YCRR<";2K86X!^VI$<'+=6D3W1PNC@^7^\TISD" MSC6#YK4)9#XU2SM8W3I@]UY!#\V2PY'YVJAZBP-);DZY4S;!PBH4'1V-&!)I M9%M:I=_:]8U&12/6)/JD:#F$G.G&M0A"R,,K^9#+@$!K-Y@0T[YAUZ#7JK!UQ M1D0";IVCG7L.P$C$W>;DA )YD9C""Y\$J?O7N=^%I&K1,\YSS7E;VJZR!FO5 MXX^V&3@:B/KN$,?WC?O\5B"RU80\X3-FPS-CDU34KL^-#(?UFJ33@=T=!?VF MT-Y9AXO[I]OACC.#IF[DV'6['<8YGA\Z4/-@"M/^X1YS9)4[M)T3,D-=7'AV M[]W:&J^8XR]L05[KK?0:EFW$TJ:*BP@#[Y<^>5=TW:5)'DN/OB/FT*S1?UM: M3E1:U;'1O3'6% FLWY%?^( &NUS[7HRY;P2#E=@E6]ZR]P$![7K?4 V_M2,K MCG4_A#2,^_25G *4I](T4Q=YM%?G='??08S!!KZS,PMIKO'6?[CY] 2XW MUGWUA5)!;*O2^*M1$4+]PV3BLT)5TB>V5@:_K*RK9,"M6T]\[93,6:@J)_/I M]'Q226U&UY?\[).[OK1-*+51GYSP355)M[M5I=U2BN M1F]'(ESNW\187_ M;DPB%M.QF$_GLQ?T+3KW%JQO\:?NB??:9Z7UC5/BMYO4!P="_/Z"B=/.Q"F; M./V;$?QV:?%+H<2=K6II=F*E2SS1\>< _$Z%QAEZ) +.?4Z6B5BI7#E9BB^- MTS[7+=%-+AZDT[;QP@<9%#]!_8*AYNBH3]CD!Q.4,U!SKQZ4:918*O>@,R5> MDZ%__N/M?#Y]]^%^R5>S=V]$(;T KKI40>5";26(*5FAL"M&UWI!$K.+=SZB M'7#&.CY.,!L A72I*QU:962GEM[#"+> *+-JA79*.H\K9YMU <+,SI)^!#O; M^.6<0X"+BV>12/ B:YQ3)I0[T8#/KN^92'=L%&%H@W:_9'R>K <1K,BUEV5) MY%$>T+)"9$[E.G0I"S8@R+*RC0GDZJNSY (U79:DWYK!P 'S[,C'YQPX\IV1 MJ6TAT4 0/, 2,H=K9W>UX &T4WN"KBB'R%:6Z\I M HFX,;U$R?P+ HE1%,9"X];LQJR/DPJ^PEV<\@U '(XR F,# $IOC4QA"OJ] M3DL.B/(0960AAA2W;3P?$V78Q3%5C]K6F&_(4@QQ^X,>)M, [2GR1U%'!U9= M!^:,4A"W#!4>O)HODM,]:1/QF>N$;.'0@_;]'G"SO!/+)@VVUIFX.)V>S*8G M\[.Q.&IY)V@ZF5T;#ONXCQH,!',-2M'%$_\C+P$]54:M=*R@[Y.SKH)>JVU6 M-CEEX]4LF1\J:\6)1Q##&R$9WI&3PUU#K5:*-X88+DK4!L+SBV3Z7>PFB^3\ MNXZY")^*)/-Z*ZHX%15-Q6-C8TIF'367H!&U41"%\[>8)6];W7.Z^HNZI\>Z MHUL#;H %1$E(YY@%B!9WX!=1([L@@--4+0VS-U9>&9M)KJ)&YMTA0U[T,D?. M^ *NGJ1LFQS';A<;#@PV<2*AW[N@T;!VR-.J[1CRR(*QYJ05H%*2V1^-CF4+ MI1Y6O]VM?O0CB35@TF!!!WC*E/%@51F )$SM].!^XEQ+UE++5)8S*@#NLY[74 M.3<'XU7L\MK[1II,[,%$[HWPZ"B/2T.X%_V$P?0T]H79C M. PWY,!0]G&%8:)I..3B5I8,;$E;K!\J4?&Z,1*EC=-OV)GW*E-5"L.+6>1^ M@K8BUN =UB'TOT"=:RA9-:U]M-MT\X")P^--&\R4P&)@@ &'GMUG]MN4;U*O M,3:=5NV8MR I7IF<;!>LG^P&H\H];FU@*98GA]E!H2YD-+M7^V?F[PK(^>@$ MWD=LE6KY"$RI2TF%U8%8.5OQ M=.(RX2GU41J\LO&8ZPW5#)6F36P00Q9Y$8GL=8K>&*E,][0A++'^.L,(*'61 M*#$4\D3\V/5\BHD\BLBXDZ$9@K62M]5>:"GYS&T:TVB+T!2YS2N*(;J))6W0 MOC&-$&L]0-ACMUYWWV>6.0- M!]2@%&&XUW+'B:&&29N<3IL]>9^*IRK#]J?:4B ');S-=,W@>%?I0D%MA0QT M01K2N!_V7;[JNM09 ^)6(3>>MZ,^S_GEV\?J@FHLRR 1,LP\B$=7#9$'O\6: M\$@7(Y24?C0C31B.68L @@'J*<189.W>U#FSL4V9\_[9I%_:<%._XAV4$E+8 MDAG$$7^A\WG1VF!D6%DL=\Z]HOS9)' M>]GL_+"7';;3H^7IF<%DA^MCR$8RZX;7T)OSI/<=HE)NS5];Z%41^8B?)+JG MW0>=F_@=XW \?@WZ*-U:8QTHU0JBT^3B;"1<_,(2;[!6\E>-U(9@*[XLE 1! MZ0!^7UG,M_:&#'2?N:[_#U!+ P04 " #F:?U2!\'-(XT$ "B"@ &0 M 'AL+W=O%\)2.V?CD,M2>IDE)EAI/1Z'A8 M26VS^32=W?CYU#71:$LW7H2FJJ1_O"#CUK-LG&T.;O6RC'PPG$]KN:0[BI_K M&X_=<(NB=$4V:&>%IV*6G8_/+@Y9/@G\H6D=>FO!D2R(X8+W7DEHYQ/O5L+S]) XT4*-6G#.6TY*7?1XU9#+\ZOR.N59&;"=!@!R,?#O%.^ M:)4G7U$^%A^=C640/UM%ZJG^$(YLO9ELO+F8O KX:V,'XF"T+R:CR?@5O(-M M= <)[^#-Z,2U#=$W**<8A+1*?""UU'8ISKDL=-04Q)4.N7&A\23^.E] '"7S M]RM>'&Z].$Q>'/X_CE]5YJ8\"[7,:9:AZP+Y%65]Q&LK8DG"E*@ZU'7%I7H/=G\ M4=!#7DJ+&R\C?G2X'XC+W67=TJ>#J)S5$=HJL=W"*;%X?.*.#**6/K*_&G89 MKA-E1T3MW=++2JQ+G9;O M\;2MG$' 1L='IL@H44I$CUCD,!"?=@[^\-WI9'SRTS=0ECN\ M4R%%8IW]49&!K)<+0RG^_OX9ISA82Z\8(]4*:(G%H+XS47L YQ"4A5G9=,=_:ZY<+%,P$N\]0*@Z)7 M'/*9ZL%9P*DG<&4'I[]H0M9T11$HIA2T@+XST *S*D!TI$K(&+U>-#'1B$+H MW:?285(\Y6YI];^LL^$X"I+>P@+BOB5ITBT;"9LPJ/6GK>W FHQ-(>HJQ5!( M[<5*FB;UUML9;(LO%1FSL2"R+U "2VOB=JG8BN<M519M(E+]80V MQK\NB7?:YJZBO03$U]K"2Y"RE>AX^FQEHS0'=NG@%V[2*CBC58KW+N+3IAU! M_=[VG.M<9$?:(N#*[66CRU!KPY-)4+UZZ'H5! ,+W,G*-9V)^'H/]^L0DTJ( M,,>TIVP@.84SF%8",P HUP3WC](O.5N&"JB.!B='&7HR343M)KHZ32$+%S'3 MI&6)(9(\"^"^<'C*NPT;V(ZE\_\ 4$L#!!0 ( .9I_5*KKB*YY@< <6 M 9 >&PO=V]R:W-H965T)4O';9F^S#UCX,@2$QT0 #SPQ$<;]^3_<,+J0H1_&^2 0P MW7VZ^_0%N-A:=^<+I8)X*$WE+T=%"/6;Z=1GA2JEG]A:57BRMJZ4 9=N,_6U M4S)GH=),%[/9Z;24NAI=7?"]C^[JPC;!Z$I]=,(W92G=[D89N[TVTHXM;X<7<_?W)S0>3[PFU9;/_@M MR).5M7=T\2Z_',T(D#(J"Z1!XM^]NE7&D"+ ^))TCCJ3)#C\W6K_@7V'+ROI MU:TU_])Y*"Y'KTSYX06"2!!>..AACE6QGDU86S6^'H-+31#W:5I0%.5Y24S\'A MJ899?T;?L/%VRON4?>_I6^\Q8%5DZZK-@)[9F-BZ#K]M" M ]80[R.,^%5;@()I2,+67[Y[O9B?G?L.4;3=U!1:2-IMAV+@X.3IW&1XK#U) MKA%8'+(&O9 TA\(I)8RZ5\:_$61X<7HN?J%K,>?K^?QE]I(=UPG(SD ,SZBI(?V M'(VM4QT9*QN2C7&;1LOTQ(GJP%PG-$B]K/*D]&5FG;,KZR2))%T@2U:P3*X< MC+"NBLAJS"YR#"#W)%>[H?X!-P^CO#P6Y=8,JSY:JXA"1&4KKKS20LSK3:77 M"".(WH:A95U.&EU4OU^FU\: DYL"KA@HU^3VO?(A-I8MZASX0^-B^"6[H8BR M-4JI0 E$^A)AR]CI*6/*1UO,:A*QK9Q]T2?BBKK[LX"?7&::'ZJ8')_ZM MRE2Y EF6<[Z+9R_.3B>GF*K&\(* 0R].3R>S]LX8K<'7B@EG=N.V?&]MB?;5 MMPG&1\*/@*ZDD56FH,8P6ZC7(I&[EXDHZZ;:RP+W$ 1Z$)I'YQ^%N^T6AWI: MG *Y0Y?#IJ(;3<%'H>$E.A[N&KVF[HE1 MP4[]E0D^.[_]\,L[_CD__U[4UJ!GJA8!'J5FKCUG5D,/J#5HDWLUD$JXG16Q MDA'V0Z;J*F:"]+12J41UVZS6F/=(MPO?C;Y/4^+\XF)_V-YS-L M2*#]K, ?9K"/(V$/D9+P _T2*V4EU .JK]K0V'!;Z2B!%2\LU'P:'\>(0K# M'#2$7LD#65:)EFM,G.1]:UD$><0^K\QUWJ7"%YE+71*1X##"G7+L;*1DUXO? !0N1] MJV3""Y.,ZP;91-N.])*4 -RC&XD^+2U2_G^\OOXXZ,#=[#[DBW^J"?1VJ$2" M:R)9ASB?31NQA>M"EY0DIZ5Y7,[D,E12.EJJ1^##"3KH.C)#5_(ZAJ8OD[3X M<5.F/8A2G!8>U"MAPSWK\L.B'<-=ZDZ\>_44S+%6$XN&G(.-4-@\NI"&5;MW M8@_(&I.Z^)&B?):71X=/.W.3P9PV6LLZC*VC1)*^' [:4 M%5Y.*9OB]R;?T _,&%JR,[P$Q]5UW=#\&A0:I'94^W@UY-6(!R\RW)9>/O0V M[JC4H?^,1MQ\2N&?"-]$?%+E\ 4#81IHHN!V%""S^>]-[,,'!VE,/V4N%?"O ME6QR35!O+2WI/O[R:-\Y>_ YX%\JF[7X4"=YQKBF)<^*?V \B+,Q5HDX6#_S M=PNJ#(Q)"(ZY[L.@R7UK8)Y?K4^-%,+J:>YU518K9;BF[DVE*+"_YV)90V]# M],=L/!2-3]V^EZ87F-3\9=?7!DGEE8B$CEAFL6;2%+'D2\6#85KO!J]E\]U)>LTQM=27-@A#:!KD>Q M+MFV"PQ-M!L?>"PQZ2I;@4S8O8.F&+*FZ)Y M)@5+>!V4^GR1LJ[GC7 NY=$ M CK3RA>7KV]1]?.-),XUTR?ATY\GZ8.E4[$A*?CBR3QW/D)\<^(4T''^=* MY3;\"9)+IPKQ.UUWM_O*>1T_[O7'XR?2]]*!IQ[%L8;H;'+V:B1<_.P8+X*M M^5/?RH9@2_Y9*+0/1P?P?&V1C71!!KIOOU?_ U!+ P04 " #F:?U2,L%I MN+(# !8" &0 'AL+W=O3OU]*=C))VAEL M@<"F9![RD"*I+';:?+Q0-ZCH2Z6-9(Z69IO8 MQB#;!) 429:FDT0RKJ+5(NS=F]5"MTYPA?<&;"LE,_L;%'JWC$;18>,+W];. M;R2K1<.V^(#NS^;>T"HY6MEPB*/S3)*/2$46#IO@='K$6]1"&^(:/S;VXR.+CWP5#Y8?Q]BIUC6S.*M%G_Q MC:N7T2R"#5:L%>Z+WOV.?3QC;Z_4PH8G[#K=<19!V5JG90\F!I*K[LV>^CR< M &;I"X"L!V2!=^&VRYH40:D 3.:[\H3PX0U\YX=SJ(U)( M=I$XLN5WDK+'W72X[ 7BZ/7(G@M?CF=K^)\ZUW9AI6XC*BW+)I'C'IC\+5&8B\;IO8@NBU= M5;Q$" AHZ00,/#+#=4N?&C3,1]KI ML:Q)"&&'8U+VNHV2-2/_F.?59S:*2W M2TMKP=5,@58(>V0&G(90W&%EA_#YW 7EE]+(52E:*@42?N!@//J=KMZUGI"U MZ,EH5Q/MLC6&R('@;,T%=W0X<3BO2QLG"L2,&"*46EDM^(8Y?D8Z%?I07-8@MON,\C%0U1L&^O+@*_PQ+EFHXH'W4TX/-+)P8# M&*7QJ)AU0D[HR_R?:F?C>#8=03:/T_D,OFH?Q@#R29R.YEZ8QP4)[UOGVY-F M'I>M[,TT;-^W="C6BZ-"@_\_OO!X;@/R&\_2W&]G(8BT\'(.,V*9>;& 29R- MIUX<0Q%/TXEO3;H)*VH>&,?S=-0'4W74+RA37.DDAX^^P;AL! _-0EBT#M[D M<5H4;R^S\;.1E)Q,>XEF&^XT2]W0*M<-_N/N\=J\[FZ+9_7NSOW$S)8K2TPK M@J;#Z3CJFO6P<+H)=\=:.[J)@EC3U8_&*]#W2FMW6'@'QS\3J_\ 4$L#!!0 M ( .9I_5+ P,-0[@( ) & 9 >&PO=V]R:W-H965TIH;J6RV6L2].[]:N)ZTLG#G!?;&2+^[ NVVRVR6 M[3?N5=-2V,A7BTXV\ #TI;OS'.4C2ZT,6%3."@_K978YN[B:A_R8\%7!%@_6 M(E12.O<8@H_U,IL&0Z"AHL @^;:!:] Z$+&-GP-G-DH&X.%ZSWX;:^=:2HEP M[?0W55.[S,XS4<-:]IKNW?8##/6VQKJY_B< MK8W^BKV_J^)5PD^]G8CCZ9$HIL7L%;[CL=[CR'?\-_6*&X65=MA[$-\O2R3/ M'\V/5U3GH^H\JL[_5Y?_@>[6.R.(#XX@-]Q;X!332;L3"H6R&Z!"'SPT'O/_="[9PRM1&$=FY?(-;#W$K2"36I)L.I0Q?*8+RHFEH$V M.-7U@)8E6_BM=6M>N7472I&1)3IRX2E:2&<\F:Y<59QZV]@'L!DG$W0VFT2V9 M\^OWW' CFY233*JF)B+9#1P;#=)[?1NB\^-W7KOCW;]/WVZ^?/ M7;G1C7(SN]4M_+*R7:-Z^-BMG[MMIU5%+S7U\_/Y_.IYHTQ[]OH;^NY]]_H; M._2U:?7[KG!#TZAN]T;7]N';L\69_^*#66]Z_.+YZV^V:JWO=/]Q^[Z#3\_# M*)5I=.N,;8M.K[X]NUE\_69Q@2_0$[\8_>"2OPMQQ"P7_N]:VN:QP)Z/A-!CT+<^*+Z=]^]!]H\;"8I7+ZUM;_-%6_^?;LY5E1 MZ94:ZOZ#??B[E@5=XGBEK1W]?_' SUZ^."O*P?6VD9>!@L:T_%_U61B1O/!R M?N2%BPZ=A-/R#EDIO W&FQ5VYZSOXUL[ MWHW"KHH[LV[-RI2J[8N;LK1#VYMV7;RWM2F-=L53_]>S;Y[W,#4.\+R4:=[P M-.='IKDJ?K)MOW'%]VVEJ_S]YT!RH/OH+M5J! M*L'?&D;9VJ[7\%"#7'-("SRO>WZU-FII:M,;&:HRKJRM&SIB 1"'?,:9C[W# MLU1 "[Z ?X^N%-\[1DZG[W4[" 'Z,U@Q!Q^JH<,MCB_AIZWNC*W<#*2^'V & M8 _HM -"AQJ)AW5WQ:JS#;QG7<*G"0WNAG(C3^FVU/Z]I2[PH0YI!@X?6\2L M@'T%QFS4O89W=%NTMB@W"ACD\#V7:*6*0KKU0EII5W9F"8N'?<=);MH6%_&! MEE> G*#U*A;SZ7\7(!/TR$ZKKM"HB<5WNM3-$M9WL2!=FO->$S4;!1R-BS#- M%G0!1\0Q;BU\;'?_^1\OSQ?7KW#1,![PN,*_'%"'NU<=W[=.U_1 :X&1LQ,* M=AD4[/*D>GR E>Q9KLZV\'?)LXXIW,D1T2%^[6#-^MLST#NGNWM]]OIM6]P, M:S#,Q*T)\>*'L,AD]KL>EJFZRA5O+/RG>(I/(KO.YZ]^N+E[0W\N7CTK#"@: M,&+TU8];4H*G\M[-WX6.DG?I[[I:(T53'(QL(=F7 M[X'./N[]NP?X"NP*F)LX[,O%Y?0%##LI'C8&-,2!_-0@R2C6P(E$EE$L2Z*U M-\M:PP1@=H>H'<5Z &F"?02A:2R25L*C@#C201I;Z5HLE6,CJ6DB%.^J8KGT M[%AIU0]H!46K0=8M[&@I:SQ%T41,*,ZY-*NA*\4:M_6N,&RLTE[,"5$A53!'K3]A?71O ..2"\/L><"9XC1W8#EM^*AH-]K?"P4M5EP/:#["[ M]8!F!"Q:"X0X)*IP&P7DG-A$L4#B"G&JP0578U93>0W&Y3DCFXTK-/E!Y C. MH-C<'G@3L.6@.4@3.$ZPH-'2+BX9M4R HK(>*GS$M&ADFY%A4)/)LJ/GD>X#'*)S'9:L:X#LL'?7>L&-" MCBE4.Q3HB@1XJ)$1?6?=5C@$\@ GNCRG/P(?H)%(KRKMMO.JG(SB1,\&!@+ MOH>591("$P,MB5M)=Y5A"J*,H4=-(=8JYS^("X@=/&\(WZ2!@\-RA "%+V&H1&9!U40KH1!4QD0^T_6/\(N9].5\ M2!#:1/9%SA/..BKX*"O'G'0A,C8 MYGIW(IZ* AW=C?GHTX/^/ )% O1#)&+ KL-&H/S:_ !8ZNW>6+)]?B06NG M4XE[V.B6S2L$B.EJ8$?7%LT$OD#*!B@4[3L:2=!\#1/!V3-BCO_U0>_M/!-MEB0 M3HA#38WNJ($/""1AH6 75MJAST8$Z=^D-;#Q1 ]UKVM@=;N>($1EGT>?U !\ M5;1M' 3TFC5E.3@0(^=P>!C/(9+O=;EI;6W7X,7;5:=0@TITVI,]D0%=E%UW MF 21Y@;=TDVY.- M0LXU;%4(1(/= +95AL -VU.,N2Q,"N :=@[D $TQ,:VG =*@0K8!Q0 !M(B! MN!V<$7BUCB3O(L&XS9[<&:+MD64?DVC *B UIM%H3:-RTD-H(-$>_828#+CY M*PDA28GN<&)\'VB3]V&Q/D9QF*$QCB!GC>Z)C!W'RH$2XQC5( I"=0PS[(V^ M,I_Q$EE#XUF^UN!R(G]6R-FX3*=\G,ZXT>1$67*NM0]'XX?26_*Z5H#% "P&T M;(?>HTQ,]54^V"6E&.$[.G[;PS;[E$#%3TQ":H*-,,I<8!9[%^(3XP:U[K2N MIL,69L.T:S40^@?D4'MNBO&F41$B$X39JEW(^*1,G!6W;/K9*^S #=&:E^#3 M$=)B)JYF9!XT#Y3@WN"20H8$K 4]"=82. OL 1<@(Y!Z$.2'(6HTI"L$T[A0 M4@;4:: ?@6C+TI&3]Y9ED[86GL:\K4@4(<%[#G@H:FC)#2B/6T6"/'>%IV33 MT-;M=,\Y%)? ,MZ"2!EI!58FS!2$FXAEB+XF?_K @069>R M,Z3N21('I"@*09RUK)7S1AHC0!A%0WR%X8EB;]QA&IG<=^:6X=VA#8$<<$*) M*]]:B!UFQ8UDOH*4L8?&O4EM7ZK 2<269M]\O$Z_9^166L!%-*4L>!];!6$, M2O]MR +=IEF@-X*([S!/S5X3I0-8U3\@MYAJ[ZA%KD$4)0=H>'<3KS5+0!3* M\;C/%:'F.,TK/W-XDDM'(5&J;/R$@TP@N:9?2))]0J%,H2OZR&(-SJ3ULNEM MUM-H;!9S'.]B#JO9.<$)N"(471.#\F?,F6@R )IO40I0/#C6W$47$W*: (0& MVI9AZQ?E,Z>\A%HR%'$AXA+WC(9D#F(8WZA=@%GWX.@;3:E ZTC",XF>D%W!%W!KHY'*-CF-2&)V>GS :+$A7NEMA^,1 MDP!EH>PASX B70*T@^<([8L7HQ6R^AT96P2=$+;B>A* U%+/)*LVCGOV@9$%+W!+PJR- G2HW M55.A)\0E=TK=A3]<3IP)L_<8QXW@C_QO?1ARAO84,Y'"_J' MN9T[@1'?C_$Q@$TV\#T!08,ZU#+'[>@5:V=A*-,L 2*(?D /[6KZ=:6G\!WI3HMF2'@.+"6 M^,T.2(:?^@2Z?X>TQ>DX01,@@$BX^!R42MN2T5N-2[7_(5GVN($-II!\=Z<3 MD.,DZR<+$C+(4.5Z'0(M6'5_+'I2L+?M.NX,;NZ]I%%*RR&^7SBI;Y@8C;1% M2P,[UGT:MA"2IM'_WWWT'^/3T>3 <;T&']!54]3GW9'$ BP-]8$"<;:3>X+A M;8T6N+ FO$+1("D2S')2Y[]X9*"Z+ 4KD MS;0 \]>25[!^$^EQ7)CW&K8L$56'H;9#5P*B0W2)J;*0E -R*E 93,%^UB6E M?0/,EAP*(4'P0&@TQ!>&Q8F+#^O#1QDL;LQV*V@^&0M302>8_COXXS,W0/E> MCB:=[Q@[PH2!X$:!0U;W$!^0K.^-$YA2 P6@ PRU\&60VP9]8;5O_!^7X6C1 M@UVE**#5?1YS=]G )\7VZ*#KSCKGXVHNCS)0R!(7)\#-%/"$9OCGJ.ZQRO%= MR-6<6&R$[W\6JG[($UV2;R76H?U0GZD>Y# 11<'2&DU;B^,BSA_ ?G6$S,%T M$! IIL%GN6%+)7+_A'>@8;Y1-!MJBUFR)5D=UP!W]#:@ M98 8"*XQ8:&.KILBN<.%C\\P.>*T"6'4MB14X(W?8]0&T!PS&#ZI6%!E0=6 M%6">=XV!4BCS].J35+WVXUQTTCHK M69)(@MIJK(@@ (-%VPYVZPU >2Q")67'W\/&O>2(VZ LD*JC,GN;ZH4E,S;1 ML$A6@=F>1%6'N_.E&R(&)''<*K-ZGN,Q H8_'"Q^I&[AC5>H@!V8/U)Z= N& M] 53NQ"9Q2]O,OY8NVF#MX MH,ZAF$5"U>,B)>?93O7)7(-RQ/0X87QUJNFP=0Q#2 OI+US MZPYAR G1>1E$Y^7)#;]!N:@R)CVG!QNKL]Y]E+:FQ=5T M<3%)&JO>)B7M:3YU\93EZ.+\ZMG7Q4^@HTG&D@FN@*"&L_8?LAFCZ0 M:G V)89;\,>L^"1-ZAZ5-LB(<:U&D\4 -;MAA8,B&+E(;%OBT.@4VN2E2BCM+, M;M4S,$KT Q5VX O S1U$3!C88[MZ9AQELO]R_&*2\PTVF[89K?!D[PT25:;1 MFXPR]F.0'O5.E%00FO25@00A"(&@!(E:#750,(:!M-Y2DN5)G4>Z@T[Z\J^" M0?[JI W]F[45=^H H6\!][9K*A;<4%_UF$W^PO$Z+7&J3^-11B4D9B1+Z+F; M^S2,:WUC=\F5C0D"&/P^Z_+&!G/\C6HHH2<#O-E2POCQ9IP '"XN0>;BJEW M#1E;.$&?BZ6 ;^[CXIXZU [3D0P HL7C))+S7X'9@&E_&U372W*%2I^^Y,EM MGVQ"<)F^=QL5VW3ET& 85=(7%3:.2"?&VM/84,%OJ86"@)V][,MKW)N3OHA@ MLHFOA1P'0PXR5*>LQ<+7+DR4&]DV7_,)&26VF"#\&[,%M6AM.^603&=!+=4' MX+T6Z")S*J]CC:BVZXEH_6'Z,E:/EII2*XR-=8*ZF#1?/(MQ)\!IU+V:L/8Q M..=[#[\??XW3DN0ZJ)I-?CQ@;S2HX"$%P]VDL#VQ%G\QC_:2N4C?EF)F6*\/ M/,3KAVR_:7V_>4JTE(&\>*-ZD5+@2(\64^Y_4#B2C^BDO:('OUI#3WA(A;S>,)K?M*H_PC.)$@/LW386(ZM:ZU>V]YPVBI--:8G M)I+!L.1G^(2+$.(KFQ-07W6_-S(FYTJ(=%X M\M7L.AW0M\QC4YERR,O8L,T'=VQL@))YCK-L@D.*V94>)N3"XOPZF97(N#Q/ MOGF@7/Q^EM%[]1T#;G^L0,J,(?L4"9HDI<5ZQS;OR6)V$>SPC13)(;9&:NL'SP8Q*2G3AQMU/GOAUS&3@SY\RH$9@>=V M-.4$P5"V DI#3C",%S?&2R12D^Y3%A83VRLVP*/JFQZWP(-=Q0;I.*G5EQG% MWCEYIAQJ/S\W\0\>RE%OUQKM\20=8&2.9Y*"E^#+'_[ EBYL-!/YZ9S4#4V7 MEL/5:@4"[\]*/L="/OF /#@V_7"X9CZ !4S%]%B'-3<3:0H2G;,E=#*EVQ&V M4PXO8(65\?8DUN:28T!2IJ,DP6=RP[!YJ3Y0\.[XB&:24>*S1Q"7?M*Q/>#) MY6)V=9U6 O# C]?5V+YY9$QRF]@!9;DX.&!2KS9Z3!P!_G,C5)5DY?U)KJQ? M(;YX8!G^:C[.$_8H0.9/X&R@NH)>"OT!,:; V?3R!/E_">$SJZ*ZE UX_JBH"L0YLAS14> M!D3G3[-PB*ZKZ*A'-95/QL3NDZ/C$7\S.?/'@L,A/,H_[3Q+L9N.[ US0@RP M!"0CJ 4-CK8K%O6, Y*,PP8GWBS?G\HMOU*!2@Y/[I]&3$LR@-GTY^B&#TI( M+*#2_W-0+H4H69\^H41!OH ?/H*:@)J)G&8_<&&/@)NL-..[-ZL1@Q E6Q*" MN5I?)-A'](C2/[C! =F1.4P, .](^)DP4]INS$EB3(WQ.:X(["!.J*:X8K4U M",DD04@\%O'X+\%78U[_GQ1H]O]NOT]]:Q #4LO"E&LJK),5 #69\HA;]R0] M[MC]DW_,M>_-\PSEYO$((W!F5-5Y'_?-[A[C L]S#L;O'WS'1!"J)R\7L_DE M@]X75[.K\WAH=0P8&^Q\6/Y*=R_8>/0Y'#]T;+H/JKTY8LFIHM2M\@'Q'UA5 M>H0_9>E!TV-J[$)ECN5?.ESH"*_XQI%CO&)WZ/06FS.%\3K 2OX]-#^021;> M^FYI.3;@DW>KZ!M&5RK;L3IT(9%Q/_].3NG/6]-)LE0E3>*+^9Q206AWL"_< M=V?1X8X61KF7P[@3GBZSC7)"]V),7C"5O]2%UU"0%0(PXRA \K)DT')_%2R\ MOT'G+S?4)S,+8ZSU:04E!CE&B$]>7,1PG/BW6PQ"D8!LPLL,GUW-^#W0C2O3Z1PY56[DK MAFI=9MU*F:SPE )>*?ZXY2M?L!!I(:RRG72G\7"A92BX&4= T6<# MJ3*3W%)#S>"J\;=):/U).H%AYW1>\J+C\%STXM/;/@O(S47W%C.U-2WI5KVEAR#V?Q/VA5TZ\XB?/+\$%/+.3DN>N\W/7X#A;Q2AT^D*O;$99H M08JF"8=')1-%Q_=]8]D7IHZ].YK/BK_1VNB.I5"#[JD)*E*8]>"*Q^",AB\N M/ 67;1O-U\3@SSX)%Y[XTL-@QVH((8A@(4#)379#=LB?QV#DDRR;@8Z<4IFC%LB*/V !]'- M;X,O72!'*,>,AEC.QB0#AV=$_^T2NY)(*4",IO0^CXP4.@(EG@01]6W!LQW"$&7UEL6.!L,.I= MC74Y]S6''E>OBA_Q<[$(A>>W3+&BJWXL2BBA4\<-<'S#!]'#8207O!"@2L$H M823%'_D\YX_/0P&^M/*,CNDO@TB)F8P,$DG[DA']HH(PHIWC.29^&]F<4&DU MGR[>VA*WGF$"#CK%"-TN;:@32QEW/!B]U54)]4N"S/-_O%@S,K$5AQ$/Z8MISY#4>"Z%X/PLZ(88$N3LB\ M2;IK3,>MT5Q!;!5?B4%9)8#A5#4.KG!_I#3NE;&BVHUV#^6!12RU/+F&P"RO M2UU=182_'P8=:Y2D* ==^SZA_LJ>I.8$K-.[J0C*:FBS7?!G!1+6'#Q_P&YO M+?;'R>[V4/&8==:QRIW9(=>+$U#?%$= 4L.?@L7#SD.SHNNNAHX6Y0^!WK[[ M\6W(C_@+!(4"^$F,.38:P,[2F>\^-9.9#H@*>U_!FDREN5Q2!130^'[*[(3Y M/GO.15'&NF7[G%(,XYY\-7N9R\5UK(R-%6^/25@J0,<.'O<'%!$T\P@PO1$G M0X!H?&)KBG16)8.$%E 4RQ7VEC,%H0&O5Y_(Q%!IHO39W^32R7 \B113<*Z7 M1:&&$R6Z.$V;_!@NBSI84G[2,VF23V@PX;(,+<=GT1PFM?1XUOP7;T+9 MV^"QI#1H6.$7(CY>+&3_Z1;3:(&#[]Z7EZ-G'I+H+8U 'JGYCXO-/F(_5.?D MLM.\$)1ZT,3J4.7)R=&7J"9Y)R\@==AB 3S&)^/B<>?(AO1W*HI+[7('6P2:[@UZ%: MXQ_@8Y)<.PB3;V,-BD;9LK0O2%I01Z,]?ZM0I7_/B/#EL0%_!_LP6&UB1$(* MEHRT'\#EM]/E4QZ=[L]&<$@CWI4+,V*FKKB>Y#=_D&9P3\@D7@SY)QGSY=IZ MS*7X7IRH9:PI*4S-O)*43#*Q:LJD$B?"E MD9EI.D&%X9(*I/<7F$ !!G '94@" MEJ?;6_+^E4D(].F@VRC64+U<6B@W1K5BEVQGU@83L_DDB 2"C9(;'\14^'+ 2NUGFBFJ_TDJ,W#!;\/8:$7[96[I7%UDB< M,8#>GKMNT-Z%@SM4$0LX&T:C;&QRN?G>(9DCEYS']+N??N)+!4B'C;E,<6X^ M*488JL,CZ]RL+#6.<.A!0(TY?(//#2Z6],_8T%&O>WYWWH(WQ;^G\JX MX7\@(C[._\[&3W06VX'XK.#5^>SZ\HQOQ/(?>KNE?RYB:?O>-O3G1H-CZ_ ! M^'UEP4[(!YP@_ ,BK_\?4$L#!!0 ( .9I_5+&%@;" @4 "(- 9 M>&PO=V]R:W-H965T,+0%$8ND/K/$ M0).N6 <4#9)T>QCV0$NT1506/9*.D_]^1^K+Z9RT>]H>)/&.]\F['TF=[[7Y M8FLI'3QLFM9>S&KGMF?SN2UKN1'V5&]EBS,K;3;"(6G6<[LU4E1!:=/,612E M\XU0[6QQ'GC79G&N=ZY1K;PV8'>;C3"/E[+1^XL9G0V,&[6NG6?,%^=;L9:W MTGW>7ANDYJ.52FUD:Y5NPPM/;N,O7P0^$W)O3T8@\]DJ?473WRH+F:1 M#T@VLG3>@L#/O;R23>,-81A_]39GHTNO>#@>K+\/N6,N2V'EE6Y^5Y6K+V;Y M#"JY$KO&W>C]+[+/)_'V2MW8\(9])QMG,RAWUNE-KXP1;%3;?<5#OPX'"GGT MC +K%5B(NW,4HGPGG%B<&[T'XZ71FA^$5(,V!J=:7Y1;9W!6H9Y;W,A[V>XD MO+H3RT;:U^=SAU;]W+SL+5QV%M@S%E+XJ%M76_BYK63U5'^.T8PAL2&D2_:B MP5]W[2GPB "+&'W!'A]3Y,$>_T:**Z,W<(6Q&FP%7&97PU588&G@C[=+&_A_ MON P'AW&P6'\C,-WRHKUVLBU"(VG5]B](81CB_NB*0_),[L5I;R8(>:L-/=R MMKBK,1G=()Y4NP87"@=ANG6#*ZBF(&0%R\=QPNJ=*26(MH*M<$Z:PPCQ6^IU MJT+@KU0+KM8[B[+V]1GVH^ZT M$PWTQ;#?*Q9X/E8$H#1*-!;*OH063H#R@K LQM&//^2,LI^>\&C$""N^FNUY M[]4#QK_"A+82UP,C*/5FVT@G#QQ01F@4C=H]26,2T63B=N1D<-)G*4DR.DKV M)(L)2R>K/7DCU6:Y,]:7$^0#[KH6\V]8&,>C1'@3P+"GZ<90FZ2$B,*^:5_#CG*=SJE=L+T]6Z%J8* MQ! 43VEX!CJ)>'@Z9V9HEI/1W0ED<1'HF% T?S(Z/8&"A=Z(4\)Y 6^.)XI+ MJ?"44LVC+Z=5%JN),*FU=1YT?DD)^$//R5:TI22 )5L932!J#:7B;IW"K'OY?$&-I1O(T>0*BB<<\G/*O9GO> M=T&,<9+F!V#H2):0%,LV,0BTE.)U<=E1#? M)6.[!>J;$..^Q:()2@/-L"DIYU,V/?T*IT=2GU#I&E?$N1+$_]=A]GV(6<%N!W MZN+8GCOML=V>^K05NL(?NU?-#^ZMN";K<#NW70S=%7;DCC\ ;[M[[R3>_3U\ M%&:M6@N-7*%J=)HE,S#=C;PCG-Z&6_!2.RQ &-;X$R.-%\#YE=9N(+R#\;=H M\3=02P,$% @ YFG]4A&5IDBK @ S@4 !D !X;"]W;W)K&ULC51M;]HP$/XKIV@?BK3FG180($&W:9M4"95M_3#M@Y,< MB=7$9K8A[;_?V8&,:@5-0L2^N^>Y-]]-6ZF>=(5HX+FIA9YYE3';21#HO,*& M:5]N49!F(U7##%U5&>BM0E8X4%,'<1C>! WCPIM/G6REYE.Y,S47N%*@=TW# MU,L2:]G.O,@["AYX61DK".;3+2MQC>;[=J7H%O0L!6]0:"X%*-S,O$4T6:;6 MWAG\X-CJDS/83#(IG^SE2S'S0AL0UI@;R\#HL\<[K&M+1&'\/G!ZO4L+/#T? MV3^YW"F7C&F\D_4C+TPU\T8>%+AAN]H\R/8S'O(96KY7*H.3<%Q M89NR-HJTG'!FOC8R?[I>4EX%W,F&>JV9*]?5-Y;5J ?3P) ;:QSD!\IE1QF? MH;R!>RE,I>&C*+!XC0\HO#[&^!CC,KY(^'4G?$C"]Q"'<72!+^ES3AQ?&[(E[:U M[MXA-R]O%?8BE9W/B=ZR'&<>#:!&M4?O/#_0Q(*I$#1_AJ;K"-J. -43^WI" MRS30;R-K&E -5]I61P,7!)8[S42A!Q-8=])']\JQN%[L4='0PK_N6Z8*#33_ MVA"6BQ*8@0^88Y.A@B1R;D,8AT-X!\G03U)8=)B26F")HG$,PZ%_&QX5>W)" M\JLX&0T@'OOC7D,Y;I [99H.+!WI_C.FUV4813:>-/)O1O!6VX.3&6M0E6Z3 M:,CE3IANW'IIOZP6W8S^->\VW3U3)1<::MP0-/1OAQZH;GMT%R.W;F(S:6C^ MW;&BA8O*&I!^(Z4Y7JR#?H7/_P!02P,$% @ YFG]4A@G[O<;! H0H M !D !X;"]W;W)K&ULK59+;^,V$/XK W51)( V M>LN/V@:2;!;= KL(DK0Y%#W0TMAF(Y%>DHK=?]\A)2L.:@M[Z$5#BC/?O (!O9U)?3[68R<947."] MW4-5/_W& E=W,O\@X_'OAZ8^R/8#';LC4^ MHOE]>Z_H%O0H):]1:"X%*%S-O>MH>I-9?L?P!\>=/CJ#]60IY8N]?"GG7F@- MP@H+8Q$8D5>\Q:JR0&3&]P[3ZU5:P>/S ?VS\YU\63*-M[)ZYJ79S+VQ!R6N M6%.9![G[%3M_G(&%K+3[PJ[E'<4>%(TVLNZ$R8*:BY:R?1>'(X%Q>$8@[@1B M9W>KR%GYB1FVF"FY V6Y"G*M.FHSCPB;ET2AZY21G%M\H[U]$(6N$+2IX MW#"% EO;^)PTO.X-TQ);A8:[COO?WS>JF-HO+X:P _[?%3 MAY^>P;]AFA? 1 DEKQJ#)0B*,'^+L+8Z3P5V$-?VYE1O68%SCYI/HWI%;_&T M05C)BAJ+7 )CDP;N51@-AAX+5A5-Q5S]RY4MWQ\P#BZX(&G9:.+4/N"^P*TY M>N>B'0:$>CF%IXU"?)=VH*2A2]HCWY]YL>FTG_#H].W-F \0Y7XV2NB0^WDX M(4I249[;E\S/Q@FX2$_AV?4=EA_9*RH:(ZV-VKI+2#4Y3CU4O -)&W((1NI M)/(G<6S)>#QV9))8,LJ3MB8T-)JLI3@0QK8Q5J@-WLF #>'=K58T@*PY+N8T M@D!CT2AN..HI/"#5'B]L+EH[=;/\VPH8":_T9C6G.44ISXA&D(;1P42N=>-2 M3MF@Z?:]X9J[3!>29F9)T7"WB^@2(C(KCE.(HQ&%.CF)0%(40=V52GLSW+Y2 M/7%B$-*03.3'600__S2.H_@7L(Z.1B?Q<(^JX!HMVHXIQ6Q1IGDOFKP=S\9\ ML$R3Q!_G(TAB/R$3Z):%H;VE:=H6QVFQ#Q!>9;$C5'B63#)'T@E\&M+7\3C! ML!5L23J&@.H)FR@6@/=V/C/T!G,X0[IPW0WQ?3[T?._#I!@GZ5^2GW6 A^?GZ1A MU?F$M*PC8@U[L0DUQ*D"#8[6AAK5VBU'FDQJA&DWB/YOOW]=MVO'&WN[O'UE M:LV%A@I7)!I>C:CD5+L0M1ON8A7T6^GB M7U!+ P04 " #F:?U2Z= ^;C0% !+# &0 'AL+W=O9*B2I)V?%^_8Z4W[K:7H%]L2GK[KFWYX[GZY72G\P"T<)S(UMS,UI8VTW' M8U,NL.'F2G78TIM:Z89;>M3SL>DT\LHK-7(BM% MBX\:3-\T7*_O4:K5S2@<;7]X+^8+ZWX8WUYW?(Y/:#]VCYJ>QCN42C38&J%: MT%C?C.["Z7WNY+W ;P)7YN ,+I*94I_FYP3K2O*D]7T5I">O;WGDK;R M>FS)C!,>EQO(^P$R.@&9P3O5VH6!5VV%U9?Z8W)OYV.T]?$^.@OX<]]>01PP MB((H/(,7[V*./5[\33&_1\DM5O!2F%(JTVLT\,?=S%A-C/GSC+ED9R[QYI(3 MYN[*4O4NI1I+%$N7UF-)/0OB>G-J.E[BS8B:SZ!>XL@E!G>)@8N^Y7TE*)9+ M>$FFFAEJB$/_-H C7DSA0K1@%ZHWO*W,)=P+*2D3_&M1!BVEZGLHIOD+"AR^* LEZ03)A.6AX4[Q3&]2>%,=M-= M=M.SV7W4-*"T70.% /BY%QV-#'LLP6=QCB?X./C4]TEO*;T+KJL5UTC)-UCW M$J2H$50-,:R1:\HI!9NS.$G<(659$L"3JNU1G1"L@GRKF+$@C" EW0A>][H5 MEJCI':G%L_4T_3= NM5-6#()Z#.=Y/ 6:6@ME*Q -)U62VR&_CZE2S5+0K*> M!4[7F*FC3M_T0Y=42-DI!?:_*?W.;$/&$%FF.U/@MUO-8G\:?PREC1^/!K+C0LN>Q] MSDJ:@H$"6LB#,Z$.\G20P/&RN.7=Q!@'15.K0* M8<#"I'!?,34WU4#WY,"2:^$:D@PV=#&;P5XX(:$(HIRE44[-7R/A[YN2JAE1 M'TY80D(GXW2,BR.J?Y9&>PQL.JG6I/'ZS<,=='P]T(?J&L0%T3.-8GCD:ZVD M)'L#24IEK(/+TPE)Y"1'C503E\A7HD>-9*R@]L\I)]O &JQ$22]+R45C )]= M= @1B_.,/I,@W9&+AE!6Q(Y<0,<*7W/,FHN 4+ M@LD>^ MZ[.E8L)RDR$J:P2\'WIGM3.*N')3EE"9(Z(I'%/PO+OSP71&%T8\; M,IP-'6*6)+Z><;*K9Y*R(G3#(@WH5@A]S]P9UV!?7G!N]GUUL3%BG6]BYPF9 M/FQ1W/2M@]KTPC#).8W3=FY>N'VN.MW&=L$M+5MKF"'IEA=AP>K.K\NSI2EY=,?%[3MHW8"]+Y6RFX?G('=_X?;?P!02P,$% M @ YFG]4E+* 5+& @ W 4 !D !X;"]W;W)K&ULC51M;]HP$/XKIVR:6JDC+T!@#)" ;EJK=:O*NGV8]L$D![&:V)GM%+I? MO[,3,BH5M"]^O>>Y>\Z^&V^E>M 9HH%=D0L]\3)CRI'OZR3#@NF.+%'0S5JJ M@AG:JHVO2X4L=: B]Z,@B/V"<>%-Q^[L5DW'LC(Y%WBK0%=%P=33''.YG7BA MMS^XXYO,V -_.B[9!I=H[LM;13N_94EY@4)S*4#A>N+-PM&\9^V=P7>.6WVP M!JMD)>6#W5RE$R^P 6&.B;$,C*9'7&">6R(*XW?#Z;4N+?!PO6?_Z+23EA73 MN)#Y#YZ:;.(-/4AQS:K+>?^4SJ=WD+I\OI?$DF2W(D2Y9@A./*DZC>D1O.K/_F)LG MX ),AL".>P2NFVKC?S %ILG$6M/3.K"L-!.I/A_!DN^>/1E0PK%-N!T"F+/< MN6$&+C'!8H4*NB&\AO BB/LT]^(>7!44KP&YAMGR'K[(#F'#^&W8!9;*TA7B MFU?#*(S>0R_JPE=J+EQLJ+!:[FLF*FH/$#:\P^$ %AE3&])C).".(!HO0*!S MHS"1CZ@XW<:#"-[U8[@75!6V[$E'0ZQAJ[@Q* BRAK,X.(>S,!J>'XIJ)#M! M\6#@YD'8AY=^A7]0<052;+:O:$AD)4Q=?.UIV[IF=<7^,Z_[W@U)XT)#CFN" M!IU!WP-5]Y)Z8V3IZG&ULE5=;<]HX%/XK9]C,#LPD8)M+()MDAJ1[::?M9$JZ?=C9!V$?L!I;;,CI[*0MFK5NY<=='KV33G4MBNKECA M9J%-*1P>S;)G*\,B"TQET4NB:-0KA52MZ\OP[LY<7^K:%5+QG2%;EZ4PSS=< MZ-55*VYM7GR2R]SY%[WKRTHL><;N("TZ=1Q X'OF6B\(#08UO:\S65J1GW/V_ M0?\MV Y;YL+RK2Z^R,SE5ZUQBS)>B+IPG_3J#U[;,_1XJ2YL^*550SM,6I36 MUNERS0P-2JF:4SRM_;##,(X.,"1KAB3HW0@*6KX13EQ?&KTBXZF!YO\$4P,W ME)/*!V7F#&XE^-SU36WQQEJZU>5<*N%=9:E]+^8%V\YEST&&I^RE:[R;!B\Y M@#>B#UJYW-*O*N/L>_X>=-LJF&P4O$F. KZK59?ZT2DE41(?P>MO#>X'O/[_ M,OBOZ=PZ@Q3Y^XB(P5;$((@8'! Q+0J=!F#2"W+:B8*JVJ0YLH=/EBZF[VG6V%S.J&XWYWX8]@=XQA%.!"'2JAGR"A+*(2,3Q]( M6EM#FG"4%MIZ.3$8D^Z !MTA6)3#.U;NE37MN ."A-I)!\1]:O<[%)]WSZD] MZ-!'M#C?(CQ:*BKIPR*RKZBQTB-E<)'3P3HTC8)-VW;HYY_&29S\0A$PHFY, M]R&8(@08%7(TK# PB;J1/V+H=$+COD< _L9D<*ZQO&N]Y']/%IJS6S$C50;:;P ^J9Q:&V+=K>L,I MEW,VU(]/FS;0SB!+&$N[F=&E+V':@6/ZB+Q<,GVVO*@+Q'#!]*MUL@PIO?MV MNEP:7OJ>--UM+;=AQD&DX:)IQKFLD!E!+4M#.J/S]?\3ZO<1S"W'7*0/A49K M:$Q8'SX7/FIUAGY2,:0)B.4RN&>X!6W."#EQ;T3&I$3)KW BY.4;?L3:4L$2 MJQ=N)0S38,W;AV(;G!@]:=T9-O[]T?6H#5\<1Y)OM$V^T='DNS/Z+*QC\)G% M]A'B#2V;!F'W)=I1P(.)AC*JE:@SZ6-9_2#5NV.=>L%BW\(K]!F%PEM)EX?L M$IFN-J-P.ON,T'2167%TEDQ.Z=#VH2N9TC@:H@>]D=:/@-J$6IO5556$:&*# M)#B"PFY&;U6SGWI!?HSM!VX:GU=;:4<*R6ZM,+)XAO*9]"/[<3LFL0O4"*CO MO;J064CGO>Y&%\_6'"^S%Q2^438@P-=I6H<9B[MW0M5>^U!B\82@KN\BM?,V M[A>Q,[JWROBV&GJE;]HNU[6%<9;X*>7*$7C)YMY44 OX<2:?OEO-"(L5;Q:K MB#XATU7-HDPF81Y*15BZMMH/#D=1!'="(O(J)>;%SDGJ)A1C'@5M5?O M,$U$,_]@J;8O:5/[@>[WZT/PZ$CCR>@P:W9,;C\Y'47)WMKK[>S.:"K+\(7@ M-YY:N6:-WK[=?H1,F]W[A;SY@OD@S%(B6@4OP(K!A/9NFJ^"YL'I*FSB<^W0 MP<+?'!]2;#P![A=:N\V#%[#]-+O^!U!+ P04 " #F:?U2F?"0FK$$ "- M"P &0 'AL+W=OT"-IL^S#L RV?;+82Z9)4G.S7[XYR5*>QO6)?;)&\U^>Y M(^]LK-C[*Q=+QQGAZ MMA(+_(3N]]6MH=5XL#*7+2HKM0*#]?GH(CJ]+%C>"_PA<6VWOH$SF6G]A1?O MYN>CD /"!BO'%@3]W>,5-@T;HC"^;FR.!I>LN/W]9/T7GSOE,A,6KW3SIYR[ MY?FH',$<:]$U[J->_XJ;?#*V5^G&^E]8][)9,H*JLTZW&V6*H)6J_QWJ7>;_H?;78@>U.3V/+4K4>'YB/K/HKG'T?1NB5 M M*7:T(!4X7@IC'J5:@&AUIQSH&A9/N5(7>QDK'Z#M^4'F!PA='- %05D+2](- M-2U5@;>L.TM0V9-3N!2-4!6).+C&"ML9&D@BKQO"$:1Q$4SB$FX[0Z%9A)61 M+$W&*N%[D<,0U==.6LEK\A %912=P$U=4[MRR"1"':6H!XQ!53T",:!LT^N+ M^6=J#;H;N$2S( \G)]M!/4^& PJ#+"SA 'W90%]VD+ZM0A&^4';Q>-#$?AY[ MN)DYQUT'_I13%$]W)@/#]%WI=B74X\\_E7%4O&'FOXN*I @'IM%VL\\,J=-< M#\;)?WH(O^?T.68O:7UKM+5P455=VQ$+5#(?Z,G8O7OE[RW2-M@39I=R98F( M21@D84X?QVD>A$EVPN2D05PP2Y,B2">%/TR#J/2'61(D40P?M'I54<[H*,&% M0>RICX(T3N%XDA0GD)8%KXL)')<)55*>EM_BF(GJ2Z,7X &+W[SXCRBN+.%2 MFJ2DFP8I.;TS8HZ@1(M[]=*4W,4EJ41Y2:#=TR.W(A"LKMV:T8^2H QC"C'( MXX0-1Q0@;4YRVBR#"4>:$1(1W&DG&LHX"K,@2V*&(Y9*CH#1W OABP+WX0>Z%41[7PK%WQ@<8PB[M0/VAV]VWS0[Z&QT+A@X.: MB-J UK\86U>$?T))DJ;"VM&.M,^X^OZJ\3>,01X9^;([@C*(DHRWN>PCNL\C MOTI\.P1%$?,JI55!;93R(N.F"%+NFV]NCR .DCS=&/6-_$^T'UO3 +26]6@S6IAJ\+NNY-/_SU"Z=7?N"::4?%Y3^7 M-"^C80$ZK[5V3PMV,$S@TW\!4$L#!!0 ( .9I_5(2[@-$Q , !<) 9 M >&PO=V]R:W-H965TFEKHA;6"FCJ( MPW 2-(P+;SEWMENUG,O6U%S@K0+=-@U3CY=8R_W"B[PGPR>^V1IK");S'=O@ M'9K/NUM%LZ!'J7B#0G,I0.%ZX5U$L\O4^CN'WSGN]6 ,]B0K*;_8R?MJX866 M$-98&HO Z.\K7F%=6R"B\?^2>%!V6HCFT,P,6BXZ/[9PT&'0< T?",@ M/@3$CG>WD6-YS0Q;SI7<@[+>A&8'[J@NFLAQ89-R9Q2M6 (W+H$Y0'HL@.*WP":P ,D;>.Y\UUR7M=2M0OCS8J6-HJKXZP1XVH.G M#CQ] _R.FJ5J:P2YAKJ7M+);H93-3@J"MWL;6B*],O@H#6I@HK+3Y# M)363-E@]N:YE35W) MQ09&7)!%MII"]'@&I#[VZL.H%:RM.$6.J4Y*;%:H((G<:@@WWW*9#5D,&!RW MWBHN2KYC-9Q!3)N&84BCS ^+\(CE!K6>P6?!&JD,_X=.XW2N*+6R)1E&:>0G M432&49+%])MF_J0([2">C+^-XUJW3)1(Y+71Y$7>Y#>:I/23^7%ND?)B#!_I MBBR94H]6+P*Q>YU!-$W\HDAH1(%Y:BUYX8=)X2S9-(/W@HH!M0%\H*M46]65 M4]]L%:++D>8/T'3M@[9]7LE_2&-(MV#-;/J,_.\R/0"Y=X2&??Q,Y(XH'E]Q M%!V]Y]&5;*D0J/8/1S^#/+**_/C#-([BGZU*?II,!Y:++BO,W=5$^F5.8Y]> MF=XW]9.\.!WY*JOQ=-K[9WG6C^^EH:KCKS.DL)0;X6KD#!+:.W_!?>(G13RP M#(3_/R5,; ],,UMKD]!)F!.QT\(E.13$E0HS\HM)\5UB38G !*(,TBC^+H5( M4&I3/\PBRRKM2C\DR8_=K,'@L6I0;=R3;"N6Z';O5F_M7_V+[K%[=N\^&3XP MM:'K%6I<4VAXGF<>J.X9[B9&[MS3MY*&'E(WW-*7"RKK0.MK24D[3.P&_;?0 M\E]02P,$% @ YFG]4I(EU3BO @ UP4 !D !X;"]W;W)K&ULC51M3]LP$/XKIVR:0$(D34NINK922S?!)"0$;/LP[8.; M7!,+Q\Y\#H%_OW/2ADR#;E\2^UZ>>^Y\=[/:V ?*$1T\%4K3/,B=*Z=A2$F. MA:!34Z)FS=;80CB^VBRDTJ)(&Z="A7$4C<-"2!TL9HWLQBYFIG)*:KRQ0%51 M"/N\0F7J>3 (]H);F>7."\+%K!09WJ'[6MY8OH4=2BH+U"2-!HO;>; <3%\)]IPI4F9RON*T<@ M= J7F&929[#T_2&=Y$*L)27*4&41?BPW;,Z]\_, BU''8M2P&+W!XHY'*JT4 M@MF"-KXKA0)1F,IS81D/#3GFY.FD+XQ+0](;TVL/< S2V@? M,5C,?R"U.40C]_>#>)!^@QK3+#8H(7AH-%&T&]'ILCA269:L+6/P-7+6,'C MR,.F 9^27.@,(>'F\V]$\)YA3L[/AGP8C$^B: +WQG&6Z?_@_NW\VIN'O6$K MT&;-2B'FP&5LYZZ3=EMKV0[KBWF[\JZ%Y=8C4+AEU^CT_"P VZZ1]N),V8SN MQCA>!,TQY\V+UANP?FN,VU]\@&Z7+WX#4$L#!!0 ( .9I_5)2P[(1)@, M !L' 9 >&PO=V]R:W-H965TDULMH[ M=2+)TW2:=(S+:+7P>P]ZM5"#%5SB@P8S=!W3WV]1J-TRRJ+#QB/?MM9M)*M% MS[;XA/:O_D'3*AE1:MZA-%Q)T-@LHYOL^G;BSOL#GSGNS)$-+I.-4E_=XGV] MC%)'" 56UB$P>KW@&H5P0$3CWSUF-(9TCL?V ?V=SYURV3"#:R6^\-JVRV@6 M08T-&X1]5+L_<9^/)U@I8?P3=N'L)(^@&HQ5W=Z9&'1,DV@/9G 3\,\A** M-(8\S;,S>,688>'QBE?PUJKKN*4^L@:8K&%-=+G*?!;-WH$@8:)>A*DO9< M@FW58*@ZYN(:2 0);&63D+1D'> M]SUJYLK]WRI /HEG5QGD\SB=S^!9N33>0#&-TVSNC'E2L%N\& MZ_2EV\.[H3M4H6??0U,,U+@:;I[65**>5S K\U,*G8UQ6J%3@7_&)0FH.WZM M]@[I_/_6QC\TNMGK2DPUBV=IX;9S+T!:.KN &54X=V8)TSB?7#ES F5\E4[A MF<1$UE@JP22>I]E>B"90_XTR:9)."_B(Q@#O>L&IK[@D7S06WA9Q6I87ORMY M2L#D:&!UJ+=^+!NHU"!MF%WC[CCY;\+ ^WD\_#8^,;WETA#3AES3RRO228=1 M'!8DJA]_&V5IF'JSI;\7:G> OC=*V&PO=V]R:W-H965TU(C-19JZH@;%W< TH&EG;:SB2*:M4M=8 MX&5(4C+-LVR2*BYTLI@%WZU=S$R+4FBXMWEJPTHI1"@7;":&9A/4\NAQ?+J8\/ 3\$;-W1FOE*'HQY],9- M.4\R+P@D%.@1.+TV< 52>B"2\6>/F41*GWB\/J!_#+53+0_[2T*R@/%W>P =T">\_N MP6Y$ 8X=7&^N ;F0[BUM?H.BUD:::G>(FZ5(]!XD+?94RXXJ/T$U82NCL7;L M@RZA_#<_)=E1>W[0OLQ[ 3^W>L!&V3N69_FP!V\4>S$*>&+AZIEU;.JO+Q3*;A"4^]U#-(Y$XU[)7PW26; &K# E M0\,*K@N0S%B&8.F^< 164-LM7?^7CJP??IBQDN]OV=AJ)IJ_;VW[XT>G>ID??LP);A:GEB*O5V'W:T1L'XV4W#_Z&=U-UQ6TE MM&,2UI2:#<[IP&TWJ3H#31.FPX-!FC5A6=-P!^L#:']M#!X,3Q!_%XMG4$L# M!!0 ( .9I_5)>D;&A( ( (\$ 9 >&PO=V]R:W-H965T M).Y42C?,8JAWU.PUL-*#&D&C,)S3AG$9I(E?6^LT4:T57,):$],V#=.O]R!4 MMPBFP7%APW>U=0LT3?9L!UNP3_NUQHB.+"5O0!JN)-%0+8+E]"Z+7;Y/^,ZA M,R=SXI3D2CV[X&NY"$)7$ @HK&-@.!P@ R$<$9;Q>^ ,QB,=\'1^9/_LM:.6 MG!G(E/C!2ULO@D\!*:%BK; ;U7V!0<^-XRN4,/Y+NCYW?A.0HC56-0,8*VBX M[$?V,OAP IC.S@"B 1#]+R > -XYVE?F9:V896FB54>TRT8V-_'>>#2JX=+] MQ:W5N,L19],-'$"V0#Z0%52@-93DN'2Y LNX,%>X^;1=D=LSW7HF=SL/Z7P2)_1P:N"_.;>3 MV9C3ETA/VL5=U4>F=UP:(J!"5#CYB,VM^_;O ZOVOH-R9=$7/ZWQQ0#M$G"_ M4LH> ]>4XQN4_@%02P,$% @ YFG]4DE2VR6A!P Z3, !D !X;"]W M;W)K&ULM5M=;Z-&%/TKR.K#5FK7S#>LDDA=VZMN MU56CI!\/51^(/;;1VN "3G:E_O@"=GS-S&5 K'A)##YWACO'TNQS MOM6Z\+[L=TE^.]D6Q>'==)HOMWH?Y6_3@T[*;]9IMH^*\C#;3/-#IJ-5';3? M3:GOR^D^BI/)W4U][CZ[NTF/Q2Y.]'WFY[].5V0B:O)Q[BS;:H M3DSO;@[11C_JXH_#?58>32^MK.*]3O(X3;Q,KV\G/Y%WBX!6 37BSUB_Y%>? MO2J5IS3]7!U\7-U._.J*]$XOBZJ)J/SWK&=ZMZM:*J_CWW.CDTN?5>#UY]?6 M/]3)E\D\1;F>I;N_XE6QO9T$$V^EU]%Q5SRD+S_K !]!Q S0#>$L#. :QO#_P

K34^[UP,VC(KJ[R=(7+ZO096O5AWKTZ^ARO.*D^J$\%EGY;5S&%7IENDKB. M?S/7113O\N_+IO]XG'MOOOO>^\Z+$^_W;7K,RP;RFVE1)E!=QG1YOMCWIXNE M+1?+O$]I4FQS;Y&L] J)G[OCI2-^6@[<9?3HZ^B]I\X&?SDF;SWF_^!1GQ+D M>F;]PWTLG6_K?3&X]\9@L,M/B=7ML9;VVG] ?_]:0KV/A=[G_S@ZXI>.>-T1 M=_]FT1_0*5+6D95(/M^1@!,F;Z;/U[P@,"X9"YNPN0UC@G&EFK"%#:,A"7UR M@372%)JK)CR.2E+3DN-^K2D1K,S2E2-+AA+#!&J#!UW[TZV1,]V4-P*'LV#F?/QCG9@SI MW76@C;V^.DE!A*D:F4&09.J^QW4R&%@CZ9OD=4+FW9"%$]),# H =1> -K8J MDFIK8Q\5.HNC7>XMTZ3(HF7A$D\&LLS\<? M83B?TM"\UT=P5*I FK>2&*YL+Q XH0PJ!7-7BB&$]M16=N5^C&Q_,)!Q-MP M.8=VDXO@4')M'$XN@G.1"X6$N0O)0'+[2B\#D6R@,5)X-=U&8[6B8TML- MF7=#%DY(,S&H*:S#-VDA\T/\1:^\M=;>06=+73*W3/>'G2YT/PD&[6?"/!?:680TW@(UL\ M'%2?#[=XN&VU6 1W0N;=D(43TDP,:@QWUYAN4OLH+P?IYR,[/!Q$G@]W>+CM MN% I3&=ZAL$XE19WB!44^CPP^<-@-&CQ4 64&#' Y\$Y["FT E1?C.P$"=!T M,=P)$H@C@_")P1 ^$1C&)PIKYQ,JBACF N%\]M55 4(O1O:'Q-7BYG!_2-@^ MC:FKW9!Y-V3AA#03@X(AAGE!#SK>/QVS/'K::4]_.>@D=WJR I1'$&),#1WER$H&?*6AWH%XJ_R$S+LA"R>DN8,35#YPJWP;4WUU, "I M#4:V2@*0W&"X57(.E<[YA8#L^86 [/F%@.SY-;UZ=6&OLTW]SDBUDG=,BM/6 M\\O9RWLI/]5O8QCGWY-W,X*R>F@2 _UBQ-/:5&D^_KC5D&PO=V]R:W-H965TT<$6J-!F;MCH\&K) 9H?B. U'D.>+/8YRQ M[=!RK=W"/4E2J1?LT6"-$CS'\F%]Q]7,KE5BDF,J"*. X]70NG:O9JZC"0;Q MD^"MV!L#'2BV!U-\&3W"6:27EQ]]*U*IM:N+^>*?^ MR02O@ED@@2XAE\QBSA:)V2);A6_0C.IU@BDHD+17R83\'YV04X X2"'RDK!**Q&-A2 MN:>-V,O*E7'IBG?"%0AN&96I #,:X[B%/^WFAQU\6Z6ESHVWR\W8ZQ3\6M!+ M )T/P',\M\6?R>OI3ELX_V=]]F;K!\F =:- HP=/Z)UNC]_?%!3<2)R+/QV& M_-J0;PSYW1W9VD E,S1,_0GH>P MV3',Z[M]QZUA!V$&=9A!9Y@/E$@<@[E$LAGK@5Y8ZX7O6Y]>;:CWYOJ4S."@ M/@X,G$9]6F ^]/M>HS[',.B';A UZG,,\Z+0";WV^D1UF%%GF-]EBCE8LH)* M3CHKU*\5^^];(==Y^:@[;ZY113UH^U[4/$(M*"_R&T=CVH+J0;=QSF8MJ"#: M.XUED/;>)99CGIC7@R@K4'ZFZM7ZA7)M[N7&^MB]FK@MZU/]HC&7YHM\^1RZ M13PA5( ,KY0IY[*GFHF7+XQR(MG:7*$+)M6%;(:I>I5AK@%J?\68W$VT@?J= M-_H'4$L#!!0 ( .9I_5+#?%G#$@0 +(- 9 >&PO=V]R:W-H965T M4AF$GSC$C+ 3(!TVD[3R21-^]#I M@[ 7T,26.)(,G/[ZKF1CC#%.VC/-0]!EO[U\6J]6HYV0[VH-H,D^3;@:.VNM M-_>NJZ(UI%1UQ 8X[BR%3*G&J5RY:B.!QA:4)F[@>7TWI8P[DY%=>Y:3D&&KM38+[F2TH2MX!?VV>98X0&)8T2_2+V/T(14 ]HR\2 MB;+_R:Z0]1P294J+M "C!RGC^2_=%T14 *BG&1 4@* .Z%X A 4@_*R%;@'H M?M9"KP#8T-T\=DO$\H5N9J#IBQ1U[C[]CHG5U^NB5I3"8HP M3IY8DB!2W9 OU>G(U>BGL>9&A4_3W*?@@D\A>1)1 MGY*DX$#2-&A5^'/&.R3T;DC@!7Z#/[//P[VF<+[/^N-_MGY"1EAF3&CUA?\V M8_Y\6"@M\,*::!*)!;%@'9@&0B)E>86M^ 2G7= MQ&2[TC!'MKC7*]WKM6K*25A8$J(J"; W8VA*^ESCT&HT]7L[Z75Z(W=;3:0F M&?]49GXNXWN=NU.AQW.A8:<_//DK$2<,]$L&^M_% ,%+#&\2S23@O:*)HEO& M5XILL)(@@&O)%IF^5"!RV[Y7#;).Q*Q!R.L,:VSE0KV*3%"CJM'6H)F=0--! MDX_]&A^#\\2H)]B\05'8J3-RKBCH7$B7NY*0NU9"?A.:)B3CQS!/LR822B,' MB:5,"\(%O]V",C-[PQ291LUMU)@QN?E^U>=!+?96D9.HAF54P]:HWEKCN2$[ MVZ= ?$NW(+'O.A2Q_-NP2"O=7M3:?0@^+&J^=VP&O'9=GA^07P1?$0TR-7F* MF8N-G/UJVRQ4V@W_?[P]_.!H)VB-Y(GN69JEA&?I B01RT.C0C.]%M(>6(;M M@;U@];@_CUS/DMME]TD>35E2F543RB M(A"]AMJ)?1A6V%16PGID'TCEP;F5'C0%N;+-O\+O(.,Z;R[*U?*!\6#;ZMKZ MU+^?^0WK<_,@L3WO47W^FGFB8/A'RBQ<9VP NAL9^V MPS4^JD : =Q?"J$/$V.@?*9-_@%02P,$% @ YFG]4A'J&ULK9;;CMLV$(9?92#T(@&Z MULG'P#9@;YHT10,L=MODFI;&%K,2Z9"4G0!]^ XIK>Q&EFL;N;'%PXR^^)A[Y)C-VPI]/MVR# M3VC^WCXH&OF-EY07*#27 A2N9]XB?+,,^]; [?C$<:^/GL&&LI+RV0X^I#,O ML$288V*L"T9_.[S'/+>>B.-K[=1KWFD-CY]?O+]SP5,P*Z;Q7N:?>6JRF3?V M(,4U*W/S*/>_8QW0P/I+9*[=+^SKO8$'2:F-+&IC(BBXJ/[9MUJ((X.XRR"J M#2+'7;W(4;YEALVG2NY!V=WDS3ZX4)TUP7%A3^7)*%KE9&?F3T8FSW=+BBN% M>UG086OFY+J#1]1&\<30BML%"ZL@-]_AU5LTC.?Z->V*@C""/Z78@$%5 !<) M"BLT;'/V@Q?MO.AR]86.!(R$':UQLM094ZC)%O[*9*F92/74-Q2=9?23.I)E M%4G4$.^AV.6A*S/5.I!DI";4A,*S$SL,(-%\(.Y!JV MJ+A,X15I7@7T&OZ!4Z%52E4 P=@$WTWGP2#J;\[03UHJ =GJ1<5Y$8Q8L-]&K=XQV''?9HTO).SZ?39%6!,[Q8[5/1!@??V9@%5181W MC"OXQ/(2SZ1;&!QJ9G#),5V87ZG,]?WRD3SSHQ1TG M&AX5^_#:G+N%KOZDA$=X@T%OU$$7'>BB*_/P%KBH#1=->I,.N$.Q#N/K4_,6 MOKC-1V?;Q7?X!H3G/P*G[V0[.V]![K=N8S_L#7^L=?Y1%U*@VKA>2T,B2V&J MAJ29;?JY1=7%'+97S>!'IBB7-.2X)M.@-Z)*H:K^JAH8N74]S4H:ZI#<8T8] M*2J[@=;74IJ7@7U!T^7._P502P,$% @ YFG]4M4AGW&]! @1( !D M !X;"]W;W)K&ULI5C?;]LV$/Y7"*,/"=!&HG[: M@6,@CC.L SH$R;(^#'N@)=KF(HDN2=G9_OH=*46V)4IUVA=;)+^[XWTZWITX MW7/Q(C>4*O2:9X6\&6V4VEX[CDPV-"?RBF]I 2LK+G*B8"C6CMP*2E(CE&>. MY[J1DQ-6C&93,_<@9E->JHP5]$$@6>8Y$?_.:<;W-R,\>IMX9.N-TA/.;+HE M:_I$U?/V0<#(:;2D+*>%9+Q @JYN1K?X^A['6L @_F1T+X^>D79ER?F+'GQ. M;T:NWA'-:**T"@)_.WI'LTQK@GU\JY6.&IM:\/CY3?LOQGEP9DDDO>/95Y:J MS)Y+0P[R%E1_9/7FH@C M 1SU"'BU@-<6"'H$_%K /]="4 L$YUH(:P'CNE/Y;HA;$$5F4\'W2&@T:-,/ MAGTC#7RQ0@?*DQ*PRD!.S7Z'6/Q<)#RG:$L%>MH00=$G-">2)8@4*5JPK%0T M11<+J@C+Y"6L/C\MT,6'2_0!.4AJ"8E8@9X+IN3'HXD_-KR4H$-.'05;U0:= MI-[6O-J6U[,M'WWAA=I(=%^D-+7(+X;EHP%Y!RAJ>/+>>)I[@PI_*XLKY+L? MD>=ZV+*?N_/%79L[/V?]_H>MGY#A-T'C&WU^C[Y[(@I6K"5Z:$+FK]NE5 *. M_=\#^H-&?V#T!P-!R4Q0VB*GDHV,K,Z#NQF.PMAW77!M=_Q*NL H&&H_'+7*MJ(G?8M:& MBB/?3FOHLK$1G\6&#=5E MPXKJL&%#];(Q;M@8#Q_:U0J*LPZ%5*=T*,](TJ043#$JAX)OTAB8#-+]2"$# ML$07BRK*9+G\1YM4'.U@K2?8)AUG@ZA]DKL8+PI;U-KTX!:Q%HR+[;1B]U!! MW7/"C$E9DF5&$71OT/]\*YEDIA=*.+15*9Q',[J 2*Q.Y:6U++J=+>)V%-U9 M0)X7M/BP@7#<(L0&P7/OW9[35RH2)JGV>T^$((7ZOI^>)9K;4=#% MM"N;!>)';1Z&U)S2<.@/L/]CF3>MN\ES981(0^S]LBH;(R/7]=5V*Y&5I37.2-@X]#PX'V5@,A,)[^ B'=U?S84-Y;3ILH$F;#:N]<0\;A\8- M#W=N]8DAI=IPP?X#7J!J"KHM1;*![V"KYU&W;\40S6ZWPST+>KKS0Y.%S^JR M?C[E=;N>;LKK8CJN6IJG3LH;4E/1X!Q]4N=4K,U=AH1,5A:J^E!J9IO[DEMS M2]":G^/K.VR97^C[%?,)?U!?7F\<-)=!A: "LKSB4TGJ@#32W3K/_ 5!+ P04 " #F:?U2=5Z-A%(# M "W# &0 'AL+W=OGKBN2C(HJ#H42^#X9"YD034NY<)52PDT MM: B=P//.W(+RK@S'MJ]2SD>BE+GC,.E)*HL"BI_GT$NUB/'=^XWKM@BTV;# M'0^7= '7H+\N+R6NW(8E905PQ00G$N8CY]0_B?W0 *S%-P9KM75/C)29$+=F M<9Z.',]$!#DDVE!0O*Q@ GENF#".7S6IT_@TP.W[>_;W5CR*F5$%$Y'?L%1G M(V?@D!3FM,SUE5A_@%I0S_ E(E?VEZQK6\\A2:FT*&HP1E P7EWI79V(+0#R MM ."&A#L J(G &$-"/?U$-6 :%\/O1I@I;N5=INX*=5T/)1B3:2Q1C9S8[-O MT9@OQDVC7&N)3QGB]/@S]N(Y3T0!9 F27&=4 CD@IURS@Y3EI2DCN8:DE$PS M4.3-%#1EN7J+1LH8J_L+X^1+)DI%>:J&KL;8C ,XJ^((GH@C)!>"ZTR1 MF*>0MN"GW?BC#KR+.6D2$]PGYBSH)/Q8\D,2>N](X 5^2SR3_>%>FYS_\Q[_ ML_<'R0B;+@DM7_@$GVF'MFZ([Y*\Q'R3N10%F8AB66IJ#P Q)S&5G/&%(I=- M8WW_A,3D7$.A?G2$%35A13:LJ".L39>J)JZV]JN8>I;)G)ZK<13U,+6K[9H^ M-NH/3 *WC:;[,,6/C<+C*&J,'LCM-7)[G7*O0&G)$HWYQG,AN<73??83#URB M!5GA,TQV1U*/&B]'KZG6_2:L_HO5NO\H^3LUG#RV\/O13IV?98E;6 *_O<:# M1N:@4^9$\!5(S6:Y$YM/D/=BI:VINFK;8A(. M@G"GNL\3Q9TF#[5N?6[]3JTW5$K*M<(A*Z?F3<9W5V= F%(EY0F8G"=_WP-^ ML D@>%5=L/G$^.'+=4&XSVG>8M76"/MPQ<]Q5:+=K4&L +FP$[#"@I9<5U_; M9K>9LD_M;+FS?^:?3/R6_:F9RNW@MZ&O1OH+*A>,*Y+#'%UYAWT,5593&PO=V]R:W-H965T(%XX2;7QIH?@NVL _'A.=MI%*"= MZ(O&#W?_^YU]Y_R@]*.I 2QY%ER:151;VUS%L2EK$-2,50,2=W9*"VIQJO>Q M:330RCL)'J=),H\%93(JTF^$8])=RL9JW&7H9XM/>.^WLE0" M2 .:;&JJ@;PAUU7%W*E1CKOAZMT97JS 4L;-B!AG: B3Y(YQCGLFCRWR.-6X M[&+?A-CIF=@?6SDFT^0U29-T\K!9D8M7HZ#[IU:,.?6)I7UBJ1>?GA%_1[5D MC5[E@K R9R@843ED?D%SEUZ0$T1,L&H)/Y7X3QH/C= M.W)']9Y)0SCLT"D9N\[3H3?#Q*K&]\-66>PN/ZSQ.0/M#'!_IY0]3ER+]0]D M\1M02P,$% @ YFG]4EE9SV5C @ U@4 !D !X;"]W;W)K&ULC51=;]HP%/TK5M2'5NK(%R%0020*FK9)DQ"4[6':@TDN MQ*IC9[8#[;^?[80H;0/J2^)KWW/NN2>YGIZX>)8Y@$(O!65RYN1*E0^N*],< M"BP'O 2F3_9<%%CI4!Q<60K F045U T\;^06F# GF=J]E4BFO%*4,%@))*NB MP.+U$2@_S1S?.6^LR2%79L--IB4^P ;4MEP)';DM2T8*8))PA@3L9\[014\Q20!O[RRQX47(&3$GT!W*$;1!AZRGDE, %?@]\<1V^A%3#?0OWWL)=;4;K2- Z$EB^\%..K(%B!1E:$IE2+BL!$OV9 M[Z02^@?\>Z5K&@R&;=9;]0.6[7#JVJW;%?K%7 $5H&\*++FB3KE1W[<*5^+_)@UC+UQ MW"\R:D5&5T4^<85IGZ;H@R7^J7([4V=NO)]8' B3B,)> M [U!K'E$?8O4@>*E'<0=5WJL[3+7%R\(DZ#/]YRKP\ !D !X;"]W;W)K&ULM5==;]LV%/TKA-"'!F@CD?JP'=@&$J=%.RQ 4"_;P] '1J(MHA+IDE2< M /OQ(RE9RX/SR6/?:=;+K[)G! %GLN"R9F7*[6Y\GV9YJ3$ M\I)O"--O5ER46.FI6/MR(PC.+*@L?!0$B5]BRKSYU#Z[%_,IKU1!&;D70%9E MB<7+#2GX=N9!;_?@"UWGRCSPY],-7I,E40^;>Z%G?ILEHR5ADG(&!%G-O&MX MM4") =B(/RG9RKTQ,%MYY/R;F7S.9EY@&)&"I,JDP/KKB2Q(49A,FL?W)JG7 MKFF ^^-=]H]V\WHSCUB2!2_^HIG*9][8 QE9X:I07_CV$VDV%)M\*2^D_03; M)C;P0%I)Q5C>@K=O+L ;0!GX(^>5U,%RZBM- MS2S@IPV-FYH&.D$C 7>FKR9UOL3F,_?]:?X>H5$23OVG?:GZP@(T MCMJP5W3CEF[LI/M*$K*3Y!U@1/5QK9/%>R0@@B@ZH-H3!2:M$P3)U-S M*RI%!,BQR+98$$>Q1FW.T=D.Q+A=8_P+"O>).SZJ,!R%T:&XXV-QXR0*^L6= MM"0G3I(/DJRJ A1T1?J8N<$A>"%82(=6,.B,,'#F6O*5&B@NW'-5>+;R0M2M M@OZG C>)]BNLL M#T;GT[ES*O@K5M6KC$SIW-@7=/C5PE0;0\?!=ZLP- MC@9^BO0_JYP7&:#E1O G8O1RINX\#8[/5_'.E*#;6'ZBXI.CBH^""!Y6_#@J M28(3%4>=9R&W9PU4? ]7''4&1Z"SEQWE-&R*L$_X =\%'4.A]#9JHTZ@T)N M@QJ2T8V&5D87D<[.D/LOW!U^_@D5._]"\?E4[.P'_2?[&4"/3A]&?Z^]*8E8 MVZY/@I173-6=3ONT[2RO;3_E=^%U6WJ'Q9HR"0JRTM#@_PM02P,$% @ YFG]4E5(.D%R M P A H !D !X;"]W;W)K&ULC99MC]LH$,>_ M"K+ZHI5ZZ^>'K))(N\E5U].=;M5MKZ]9>YR@8O !3C;?_H X7L=VK'V3 )[_ M\)L!!I9'+G[)/8!"KQ5EZBPO.,U,/VEY*+"2G?%SI6U %Q8 M447=P/,2M\*$.>NE'7L2ZR5O%"4,G@22355A<7H$RH\KQW MUG@'SZ!^U$]"]]S.2T$J8))PA@24*^?!O]_X@1%8BW\)'&6OC4PH+YS_,IVO MQL(0-IS])H?8K M)W-0 25NJ/K&CW] &U!L_.6<2ON+CJVMYZ"\D8I7K5@35(2=__%KFXB>P(]N M"()6$+Q7$+:"T 9Z)K-A;;'"ZZ7@1R2,M?9F&C8W5JVC(8L^?OB$/B#"T/<];R1FA5RZ2L.9*=R\!7D\@P0W0/YLV!T*O<\H\ )_0KZ9 MEV\AUW+?RKUKN:M3TN4EZ/(26'_A#7_GX/,V>/H6_/V,\[!S'EKGT0WGOTM% M] Z$ I68"'3 M '$2Y1SI@C;F1EU4Y("!+:;_3+_:2JOY[D2.YJGZ\IXK/3N,?B>WZ4 M#8BGK$*S-Z:(XXXXGB5^R'/1Z,0?L-",%'2B*UT2I4>BT'E&.C-(EO4&8=9?:^'$)54W[2Q%^^;AY0C4^5*7-3K-EXQ?7& M&^[.L54.TZ*#7,-T6#^GK"(OOH'[=LWXP2SN=ZXPG:0*1@4[2Y,L'&*- MS4R53(:EQ^T]$.%*OT%LZ_\!4$L#!!0 ( .9I_5)GRYGO 0, (X( 9 M >&PO=V]R:W-H965TM0Z7=KDTX@%7'SFQ38+]^MA/2E 34&["=\QX_YXT_TM]R\2;7 M KM,LKDP%DKE=^YKDS7D&%YRW-@^LF2BPPKW14K5^8"\,**,NKZGM=U,TR8 M,^S;L:D8]OE&4<)@*I#<9!D6^Q%0OATX'>5P,',\ 854F0Q8 M_[W#&"@UB33&WS*G4TUIA/7V(?N#K5W7,L<2QIS^(0NU'CB)@Q:PQ!NJGOGV M&Y3U1"9?RJFTOVA;QGH.2C=2\:P4:X*,L.(?[TH?:H).>$+@EP+_JX*@% 2V MT(+,EC7!"@_[@F^1,-$ZFVE8;ZQ:5T.8>8LS)?13HG5J.,(4LQ30S"Z9,<]R MSH IB6[0+[4&@9XXNQEOA-"#Z ?!ZEGSC<1L(?NNTH!F&C^S1>:-M2G@%2 M> >MMA5INC:-V9?OPTX<)MJB][H[S2C?ZW4^HCXQAA5C>);QE0E(^8J1?YKS M!>_0"!@LB9+7Z+&@-H-38)C:=7&?IF(#B[8JBHFB>A5>-XF/JFA&)9[7:R\B MJHJ(OF:T!M;GG\3V"#F\S7T;;-3$B&L8!6LS* ZC;CMKMV+MGF5]JJTWR9=J MBP7HTTZ[BFD;:+?!$(6]XZ71$J074#MH7('&7S,5LISRO=XJ#X_C>Y3C?69. MD#;6N('A'8$V(Z+(#]I!DPHT.0MZ=A^W828-B" ,NT>DS2 _#,)VTEY%VCM+ M^L)5^TON-;9V&"6=\ BI&15Y7G)\ +BUV\+&ULQ5;; M;MLX$/V5@="'%DBCFRTYA6T@=K9HBP8(DJ;[L-@'1AI9W%*D2U)V]N]W*-FR MZ\A"@2W0%YND9LZ MZ.T/[OFJM.[ GT_7;(4/:!_7=YIV?H>2\PJEX4J"QF+F78?OEF'L%!J)KQRW MYF@-SI4GI;ZYS<=\Y@6.$0K,K(-@]+?!)0KAD(C']QVHU]ETBL?K/?K[QGER MYHD97"KQ)\]M.?,F'N18L%K8>[7]@#N'Q@XO4\(TO[!M99/8@ZPV5E4[96)0 M<=G^L^==((X4"*=?(=HI1*<*HS,*\4ZAB9S?,FO;P%MX?+B! MUZ_>P"O@$KZ4JC9,YF;J6^+@D/QL9V_1VHO.V$O@5DE;&OA#YIC_J.\3]\Z! M:._ (AH$_%3+2XB#"XB"*.SAL_QY]6" 3MS%,V[PXG/QS#)52VO@'C/D&_8D M\ +.!AG^NE=" !7DENG\[P'[H\[^J+$_.F-_@2LN)970J-DU,G\0&[)L$)U1[9,)HTL\U[;BFPXEO^0&S0#6-5--][-(7EL,D34_H]0BE MX;B?WJ2C-QE.?5W5@KF6#5@4%-(+6%.Z5>Z2SW*U=DW]@E;_4,^C9\(.W(6K MSN;5;[F+87!HKL'_OXT[C.-XGQ9,C\@HBOLS$AZU_O#7Y>1P!88B$QUL1[\G M-X=&'<:_(#?QS[3*'JG))#U)CW_T2%=(?=#-+@::,+3/77?:S4?7S51PMF%'A2E@:+9EG2[(?:"=#W M0BF[WS@#W30Y_P]02P,$% @ YFG]4HTI[=),! =Q !D !X;"]W M;W)K&ULM5C?<^(V$'Z^_A4:YA[N9I+8EHV!&V F MP"5-YZZ3N>3:ATX?A"VP&MOB)#GD_ONNA+$)M@7MM3R ?^RW^VEW]4EBO.7B M22:4*O22I;F<]!*E-A\<1T8)S8B\XAN:PYL5%QE1<"O6CMP(2F(#RE('NV[H M9(3EO>G8/+L7TS$O5,IR>B^0++*,B.\SFO+MI.?U]@^^L'6B] -G.MZ0-7V@ MZNOF7L"=4WF)649SR7B.!%U->M?>AUML ,;B-T:W\N :Z:$L.7_2-W?QI.=J M1C2ED=(N"/P\TSE-4^T)>'PKG?:JF!IX>+WW?F,&#X-9$DGG//V=Q2J9](8] M%-,5*5+UA6]_IN6 ^MI?Q%-IOM&VM'5[*"JDXED)!@89RW>_Y*5,Q $ _+0# M< G QX"@ ^"7 /]<0% "@G,!_1+0/Q<0EH#P7,"@! Q,L7;9-:59$$6F8\&W M2&AK\*8O3'T-&BK"8\6[*C= M@BK"4OD>7:*O#POT[NU[]!:Q'#TFO) DC^7844!#.W.B,N1L%Q)WA/R%Y%?( M#2\0=K'; I^?@!< ]UT#]UK@B_/A;=$__ECTFQ^+?FN'+V@$<*\-[D#AJ^KC MJOK8^/-/5?\Z^E8PR8PZ_/$)GJ$[13/YIR6&7\7P38R@(\9U_!>T,:B70HJC M%6$"/9.TH(BO4,1SQ?*U?@>7DL54F YLZXI=E-!$T0+[/+WL>Y"$Y\/:-XVP M&PY>&WUL&@6O+6Z:%M[ QY71JSP$51X":QYN.8^W+$W;QK9#]@\98;?O#H^( MGV=V&S3'APO/FQ(0;5JR&5H>/7)$4;0H1);!^HHU@$6VC-6SI8_BT5W!4!1]9 M@\^)3-"&L!C!%N948D:-7O/\41<#SZV7&]?.@6<9%!O6M>@),2D+&K>N(&XS M?'?T@\7.LT:_RV&\4( #%:)2L6S?*W%L\@$6E(@ZGU._$^$:E9R.)JF M7=QKJ?:PE?NOL"_5VSJ@@2*R8;J1)%4JI5I;6XG@!I$N%K68>W8UGWVDO*;E76[TU.KJV>7UYM_O;!X35D='1(JMP4GK%[3KD75 MLZOJ?[4ZEF&.%.-X#$TCOW,(M9A[H5W3!,DEV9TL(BY5^Y8P;*0O[ Q=:[QG MUV>S?@B8GXKD:[9,*2(2YD0[@T%S6@XZ*=2"[MD5_2Z&^K 5 Q(L/X?&L)F( M;AJUM'MV;?_$R)*EH%Y4ZN!%UJ&K35F_##L7%ES+.K;+NF5S,\,M6AYT%A_7 M8H[M8OY(7N#0&1?0>2;E&2]@IL"\L9+Q6N9)T"#C')RH])'\,Q%K!@>CE*X MYUX-8#1B=\K=W2B^,8>L)5=P9#.7"24P8[4!O%]QKO8W^MQ6_=&ULM5A=;]LV%'WN?@4A]*$%FDBDY*_"-A ['\O0#4&3;@_#'FB)MME( MHDM2G8U'HE.?L M3B)59!F5WV57O20\8[GB(D>2 M+2?>!?YX0RS 1OS.V58=/",SE(40CZ9QFTR\P"AB*8NUZ8+"SQ.;LS0U/8&. M;V6G7L5I@(?/^]ZO[>!A, NJV%RD?_!$KR?>T$,)6](BU9_%]F=6#JAG^HM% MJNQ?M"UC P_%A=(B*\&@(./Y[I<^EQ-Q ,#]#@ I >0E(.H A"4@/!40E8#H M5$"O!/1.!?1+0/]4P* $#&RR=K-K4W-)-9V.I=@B::*A-_-@\VO1D!&>FU*\ MUQ*^O?V M/7J+>(X>UJ)0-$_4V-<@Q'3GQR7I;$=*.DA_I?(3J\C?WJQ]BO?XS]Q@V_9#' <1OL'PA?#3PFZBYOC(8$2&[?I[ ME?Z>4W_M"HZBZ%>=]?^WPAM4' .G8'!$6V2TIF@S*W[/ZZ&70IP4.\Y@5N#R#+(-FQN\2/B2A4L:=U$@@8]B3K9#W8\[&3_#0YX MYGP$MH-BNN$F&8IIG3)C4:U"<$/(H%-'[;R8.'7%1G,K*VS[W#\ M;=45-IVLN[)JA\5NB[W^UYL+;EIK. I>["Y7KT4=RZZ-%;N=];_:(4N:HVVK M.89F4'=%U':.^VY3DS17='>_B(72[8,N1%UN&L36,_BSKKF-3&3MS&[CCAS$C3S7'0::.DMG/BMO,'^@QWSZ2 MTK-3GHD"E@HL'*<8W%@#PZ86_^!>92[FI6P)L.!\ (.1N[ONKJ'% MQEZU%D+#Q&ULM5A-;]LX M$#UW?P5A]- "3232EN04CH'8^5QD%T'3[AX6/= 2;7,CB2Y)Q>V_WR&M2'8D M,6J[O=CZF#?S2 [?##79"OF@UHQI]#5+>]Y*EZSC*ICL6$YO%D* MF5$-MW+EJ8UD-+&@+/6([X=>1GD^F$[LLSLYG8A"ISQG=Q*I(LNH_#9CJ=B> M#O#@Z<$'OEIK\\";3C9TQ>Z9_K2YDW#G55X2GK%<<9$CR9:G@S/\_IH$!F M M_N)LJ_:ND1G*0H@'GP[& Y2P)2U2_4%LKUDY($LP%JFROVA;VOH#%!=* MBZP$ X.,Y[M_^K6%@B=*H;G(%CRG)J$4NKN_16_.F:8\56_1$?IT?X[>O'Z+7B.>HX]K42B: M)VKB:6!@_'AQ&6VVBT8ZHOU>Y,<(1^\0\8G? I_W@ ]]"\A1@F(3'_=1I&A$_C Z-+II&HT.+RZ8%CH:D M,CJ8AU$U#R/G/%P)D6QYFK:-;8<,]AD1/_#'SXCW,[L>-<='HA,R;NEV-6X$)YVQ3ZK8)\[84&P<8H']NI+YOTR2\%Z]Q.X,HMH*$*V# MM-9!MY>G0OC;JUE[>59D,+4VT[[!6:R56%,B"2&=Q&J-Q&Z1O/SA#@2WZ*9_XC_K02Y> M-#LD7@LL=BOL_]5(E6$..JFH.8H6J[!K$*26=^*[Y4W27-'=B3<6JK5&STH? M!S/8N9](+?K$+==G_;N66>GJ8%O@[O'O-=QN>;_YOG9E5KH[F(J3;AZUS!.W MS-_V:E-FI"GP1PYY(+7"DQ_NAF>DV< &CC'7ND[Z=[!Z;?YZE=HKTFQA<3,= MO;WCN_E@!$>]%8=3>,J6 /./(_ B=]]@=C=:;.R)?B&T%IF]7#,*.]<8P/NE M$/KIQGPDJ+Z$3?\#4$L#!!0 ( .9I_5+?)1.Y% 0 .H5 9 >&PO M=V]R:W-H965TD[:J:[NP\K/;!D$.PZMB,[4!'V@^_3D)C5@4'L907R.W\SS6_)!YNE'XR M2P"+GC,AS:BUM';U,8K,? D9,VVU NG.+)3.F'6[.HW,2@-+2J-,1"2.>U'& MN&R-A^6Q!ST>JMP*+N%!(Y-G&=,_IR#49M3"K9<#7WFZM,6!:#QP7Y; M/6BW%]4J"<] &JXDTK 8M2;XXY0."H/RBC\Y;,S.-BI2F2GU5.Q\24:MN(@( M!,QM(<'G,E3/F+-M6U?=I"\]Q8E6V-7009E]4_>]X68L> X ,& M9&M RK@K1V64=\RR\5"K#=+%U4ZMV"A3+:U=<%P677FTVIWESLZ.I[EQ1XQ! MMRJ;<IY6GLD!SQ3=*VF7!GV2"23_M8]<%G4JY"65*0D*WC/=1A2_1R0F M^-OC';IZ=QV0I76%:"E+#\A^YI);^/";&Y[D=6'>HU^TPR 42? 'H MRLWO3V#:7.\K;5BX5UD&0KRI0[PY4[,KG=Y.LRG=W^I![7MP0JO1/^ZVECS+ MLT!Z./:$B2_5=KR#-1S,[).QW#';>3R^XPV2W<:68^+#(R<6GCTW%=Z#"U^, M7-BC"X?9=5+APY+]YL)[MN$CX39C\R>ATI"HYQJ^&-BP)QM^,[0U*./2-!2D M9QL.P^VD:0A+-D?GZ8?#^#L>O5NAW0?MH-W;#U_BR4CBH/_?E?PP5]D*7 3, MA0+N==>&YIQX_A%\J9$DGFHD3+7_,9(-RLWL)1Z+A)Y])ALDCPC/ Y23:2<[&1O&9CW.[L'T/JV4C#;+R#-0BUZXT=]B%!/-MJ]6.\] M_VCO['=Y@R1M;KHG)0WS;'_1&S]"J*<)Q4]+!EXQ$<[RV_N MTR(M%QD-FJM82W -;%Q>X\PNE[,M.X:!>WAW_"U!+ P04 " #F:?U2 MON)YLN0" !(" &0 'AL+W=O%,:14=40&'$=V0J948U/N M795)H)$5I8GK>U[?32GCSG1L^U9R.A:Y3AB'E20J3U,J?\TA$<>)TW5.'6NV MC[7I<*?CC.YA _HA6TELN564B*7 %1.<2-A-G%GW=C$R\^V$;PR.JO9.S$JV M0CR:QETT<3P#! F$VD2@^#C I+$!$*,IS*F4UD:8?W]%/V#73NN94L5+$3R MG44ZGCA#AT2PHWFBU^+X$J*O",/ MFR6YO+@B%\0E*J82%&&S\"EGBID]NZ[MZ1TO3K\Y1C]F6Z4E'J:?+<8WE?&--;YY MPW@-!^ Y-&WIHE#VK=*4EL,T\(8]?S1V#PV.OLDSZKWR M[(YN/*_9LE]9]ELMYU2QL#0E>"2*;YQ<^512+(E.6:\;TIM9@U7FU7G10G%G6B MD;(P[-4_G.YP] ;GJ.(_Y?I&ZM6*<@]_8.4XB0*AI:9+;T;X7&B\2^QGC5 M@S03<'PGA#XUC$'UYV'Z&U!+ P04 " #F:?U2*'(,$9<" B!@ &0 M 'AL+W=O*R'--"BMW9R'H(E"."'">-QJ!MV2+G!W_*K^WN=.N:R8P4LEOO+ZN:C[C- M9^3T,B6,?T+3^J;C ++:6%5M@XF@XK)]L^?M/NP$)/$; _Q(?%W222O2M(M:)C.O^]1'G;*0Z\\?$-YS@23&0*SL, ,JQ5J&,2>/^K;SU8M]6JNS)YF MPV1\EIQ.PJ<>BE%',=I+L:QU5M*-AHWF#D8(E3%?*U3L5"^/-3?M#V#<M'7_R[WMGC=,K[DT(+"@T.AD3-GKMB.UAE4;WP56RE)/\<.2FCAJ MYT#?"Z7LJ^$6Z'X+LY]02P,$% @ YFG]4NJCAFDC! C!, !D !X M;"]W;W)K&ULO9A=CYLX%(;_BH5ZT4J=P1] H$HB MI1EUM]7N:M1I=R]6>^$0)[$&<-9V)NW^^C6$ 08;-!0>OC!]]7Z8'E5-V*(RO,F9V0.=5F5^Y]=92,;JND//,Q MA)&?4UYXRWEU[%XNY^*D,UZP>PG4*<^I_/F19>*\\)#W?. KWQ]T>7KYBQ#;,\\R0(LM^%QH6NSY)F-@I133"MPXCKV]8YKR3+TS9[\_W(&W M;]Z!-X 7X-M!G)2IH^:^-M+* ?RTEO'Q(@,/R/AR*FX!@>\!AA@YTM?CZ7FH2HZOOU<;I:5IPW]& M!B3-@*0:,!BZ#%(H!=94RI^\V(-5+DZ%=OIXJ1-5=?NGXY MPC"9!; )>R$S:&0&HS)7:7K*3QG5QA:C46K^'RWO1I?02Z6PH^ FC,(D[ EU MA$4018E;:-@(#4>%EA?H-6Z&UNA!G)!93Z,=%9%PAMP2HT9B-"IQ7=W<3!H8 M9I6)ZL"/:J279DWAV76:-VX&C"=JWM@R,H$$1CV['5&S()FY[4X:D%A" \(+/SY$#C,D5Q MDXK\R#0#="\9,T_WOM"7I5O\HBOQ%[4 1E,1N"[4]1,%..B[[HJ:#6 -M0!& MTQ$8.=AJP\T5%9,!N*$6P&@: B,7@BV-#@('\8#$%L#HE03>T/0Q$_NQ/FKA MBZY$7]3B%TW%7V2C%?:MMD.001\9,+O%+YJ.O\@FJR73 =\P"0;:%K?LQ=.P M%]M0[4MTA)C'PP!V<8M=/([=;Y)N&2AHSL9>=#MONE="+6Y1BZ="+;8A:KEL MAP3! &9QBUD\'6:Q#5!+I(.Q.!YJUI:Q>!K&8AN?ED([!$4#A,4M8?$X8>_8 M$\O$T9BHQ$Z?J1SMV9:Q^$J,Q2UC\52,Q0Z DACV/]"<84DTA(>6LW@ZSF(' M1(T$TI?J"#-?20/M2UK6DFE86Y?I?LP&J/,J57_QVE$AM$3ZG:62&PO=V]R:W-H965T M-FF0V/T"U%9J@7UI3 C&]C#MP6UN M$PO'SFR'@K0?/R=IXTZC#JK(2V([ON>>>VP=Y8[74MWK%,"@QXP+/0E28_*S M,-3+%#*JCV4.PGY929518Z13/ FBDA%P6)H2@MK7 YP#YR62Y?%[ M QHT.=:**Y04U=#I6G,!AC*NWXY#8VF48.%RDW)>IR1[4@[1E10FU>A2 MQ!#_&Q]:^DT-9%O#G'@!/Q?B&/6B=XA$!'OP>HTFO0JOOP?OO)(=E+UUG)9W M1Z@*KG3\T/.:@C/>2&#;GA@?+2QQ9Y1TV*41?RGC3P)Z\OKQ\21ZWZ MGC;L3KU07Z4X6LHL!P.()@K FJAYV?7%D;.-J N%\8XOX=?7N 6SWZHQ)HX? M.5#EUEN,G1'A7B:;HC$@03/PP3F[P:==R$F5LP6R5DSBG M(GY7N8 '^W.;6WI:KLR:*GB1UQ)G-81T(K"S&>+_X3E,8#]FN\#.I(C?4)X7 MN-5FB7,9,NA$8.E?4$L#!!0 ( .9I_5(<2![$7@( "(& 9 >&PO=V]R M:W-H965TC'ME:: M5)5VNYAV88^R3O)'J55< 2+8U%WKB M58CK*]_7BPIJJB_E&H1YLY2JIFBF:N7KM0):.E'-_2@(4K^F3'A%[M8>59'+ M#7(FX%$1O:EKJGY? Y?-Q N]W<(36U5H%_PB7],5S !?UH_*S/P^2\EJ$)I) M010L)]XTO+H>VW@7\(U!H_?&Q%8RE_+53N[+B1=80\!A@38#-8\WN '.;2)C MXU>7T^N15K@_WF7_Y&HWM(G.\6Y%S>4J1%KF1#E(TV MV>S E>K4QAP3]D^9H3)OF=%A\5G*LF&<$RI*EAR"A8/P9)#6)!ET3 L[6'I*=AH")8>P++41@ZQLIZ5G6(E M0ZSL@#4:Q>$P:]RSQN^RGBLP#72)H(:(XX,S$L5I\!_1W[ORMGM^I6K%A"8< MED867&;&L6H[4CM!N79=8"[1]!0WK$P3!V4#S/NEE+B;V,;2?Q:*OU!+ P04 M " #F:?U2)A1CYZ$% !=' &0 'AL+W=O[_CXDBDUYV54NO/O5XZ M7[&8IEVY9@)^6<@DI@I>DV4O72>,ACE3'/6PXP2]F'+1&5[EWQZ2X97%[&D%/\R=ES6GE&F2LS*9^RE]OPNN-D%K&(S54F@L*?+9NP M*,HD@1W_:J&=4F?&6'W>2;_)G0=G9C1E$QG]Q4.UNNX,.BAD"[J)U*-\_HUI MA_Q,WEQ&:?X_>M:T3@?--ZF2L68&"V(NBK_T10>BP@!RFAFP9L"G,A#-0/89 MO",,GF;P]AF"(PR^9O!/U1!HAB"/?1&L/-)3JNCP*I'/*,FH05KVD*5P*\<^-3P3HKE)\62&$W93*%/Z)%M9;3E8HDF"0NY0C=TSB.N7M&' M*5.41^D%4'W_-D4??KFXZBFP(9/4FVM]XT(?/J*/H'LIU"I%7T3(P@;^B9T_ ML/#WP/GLSL-[%_L[/?T%3G]H\IO M[-Q3-@?E;I/R6BA)64LDET>.U1*\([G8%<[?HUFJ$H".?RRRO5*VE\OVCLA^ MH*^ 9PH!EJ)Y(7^Q*\P%%U3,LY)=,)8VY;"0'>2R,ZS=#@-"' >7\>T?TQ%ZI-#1FFJDX/8K ?.; W59 M*KQ\7Z#0?P@*(X2^R@44QXR*)W!ZP8 *)50Q].'N=OS[XP70W7/!XTUL<=]U M#-([9P^N6^DCKM7;>YHLN?:(I:IP9,V2.:Q:&%$:D=XNT>TZSJ\VV["Q#?_\ M3-"7MDP8G'3/#Y2N04K7#I7OR81=(F[+A,%#UPZ(MDSH:-!EPEB&]3:%!JS< MX/RA-G#E]EM"G1<%FLD$>'.WZ!H\V@?#HI=K855,A@U \:\9:EP#;JX=W48A MN >C.HW07,8Q5WFWY +"#'-WXYQV"'A]?\\871V# [L/*.MF&XAT[1CY0VU] MK(5770@:'6BEJX^.!E*Q8X]Z!#LS.HL8HK'<@!]0:1%3L/#2[''G$3C'TW0# MWC2N/JVD:IYK+0ML4!G;,?3NP!C87::*BA#BVA12+<\_J-&]D+;3U2TV6(WM M6#W:PAXC#^E)BVJLQ=6"=WDY:+09'\Y$!Z1ULPVD8_)#TX5F=]V*]*BQ>FZOFTL(0;'B1W'WYJ( MUEF0&(0F[MD300R:DA8T/4\B6K0X76R=#TGE!,$.HV],Q$/"8Y8/N#;M!DV) M=_Y<&/PC=OR[K0WD5"% FTP;9(/+IJ.P<8M TL7[]:_3]6:^NDL&6__A0D,&3CIOL!EFL-3["<>QE?-8^^3Y=C1K$0C= M?#\C.I-OYBMBKI,8<^W )%.MP_ FQ1W6<6+DNO\[F4FE9)Q_KAB-&1)1@"_+Z14NY=, M07FC./P?4$L#!!0 ( .9I_5+UNA?F" < !8B 9 >&PO=V]R:W-H M965TY/8,L_AR\/#YQS)/EAR\9^< M4ZK ;9;F\K W5VKQ;C"0\9QF1/;Y@N;ZDVLN,J+T6S$;R(6@)"F-LG0 @V X MR C+>T<'Y;4+<73 "Y6RG%X(((LL(^)N2E.^/.R%O?L+G]ELKLR%P='!@LSH M)55?%Q="OQNLO"0LH[ED/ >"7A_VWH?OSB)H#,H1?S.ZE+77P"SEBO/_S)OS MY+ 7&$4TI;$R+HC^=T./:9H:3UK'=^NTMYK3&-9?WWL_+1>O%W-%)#WFZ3>6 MJ/EA;]P#";TF1:H^\^7OU"XH,OYBGLKR+UC:L4$/Q(54/+/&6D'&\NH_N;6! MJ!F@L,4 6@.XK0&R!NB! 6PSP-8 ;VL068/HH:1QB\'0&@RWG6%D#4;E9E71 M+;?FA"AR="#X$@@S6GLS+\K]+:WUCK#>S]XJ*C)P0J\4 M> N.>7Y#A6)7*067-&=<@#^YHA+LO4\29M*'I-65-V#OA"K"4OWJ-1@ .2=" MCV,Y^)HS)??U1?WZRYP7DN2)/!@HK=?,.HBMMFFE#;9H>U_,^B#$^P &,/AZ M>0+V7K]Q$S7X._;[NZ0+[2\T_L+Q-OY._/Y.:-P'*%S3U^#EPQ:K[/9RZO?R M1Y%K+T'I);1>$G+GEO>9*-K@]NRY2QSHA%ME'5QE'2S=HE:W.M?.IYYH& M3$.C6D%9PZJM>=I^' \W]@,/^\.6_1BM1(Z\(NT6 'I+15*FM M)?MD11NR4)LLA^?0S^='Y/"7)??ME8-M.-I)#CM2AGY4/C6']=I;&J73CADG MXZY,=F@-)S\QDR<;*=-"/>C8#/UL?GXBVPGJJL*61(8.QO#1,'9MEJ]KK;6M M.V$O=.R%?B"^G\T$G97U7->[/&8+W3B1C!>Y:FJ%K+=A/8P8C8.V4#J80C], MSW-]3TBEJDZ//OU:T?[]*2&SI@-RW.$2]M$H\AT0Z$ *_2"][R@7A8CG1.J# M_AM(F(Q-F("^UW1-4,RE:FPB[0SUR&%!SE5AF9;K'"XF1MHTJ[*P1OZ6^4+27ZO2(!+T?A., MJO*XU;O.AG;31G:T 8#)Z&%@/]A1:VL8P:!U#:X^0#^M+ZMG%?%ZF6@,8^4H MA/568-B/)M&H183C//1S_J5OC.QT]287C?K#9IG(T1[Y:?^)J$(P=:=9WEP9 M.^RKQR[1_B^O7IG\\-W?.]0C/^HO[N'8E%O6=JWD!9,'N75J1PV]H\ZZ?*WK M=X4$P6W.4'F2+6J;'LY8+VME$K5E/ZH]'O%7F8]2O"D=;0^FH MC/Q4?D+%GG:X#/O06["1PRWRX_;Y!7MJ9Z@';M1^%!R#D9_!SRFQ4[396T,( M1VVJL$,N]B/S)4KL%#?TV)[BB1U\<5>?+WS MJ49EFU"%P_:P.:KBK:A:AV(!WVU3=)M@.)/$C#CONXJS?W=""XD_)6]G;CSNRX M:,NJ@5W5P'[$/RS ^R!EY(JE)M8QSQ8\-T5SR_MH[.H!'N^B*F.'==R!]1< MZ!G>Q'L(1ZVH\[G)P^B3K\73PIYY* =A;L(>>3@&ST"OD\->;1)VZBA MH YJ7WB;7TQ\(F+&<@E2>JWM@OY([YFH?H10O5%\47X'?L65XEGYU .^W'SW;2 "&D$X('8B?WG)Q[S+W5+6^0;MR3Y4KJ&_9HD*,E?L#R,9]R MM;-KECG),!6$4<#Q8FA]@OTQ##3 1/PB>"-VUD"G,F/L26^^S8>6HQ7A%"=2 M4R!U6>,Q3E/-I'0\5Z16_4X-W%V_L7\QR:MD9DC@,4M_D[E<#:V>!>9X@8I4 MWK/-5UPE9 0F+!7F&VRJ6,<"22$DRRJP4I 16E[12V7$#@#Z1P!N!7#_%^!5 M ,\D6BHS:4V01*,!9QO =;1BTPOCC4&K; C5Q_@@N7I*%$Z.;AE=7DG,,S#! M,PFNP"U!,Y(2^0H0G8//SX5>CEF6,XJI!&P![IC$X&*")2*IN%20QX<)N/AP M"3X 0L'/%2N$@HJ!+94^_18[J;3,Y'X#HN;(&/N^$3G"@X M-'!G'VXK5VIKW-H:U_!YQZRIG4C>TN]WT'HUK6=H_2.T=ZHV$\3Y*Z%+@#)6 M4-EF54D2&A)=B^L1[/7",!K8ZUU+VL*\T/7KL#V-?JW1[]0X9G2-N22S%*N: M4+^+O]I4SQR]Z/ @J/F#\6$=SIW?"<902WG0^ZIQ=2A=VUR_4<]6FX^G[A V-;?%!>&Q%@"W#15V=]03"JMBW-<2QF%399S'6 >KY@JMZJC9Z8Z@EY] ]02P,$% @ YFG] M4N Z<]6W P 0 X !D !X;"]W;W)K&ULM5?; M;MLX$/T50NA#"VPC45<[L W$E\6F2(N@Z>5AL0^,1-M$)=)+4G':KR])*;)$ MR6JV[;Y8(G7FS)SA>$C.CHQ_$7N,)7@L(&D&O*=*PXU[L%HA09S$S<[=\,6.ES G%MQR(LB@0_[K$.3O. M'>@\3;PGN[W4$^YB=D [?(?EQ\,M5R.W8@=:RCUC7_3@.IL[GHX(YSB5F@*IQP->X3S73"J.?VM2I_&I#=OO3^Q_ M&O%*S#T2>,7RSR23^[DS<4"&MZC,Y7MV_ O7@B+-E[) ])22%;4 MQBJ"@M#JB1[K1+0,%,^P@5\;^+9!>,8@J V"YWH(:X/PN1ZBVL!(=ROM)G%K M)-%BQMD1<(U6;/K%9-]8JWP1J@OE3G+UE2@[N;AA=/=:8EZ -;Z7X#6XIFJ$ MA02;1U6, @.UFN^8Q.#E&DM$XP)8P#JN:%&GZ\6X.7+UZ!%X!0\&'/ M2H%H)F:N5 %J-VY:![.L@O'/!!. MXS*O0 ;FN%LP'X];A^/V+LJ,4UV_*?L M+/U1PCU(O#55F*I[8-LM7U$&"16TC9C-!VU2:,V^>]J MB1 EHBD&*1-RL-E$$OI=8@OL@6W ?$0=3WU(\1M-1/&T43W_47((?-A?H MG78U[_]H+["U;<)?;3 U0V=![+_< &82!=:*#(!BBV@S@(%):_6[,OV33/_W M-IJ:KR/:KL$!S-2NL/4 * EMT7T,G,;3,Z)/^QP:Z=VK*Q[F&J"^;YEJ@_5 .V@N MC8OO4$L#!!0 ( .9I_5)^P9F=X@, $&PO=V]R:W-H965T M [\;GW^-R;$SS9<_$DMP *O>09DU-O MJU3QWO=ELH669'P9![.>$,F\VL=?NQ&S" M=RJC#.X$DKL\)^+71\CX?NIA[W#AGFZVRESP9Y.";. !U&-Q)_3,KZ*D- E5. VR.#]&7=O-Z,RLB8(K?:E6%;I!5%D-A%\CX19K:.9@2V716N!*3.=]:"$ODLU3LV^ M<+9YIT#D: $KA=ZA.6?/(!1=98#^X@K0)T@W(!%A*?I.A"!,272U $5H)J\U MX/%A@:[>7*,WR$=R2X1>2QEZ9%3)M_JB'G^E6::[2$Y\I1F;O'[BV'TLV84G MV'W8;7H(#]ZB, B#%OB\&_X A89C \>C%OBB&[Z I(?Z^&3VFS/(=\"7W?#/ M.Z;A@87C8[BOBUQ5.JPJ'=IX_9.[T?6]95*)G78&A7Y\T0O0K8)<_MT1OE^% M[]OP@Q/A;UX**HAUBP($Y2G2MF<[2-9]HYM!"9)2MD$I^=76$,ON+#@(6I!' MA <5X4%GJ&:C,]/HV[+1_S&"1R7SCC11E2:ZA.QQ%3X^8Q?6YWEAU5=!ROM.SE\+KM$2P31#:!>1$]SP918#X3_[F%V;!B-NQDIL?T"5 A: *6 M0LJSC AIVJ.DT\JF##IJL(EP+QZV5VG&EZ@U#FJS#BY< M[;G+T"PW[J@V;KQ(\ 7J/7=1FP7O#WOQ"3:UV>&PFPW1I>;K0Z&[15FX8-$1 MB6-5G.._OO"8<&V?N-O9[@1/ %*)UH+G2#KZ]0X$9$1!:@IN>S;YK:7;S/3& MY1PWGZ:@AT]PK9T3=UNG\_-SK1+77HDO8I:X=DO<;9<'YO "(J'R?[?KTL5O MMNL(]X+HA*2U6>)NMSR2]'5'PK7SX=%%)*T]#X\O+.GX/Y(.XEX-/V_=?G8/Q4XD6WV&,IZP/_RA^B-7<*GB MIN#]W]3V&T<*<\3\2L2&,HDR6&M0T!OJ!UF4I[9RHGAA3QDKKO29Q0ZW^J0+ MPBS0]]=0I(KN P 8@X !D M !X;"]W;W)K&ULM5=1;]LV$/XKA-$!"=!:HF39 M2> 8:.($\[ "0=)L#\,>:.EL$95(CZ3L9-B/[Y%29#M29*/I7FR1O._NOKOC MD1QOI/JF4P!#GO),Z,M>:LSJPO-TG$+.=%^N0.#*0JJ<&1RJI:=7"ECB0'GF M!;X_]'+&16\R=G-W:C*6AYFXY\O4V EO,EZQ M)3R >5S=*1QYM9:$YR TEX(H6%SV/M.+6QI9@)/X@\-&[WP32V4NY3<[F"67 M/=]Z!!G$QJI@^+>&:\@RJPG]^*=2VJMM6N#N]XOV6T<>R@=&#G(ORGSU5@=@!H)YV M0% !@M> P1N L *$QUH85(#!L1:B"A ="QA6@*&+?1DL%^DI,VPR5G)#E)5& M;?;#I+,9"9BF0/YRIY DY,I&,8S?4H^D<>'*3GY<$H^ M$"[(UU06FHE$CSV#1BW4BRL#5Z6!X T#(?DBA4DUN1$))"WX:3=^V('WD&S- M.'AA?!5T*ORM$'T2^A])X >TQ9_KX^%^&YWW6;]YG_7;;O@48H33-OA>+,.Z M>D*G+WQ#'Y8-N5:0<$/^^AW7R,Q KO_NT#RH-0^]TZ@E'? M]W]IVU#=N)#VSUIQTP/VPOZP%7=S !T%;50';=2I: H+4%C\>^EMB]NH MF;'1X(R^RNM14K=-J< _I[0]_6<;-L]V Q?L( MGC==IPU^!X3VZ%%_>SS[G01GMHT(EI%[6(,H@#R 6O,8R,GL_N&4_&=/;O*, MI#3V=$J)294LEJD=1+@ZQ<+4ALS\-MKJ#[JW% M-__]EBD MX?^2M2^.J;T:_%#NMH.@6.FFMW,% MSD$MW6-%DU@6PI3WF7JV?A!]=L^ 5_-7].*:MLQ/Z<5-^=S9JB]?7YBT)1>: M9+! 4WY_A!ZK\D%3#HQ$KH55%D-I$TS9I4]2TV\.T!P=NP*JQ M,]LDV;_?M2&(JDG6A^T%?.U[SCWW&)MT)]6SK@ ,V==77@[2VR^ M2_C&8*<'8V([64GY;(-/Q=0+K"#@D!O+0/&UA1EP;HE0QJ^.T^M+6N!P?&#_ MX'K'7E94PTSR[ZPPU=2[\4@!:]IP\R!W'Z'K9V+YY)=EQMX)&^TD74' M1@4U$^V;[CL?!H!P? (0=8#HK8"X \2NT5:9:VM.#X^"@-KA0# M@) &8\U*00T4A&I205$ZIJ?EG%Q>7)$+P@1YK&2CJ2ATZAO4;"O[>:?OOM47 MG=#WN1$C$@?O2!1$X1'X[#Q\#CG"0PE5^H*IG0A,,:<<'H&KU1[?W3!D9NW!%>28,7 M@AM6>&6#L@FXOI;2' )[*_0_@>P/4$L#!!0 ( .9I_5*ZABW5]@( .,) M 9 >&PO=V]R:W-H965TR"'UG;F/<_, MBV<\W IYIU8 FCQD/%>6DN@J05E MW M]/_8RRG)G/+1KEW(\%(7F+(=+2521950^G@(7VY$3.$\+5VRYTF;!&P_7 M= G7H&_6EQ)G7LV2L@QRQ41.)"Q&SDEP/ DB [ 6MPRVJC$F)I2Y$'=F,<\Z^&GL;M#8F7 M5%N=EEN%>[;Z7N0NB?PC$OIAL ,^:8>?08+PP,+]EW /@ZXC#^O(0\O7V<,W MA0UP$K8P13539)FB=W-X1$Z4 DP?S5,R973..-,,U%-N4X)?[A4DA90L7UJK M'R*7]<(I54R1WU/<@%QHR-2?%O(GINI[9YX6*W=K'[$2W(7R-NA#G1H%HBCVO:^#,*TZO=Z[5& M;<(\PIHSUWBPE):%.7J[-"II K^1\L!WHU>Z[+#JN<%N8?JUB_V/"]-]5YA! M33OXC,($_G-5]/^/-!7/BZQ'O?B-.+OLPCC:=W""1OT.6CV=B1P>L2/(.^SY MBR)/%8I5RA:TI>*Y3 ;AI]3JN?H&47M]HVIE-TO, .X+MJ'<-+&=>D5OJU?L M=@?-Y[5T)21N0.+XE6Q>HP.;Z\^,RB5^.(3# D&^V\/Z)\L;13G18FV;\EQH M;/%VN,);&$AC@.\7 K_ :F+Z?'VO&_\#4$L#!!0 ( .9I_5+BP0Y%U@( M *8) 9 >&PO=V]R:W-H965THG2BO1IM,VT0V!V!ZF/9CVMK&([Z*E2LS 7AA031U M \_KNA03YHPB.W8I1A'/54H87 HD!A#RM=#QW>V U=DE2@SX(ZB#*_@ M&M1-=BETSZU8%H0"DX0S)& Y=,[]LZGO&8"-^$Y@+7?:R%BYY?S.=#XOAHYG M9@0IS)6AP/KO'B:0IH9)S^-W2>I4F@:XV]ZR?[3FM9E;+&'"TQ]DH9*ATW?0 M I8X3]457W^"TE#'\,UY*NTO6A>QG=!!\UPJ3DNPG@$EK/C'FS(1.P#-4P\( M2D#P%- ^ A+0/A:A78):+]6H5,"K'6W\&X3%V.%1Y'@:R1,M&8S#9M]B];Y M(LPLE&LE]%>B<6IT 3K+$GU 7[$0V!0-'<>@,$GEB1Z]N8[1\=$).D*$H1E) M4UU<&;E**QN\.R]5QH5*<$ E1#/.5"+1E"U@48./F_'=!KRK'5>V@ZWM<=!( M^"5G+11ZIRCP K]F/I/7P[TZ._^F/GVS^EXRPFH-A)8O/+@&I 0X178MG*(8 MY%R0S.[CGQ%;/GM%,Y[30ZG1%& M:$X;I=1KG/,5F)OEL3H*!)7H6._\!\!"GM25J9G1M\BZ#?+W MN#U+_/-"&085T^"=R^![CV>R]]\+\0)EOX#6'KUO0!;&W)U[AX)8 MV0M?HCG/F2J.GVJT>E2.Q>838>^Z1OGC!S+!8$29U@I9: MRFOU]'84Q:.@Z"B>V5OOEBM]A]IFHA]2($R _K[D7&T[1J!ZFHW^ %!+ P04 M " #F:?U2J36'C48" "D!0 &0 'AL+W=O[:'H@;;7%A&*5,FU MG?Y]EY2BJJGB]F+MDCO#F:67V4&;1UL ('LJI;*SH$"L+L+0K@HHN1WH"A3M M;+0I.5)JMJ&M#/"U!Y4R3*)H')9>%6; MT"V&>57P+=X /U8VA+&Q9UJ($9856S,!F%ES&%_.1J_<%7P0< M;"=FSLE2ZT>7?%C/@L@) @DK= R.DX"M=A9UV8!)02E4 M_>5/31\Z@'CX"B!I ,G_ M(&D'JCM3)O:\&1YYG1!V9<-;&YP/?&H\F-4.X6 M[]#0KB [!3L].6,G3"AV7^B= MY6IMLQ!)@B,*5\UQ5_5QR2O'?=RI 4NC-RR)DK@'/C\.7\"*X+&'1W_"0S+> MND]:]XGG2X^[_W:YM&CH'_7]"&?:<_@*YV9L"!<-SHG&U&]"G:"N_%@M-=*0^K"@9Q2,*Z#]C=;XG+A);1_F M_!=02P,$% @ YFG]4HT"K9S? @ -P@ !D !X;"]W;W)K&ULC9;?3]LP$,?_%2O: TB#.#_;H+82M$+;!%)%87N8]F 2 MM[%([,QV*/SW.SLAZU2WW4MC._>]S]W%/G>R%?)%E91J]%977$V]4NOFRO=5 M7M*:J$O14 YOUD+61,-4;GS52$H**ZHK/\0X]6O"N#>;V+6EG$U$JRO&Z5(B MU=8UD>\WM!+;J1=X'PL/;%-JL^#/)@W9T!753\U2PLP?O!2LIEPQP9&DZZEW M'5S- RNP%M\9W:J=,3*I/ OQ8B9?BZF'342THKDV+@@\7NF<5I7Q!''\[IUZ M ],(=\:NTJ'LQ1% SWCW)6U^('4$0'Q"$O2#\7T'4"R*;:!>936M!-)E-I-@B M::S!FQG8VE@U9,.X^8PK+>$M YV>W5&H@4(7Z+;5K:3HGG%6MS6RZVA)WN&3 M:85:7E")KE=S]"@:EJ-Q'**S!=6$5>H264*=O/ZV>E)>S)7T>HT4"-+#4^ M0#6YPQ$QAQ!@KB)V^M3JS4%]G45C'$W\5P"] "Y@YQ[8NL%.RPQ.E\$) M#/;/98J#; #V/&POFP-T^IT/2C=^3P-&-5W=VUGF\N-FUGU? !0F]I%<'D%YV.C@Q@!AY?!CY/FZ,^OH@ZCW,&'%_ MF[@E^IUCXG5TJ6M3Y=S#NN*C0:9D6_B(.(/EISD+GJ@8DC$5?*(Y>&4TYV+E MS#TP3)50.C"VXVS +EC*9P=WW0R:L>;)N52ZBNTBN.])O7P'6,] (!>B$=@C MSC :%-08IN6MG52+*^,+**C'#ZO"*IQINNKVKDCK4-ULD(G2*=--F"Y9FT8# MP3*0H_EL#G>CBA! 8U1N!RFG,R5II6'M40\L[90)<0]/ZO=LBWN9;52N W63 MS= *JH>.QDV ?Y/-<6_21J_B#0K^I,RGA=V.K.;0H^Q.LXPOJ_DR:P1@[%V< MG1:%6'T4?"9SYC9_<,#1@*[]@KG2_-E&@U:96@/3)'ABVO#IIN6GIL4#6YIU M.RTS7'/O!#7_W3S/F&2:BDW1MO>/.C?7K]]A%7IV" MR/@41)Y$3_:/7V24'+_&^O!V="+#^I"Q<9+9.L"!Q8%(?Y9KO-IXA^SO ZRF^SH$VRG>B=A.\5P#XL\;>"2) MO]I8'/# JH#U#L3WQX&>\OM$$505TX8]P3B2)!@"O>COT3A&LA/#QU\?["F) MHB3Q(X#Y%401AL#3B".8 M" (5%4O0=WWD?A^CT5MO_C&_T"4$L#!!0 ( M .9I_5*7BKL

-8?20$3;8T.P6BP^0"X99K>]9!:G6.Z]M+AA)_BL!G9C!"_L6@A7E8-H.,P&%9>J=W%^*&MF!N&.=B)W4BLXZ \\2?%B M?YWWNVPKK5S(4KH?XUZS78H>JZ22E?PIBG%OV&-VK5_^TD;^U,KQ\I$O;'/$\<4#!Y!Q+QM"@4MIK&NN:,KGP+@554&X71R-* M#ZCL6FYLCRE>B7'O6F^%83.^$OZAX%]NB]T#.B +PF7.))PPMT7#2,FC"J&L M*!AL65W* C@*=L5+KG+! L@(@8Q."/D]"B!C!#*FA?Q;\;J0;@?Y'C> 3!#( MY(20K4BF"&1Z2L@X@,P0R.R4D$D ^0F!_$0+><6MM$POV9RI23)M4IHF>5G"'#?DP?XR(!7)9EOJE(83;V;41 MT :RJ;96M! Q>XR(]7%56ZF$M3YZ"ZEV%X1PF#5&Q-KXJG7Q(LN2<55 )71< MK3P!NX0(MM\RIHT1L3>F6JWZD"Y7;"(6K68.,\:(6!G[;_:1O[8K&R:($;$A M)L+(+?>=C1 IPFP0$=O@ADO#GGA9"W8GN*U-XZH6'F:'B-@.4V!J!POM69!W M+:I*NB9 S2<)*9SWO%"Y;$-B4HB(I8#F2JVL/<+<$!&[89^&L-^@WUT*^WO( MA0DA(A;"L7QD#QIB8FJ(B-70E99TQA(S0T3>H^C.3SIBB:DB(E8%DJ9XTA 3 MLT=$;(_.5*7KG<>84&)BH> Y2SA&%&-BB:G%TDI:.J.(F28F-DV0*72RH4-7 MQ(+9.;D3"Q-*_$%"Z;.Y,%NXQ[(WQTQ$F)?&F%]B8K_\PIR(I3#0V!S%Q/P2 M$_LEP)26KU9&K'8:A+0"SH68F&%B8L.@F.W!7LPP,?7XU;&D BHKG HQ,MF@BDF(59,9^[39W[\,@?MA)B88A)BQ1S!O(0^0[^098B)J28Y MP0"7QRP@"VJ/PR68=9(3C75Y5.C:A)CHE FQA1#,F=&;$!.S4$(]['4<\YM; MM^:?, LEQ!9",5O->X)9*"&V$-J!F+2BB5DH(;90=P?B3A2/NL[786J>8!9* M3M+/N3)8XI9*"6V4#?F6\2[=6I--0C7E6 6RH@M] X3ZJ,\Q"&;&%PDG#G<9EV1KARC#Y9,3R"0<%^Q U?P$OV67EUYNTAE8S3#X9 ML7R.3"D>XAEB8O+)B.6S'\:$0')CFJAVOW%TV1BQ>=X8FXVW)DCN:V>(B9DG MHS;/ ?.F=O"ZV9U?OEM7>^I9B(F9)VO,,V@NMA?GA5A"2ECPQ/CB7U!+ P04 " #F:?U2%MUK M%"8" !C* &@ 'AL+U]R96QS+W=O )6ZKT"+,.H)4\0&K%!YB"2.7&X!N^\H#))C]: GR&=DE2U?_Z-/ M5MF/+V7?#KON6+>[4YU]'O;'NFRVPW#ZE5)=;F\W)Z M+65H9J]MORG#LDF?^^OIFBZ'?'>>W,R>WY9-__R6FS1UD$"03!^D$*33!QD$ MV?1!#D$^?5! 4$P?M("@Q?1!]Q!T/WW0 P0]3!^4YRCCG"!IA#6!UAFYS@1> M9P0[$XB=D>Q,8'9&M#.!VAG9S@1N9X0[$\B=D>Y,8'=&O#.!WH)Z"X'>@GH+ M@=XR>MDFT%M0;R'06U!O(=!;4&\AT%M0;R'06U!O(=!;4&\AT%M0;R'06U%O M)=!;46\ET%M1;R706T>;)01Z*^JM!'HKZJT$>BOJK01Z*^JM!'HKZJT$>BOJ MK01Z&^IM!'H;ZFT$>AOJ;01Z&^IM!'K;:+.;0&]#O8U ;T.]C4!O0[V-0&]# MO8U ;T.]C4!O1[V=0&]'O9U ;T>]G4!O1[V=0&]'O9U ;Q]]K"30VU%O)]#; M46\GT-M1;R?0VU%O)] [4.\@T#M0[R#0.U#O(- [4.\@T#M0[R#0.U#O(- [ M1C^;$.@=J'<0Z!VH=_RDWG7XVI=Z[?E>X_-_DNKA?&^Y/OZR_#Z)$BXN.*?; MBOKT%U!+ P04 " #F:?U2X>Q>$?0! "B)P $P %M#;VYT96YT7U1Y M<&5S72YX;6S-VLM.PS 0!=!?J;)%C>LG#]%N@"VPX =,,J51D]BR72A_CY," M$@@J4)&XFT:M[;D3CW16/;][]A0GVZ[MX[Q8I>3/&(O5BCH;2^>ISRM+%SJ; M\M?PP+RMUO:!F)C-#*M/C4=Y0L"\3AI7O U[/W3Q2"$U- MDUL;TK7M\BZV;5E,SRW%VJ39>/E-$'LG5<$:6N+7=%C_8G MIWS#M/OD!^>/9?8%YIVWP?F8)Q;H]W%O(QE.3WTN1"$U^U_Q/3&7/OC]:)AV M3?4/L_/U/KFP'N<1V?@X_(X_SOB]_B_[$"!]2) ^%$@?&J0/ ]+',4@?)R!] MG(+TP6^?6?QP_ M/LO.-OU;/AO_FK=X 5!+ 0(4 Q0 ( .9I_5('04UB@0 +$ 0 M " 0 !D;V-0&UL4$L! A0#% @ YFG] M4N)6S"_O *P( !$ ( !KP &1O8U!R;W!S+V-O&UL4$L! A0#% @ YFG]4IE&PO=V]R:W-H965T&UL4$L! A0#% @ YFG]4OMK%IS\!0 7!< !@ ("! MD@T 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ MYFG]4O<;>;@% P %PD !@ ("!\1P 'AL+W=O&PO=V]R M:W-H965T&UL4$L! A0#% @ YFG]4@9TL2+Y!0 &0X M !@ ("!O3 'AL+W=OPV !X M;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ YFG] M4GX[,Z$Y!0 H0T !D ("!MDX 'AL+W=O&PO=V]R:W-H965TLUY@0 '8* 9 " @>1: !X;"]W;W)K M&UL4$L! A0#% @ YFG]4FFBIH7Q! \0H M !D ("! 6 'AL+W=O&PO=V]R:W-H965T@8 ) / 9 " @1%P !X;"]W;W)K&UL4$L! A0#% @ YFG]4A1RL;YK$P M$0 !D M ("!PG8 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ YFG]4JNN(KGF!P !Q8 !D ("!YY8 'AL+W=O M&PO=V]R:W-H965TVB M !X;"]W;W)K&UL4$L! A0#% @ YFG]4HI) M'0(M'P 3&0 !D ("!$J8 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ YFG]4A@G[O<;! H0H !D M ("!D&PO M=V]R:W-H965T&UL4$L! A0#% @ YFG]4L$#C-BS!0 I@T !D ("! M2]H 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ YFG]4I(EU3BO @ UP4 !D ("!&.D 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ YFG]4EZ1L:$@ M @ CP0 !D ("!W?$ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ YFG]4L-\6<,2! L@T !D M ("!/_\ 'AL+W=OIS-TH# #Q"@ &0 @(&( P$ >&PO=V]R M:W-H965T&UL M4$L! A0#% @ YFG]4G5>C812 P MPP !D ("!_0L! M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ MYFG]4O!%+QS( P >P\ !D ("!IQ0! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ YFG]4HM::$RD! %1, !D M ("!_RL! 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ YFG]4BAR#!&7 @ (@8 !D ("!0#@! 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ YFG] M4AQ('L1> @ (@8 !D ("!Q4(! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ YFG]4L>0I(KN P 8@X !D M ("!WUT! 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ YFG]4N+!#D76 @ I@D !D ("!OF&PO=V]R:W-H965T&UL4$L! A0#% @ YFG]4M_U M'?PU P \!, T ( !7G ! 'AL+W-T>6QE&PO=V]R:V)O;VLN>&UL4$L! A0#% @ YFG]4A;=:Q0F M @ 8R@ !H ( !-WH! 'AL+U]R96QS+W=O XML 80 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 81 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 82 FilingSummary.xml IDEA: XBRL DOCUMENT 3.21.2 html 317 381 1 false 61 0 false 6 false false R1.htm 0001001 - Document - Cover Page Sheet http://perficient.com/role/CoverPage Cover Page Cover 1 false false R2.htm 1001002 - Statement - Condensed Consolidated Balance Sheets Sheet http://perficient.com/role/CondensedConsolidatedBalanceSheets Condensed Consolidated Balance Sheets Statements 2 false false R3.htm 1002003 - Statement - Condensed Consolidated Balance Sheets (Parenthetical) Sheet http://perficient.com/role/CondensedConsolidatedBalanceSheetsParenthetical Condensed Consolidated Balance Sheets (Parenthetical) Statements 3 false false R4.htm 1003004 - Statement - Unaudited Condensed Consolidated Statements of Operations Sheet http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations Unaudited Condensed Consolidated Statements of Operations Statements 4 false false R5.htm 1004005 - Statement - Unaudited Condensed Consolidated Statements of Comprehensive Income Sheet http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncome Unaudited Condensed Consolidated Statements of Comprehensive Income Statements 5 false false R6.htm 1005006 - Statement - Unaudited Condensed Consolidated Statement of Stockholders' Equity Sheet http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity Unaudited Condensed Consolidated Statement of Stockholders' Equity Statements 6 false false R7.htm 1006007 - Statement - Unaudited Condensed Consolidated Statements of Cash Flows Sheet http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows Unaudited Condensed Consolidated Statements of Cash Flows Statements 7 false false R8.htm 2101101 - Disclosure - Basis of Presentation Sheet http://perficient.com/role/BasisofPresentation Basis of Presentation Notes 8 false false R9.htm 2102102 - Disclosure - Summary of Significant Accounting Policies Sheet http://perficient.com/role/SummaryofSignificantAccountingPolicies Summary of Significant Accounting Policies Notes 9 false false R10.htm 2104103 - Disclosure - Recent Accounting Pronouncements Sheet http://perficient.com/role/RecentAccountingPronouncements Recent Accounting Pronouncements Notes 10 false false R11.htm 2105104 - Disclosure - Revenue Sheet http://perficient.com/role/Revenue Revenue Notes 11 false false R12.htm 2111105 - Disclosure - Stock-Based Compensation Sheet http://perficient.com/role/StockBasedCompensation Stock-Based Compensation Notes 12 false false R13.htm 2115106 - Disclosure - Net Income per Share Sheet http://perficient.com/role/NetIncomeperShare Net Income per Share Notes 13 false false R14.htm 2120107 - Disclosure - Balance Sheet Components Sheet http://perficient.com/role/BalanceSheetComponents Balance Sheet Components Notes 14 false false R15.htm 2126108 - Disclosure - Allowance for Credit Losses Sheet http://perficient.com/role/AllowanceforCreditLosses Allowance for Credit Losses Notes 15 false false R16.htm 2129109 - Disclosure - Business Combinations Sheet http://perficient.com/role/BusinessCombinations Business Combinations Notes 16 false false R17.htm 2136110 - Disclosure - Goodwill and Intangible Assets Sheet http://perficient.com/role/GoodwillandIntangibleAssets Goodwill and Intangible Assets Notes 17 false false R18.htm 2142111 - Disclosure - Long-term Debt Sheet http://perficient.com/role/LongtermDebt Long-term Debt Notes 18 false false R19.htm 2149112 - Disclosure - Income Taxes Sheet http://perficient.com/role/IncomeTaxes Income Taxes Notes 19 false false R20.htm 2151113 - Disclosure - Derivatives Sheet http://perficient.com/role/Derivatives Derivatives Notes 20 false false R21.htm 2154114 - Disclosure - Fair Value Measurements Sheet http://perficient.com/role/FairValueMeasurements Fair Value Measurements Notes 21 false false R22.htm 2156115 - Disclosure - Leases Sheet http://perficient.com/role/Leases Leases Notes 22 false false R23.htm 2161116 - Disclosure - Commitments and Contingencies Sheet http://perficient.com/role/CommitmentsandContingencies Commitments and Contingencies Notes 23 false false R24.htm 2203201 - Disclosure - Summary of Significant Accounting Policies (Policies) Sheet http://perficient.com/role/SummaryofSignificantAccountingPoliciesPolicies Summary of Significant Accounting Policies (Policies) Policies http://perficient.com/role/SummaryofSignificantAccountingPolicies 24 false false R25.htm 2306301 - Disclosure - Revenue (Tables) Sheet http://perficient.com/role/RevenueTables Revenue (Tables) Tables http://perficient.com/role/Revenue 25 false false R26.htm 2312302 - Disclosure - Stock-Based Compensation (Tables) Sheet http://perficient.com/role/StockBasedCompensationTables Stock-Based Compensation (Tables) Tables http://perficient.com/role/StockBasedCompensation 26 false false R27.htm 2316303 - Disclosure - Net Income per Share (Tables) Sheet http://perficient.com/role/NetIncomeperShareTables Net Income per Share (Tables) Tables http://perficient.com/role/NetIncomeperShare 27 false false R28.htm 2321304 - Disclosure - Balance Sheet Components (Tables) Sheet http://perficient.com/role/BalanceSheetComponentsTables Balance Sheet Components (Tables) Tables http://perficient.com/role/BalanceSheetComponents 28 false false R29.htm 2327305 - Disclosure - Allowance for Credit Losses (Tables) Sheet http://perficient.com/role/AllowanceforCreditLossesTables Allowance for Credit Losses (Tables) Tables http://perficient.com/role/AllowanceforCreditLosses 29 false false R30.htm 2330306 - Disclosure - Business Combinations (Tables) Sheet http://perficient.com/role/BusinessCombinationsTables Business Combinations (Tables) Tables http://perficient.com/role/BusinessCombinations 30 false false R31.htm 2337307 - Disclosure - Goodwill and Intangible Assets (Tables) Sheet http://perficient.com/role/GoodwillandIntangibleAssetsTables Goodwill and Intangible Assets (Tables) Tables http://perficient.com/role/GoodwillandIntangibleAssets 31 false false R32.htm 2343308 - Disclosure - Long-term Debt (Tables) Sheet http://perficient.com/role/LongtermDebtTables Long-term Debt (Tables) Tables http://perficient.com/role/LongtermDebt 32 false false R33.htm 2352309 - Disclosure - Derivatives (Tables) Sheet http://perficient.com/role/DerivativesTables Derivatives (Tables) Tables http://perficient.com/role/Derivatives 33 false false R34.htm 2357310 - Disclosure - Leases (Tables) Sheet http://perficient.com/role/LeasesTables Leases (Tables) Tables http://perficient.com/role/Leases 34 false false R35.htm 2407401 - Disclosure - Revenue - Services Revenue (Details) Sheet http://perficient.com/role/RevenueServicesRevenueDetails Revenue - Services Revenue (Details) Details 35 false false R36.htm 2408402 - Disclosure - Revenue - Deferred Revenue (Details) Sheet http://perficient.com/role/RevenueDeferredRevenueDetails Revenue - Deferred Revenue (Details) Details 36 false false R37.htm 2409403 - Disclosure - Revenue - Disaggregation of Revenue by Revenue Source and Pattern of Revenue Recognition (Details) Sheet http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails Revenue - Disaggregation of Revenue by Revenue Source and Pattern of Revenue Recognition (Details) Details 37 false false R38.htm 2410404 - Disclosure - Revenue - Disaggregation of Revenue by Geographic Area (Details) Sheet http://perficient.com/role/RevenueDisaggregationofRevenuebyGeographicAreaDetails Revenue - Disaggregation of Revenue by Geographic Area (Details) Details 38 false false R39.htm 2413405 - Disclosure - Stock-Based Compensation - Stock Award Plans (Details) Sheet http://perficient.com/role/StockBasedCompensationStockAwardPlansDetails Stock-Based Compensation - Stock Award Plans (Details) Details 39 false false R40.htm 2414406 - Disclosure - Stock-Based Compensation - Restricted Stock Activity (Details) Sheet http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails Stock-Based Compensation - Restricted Stock Activity (Details) Details 40 false false R41.htm 2417407 - Disclosure - Net Income per Share - Basic and Diluted (Details) Sheet http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails Net Income per Share - Basic and Diluted (Details) Details 41 false false R42.htm 2418408 - Disclosure - Net Income per Share - Anti-dilutive Securities (Details) Sheet http://perficient.com/role/NetIncomeperShareAntidilutiveSecuritiesDetails Net Income per Share - Anti-dilutive Securities (Details) Details 42 false false R43.htm 2419409 - Disclosure - Net Income per Share - Additional Information (Details) Sheet http://perficient.com/role/NetIncomeperShareAdditionalInformationDetails Net Income per Share - Additional Information (Details) Details 43 false false R44.htm 2422410 - Disclosure - Balance Sheet Components - Accounts Receivable (Details) Sheet http://perficient.com/role/BalanceSheetComponentsAccountsReceivableDetails Balance Sheet Components - Accounts Receivable (Details) Details 44 false false R45.htm 2423411 - Disclosure - Balance Sheet Components - Property and Equipment) (Details) Sheet http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails Balance Sheet Components - Property and Equipment) (Details) Details 45 false false R46.htm 2424412 - Disclosure - Balance Sheet Components - Other Current Liabilities (Details) Sheet http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails Balance Sheet Components - Other Current Liabilities (Details) Details 46 false false R47.htm 2425413 - Disclosure - Balance Sheet Components - Other Non-Current Liabilities (Details) Sheet http://perficient.com/role/BalanceSheetComponentsOtherNonCurrentLiabilitiesDetails Balance Sheet Components - Other Non-Current Liabilities (Details) Details 47 false false R48.htm 2428414 - Disclosure - Allowance for Credit Losses (Details) Sheet http://perficient.com/role/AllowanceforCreditLossesDetails Allowance for Credit Losses (Details) Details http://perficient.com/role/AllowanceforCreditLossesTables 48 false false R49.htm 2431415 - Disclosure - Business Combinations MedTouch (Details) Sheet http://perficient.com/role/BusinessCombinationsMedTouchDetails Business Combinations MedTouch (Details) Details 49 false false R50.htm 2432416 - Disclosure - Business Combinations Brainjocks (Details) Sheet http://perficient.com/role/BusinessCombinationsBrainjocksDetails Business Combinations Brainjocks (Details) Details 50 false false R51.htm 2433417 - Disclosure - Business Combinations PSL (Details) Sheet http://perficient.com/role/BusinessCombinationsPSLDetails Business Combinations PSL (Details) Details http://perficient.com/role/BusinessCombinationsTables 51 false false R52.htm 2434418 - Disclosure - Business Combinations Intangible Assets Acquired (Details) Sheet http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails Business Combinations Intangible Assets Acquired (Details) Details 52 false false R53.htm 2435419 - Disclosure - Business Combinations Pro Forma Results of Operations (Details) Sheet http://perficient.com/role/BusinessCombinationsProFormaResultsofOperationsDetails Business Combinations Pro Forma Results of Operations (Details) Details 53 false false R54.htm 2438420 - Disclosure - Goodwill and Intangible Assets - Goodwill (Details) Sheet http://perficient.com/role/GoodwillandIntangibleAssetsGoodwillDetails Goodwill and Intangible Assets - Goodwill (Details) Details 54 false false R55.htm 2439421 - Disclosure - Goodwill and Intangible Assets - Intangible Assets (Details) Sheet http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails Goodwill and Intangible Assets - Intangible Assets (Details) Details 55 false false R56.htm 2440422 - Disclosure - Goodwill and Intangible Assets - Estimated Useful Lives (Details) Sheet http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedUsefulLivesDetails Goodwill and Intangible Assets - Estimated Useful Lives (Details) Details 56 false false R57.htm 2441423 - Disclosure - Goodwill and Intangible Assets - Estimated Amortization Expense (Details) Sheet http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedAmortizationExpenseDetails Goodwill and Intangible Assets - Estimated Amortization Expense (Details) Details 57 false false R58.htm 2444424 - Disclosure - Long-term Debt - Revolving Credit Facility (Details) Sheet http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails Long-term Debt - Revolving Credit Facility (Details) Details 58 false false R59.htm 2445425 - Disclosure - Long-term Debt - Convertible Senior Notes (Additional Notes) (Details) Notes http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails Long-term Debt - Convertible Senior Notes (Additional Notes) (Details) Details 59 false false R60.htm 2446426 - Disclosure - Long-term Debt - Liability and Equity Component of Note (Details) Sheet http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails Long-term Debt - Liability and Equity Component of Note (Details) Details 60 false false R61.htm 2447427 - Disclosure - Long-term Debt - Interest Expense on Note (Details) Sheet http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails Long-term Debt - Interest Expense on Note (Details) Details 61 false false R62.htm 2448428 - Disclosure - Long-term Debt - Convertible Note Hedges and Warrants (Details) Sheet http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails Long-term Debt - Convertible Note Hedges and Warrants (Details) Details 62 false false R63.htm 2450429 - Disclosure - Income Taxes (Details) Sheet http://perficient.com/role/IncomeTaxesDetails Income Taxes (Details) Details http://perficient.com/role/IncomeTaxes 63 false false R64.htm 2453430 - Disclosure - Derivatives - Notional Amounts (Details) Sheet http://perficient.com/role/DerivativesNotionalAmountsDetails Derivatives - Notional Amounts (Details) Details 64 false false R65.htm 2455431 - Disclosure - Fair Value Measurements (Details) Sheet http://perficient.com/role/FairValueMeasurementsDetails Fair Value Measurements (Details) Details http://perficient.com/role/FairValueMeasurements 65 false false R66.htm 2458432 - Disclosure - Leases - Narrative (Details) Sheet http://perficient.com/role/LeasesNarrativeDetails Leases - Narrative (Details) Details 66 false false R67.htm 2459433 - Disclosure - Leases - Lease Liabilities (Details) Sheet http://perficient.com/role/LeasesLeaseLiabilitiesDetails Leases - Lease Liabilities (Details) Details 67 false false R68.htm 2460434 - Disclosure - Leases - Future Minimum Lease Payments under ASC Topic 842 (Details) Sheet http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details Leases - Future Minimum Lease Payments under ASC Topic 842 (Details) Details 68 false false All Reports Book All Reports prft-20210630.htm prft-20210630.xsd prft-20210630_cal.xml prft-20210630_def.xml prft-20210630_lab.xml prft-20210630_pre.xml prftq22021_exhibit311.htm prftq22021_exhibit312.htm prftq22021_exhibit321.htm http://fasb.org/us-gaap/2021-01-31 http://xbrl.sec.gov/country/2021 http://xbrl.sec.gov/dei/2021 http://fasb.org/srt/2021-01-31 true true JSON 84 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "prft-20210630.htm": { "axisCustom": 0, "axisStandard": 25, "contextCount": 317, "dts": { "calculationLink": { "local": [ "prft-20210630_cal.xml" ] }, "definitionLink": { "local": [ "prft-20210630_def.xml" ] }, "inline": { "local": [ "prft-20210630.htm" ] }, "labelLink": { "local": [ "prft-20210630_lab.xml" ], "remote": [ "https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-doc-2021-01-31.xml" ] }, "presentationLink": { "local": [ "prft-20210630_pre.xml" ] }, "referenceLink": { "remote": [ "https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-ref-2021-01-31.xml" ] }, "schema": { "local": [ "prft-20210630.xsd" ], "remote": [ "https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd", "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", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "https://xbrl.fasb.org/srt/2021/elts/srt-types-2021-01-31.xsd", "https://xbrl.sec.gov/country/2021/country-2021.xsd", "https://xbrl.fasb.org/srt/2021/elts/srt-roles-2021-01-31.xsd", "https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd", "https://xbrl.fasb.org/us-gaap/2021/elts/us-types-2021-01-31.xsd", "https://xbrl.fasb.org/us-gaap/2021/elts/us-roles-2021-01-31.xsd", "https://xbrl.sec.gov/dei/2021/dei-2021.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd", "https://xbrl.sec.gov/dei/2021/dei-2021_ref.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://xbrl.fasb.org/us-gaap/2021/elts/us-parts-codification-2021-01-31.xsd", "https://xbrl.sec.gov/dei/2021/dei-2021_doc.xsd" ] } }, "elementCount": 518, "entityCount": 1, "hidden": { "http://xbrl.sec.gov/dei/2021": 5, "total": 5 }, "keyCustom": 44, "keyStandard": 337, "memberCustom": 20, "memberStandard": 39, "nsprefix": "prft", "nsuri": "http://perficient.com/20210630", "report": { "R1": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "document", "isDefault": "true", "longName": "0001001 - Document - Cover Page", "role": "http://perficient.com/role/CoverPage", "shortName": "Cover Page", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "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": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2104103 - Disclosure - Recent Accounting Pronouncements", "role": "http://perficient.com/role/RecentAccountingPronouncements", "shortName": "Recent Accounting Pronouncements", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2105104 - Disclosure - Revenue", "role": "http://perficient.com/role/Revenue", "shortName": "Revenue", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2111105 - Disclosure - Stock-Based Compensation", "role": "http://perficient.com/role/StockBasedCompensation", "shortName": "Stock-Based Compensation", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "prft:EarningsPerShareAndTreasureStockTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2115106 - Disclosure - Net Income per Share", "role": "http://perficient.com/role/NetIncomeperShare", "shortName": "Net Income per Share", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "prft:EarningsPerShareAndTreasureStockTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2120107 - Disclosure - Balance Sheet Components", "role": "http://perficient.com/role/BalanceSheetComponents", "shortName": "Balance Sheet Components", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForCreditLossesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2126108 - Disclosure - Allowance for Credit Losses", "role": "http://perficient.com/role/AllowanceforCreditLosses", "shortName": "Allowance for Credit Losses", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForCreditLossesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2129109 - Disclosure - Business Combinations", "role": "http://perficient.com/role/BusinessCombinations", "shortName": "Business Combinations", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2136110 - Disclosure - Goodwill and Intangible Assets", "role": "http://perficient.com/role/GoodwillandIntangibleAssets", "shortName": "Goodwill and Intangible Assets", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2142111 - Disclosure - Long-term Debt", "role": "http://perficient.com/role/LongtermDebt", "shortName": "Long-term Debt", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2149112 - Disclosure - Income Taxes", "role": "http://perficient.com/role/IncomeTaxes", "shortName": "Income Taxes", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1001002 - Statement - Condensed Consolidated Balance Sheets", "role": "http://perficient.com/role/CondensedConsolidatedBalanceSheets", "shortName": "Condensed Consolidated Balance Sheets", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:PrepaidExpenseCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2151113 - Disclosure - Derivatives", "role": "http://perficient.com/role/Derivatives", "shortName": "Derivatives", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2154114 - Disclosure - Fair Value Measurements", "role": "http://perficient.com/role/FairValueMeasurements", "shortName": "Fair Value Measurements", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2156115 - Disclosure - Leases", "role": "http://perficient.com/role/Leases", "shortName": "Leases", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2161116 - Disclosure - Commitments and Contingencies", "role": "http://perficient.com/role/CommitmentsandContingencies", "shortName": "Commitments and Contingencies", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:UseOfEstimates", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2203201 - Disclosure - Summary of Significant Accounting Policies (Policies)", "role": "http://perficient.com/role/SummaryofSignificantAccountingPoliciesPolicies", "shortName": "Summary of Significant Accounting Policies (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:UseOfEstimates", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2306301 - Disclosure - Revenue (Tables)", "role": "http://perficient.com/role/RevenueTables", "shortName": "Revenue (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2312302 - Disclosure - Stock-Based Compensation (Tables)", "role": "http://perficient.com/role/StockBasedCompensationTables", "shortName": "Stock-Based Compensation (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2316303 - Disclosure - Net Income per Share (Tables)", "role": "http://perficient.com/role/NetIncomeperShareTables", "shortName": "Net Income per Share (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2321304 - Disclosure - Balance Sheet Components (Tables)", "role": "http://perficient.com/role/BalanceSheetComponentsTables", "shortName": "Balance Sheet Components (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2327305 - Disclosure - Allowance for Credit Losses (Tables)", "role": "http://perficient.com/role/AllowanceforCreditLossesTables", "shortName": "Allowance for Credit Losses (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R3": { "firstAnchor": { "ancestors": [ "us-gaap:PreferredStockParOrStatedValuePerShare", "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1002003 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)", "role": "http://perficient.com/role/CondensedConsolidatedBalanceSheetsParenthetical", "shortName": "Condensed Consolidated Balance Sheets (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "us-gaap:PreferredStockParOrStatedValuePerShare", "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "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": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2330306 - Disclosure - Business Combinations (Tables)", "role": "http://perficient.com/role/BusinessCombinationsTables", "shortName": "Business Combinations (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2337307 - Disclosure - Goodwill and Intangible Assets (Tables)", "role": "http://perficient.com/role/GoodwillandIntangibleAssetsTables", "shortName": "Goodwill and Intangible Assets (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2343308 - Disclosure - Long-term Debt (Tables)", "role": "http://perficient.com/role/LongtermDebtTables", "shortName": "Long-term Debt (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2352309 - Disclosure - Derivatives (Tables)", "role": "http://perficient.com/role/DerivativesTables", "shortName": "Derivatives (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "prft:LiabilitiesLesseeTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2357310 - Disclosure - Leases (Tables)", "role": "http://perficient.com/role/LeasesTables", "shortName": "Leases (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "prft:LiabilitiesLesseeTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "span", "div", "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i0407aff977514b90a68b2fb4a7868df7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "prft:NoticePeriodToCancelOrTerminateContract", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2407401 - Disclosure - Revenue - Services Revenue (Details)", "role": "http://perficient.com/role/RevenueServicesRevenueDetails", "shortName": "Revenue - Services Revenue (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "us-gaap:RevenueFromContractWithCustomerPolicyTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i0407aff977514b90a68b2fb4a7868df7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "prft:NoticePeriodToCancelOrTerminateContract", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiability", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2408402 - Disclosure - Revenue - Deferred Revenue (Details)", "role": "http://perficient.com/role/RevenueDeferredRevenueDetails", "shortName": "Revenue - Deferred Revenue (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiability", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58c617508c564c05ac82d85d25cd4195_D20210401-20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2409403 - Disclosure - Revenue - Disaggregation of Revenue by Revenue Source and Pattern of Revenue Recognition (Details)", "role": "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails", "shortName": "Revenue - Disaggregation of Revenue by Revenue Source and Pattern of Revenue Recognition (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i3a7e78549fa04ead804d1c589bf3049a_D20210401-20210630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58c617508c564c05ac82d85d25cd4195_D20210401-20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2410404 - Disclosure - Revenue - Disaggregation of Revenue by Geographic Area (Details)", "role": "http://perficient.com/role/RevenueDisaggregationofRevenuebyGeographicAreaDetails", "shortName": "Revenue - Disaggregation of Revenue by Geographic Area (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "id7ee3c526f19465aa34364b0a7ea8125_D20210401-20210630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R39": { "firstAnchor": { "ancestors": [ "span", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2413405 - Disclosure - Stock-Based Compensation - Stock Award Plans (Details)", "role": "http://perficient.com/role/StockBasedCompensationStockAwardPlansDetails", "shortName": "Stock-Based Compensation - Stock Award Plans (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58c617508c564c05ac82d85d25cd4195_D20210401-20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1003004 - Statement - Unaudited Condensed Consolidated Statements of Operations", "role": "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations", "shortName": "Unaudited Condensed Consolidated Statements of Operations", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58c617508c564c05ac82d85d25cd4195_D20210401-20210630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:CostOfGoodsAndServicesSold", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "ia5614992a9a44b1a9c1fc8bfe45f45c9_I20201231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2414406 - Disclosure - Stock-Based Compensation - Restricted Stock Activity (Details)", "role": "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails", "shortName": "Stock-Based Compensation - Restricted Stock Activity (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "ia5614992a9a44b1a9c1fc8bfe45f45c9_I20201231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58c617508c564c05ac82d85d25cd4195_D20210401-20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2417407 - Disclosure - Net Income per Share - Basic and Diluted (Details)", "role": "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails", "shortName": "Net Income per Share - Basic and Diluted (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58c617508c564c05ac82d85d25cd4195_D20210401-20210630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:WeightedAverageNumberOfSharesIssuedBasic", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R42": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58c617508c564c05ac82d85d25cd4195_D20210401-20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2418408 - Disclosure - Net Income per Share - Anti-dilutive Securities (Details)", "role": "http://perficient.com/role/NetIncomeperShareAntidilutiveSecuritiesDetails", "shortName": "Net Income per Share - Anti-dilutive Securities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58c617508c564c05ac82d85d25cd4195_D20210401-20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:StockRepurchaseProgramAuthorizedAmount1", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2419409 - Disclosure - Net Income per Share - Additional Information (Details)", "role": "http://perficient.com/role/NetIncomeperShareAdditionalInformationDetails", "shortName": "Net Income per Share - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-5", "lang": "en-US", "name": "prft:StockRepurchaseProgram", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R44": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableNetCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2422410 - Disclosure - Balance Sheet Components - Accounts Receivable (Details)", "role": "http://perficient.com/role/BalanceSheetComponentsAccountsReceivableDetails", "shortName": "Balance Sheet Components - Accounts Receivable (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableNetCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R45": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2423411 - Disclosure - Balance Sheet Components - Property and Equipment) (Details)", "role": "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails", "shortName": "Balance Sheet Components - Property and Equipment) (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:OtherCurrentLiabilitiesTableTextBlock", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationContingentConsiderationLiabilityCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2424412 - Disclosure - Balance Sheet Components - Other Current Liabilities (Details)", "role": "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails", "shortName": "Balance Sheet Components - Other Current Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:OtherCurrentLiabilitiesTableTextBlock", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationContingentConsiderationLiabilityCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:OtherNoncurrentLiabilitiesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:DeferredTaxLiabilities", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2425413 - Disclosure - Balance Sheet Components - Other Non-Current Liabilities (Details)", "role": "http://perficient.com/role/BalanceSheetComponentsOtherNonCurrentLiabilitiesDetails", "shortName": "Balance Sheet Components - Other Non-Current Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:OtherNoncurrentLiabilitiesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i043d6f2df5a94286b37a77b8b919e416_I20201231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2428414 - Disclosure - Allowance for Credit Losses (Details)", "role": "http://perficient.com/role/AllowanceforCreditLossesDetails", "shortName": "Allowance for Credit Losses (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i043d6f2df5a94286b37a77b8b919e416_I20201231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R49": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58c617508c564c05ac82d85d25cd4195_D20210401-20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2431415 - Disclosure - Business Combinations MedTouch (Details)", "role": "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "shortName": "Business Combinations MedTouch (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i97c619de8a2048f0b47be98f47051825_D20200106-20200106", "decimals": null, "lang": "en-US", "name": "us-gaap:BusinessAcquisitionDateOfAcquisitionAgreement1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R5": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58c617508c564c05ac82d85d25cd4195_D20210401-20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1004005 - Statement - Unaudited Condensed Consolidated Statements of Comprehensive Income", "role": "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncome", "shortName": "Unaudited Condensed Consolidated Statements of Comprehensive Income", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58c617508c564c05ac82d85d25cd4195_D20210401-20210630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:ComprehensiveIncomeNetOfTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R50": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58c617508c564c05ac82d85d25cd4195_D20210401-20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2432416 - Disclosure - Business Combinations Brainjocks (Details)", "role": "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "shortName": "Business Combinations Brainjocks (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "ie840a99884114609b3271725ebd1dbf9_D20200323-20200323", "decimals": null, "lang": "en-US", "name": "us-gaap:BusinessAcquisitionDateOfAcquisitionAgreement1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R51": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58c617508c564c05ac82d85d25cd4195_D20210401-20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2433417 - Disclosure - Business Combinations PSL (Details)", "role": "http://perficient.com/role/BusinessCombinationsPSLDetails", "shortName": "Business Combinations PSL (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i68ff69cd3d0c4cb2a28fa1e76302a9fe_D20200617-20210331", "decimals": "-5", "lang": "en-US", "name": "prft:BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentTangibleAssets", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R52": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i1bc71c0b6281444a87dece55a386dfcf_D20210101-20210331", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2434418 - Disclosure - Business Combinations Intangible Assets Acquired (Details)", "role": "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails", "shortName": "Business Combinations Intangible Assets Acquired (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i1bc71c0b6281444a87dece55a386dfcf_D20210101-20210331", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R53": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:BusinessAcquisitionProFormaInformationTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i8484e71de60f4182bcf6e0d0f4d21e84_D20200101-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:BusinessAcquisitionsProFormaRevenue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2435419 - Disclosure - Business Combinations Pro Forma Results of Operations (Details)", "role": "http://perficient.com/role/BusinessCombinationsProFormaResultsofOperationsDetails", "shortName": "Business Combinations Pro Forma Results of Operations (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:BusinessAcquisitionProFormaInformationTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i8484e71de60f4182bcf6e0d0f4d21e84_D20200101-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:BusinessAcquisitionsProFormaRevenue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R54": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfGoodwillTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i043d6f2df5a94286b37a77b8b919e416_I20201231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2438420 - Disclosure - Goodwill and Intangible Assets - Goodwill (Details)", "role": "http://perficient.com/role/GoodwillandIntangibleAssetsGoodwillDetails", "shortName": "Goodwill and Intangible Assets - Goodwill (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfGoodwillTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:GoodwillPurchaseAccountingAdjustments", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R55": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2439421 - Disclosure - Goodwill and Intangible Assets - Intangible Assets (Details)", "role": "http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails", "shortName": "Goodwill and Intangible Assets - Intangible Assets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R56": { "firstAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "prft:ScheduleOfEstimatedUsefulLivesOfIdentifiableIntangibleAssetsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "ie133f211adaf45f3891ff6197c88f526_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetUsefulLife", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2440422 - Disclosure - Goodwill and Intangible Assets - Estimated Useful Lives (Details)", "role": "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedUsefulLivesDetails", "shortName": "Goodwill and Intangible Assets - Estimated Useful Lives (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "prft:ScheduleOfEstimatedUsefulLivesOfIdentifiableIntangibleAssetsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "ie133f211adaf45f3891ff6197c88f526_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetUsefulLife", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R57": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2441423 - Disclosure - Goodwill and Intangible Assets - Estimated Amortization Expense (Details)", "role": "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedAmortizationExpenseDetails", "shortName": "Goodwill and Intangible Assets - Estimated Amortization Expense (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R58": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:PaymentsOfFinancingCosts", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2444424 - Disclosure - Long-term Debt - Revolving Credit Facility (Details)", "role": "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails", "shortName": "Long-term Debt - Revolving Credit Facility (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i1509e043195640ed9ba1ead64c5dea70_D20210101-20210630", "decimals": "INF", "lang": "en-US", "name": "prft:RatioOfEBITDAPlusStockCompensationToInterestExpenseForThePreviousFourConsecutiveFiscalQuarters", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R59": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "2", "first": true, "lang": "en-US", "name": "us-gaap:SharePrice", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2445425 - Disclosure - Long-term Debt - Convertible Senior Notes (Additional Notes) (Details)", "role": "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails", "shortName": "Long-term Debt - Convertible Senior Notes (Additional Notes) (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "2", "first": true, "lang": "en-US", "name": "us-gaap:SharePrice", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "ia3366063c8bf4194a46d8f165afa328e_I20191231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquity", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1005006 - Statement - Unaudited Condensed Consolidated Statement of Stockholders' Equity", "role": "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity", "shortName": "Unaudited Condensed Consolidated Statement of Stockholders' Equity", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "ia3366063c8bf4194a46d8f165afa328e_I20191231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquity", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R60": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LongTermDebt", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2446426 - Disclosure - Long-term Debt - Liability and Equity Component of Note (Details)", "role": "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails", "shortName": "Long-term Debt - Liability and Equity Component of Note (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i852b92185a8a4898ad52874bd26dd9e3_I20210630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:DebtInstrumentUnamortizedDiscountPremiumNet", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R61": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58046f9fe4944034ba36c5bfe6f85d80_D20210401-20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:InterestExpenseDebtExcludingAmortization", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2447427 - Disclosure - Long-term Debt - Interest Expense on Note (Details)", "role": "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails", "shortName": "Long-term Debt - Interest Expense on Note (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58046f9fe4944034ba36c5bfe6f85d80_D20210401-20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:InterestExpenseDebtExcludingAmortization", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R62": { "firstAnchor": { "ancestors": [ "span", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "prft:ExpirationPeriodforNotesWarrantsinTradingDays", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2448428 - Disclosure - Long-term Debt - Convertible Note Hedges and Warrants (Details)", "role": "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails", "shortName": "Long-term Debt - Convertible Note Hedges and Warrants (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "prft:ExpirationPeriodforNotesWarrantsinTradingDays", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R63": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:UnrecognizedTaxBenefits", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2450429 - Disclosure - Income Taxes (Details)", "role": "http://perficient.com/role/IncomeTaxesDetails", "shortName": "Income Taxes (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58c617508c564c05ac82d85d25cd4195_D20210401-20210630", "decimals": "3", "lang": "en-US", "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R64": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "id40dcabc70874bf5894f66afa1749cad_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:DerivativeNotionalAmount", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2453430 - Disclosure - Derivatives - Notional Amounts (Details)", "role": "http://perficient.com/role/DerivativesNotionalAmountsDetails", "shortName": "Derivatives - Notional Amounts (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "id40dcabc70874bf5894f66afa1749cad_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:DerivativeNotionalAmount", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R65": { "firstAnchor": { "ancestors": [ "span", "div", "us-gaap:FairValueMeasurementPolicyPolicyTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i68fbb61a3fa849b088864524026d5357_I20210630", "decimals": "-5", "first": true, "lang": "en-US", "name": "prft:CompanyOwnedLifeInsurance", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2455431 - Disclosure - Fair Value Measurements (Details)", "role": "http://perficient.com/role/FairValueMeasurementsDetails", "shortName": "Fair Value Measurements (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "us-gaap:FairValueMeasurementPolicyPolicyTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i68fbb61a3fa849b088864524026d5357_I20210630", "decimals": "-5", "first": true, "lang": "en-US", "name": "prft:CompanyOwnedLifeInsurance", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R66": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58c617508c564c05ac82d85d25cd4195_D20210401-20210630", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeaseExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2458432 - Disclosure - Leases - Narrative (Details)", "role": "http://perficient.com/role/LeasesNarrativeDetails", "shortName": "Leases - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i58c617508c564c05ac82d85d25cd4195_D20210401-20210630", "decimals": "-5", "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeaseExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R67": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "prft:LiabilitiesLesseeTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeaseLiabilityCurrent", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2459433 - Disclosure - Leases - Lease Liabilities (Details)", "role": "http://perficient.com/role/LeasesLeaseLiabilitiesDetails", "shortName": "Leases - Lease Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R68": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2460434 - Disclosure - Leases - Future Minimum Lease Payments under ASC Topic 842 (Details)", "role": "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details", "shortName": "Leases - Future Minimum Lease Payments under ASC Topic 842 (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i4981b21e446540628328c69f58d68fc5_I20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R7": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1006007 - Statement - Unaudited Condensed Consolidated Statements of Cash Flows", "role": "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows", "shortName": "Unaudited Condensed Consolidated Statements of Cash Flows", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:DeferredIncomeTaxExpenseBenefit", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R8": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2101101 - Disclosure - Basis of Presentation", "role": "http://perficient.com/role/BasisofPresentation", "shortName": "Basis of Presentation", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessDescriptionAndBasisOfPresentationTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2102102 - Disclosure - Summary of Significant Accounting Policies", "role": "http://perficient.com/role/SummaryofSignificantAccountingPolicies", "shortName": "Summary of Significant Accounting Policies", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "prft-20210630.htm", "contextRef": "i62a391e727ce4709844fc17fe6d783b7_D20210101-20210630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } } }, "segmentCount": 61, "tag": { "country_US": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "UNITED STATES", "terseLabel": "United States" } } }, "localname": "US", "nsuri": "http://xbrl.sec.gov/country/2021", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyGeographicAreaDetails" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "xbrltype": "normalizedStringItemType" }, "dei_CoverAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Cover page.", "label": "Cover [Abstract]" } } }, "localname": "CoverAbstract", "nsuri": "http://xbrl.sec.gov/dei/2021", "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "xbrltype": "dateItemType" }, "dei_DocumentQuarterlyReport": { "auth_ref": [ "r602" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "xbrltype": "booleanItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r603" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "xbrltype": "stateOrProvinceItemType" }, "dei_EntityCentralIndexKey": { "auth_ref": [ "r604" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "xbrltype": "yesNoItemType" }, "dei_EntityEmergingGrowthCompany": { "auth_ref": [ "r604" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "xbrltype": "fileNumberItemType" }, "dei_EntityFilerCategory": { "auth_ref": [ "r604" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "xbrltype": "edgarStateCountryItemType" }, "dei_EntityInteractiveDataCurrent": { "auth_ref": [ "r606" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "xbrltype": "yesNoItemType" }, "dei_EntityRegistrantName": { "auth_ref": [ "r604" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityShellCompany": { "auth_ref": [ "r604" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "xbrltype": "booleanItemType" }, "dei_EntitySmallBusiness": { "auth_ref": [ "r604" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "xbrltype": "booleanItemType" }, "dei_EntityTaxIdentificationNumber": { "auth_ref": [ "r604" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "xbrltype": "normalizedStringItemType" }, "dei_Security12bTitle": { "auth_ref": [ "r600" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "xbrltype": "securityTitleItemType" }, "dei_SecurityExchangeName": { "auth_ref": [ "r601" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "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/2021", "presentation": [ "http://perficient.com/role/CoverPage" ], "xbrltype": "tradingSymbolItemType" }, "prft_AccruedMedicalClaimsExpense": { "auth_ref": [], "calculation": { "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails": { "order": 6.0, "parentTag": "us-gaap_OtherLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accrued medical claims expense.", "label": "Accrued Medical Claims Expense", "terseLabel": "Accrued medical claims expense" } } }, "localname": "AccruedMedicalClaimsExpense", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "prft_AccruedVariableCompensation": { "auth_ref": [], "calculation": { "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails": { "order": 8.0, "parentTag": "us-gaap_OtherLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accrued variable compensation.", "label": "Accrued Variable Compensation", "terseLabel": "Accrued variable compensation" } } }, "localname": "AccruedVariableCompensation", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "prft_BrainjocksMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Brainjocks", "label": "Brainjocks [Member]", "terseLabel": "Brainjocks" } } }, "localname": "BrainjocksMember", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails" ], "xbrltype": "domainItemType" }, "prft_BusinessAcquisitionProformaWeightedAverageSharesOutstandingBasic": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Business acquisition proforma weighted average shares outstanding basic.", "label": "Business Acquisition Proforma Weighted Average Shares Outstanding Basic", "terseLabel": "Shares used in computing basic net income per share (in shares)" } } }, "localname": "BusinessAcquisitionProformaWeightedAverageSharesOutstandingBasic", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BusinessCombinationsProFormaResultsofOperationsDetails" ], "xbrltype": "sharesItemType" }, "prft_BusinessAcquisitionProformaWeightedAverageSharesOutstandingDiluted": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Business acquisition proforma weighted average shares outstanding diluted.", "label": "Business Acquisition Proforma Weighted Average Shares Outstanding Diluted", "terseLabel": "Shares used in computing diluted net income per share (in shares)" } } }, "localname": "BusinessAcquisitionProformaWeightedAverageSharesOutstandingDiluted", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BusinessCombinationsProFormaResultsofOperationsDetails" ], "xbrltype": "sharesItemType" }, "prft_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentGoodwill": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Goodwill", "label": "Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Goodwill", "terseLabel": "Increase to goodwill" } } }, "localname": "BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentGoodwill", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "monetaryItemType" }, "prft_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentLiabilities": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Liabilities", "label": "Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Liabilities", "negatedTerseLabel": "Increase to liabilities assumed" } } }, "localname": "BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentLiabilities", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "monetaryItemType" }, "prft_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentTangibleAssets": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Tangible Assets", "label": "Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Tangible Assets", "terseLabel": "Increase to acquired tangible assets" } } }, "localname": "BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentTangibleAssets", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "monetaryItemType" }, "prft_CompanyOwnedLifeInsurance": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Company Owned Life Insurance", "label": "Company Owned Life Insurance", "terseLabel": "COLI asset" } } }, "localname": "CompanyOwnedLifeInsurance", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/FairValueMeasurementsDetails" ], "xbrltype": "monetaryItemType" }, "prft_ConversionCircumstanceOneMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Conversion Circumstance One", "label": "Conversion Circumstance One [Member]", "terseLabel": "Conversion Circumstance One" } } }, "localname": "ConversionCircumstanceOneMember", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "domainItemType" }, "prft_ConversionCircumstanceTwoMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Conversion Circumstance Two", "label": "Conversion Circumstance Two [Member]", "terseLabel": "Conversion Circumstance Two" } } }, "localname": "ConversionCircumstanceTwoMember", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "domainItemType" }, "prft_ConvertibleDebtEquityComponentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Convertible Debt, Equity Component", "label": "Convertible Debt, Equity Component [Member]", "terseLabel": "Convertible debt, equity component" } } }, "localname": "ConvertibleDebtEquityComponentMember", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "domainItemType" }, "prft_ConvertibleDebtLiabilityComponentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Convertible Debt, Liability Component", "label": "Convertible Debt, Liability Component [Member]", "terseLabel": "Convertible debt, liability component" } } }, "localname": "ConvertibleDebtLiabilityComponentMember", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "domainItemType" }, "prft_ConvertibleNoteHedgesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Convertible Note Hedges [Member]", "label": "Convertible Note Hedges [Member]", "terseLabel": "Convertible note hedges" } } }, "localname": "ConvertibleNoteHedgesMember", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails" ], "xbrltype": "domainItemType" }, "prft_ConvertibleNotesHedgesStockPriceTrigger": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Price of the entity's common stock which would be required to be attained for the hedge options related to the convertible senior notes to be exercised.", "label": "Convertible Notes Hedges, Stock Price Trigger", "terseLabel": "Strike price (in dollars per share)" } } }, "localname": "ConvertibleNotesHedgesStockPriceTrigger", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails" ], "xbrltype": "perShareItemType" }, "prft_ConvertibleSeniorNotesDue2023Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Convertible Senior Notes Due 2023 [Member]", "label": "Convertible Senior Notes Due 2023 [Member]", "terseLabel": "2023 Notes" } } }, "localname": "ConvertibleSeniorNotesDue2023Member", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/FairValueMeasurementsDetails", "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails", "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails", "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails", "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails" ], "xbrltype": "domainItemType" }, "prft_ConvertibleSeniorNotesDue2025Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Convertible Senior Notes Due 2025", "label": "Convertible Senior Notes Due 2025 [Member]", "terseLabel": "2025 Notes" } } }, "localname": "ConvertibleSeniorNotesDue2025Member", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/FairValueMeasurementsDetails", "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails", "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails", "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails", "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails" ], "xbrltype": "domainItemType" }, "prft_CostOfEnteringIntoHedgesNetOfWarrants": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Cost of entering into hedges, net of warrants", "label": "Cost of entering into hedges, net of warrants", "terseLabel": "Cost of entering into hedges, net of warrants" } } }, "localname": "CostOfEnteringIntoHedgesNetOfWarrants", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "monetaryItemType" }, "prft_CreditAgreementMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The Company's credit agreement, as amended, with Silicon Valley Bank, U.S. Bank National Association, and Bank of America, N.A., entered into on July 31, 2013.", "label": "Credit Agreement [Member]", "terseLabel": "Credit agreement" } } }, "localname": "CreditAgreementMember", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "domainItemType" }, "prft_DebtInstrumentConvertibleDebtNumberOfSharesTerminated": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Convertible Debt, Number of Shares Terminated", "label": "Debt Instrument, Convertible Debt, Number of Shares Terminated", "terseLabel": "Sale of hedges (in shares)" } } }, "localname": "DebtInstrumentConvertibleDebtNumberOfSharesTerminated", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails" ], "xbrltype": "sharesItemType" }, "prft_DebtInstrumentConvertibleOptiontoAcquireShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Convertible Option to Acquire Shares", "label": "Debt Instrument, Convertible Option to Acquire Shares", "terseLabel": "Conversion option to acquire shares (in shares)" } } }, "localname": "DebtInstrumentConvertibleOptiontoAcquireShares", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails" ], "xbrltype": "sharesItemType" }, "prft_DeferredEmployerFICAPaymentsCurrent": { "auth_ref": [], "calculation": { "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails": { "order": 4.0, "parentTag": "us-gaap_OtherLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Deferred Employer FICA Payments, Current", "label": "Deferred Employer FICA Payments, Current", "terseLabel": "Deferred employer FICA payments" } } }, "localname": "DeferredEmployerFICAPaymentsCurrent", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "prft_DeferredEmployerFICAPaymentsNoncurrent": { "auth_ref": [], "calculation": { "http://perficient.com/role/BalanceSheetComponentsOtherNonCurrentLiabilitiesDetails": { "order": 4.0, "parentTag": "us-gaap_OtherLiabilitiesNoncurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Deferred Employer FICA Payments, Noncurrent", "label": "Deferred Employer FICA Payments, Noncurrent", "terseLabel": "Deferred employer FICA payments" } } }, "localname": "DeferredEmployerFICAPaymentsNoncurrent", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherNonCurrentLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "prft_EarningsPerShareAndTreasureStockTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for earnings per share and treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock.", "label": "Earnings Per Share and Treasury Stock [Text Block]", "terseLabel": "Net Income per Share" } } }, "localname": "EarningsPerShareAndTreasureStockTextBlock", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/NetIncomeperShare" ], "xbrltype": "textBlockItemType" }, "prft_ExpirationPeriodforNotesWarrantsinTradingDays": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Expiration Period for Notes Warrants in Trading Days", "label": "Expiration Period for Notes Warrants in Trading Days", "terseLabel": "Expiration period for Notes Warrants in trading days" } } }, "localname": "ExpirationPeriodforNotesWarrantsinTradingDays", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails" ], "xbrltype": "durationItemType" }, "prft_FiniteLivedIntangibleAssetAcquiredUsefulLife": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Useful life 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": "Finite-Lived Intangible Asset, Acquired Useful Life", "verboseLabel": "Estimated useful life (in years)" } } }, "localname": "FiniteLivedIntangibleAssetAcquiredUsefulLife", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails" ], "xbrltype": "durationItemType" }, "prft_FixedPricePercentCompleteContractMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Contract with customer in which amount of consideration is fixed and invoiced according to the agreed-upon schedule detailing the amount and timing of payments in the contract using an input method based on the ratio of hours expended to total estimated hours.", "label": "Fixed-price Percent Complete Contract [Member]", "terseLabel": "Fixed fee percent complete contracts" } } }, "localname": "FixedPricePercentCompleteContractMember", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails" ], "xbrltype": "domainItemType" }, "prft_IncrementalCommonSharesAttributableToRestrictedStockSubjectToVesting": { "auth_ref": [], "calculation": { "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails": { "order": 4.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 restricted stock subject to vesting.", "label": "Incremental Common Shares Attributable to Restricted Stock Subject to Vesting", "terseLabel": "Restricted stock subject to vesting" } } }, "localname": "IncrementalCommonSharesAttributableToRestrictedStockSubjectToVesting", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails" ], "xbrltype": "sharesItemType" }, "prft_InitialFairValueOfContingentConsiderationToBeEarnedBusinessAcquisition": { "auth_ref": [], "calculation": { "http://perficient.com/role/BusinessCombinationsMedTouchDetails": { "order": 2.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Initial fair value estimate, as of the acquisition date, of potential payments under the contingent consideration arrangement including cash and shares.", "label": "Initial Fair Value of Contingent Consideration To Be Earned-Business Acquisition", "terseLabel": "Initial fair value estimate of additional earnings-based contingent consideration" } } }, "localname": "InitialFairValueOfContingentConsiderationToBeEarnedBusinessAcquisition", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "monetaryItemType" }, "prft_InterestIncomeExpenseNonoperatingNetIncludingAmortizationofDebtDiscountandDeferredIssuanceCosts": { "auth_ref": [], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations": { "order": 3.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Interest Income (Expense), Nonoperating, Net, Including Amortization of Debt Discount and Deferred Issuance Costs", "label": "Interest Income (Expense), Nonoperating, Net, Including Amortization of Debt Discount and Deferred Issuance Costs", "negatedTerseLabel": "Net interest expense" } } }, "localname": "InterestIncomeExpenseNonoperatingNetIncludingAmortizationofDebtDiscountandDeferredIssuanceCosts", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "prft_LiabilitiesLesseeTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Liabilities, Lessee [Table Text Block]", "label": "Liabilities, Lessee [Table Text Block]", "terseLabel": "Summary of lease liabilities" } } }, "localname": "LiabilitiesLesseeTableTextBlock", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LeasesTables" ], "xbrltype": "textBlockItemType" }, "prft_LineOfCreditFacilityAdditionalCommitmentIncrease": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of additional commitment increase on the credit facility.", "label": "Line of Credit Facility, Additional commitment increase", "terseLabel": "Additional commitment increase" } } }, "localname": "LineOfCreditFacilityAdditionalCommitmentIncrease", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "monetaryItemType" }, "prft_LineOfCreditFacilityAllowableAmountForIssuanceOfLettersOfCredit": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Allowable amount for issuance of letters of credit under the credit facility.", "label": "Line of Credit Facility, Allowable Amount for Issuance of Letters of Credit", "terseLabel": "Allowable amount of letters of credit for issuance" } } }, "localname": "LineOfCreditFacilityAllowableAmountForIssuanceOfLettersOfCredit", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "monetaryItemType" }, "prft_LongTermIncentivePlan2012Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The 2012 Long Term Incentive Plan, as amended, allows for the granting of various types of stock awards, not to exceed a total of 5.0 million shares, to eligible individuals.", "label": "Long Term Incentive Plan 2012 [Member]", "terseLabel": "2012 Long term incentive plan" } } }, "localname": "LongTermIncentivePlan2012Member", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails", "http://perficient.com/role/StockBasedCompensationStockAwardPlansDetails" ], "xbrltype": "domainItemType" }, "prft_MedTouchMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "MedTouch", "label": "MedTouch [Member]", "terseLabel": "MedTouch" } } }, "localname": "MedTouchMember", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BusinessCombinationsMedTouchDetails" ], "xbrltype": "domainItemType" }, "prft_NetWorkingCapitalSettlement": { "auth_ref": [], "calculation": { "http://perficient.com/role/BusinessCombinationsMedTouchDetails": { "order": 1.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Net working capital settlements paid or to be paid", "label": "Net working capital settlement", "terseLabel": "Net working capital settlement" } } }, "localname": "NetWorkingCapitalSettlement", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "monetaryItemType" }, "prft_NoticePeriodToCancelOrTerminateContract": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Period of time for the client or the Company to cancel or terminate the contract, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Notice period to cancel or terminate contract", "terseLabel": "Notice period to cancel or terminate contract" } } }, "localname": "NoticePeriodToCancelOrTerminateContract", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/RevenueServicesRevenueDetails" ], "xbrltype": "durationItemType" }, "prft_OtherCountriesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Other countries, excluding the United States and Canada.", "label": "Other Countries [Member]", "terseLabel": "Other countries" } } }, "localname": "OtherCountriesMember", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyGeographicAreaDetails" ], "xbrltype": "domainItemType" }, "prft_OtherServicesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Hosting fees, maintenance, training, internally developed SaaS and partner referral fees", "label": "Other Services [Member]", "terseLabel": "Other services" } } }, "localname": "OtherServicesMember", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails" ], "xbrltype": "domainItemType" }, "prft_PSLMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "PSL", "label": "PSL [Member]", "terseLabel": "PSL" } } }, "localname": "PSLMember", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "domainItemType" }, "prft_PaymentsForInterestOnConvertibleDebt": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Payments for Interest on Convertible Debt", "label": "Payments for Interest on Convertible Debt", "terseLabel": "Payment of interest" } } }, "localname": "PaymentsForInterestOnConvertibleDebt", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "monetaryItemType" }, "prft_PaymentsForRepurchaseOfConvertibleDebt": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Payments for Repurchase of Convertible Debt", "label": "Payments for Repurchase of Convertible Debt", "terseLabel": "Payments for repurchase of 2023 convertible notes" } } }, "localname": "PaymentsForRepurchaseOfConvertibleDebt", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "monetaryItemType" }, "prft_PaymentsForSoftwareDevelopmentCosts": { "auth_ref": [], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the development or modification of software programs or applications for internal use and resale that qualify for capitalization.", "label": "Payments for software development costs", "negatedLabel": "Capitalization of internally developed software costs" } } }, "localname": "PaymentsForSoftwareDevelopmentCosts", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "prft_PaymentsForWarrantsRelatedToConvertibleNotes": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Payments for Warrants Related to Convertible Notes", "label": "Payments for Warrants Related to Convertible Notes", "terseLabel": "Repurchase of warrants related to 2023 convertible notes" } } }, "localname": "PaymentsForWarrantsRelatedToConvertibleNotes", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails" ], "xbrltype": "monetaryItemType" }, "prft_PayrollRelatedCosts": { "auth_ref": [], "calculation": { "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_OtherLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Payroll related costs", "label": "Payroll Related Costs", "terseLabel": "Payroll related costs" } } }, "localname": "PayrollRelatedCosts", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "prft_PotentialDisallowedResearchTaxCredits": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of research credits potentially disallowed on income tax return for the applicable tax year..", "label": "Potential Disallowed Research Tax Credits", "terseLabel": "Disallowed research tax credits being litigated" } } }, "localname": "PotentialDisallowedResearchTaxCredits", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "monetaryItemType" }, "prft_ProceedsFromSaleOfDerivativesRelatedToConvertibleNotes": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Proceeds from Sale of Derivatives Related to Convertible Notes", "label": "Proceeds from Sale of Derivatives Related to Convertible Notes", "terseLabel": "Proceeds from sale of of hedges related to 2023 convertible notes" } } }, "localname": "ProceedsFromSaleOfDerivativesRelatedToConvertibleNotes", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails" ], "xbrltype": "monetaryItemType" }, "prft_ProceedsFromTheSaleOfStockThroughTheEmployeeStockPurchasePlan": { "auth_ref": [], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Aggregate proceeds received by the entity during the period from the sale of stock through the Employee Stock Purchase Plan", "label": "Proceeds from the sale of stock through the Employee Stock Purchase Plan", "terseLabel": "Proceeds from the sale of stock through the Employee Stock Purchase Plan" } } }, "localname": "ProceedsFromTheSaleOfStockThroughTheEmployeeStockPurchasePlan", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "prft_ProfessionalFeesLiability": { "auth_ref": [], "calculation": { "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails": { "order": 3.0, "parentTag": "us-gaap_OtherLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "A fee charged for services from professionals such as doctors, lawyers and accountants. The term is often expanded to include other professions, for example, pharmacists charging to maintain a medicinal profile of a client or customer.", "label": "Professional Fees", "terseLabel": "Professional fees" } } }, "localname": "ProfessionalFeesLiability", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "prft_ProfessionalServicesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Development, implementation, automation and extension of business processes, technology infrastructure, and software applications.", "label": "Professional Services [Member]", "terseLabel": "Professional services" } } }, "localname": "ProfessionalServicesMember", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails" ], "xbrltype": "domainItemType" }, "prft_RatioOfEBITDAPlusStockCompensationToInterestExpenseForThePreviousFourConsecutiveFiscalQuarters": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Ratio of earnings before interest, taxes, depreciation, and amortization (EBITDA) plus stock compensation to interest expense for the previous four consecutive fiscal quarters.", "label": "Ratio of EBITDA plus stock compensation to interest expense for the previous four consecutive fiscal quarters", "terseLabel": "EBITDA Ratio" } } }, "localname": "RatioOfEBITDAPlusStockCompensationToInterestExpenseForThePreviousFourConsecutiveFiscalQuarters", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "pureItemType" }, "prft_RatioOfIndebtednessToEBITDAPlusStockCompensation": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Ratio of indebtedness to EBITDA plus stock compensation (Leverage Ratio).", "label": "Ratio of indebtedness to EBITDA plus stock compensation", "terseLabel": "Leverage Ratio" } } }, "localname": "RatioOfIndebtednessToEBITDAPlusStockCompensation", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "pureItemType" }, "prft_RatioOfIndebtednessToEBITDAPlusStockCompensationNeededForPaymentOfDividends": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Ratio of indebtedness to EBITDA plus stock compensation (Leverage Ratio) needed for payment of dividends.", "label": "Ratio of indebtedness to EBITDA plus stock compensation needed for payment of dividends", "terseLabel": "Leverage Ratio needed for payment of dividends" } } }, "localname": "RatioOfIndebtednessToEBITDAPlusStockCompensationNeededForPaymentOfDividends", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "pureItemType" }, "prft_ReimbursableExpensesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Reimbursement for out-of-pocket expenses, including travel and other project-related expenses without a markup.", "label": "Reimbursable Expenses [Member]", "terseLabel": "Reimbursable expenses" } } }, "localname": "ReimbursableExpensesMember", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails" ], "xbrltype": "domainItemType" }, "prft_RemittanceOfTaxesWithheldAsPartOfNetShareSettlementOfRestrictedStockVesting": { "auth_ref": [], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "This element is related to remittance of taxes withheld as part of a net share settlement of restricted stock vesting", "label": "Remittance of taxes withheld as part of a net share settlement of restricted stock vesting", "terseLabel": "Remittance of taxes withheld as part of a net share settlement of restricted stock vesting" } } }, "localname": "RemittanceOfTaxesWithheldAsPartOfNetShareSettlementOfRestrictedStockVesting", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "prft_ResearchTaxCredits": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of research credits taken or expected to be taken in the Company's income tax return for the applicable tax year.", "label": "Research Tax Credits", "terseLabel": "Research tax credits" } } }, "localname": "ResearchTaxCredits", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "monetaryItemType" }, "prft_ScheduleOfEstimatedUsefulLivesOfIdentifiableIntangibleAssetsTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the estimated used lives of intangible assets.", "label": "Schedule of Estimated Useful Lives of Identifiable Intangible Assets [Table Text Block]", "terseLabel": "Estimated useful lives of intangible assets" } } }, "localname": "ScheduleOfEstimatedUsefulLivesOfIdentifiableIntangibleAssetsTableTextBlock", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsTables" ], "xbrltype": "textBlockItemType" }, "prft_SoftwareAccrualNoncurrent": { "auth_ref": [], "calculation": { "http://perficient.com/role/BalanceSheetComponentsOtherNonCurrentLiabilitiesDetails": { "order": 6.0, "parentTag": "us-gaap_OtherLiabilitiesNoncurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Software Accrual, Noncurrent", "label": "Software Accrual, Noncurrent", "terseLabel": "Non-current software accrual" } } }, "localname": "SoftwareAccrualNoncurrent", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherNonCurrentLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "prft_SoftwareAndHardwareMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Third-party software and hardware resales, in which the Company is considered the agent, and sales of internally developed software, in which the Company is considered the principal.", "label": "Software and Hardware [Member]", "terseLabel": "Software and hardware" } } }, "localname": "SoftwareAndHardwareMember", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails" ], "xbrltype": "domainItemType" }, "prft_StockCompensationRelatedToRestrictedStockVestingAndRetirementSavingsPlanContributionsShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Stock Compensation Related To Restricted Stock Vesting And Retirement Savings Plan Contributions Shares", "label": "Stock Compensation Related To Restricted Stock Vesting And Retirement Savings Plan Contributions Shares", "terseLabel": "Stock compensation related to restricted stock vesting and retirement savings plan contributions (in shares)" } } }, "localname": "StockCompensationRelatedToRestrictedStockVestingAndRetirementSavingsPlanContributionsShares", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "sharesItemType" }, "prft_StockRepurchaseProgram": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cumulative amount of stock repurchased under the plan.", "label": "Stock Repurchase Program, Cumulative amount repurchased", "terseLabel": "Cumulative amount repurchased" } } }, "localname": "StockRepurchaseProgram", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/NetIncomeperShareAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "prft_StockRepurchaseProgramCumulativeAmountRepurchasedShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The cumulative number of shares of stock repurchased under the plan.", "label": "Stock Repurchase Program, Cumulative amount repurchased, Shares", "terseLabel": "Cumulative number of shares repurchased (in shares)" } } }, "localname": "StockRepurchaseProgramCumulativeAmountRepurchasedShares", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/NetIncomeperShareAdditionalInformationDetails" ], "xbrltype": "sharesItemType" }, "prft_TaxCreditLineItems": { "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": "Tax Credit [Line Items]", "terseLabel": "Tax Credit [Line Items]" } } }, "localname": "TaxCreditLineItems", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "stringItemType" }, "prft_TaxCreditTable": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A listing of tax credits included on the Company's tax returns.", "label": "Tax Credit [Table]", "terseLabel": "Tax Credit [Table]" } } }, "localname": "TaxCreditTable", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "stringItemType" }, "prft_TaxYears2011through2015Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Identified as tax years 2011 through 2015", "label": "Tax Years 2011 through 2015 [Member]", "terseLabel": "Tax years 2011 through 2015" } } }, "localname": "TaxYears2011through2015Member", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "domainItemType" }, "prft_TaxYears2011through2019Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tax Years 2011 through 2019 [Member]", "label": "Tax Years 2011 through 2019 [Member]", "terseLabel": "Tax years 2011 through March 2021" } } }, "localname": "TaxYears2011through2019Member", "nsuri": "http://perficient.com/20210630", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "domainItemType" }, "srt_CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember": { "auth_ref": [ "r2", "r107", "r117", "r182", "r380", "r381", "r382", "r404", "r405", "r469", "r475", "r476", "r609" ], "lang": { "en-us": { "role": { "label": "Cumulative Effect, Period of Adoption, Adjusted Balance [Member]", "terseLabel": "Cumulative effect, period of adoption, adjusted balance" } } }, "localname": "CumulativeEffectPeriodOfAdoptionAdjustedBalanceMember", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://perficient.com/role/AllowanceforCreditLossesDetails" ], "xbrltype": "domainItemType" }, "srt_CumulativeEffectPeriodOfAdoptionAdjustmentMember": { "auth_ref": [ "r2", "r107", "r117", "r123", "r182", "r380", "r381", "r382", "r404", "r405", "r469", "r472", "r475", "r476", "r609" ], "lang": { "en-us": { "role": { "label": "Cumulative Effect, Period of Adoption, Adjustment [Member]", "terseLabel": "Cumulative effect, period of adoption, adjustment" } } }, "localname": "CumulativeEffectPeriodOfAdoptionAdjustmentMember", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://perficient.com/role/AllowanceforCreditLossesDetails", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "domainItemType" }, "srt_CumulativeEffectPeriodOfAdoptionAxis": { "auth_ref": [ "r2", "r107", "r117", "r123", "r182", "r380", "r381", "r382", "r404", "r405", "r469", "r472", "r475", "r476", "r609" ], "lang": { "en-us": { "role": { "label": "Cumulative Effect, Period of Adoption [Axis]", "terseLabel": "Cumulative Effect, Period Of Adoption [Axis]" } } }, "localname": "CumulativeEffectPeriodOfAdoptionAxis", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://perficient.com/role/AllowanceforCreditLossesDetails", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "stringItemType" }, "srt_CumulativeEffectPeriodOfAdoptionDomain": { "auth_ref": [ "r2", "r107", "r117", "r123", "r182", "r380", "r381", "r382", "r404", "r405", "r469", "r472", "r475", "r476", "r609" ], "lang": { "en-us": { "role": { "label": "Cumulative Effect, Period of Adoption [Domain]", "terseLabel": "Cumulative Effect, Period Of Adoption [Domain]" } } }, "localname": "CumulativeEffectPeriodOfAdoptionDomain", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://perficient.com/role/AllowanceforCreditLossesDetails", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "domainItemType" }, "srt_MaximumMember": { "auth_ref": [ "r261", "r299", "r356", "r358", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r568", "r571", "r598", "r599" ], "lang": { "en-us": { "role": { "label": "Maximum [Member]", "terseLabel": "Maximum" } } }, "localname": "MaximumMember", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails", "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedUsefulLivesDetails", "http://perficient.com/role/LeasesNarrativeDetails", "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails", "http://perficient.com/role/RevenueServicesRevenueDetails" ], "xbrltype": "domainItemType" }, "srt_MinimumMember": { "auth_ref": [ "r261", "r299", "r356", "r358", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r568", "r571", "r598", "r599" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]", "terseLabel": "Minimum" } } }, "localname": "MinimumMember", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails", "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedUsefulLivesDetails", "http://perficient.com/role/LeasesNarrativeDetails", "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails", "http://perficient.com/role/RevenueServicesRevenueDetails" ], "xbrltype": "domainItemType" }, "srt_ProductOrServiceAxis": { "auth_ref": [ "r165", "r328", "r332", "r533", "r567", "r569" ], "lang": { "en-us": { "role": { "label": "Product and Service [Axis]", "terseLabel": "Product and Service [Axis]" } } }, "localname": "ProductOrServiceAxis", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails", "http://perficient.com/role/RevenueServicesRevenueDetails" ], "xbrltype": "stringItemType" }, "srt_ProductsAndServicesDomain": { "auth_ref": [ "r165", "r328", "r332", "r533", "r567", "r569" ], "lang": { "en-us": { "role": { "label": "Product and Service [Domain]", "terseLabel": "Product and Service [Domain]" } } }, "localname": "ProductsAndServicesDomain", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails", "http://perficient.com/role/RevenueServicesRevenueDetails" ], "xbrltype": "domainItemType" }, "srt_RangeAxis": { "auth_ref": [ "r261", "r299", "r346", "r356", "r358", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r568", "r571", "r598", "r599" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Axis]", "terseLabel": "Statistical Measurement [Axis]" } } }, "localname": "RangeAxis", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails", "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedUsefulLivesDetails", "http://perficient.com/role/LeasesNarrativeDetails", "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails", "http://perficient.com/role/RevenueServicesRevenueDetails" ], "xbrltype": "stringItemType" }, "srt_RangeMember": { "auth_ref": [ "r261", "r299", "r346", "r356", "r358", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r568", "r571", "r598", "r599" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Domain]", "terseLabel": "Statistical Measurement [Domain]" } } }, "localname": "RangeMember", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails", "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedUsefulLivesDetails", "http://perficient.com/role/LeasesNarrativeDetails", "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails", "http://perficient.com/role/RevenueServicesRevenueDetails" ], "xbrltype": "domainItemType" }, "srt_SegmentGeographicalDomain": { "auth_ref": [ "r166", "r167", "r328", "r333", "r570", "r589", "r590", "r591", "r592", "r593", "r594", "r595", "r596", "r597" ], "lang": { "en-us": { "role": { "label": "Geographical [Domain]", "terseLabel": "Geographical [Domain]" } } }, "localname": "SegmentGeographicalDomain", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyGeographicAreaDetails" ], "xbrltype": "domainItemType" }, "srt_StatementGeographicalAxis": { "auth_ref": [ "r166", "r167", "r328", "r333", "r570", "r586", "r589", "r590", "r591", "r592", "r593", "r594", "r595", "r596", "r597" ], "lang": { "en-us": { "role": { "label": "Geographical [Axis]", "terseLabel": "Geographical [Axis]" } } }, "localname": "StatementGeographicalAxis", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyGeographicAreaDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AccountingPoliciesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Accounting Policies [Abstract]" } } }, "localname": "AccountingPoliciesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_AccountingStandardsUpdate201409Member": { "auth_ref": [ "r344" ], "lang": { "en-us": { "role": { "documentation": "Accounting Standards Update 2014-09 Revenue from Contracts with Customers (Topic 606).", "label": "Accounting Standards Update 2014-09 [Member]", "terseLabel": "ASU 2014-09" } } }, "localname": "AccountingStandardsUpdate201409Member", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDeferredRevenueDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccountsPayableCurrent": { "auth_ref": [ "r35", "r522" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "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/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock": { "auth_ref": [ "r197" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of allowance for credit loss on accounts receivable.", "label": "Accounts Receivable, Allowance for Credit Loss [Table Text Block]", "terseLabel": "Allowance for credit losses" } } }, "localname": "AccountsReceivableAllowanceForCreditLossTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/AllowanceforCreditLossesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_AccountsReceivableNetCurrent": { "auth_ref": [ "r8", "r23", "r169", "r170" ], "calculation": { "http://perficient.com/role/BalanceSheetComponentsAccountsReceivableDetails": { "order": 1.0, "parentTag": "us-gaap_ReceivablesNetCurrent", "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", "verboseLabel": "Billed accounts receivable, net" } } }, "localname": "AccountsReceivableNetCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsAccountsReceivableDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "auth_ref": [ "r33", "r235" ], "calculation": { "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails": { "order": 2.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.", "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment", "negatedLabel": "Less: Accumulated depreciation" } } }, "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "auth_ref": [ "r26", "r53", "r54", "r55", "r558", "r579", "r583" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.", "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax", "terseLabel": "Accumulated other comprehensive (loss) income" } } }, "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "auth_ref": [ "r52", "r55", "r61", "r62", "r63", "r104", "r105", "r106", "r447", "r574", "r575", "r611" ], "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 (Loss) Income" } } }, "localname": "AccumulatedOtherComprehensiveIncomeMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": { "auth_ref": [ "r223" ], "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": "Weighted average useful life (in years)" } } }, "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails" ], "xbrltype": "durationItemType" }, "us-gaap_AdditionalPaidInCapitalCommonStock": { "auth_ref": [ "r24" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.", "label": "Additional Paid in Capital, Common Stock", "terseLabel": "Additional paid-in capital" } } }, "localname": "AdditionalPaidInCapitalCommonStock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [ "r104", "r105", "r106", "r380", "r381", "r382", "r475" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_AdjustmentsForNewAccountingPronouncementsAxis": { "auth_ref": [ "r0", "r1", "r2", "r3", "r4", "r110", "r111", "r112", "r114", "r123", "r173", "r174", "r179", "r180", "r181", "r182", "r185", "r186", "r245", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r384", "r402", "r403", "r404", "r405", "r466", "r467", "r468", "r469", "r470", "r471", "r472", "r474", "r475", "r476", "r477", "r487", "r488", "r489", "r490", "r491", "r492", "r496", "r497", "r518", "r535", "r536", "r537", "r572", "r573", "r574", "r575", "r576", "r577", "r578", "r579", "r580", "r581", "r582", "r583", "r607", "r608", "r609", "r610", "r611" ], "lang": { "en-us": { "role": { "documentation": "Information by amendment to accounting standards.", "label": "Accounting Standards Update [Axis]", "terseLabel": "Adjustments for New Accounting Pronouncements [Axis]" } } }, "localname": "AdjustmentsForNewAccountingPronouncementsAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDeferredRevenueDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "auth_ref": [ "r359", "r361", "r386", "r387" ], "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 compensation related to restricted stock vesting and retirement savings plan contributions" } } }, "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "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 operations:" } } }, "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_AllocatedShareBasedCompensationExpense": { "auth_ref": [ "r361", "r373", "r385" ], "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": "Stock-based compensation expense" } } }, "localname": "AllocatedShareBasedCompensationExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationStockAwardPlansDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForCreditLossesTextBlock": { "auth_ref": [ "r177" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for allowance for credit losses.", "label": "Allowance for Credit Losses [Text Block]", "terseLabel": "Allowance for Credit Losses" } } }, "localname": "AllowanceForCreditLossesTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/AllowanceforCreditLosses" ], "xbrltype": "textBlockItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivable": { "auth_ref": [ "r171", "r190", "r193", "r196" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of allowance for credit loss on accounts receivable.", "label": "Accounts Receivable, Allowance for Credit Loss", "periodEndLabel": "Balance at June 30", "periodStartLabel": "Beginning balance" } } }, "localname": "AllowanceForDoubtfulAccountsReceivable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/AllowanceforCreditLossesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward": { "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": "Accounts Receivable, Allowance for Credit Loss [Roll Forward]", "terseLabel": "Accounts Receivable, Allowance for Credit Loss [Roll Forward]" } } }, "localname": "AllowanceForDoubtfulAccountsReceivableRollforward", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/AllowanceforCreditLossesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs": { "auth_ref": [ "r195" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of direct write-downs of accounts receivable charged against the allowance.", "label": "Accounts Receivable, Allowance for Credit Loss, Writeoff", "negatedLabel": "Uncollected balances written off" } } }, "localname": "AllowanceForDoubtfulAccountsReceivableWriteOffs", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/AllowanceforCreditLossesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfDebtDiscountPremium": { "auth_ref": [ "r71", "r86", "r281", "r505" ], "calculation": { "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails": { "order": 2.0, "parentTag": "us-gaap_InterestExpenseDebt", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of noncash expense included in interest expense to amortize debt discount and premium associated with the related debt instruments. Excludes amortization of financing costs. Alternate captions include noncash interest expense.", "label": "Amortization of Debt Discount (Premium)", "terseLabel": "Amortization of debt discount" } } }, "localname": "AmortizationOfDebtDiscountPremium", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfFinancingCosts": { "auth_ref": [ "r68", "r86", "r281", "r507" ], "calculation": { "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails": { "order": 3.0, "parentTag": "us-gaap_InterestExpenseDebt", "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/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfFinancingCostsAndDiscounts": { "auth_ref": [ "r86", "r281", "r293", "r294", "r507" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization expense attributable to debt discount (premium) and debt issuance costs.", "label": "Amortization of Debt Issuance Costs and Discounts", "verboseLabel": "Amortization of debt discount and issuance costs" } } }, "localname": "AmortizationOfFinancingCostsAndDiscounts", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfIntangibleAssets": { "auth_ref": [ "r86", "r220", "r229" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations": { "order": 3.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "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" } } }, "localname": "AmortizationOfIntangibleAssets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "auth_ref": [ "r139" ], "lang": { "en-us": { "role": { "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "terseLabel": "Anti-dilutive securities" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareAntidilutiveSecuritiesDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": { "auth_ref": [ "r139" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareAntidilutiveSecuritiesDetails" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareAntidilutiveSecuritiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AntidilutiveSecuritiesNameDomain": { "auth_ref": [ "r139" ], "lang": { "en-us": { "role": { "documentation": "Incremental common shares attributable to securities that were not included in diluted earnings per share (EPS) because to do so would increase EPS amounts or decrease loss per share amounts for the period presented.", "label": "Antidilutive Securities, Name [Domain]", "terseLabel": "Antidilutive Securities, Name [Domain]" } } }, "localname": "AntidilutiveSecuritiesNameDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareAntidilutiveSecuritiesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_Assets": { "auth_ref": [ "r97", "r154", "r157", "r163", "r178", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r445", "r448", "r486", "r520", "r522", "r543", "r555" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "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/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Assets [Abstract]", "terseLabel": "Assets" } } }, "localname": "AssetsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r10", "r12", "r48", "r97", "r178", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r445", "r448", "r486", "r520", "r522" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets, Current", "totalLabel": "Total current assets" } } }, "localname": "AssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AwardTypeAxis": { "auth_ref": [ "r362", "r375" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BalanceSheetRelatedDisclosuresAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Balance Sheet Related Disclosures [Abstract]" } } }, "localname": "BalanceSheetRelatedDisclosuresAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock": { "auth_ref": [ "r103" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for the basis of presentation and significant accounting policies concepts. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS). Accounting policies describe all significant accounting policies of the reporting entity.", "label": "Basis of Presentation and Significant Accounting Policies [Text Block]", "terseLabel": "Summary of Significant Accounting Policies" } } }, "localname": "BasisOfPresentationAndSignificantAccountingPoliciesTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/SummaryofSignificantAccountingPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "auth_ref": [ "r355", "r357" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "domainItemType" }, "us-gaap_BusinessAcquisitionAxis": { "auth_ref": [ "r355", "r357", "r425", "r426" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessAcquisitionCostOfAcquiredEntityTransactionCosts": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of direct costs of the business combination including legal, accounting, and other costs incurred to consummate the business acquisition.", "label": "Business Acquisition, Transaction Costs", "terseLabel": "Transaction costs" } } }, "localname": "BusinessAcquisitionCostOfAcquiredEntityTransactionCosts", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessAcquisitionDateOfAcquisitionAgreement1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Date when the business acquisition agreement was executed, in YYYY-MM-DD format.", "label": "Business Acquisition, Date of Acquisition Agreement", "terseLabel": "Date of acquisition" } } }, "localname": "BusinessAcquisitionDateOfAcquisitionAgreement1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "dateItemType" }, "us-gaap_BusinessAcquisitionEquityInterestIssuedOrIssuableValueAssigned": { "auth_ref": [ "r439" ], "calculation": { "http://perficient.com/role/BusinessCombinationsMedTouchDetails": { "order": 3.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": -1.0 } }, "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": "Common stock issued" } } }, "localname": "BusinessAcquisitionEquityInterestIssuedOrIssuableValueAssigned", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessAcquisitionLineItems": { "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": "Business Acquisition [Line Items]", "terseLabel": "Business Acquisition [Line Items]" } } }, "localname": "BusinessAcquisitionLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic": { "auth_ref": [ "r423", "r424" ], "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 income per share (USD per share)" } } }, "localname": "BusinessAcquisitionProFormaEarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsProFormaResultsofOperationsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted": { "auth_ref": [ "r423", "r424" ], "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 income per share (USD per share)" } } }, "localname": "BusinessAcquisitionProFormaEarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsProFormaResultsofOperationsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_BusinessAcquisitionProFormaInformationAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Business Acquisition, Pro Forma Information [Abstract]", "terseLabel": "Business Acquisition, Pro Forma Information [Abstract]" } } }, "localname": "BusinessAcquisitionProFormaInformationAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsProFormaResultsofOperationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessAcquisitionProFormaInformationTextBlock": { "auth_ref": [ "r423", "r424" ], "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": "Pro-forma results of operations" } } }, "localname": "BusinessAcquisitionProFormaInformationTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount": { "auth_ref": [ "r442" ], "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": "Tax deductible amount of Goodwill" } } }, "localname": "BusinessAcquisitionPurchasePriceAllocationGoodwillExpectedTaxDeductibleAmount", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss": { "auth_ref": [ "r423", "r424" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsProFormaResultsofOperationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessAcquisitionsProFormaRevenue": { "auth_ref": [ "r423", "r424" ], "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": "Revenues" } } }, "localname": "BusinessAcquisitionsProFormaRevenue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsProFormaResultsofOperationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationAcquisitionRelatedCosts": { "auth_ref": [ "r422" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations": { "order": 4.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities.", "label": "Business Combination, Acquisition Related Costs", "terseLabel": "Acquisition costs" } } }, "localname": "BusinessCombinationAcquisitionRelatedCosts", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable": { "auth_ref": [ "r435", "r436" ], "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": "Stock issued for purchase of businesses" } } }, "localname": "BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1": { "auth_ref": [ "r85", "r443" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations": { "order": 5.0, "parentTag": "us-gaap_OperatingIncomeLoss", "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": "Adjustment to fair value of contingent consideration", "verboseLabel": "Adjustment to fair value of contingent consideration for purchase of businesses" } } }, "localname": "BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationContingentConsiderationArrangementsRangeOfOutcomesValueHigh": { "auth_ref": [ "r441" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "For contingent consideration arrangements recognized in connection with a business combination, this element represents an estimate of the high-end of the potential range (undiscounted) of the consideration which may be paid.", "label": "Business Combination, Contingent Consideration Arrangements, Range of Outcomes, Value, High", "terseLabel": "Contingent consideration, maximum cash payout" } } }, "localname": "BusinessCombinationContingentConsiderationArrangementsRangeOfOutcomesValueHigh", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationContingentConsiderationLiability": { "auth_ref": [ "r434", "r437", "r440" ], "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", "terseLabel": "Fair value of contingent consideration" } } }, "localname": "BusinessCombinationContingentConsiderationLiability", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent": { "auth_ref": [ "r434", "r438" ], "calculation": { "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails": { "order": 5.0, "parentTag": "us-gaap_OtherLiabilitiesCurrent", "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": "Estimated fair value of contingent consideration liability" } } }, "localname": "BusinessCombinationContingentConsiderationLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationDisclosureTextBlock": { "auth_ref": [ "r444" ], "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 Combinations" } } }, "localname": "BusinessCombinationDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinations" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred": { "auth_ref": [ "r428" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "This element represents the amount of any measurement period adjustment (as defined) realized during the reporting period to items of consideration transferred in connection with a business combination for which the initial accounting was incomplete.", "label": "Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Consideration Transferred", "terseLabel": "Increase to the total purchase price" } } }, "localname": "BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles": { "auth_ref": [ "r428" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "This element represents the amount of any measurement period adjustment (as defined) realized during the reporting period to intangibles acquired in connection with a business combination for which the initial accounting was incomplete.", "label": "Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Intangibles", "terseLabel": "Decrease to identified intangible assets" } } }, "localname": "BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentIntangibles", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets": { "auth_ref": [ "r427" ], "calculation": { "http://perficient.com/role/BusinessCombinationsBrainjocksDetails": { "order": 3.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "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", "terseLabel": "Acquired tangible assets" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": { "auth_ref": [ "r427" ], "calculation": { "http://perficient.com/role/BusinessCombinationsMedTouchDetails": { "order": 4.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "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 paid for acquisition" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill": { "auth_ref": [ "r427" ], "calculation": { "http://perficient.com/role/BusinessCombinationsBrainjocksDetails": { "order": 2.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of intangible assets, excluding goodwill, acquired at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Intangible Assets, Other than Goodwill", "terseLabel": "Identified intangible assets" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities": { "auth_ref": [ "r427" ], "calculation": { "http://perficient.com/role/BusinessCombinationsBrainjocksDetails": { "order": 1.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "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", "negatedTerseLabel": "Liabilities assumed" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": { "auth_ref": [ "r427" ], "calculation": { "http://perficient.com/role/BusinessCombinationsBrainjocksDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://perficient.com/role/BusinessCombinationsMedTouchDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "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", "totalLabel": "Total purchase price" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Business Combinations [Abstract]" } } }, "localname": "BusinessCombinationsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_BusinessDescriptionAndBasisOfPresentationTextBlock": { "auth_ref": [ "r7", "r103", "r150" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for the business description and basis of presentation concepts. Business description describes the nature and type of organization including but not limited to organizational structure as may be applicable to holding companies, parent and subsidiary relationships, business divisions, business units, business segments, affiliates and information about significant ownership of the reporting entity. Basis of presentation describes the underlying basis used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).", "label": "Business Description and Basis of Presentation [Text Block]", "verboseLabel": "Basis of Presentation" } } }, "localname": "BusinessDescriptionAndBasisOfPresentationTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BasisofPresentation" ], "xbrltype": "textBlockItemType" }, "us-gaap_CapitalExpendituresIncurredButNotYetPaid": { "auth_ref": [ "r90", "r91", "r92" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Future cash outflow to pay for purchases of fixed assets that have occurred.", "label": "Capital Expenditures Incurred but Not yet Paid", "terseLabel": "Liability incurred for purchase of property and equipment" } } }, "localname": "CapitalExpendituresIncurredButNotYetPaid", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by type of cash and cash equivalent balance.", "label": "Cash and Cash Equivalents [Axis]", "terseLabel": "Cash and Cash Equivalents [Axis]" } } }, "localname": "CashAndCashEquivalentsAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/FairValueMeasurementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CashAndCashEquivalentsFairValueDisclosure": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Fair value portion of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash and Cash Equivalents, Fair Value Disclosure", "terseLabel": "Cash and cash equivalents" } } }, "localname": "CashAndCashEquivalentsFairValueDisclosure", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/FairValueMeasurementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r82", "r88", "r93" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents", "periodEndLabel": "Cash and cash equivalents at end of period", "periodStartLabel": "Cash and cash equivalents at beginning of period", "terseLabel": "Cash and cash equivalents" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "auth_ref": [ "r82", "r498" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "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": "Change in cash and cash equivalents" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash Flow, Noncash Investing and Financing Activities Disclosure [Abstract]", "terseLabel": "Non-Cash Investing Activity:" } } }, "localname": "CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Change in Contract with Customer, Asset and Liability [Abstract]", "terseLabel": "Change in Contract with Customer, Asset and Liability [Abstract]" } } }, "localname": "ChangeInContractWithCustomerAssetAndLiabilityAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDeferredRevenueDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1": { "auth_ref": [ "r301" ], "lang": { "en-us": { "role": { "documentation": "Exercise price per share or per unit of warrants or rights outstanding.", "label": "Class of Warrant or Right, Exercise Price of Warrants or Rights", "terseLabel": "Warrant exercise price (in dollars per share)" } } }, "localname": "ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails", "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies Disclosure [Abstract]" } } }, "localname": "CommitmentsAndContingenciesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "auth_ref": [ "r237", "r238", "r239", "r240", "r587" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/CommitmentsandContingencies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommitmentsAndContingenciesPolicyTextBlock": { "auth_ref": [ "r241", "r588" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for commitments and contingencies, which may include policies for recognizing and measuring loss and gain contingencies.", "label": "Commitments and Contingencies, Policy [Policy Text Block]", "terseLabel": "Commitments and Contingencies" } } }, "localname": "CommitmentsAndContingenciesPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [ "r104", "r105", "r475" ], "lang": { "en-us": { "role": { "documentation": "Stock that is subordinate to all other stock of the issuer.", "label": "Common Stock [Member]", "terseLabel": "Common Stock" } } }, "localname": "CommonStockMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r22" ], "lang": { "en-us": { "role": { "documentation": "Face amount or stated value per share of common stock.", "label": "Common Stock, Par or Stated Value Per Share", "terseLabel": "Common stock, par value (in dollars per share)" } } }, "localname": "CommonStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r22" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.", "label": "Common Stock, Shares Authorized", "terseLabel": "Common stock, shares authorized" } } }, "localname": "CommonStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r22" ], "lang": { "en-us": { "role": { "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.", "label": "Common Stock, Shares, Issued", "terseLabel": "Common stock, shares issued" } } }, "localname": "CommonStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r22", "r300" ], "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", "periodEndLabel": "Balance (in shares)", "periodStartLabel": "Balance (in shares)", "terseLabel": "Common stock, shares outstanding" } } }, "localname": "CommonStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheetsParenthetical", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r22", "r522" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "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 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 (par value $0.001 per share; 100,000,000 authorized; 50,572,384 shares issued and 32,070,673 shares outstanding as of June 30, 2021; 50,296,453 shares issued and 32,074,094 shares outstanding as of December 31, 2020)" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTax": { "auth_ref": [ "r57", "r59", "r60", "r65", "r549", "r564" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncome": { "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/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncome" ], "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 hardware" } } }, "localname": "ComputerEquipmentMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ComputerSoftwareIntangibleAssetMember": { "auth_ref": [ "r221", "r227", "r433" ], "lang": { "en-us": { "role": { "documentation": "Collection of computer programs and related data that provide instructions to a computer, for example, but not limited to, application program, control module or operating system, that perform one or more particular functions or tasks.", "label": "Computer Software, Intangible Asset [Member]", "terseLabel": "Software" } } }, "localname": "ComputerSoftwareIntangibleAssetMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ContractWithCustomerBasisOfPricingAxis": { "auth_ref": [ "r328", "r335" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ContractWithCustomerBasisOfPricingDomain": { "auth_ref": [ "r328", "r335" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ContractWithCustomerLiability": { "auth_ref": [ "r309", "r310", "r329" ], "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": "Deferred revenue balance" } } }, "localname": "ContractWithCustomerLiability", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDeferredRevenueDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "auth_ref": [ "r330" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.", "label": "Contract with Customer, Liability, Revenue Recognized", "terseLabel": "Recognition of deferred revenue" } } }, "localname": "ContractWithCustomerLiabilityRevenueRecognized", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDeferredRevenueDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ConvertibleDebtMember": { "auth_ref": [ "r257", "r258", "r259", "r261", "r271", "r272", "r273", "r277", "r278", "r279", "r280", "r281", "r291", "r292", "r293", "r294" ], "lang": { "en-us": { "role": { "documentation": "Borrowing which can be exchanged for a specified number of another security at the option of the issuer or the holder, for example, but not limited to, the entity's common stock.", "label": "Convertible Debt [Member]", "terseLabel": "Convertible debt" } } }, "localname": "ConvertibleDebtMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails", "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails", "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConvertibleDebtSecuritiesMember": { "auth_ref": [ "r347" ], "lang": { "en-us": { "role": { "documentation": "Debt securities that can be exchanged for equity of the debt issuer at the option of the issuer or the holder.", "label": "Convertible Debt Securities [Member]", "terseLabel": "Convertible senior notes" } } }, "localname": "ConvertibleDebtSecuritiesMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareAntidilutiveSecuritiesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CostOfGoodsAndServicesSold": { "auth_ref": [ "r69", "r533" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations": { "order": 7.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.", "label": "Cost of Goods and Services Sold", "terseLabel": "Cost of revenues (cost of services, exclusive of depreciation and amortization, shown separately below)" } } }, "localname": "CostOfGoodsAndServicesSold", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostOfGoodsAndServicesSoldAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cost of Goods and Services Sold [Abstract]", "terseLabel": "Cost of revenues (cost of services, exclusive of depreciation and amortization, shown separately below)" } } }, "localname": "CostOfGoodsAndServicesSoldAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "stringItemType" }, "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/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails", "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails", "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CreditLossAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Credit Loss [Abstract]" } } }, "localname": "CreditLossAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_CreditLossFinancialInstrumentPolicyTextBlock": { "auth_ref": [ "r187", "r188", "r189", "r191", "r192", "r198", "r199", "r200", "r201", "r202", "r203", "r204", "r205", "r206", "r207", "r208", "r209", "r210" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for credit loss on financial instrument measured at amortized cost basis, net investment in lease, off-balance sheet credit exposure, and available-for-sale debt security. Includes, but is not limited to, methodology used to estimate allowance for credit loss, how writeoff of uncollectible amount is recognized, and determination of past due status and nonaccrual status.", "label": "Credit Loss, Financial Instrument [Policy Text Block]", "terseLabel": "Allowance for Credit Losses" } } }, "localname": "CreditLossFinancialInstrumentPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CustomerRelationshipsMember": { "auth_ref": [ "r432" ], "lang": { "en-us": { "role": { "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships.", "label": "Customer Relationships [Member]", "terseLabel": "Customer relationships" } } }, "localname": "CustomerRelationshipsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedUsefulLivesDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtConversionByUniqueDescriptionAxis": { "auth_ref": [ "r90", "r92" ], "lang": { "en-us": { "role": { "documentation": "Information by description of debt issuances converted in a noncash or part noncash transaction.", "label": "Debt Conversion Description [Axis]", "terseLabel": "Debt Conversion Description [Axis]" } } }, "localname": "DebtConversionByUniqueDescriptionAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtConversionNameDomain": { "auth_ref": [ "r90", "r92" ], "lang": { "en-us": { "role": { "documentation": "The name of the original debt issue that has been converted in a noncash (or part noncash) transaction during the accounting period. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period.", "label": "Debt Conversion, Name [Domain]", "terseLabel": "Debt Conversion, Name [Domain]" } } }, "localname": "DebtConversionNameDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Debt Disclosure [Abstract]" } } }, "localname": "DebtDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_DebtDisclosureTextBlock": { "auth_ref": [ "r95", "r264", "r265", "r266", "r267", "r268", "r269", "r270", "r275", "r282", "r283", "r285", "r297" ], "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": "Long-term Debt" } } }, "localname": "DebtDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebt" ], "xbrltype": "textBlockItemType" }, "us-gaap_DebtInstrumentAxis": { "auth_ref": [ "r17", "r18", "r19", "r96", "r102", "r258", "r259", "r260", "r261", "r262", "r263", "r265", "r271", "r272", "r273", "r274", "r276", "r277", "r278", "r279", "r280", "r281", "r291", "r292", "r293", "r294", "r509", "r544", "r546", "r554" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/FairValueMeasurementsDetails", "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails", "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails", "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails", "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails", "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument.", "label": "Debt Instrument, Basis Spread on Variable Rate", "terseLabel": "Margin interest rate percentage" } } }, "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DebtInstrumentCarryingAmount": { "auth_ref": [ "r19", "r286", "r546", "r554" ], "calculation": { "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails": { "order": 1.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt.", "label": "Long-term Debt, Gross", "terseLabel": "Principal" } } }, "localname": "DebtInstrumentCarryingAmount", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails", "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtInstrumentConvertibleConversionPrice1": { "auth_ref": [ "r260", "r289" ], "lang": { "en-us": { "role": { "documentation": "The price per share of the conversion feature embedded in the debt instrument.", "label": "Debt Instrument, Convertible, Conversion Price", "terseLabel": "Initial conversion price (in dollars per share)" } } }, "localname": "DebtInstrumentConvertibleConversionPrice1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_DebtInstrumentConvertibleConversionRatio1": { "auth_ref": [ "r41", "r260", "r301", "r302", "r304" ], "lang": { "en-us": { "role": { "documentation": "Ratio applied to the conversion of debt instrument into equity with equity shares divided by debt principal amount.", "label": "Debt Instrument, Convertible, Conversion Ratio", "terseLabel": "Shares conversion rate" } } }, "localname": "DebtInstrumentConvertibleConversionRatio1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "pureItemType" }, "us-gaap_DebtInstrumentConvertibleThresholdConsecutiveTradingDays1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Threshold period of specified consecutive trading days within which common stock price to conversion price of convertible debt instrument must exceed threshold percentage for specified number of trading days to trigger conversion feature.", "label": "Debt Instrument, Convertible, Threshold Consecutive Trading Days", "terseLabel": "Consecutive trading day period (in days)" } } }, "localname": "DebtInstrumentConvertibleThresholdConsecutiveTradingDays1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "integerItemType" }, "us-gaap_DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Minimum percentage of common stock price to conversion price of convertible debt instruments to determine eligibility of conversion.", "label": "Debt Instrument, Convertible, Threshold Percentage of Stock Price Trigger", "terseLabel": "Conversion rate of the notes on trading day (as percent)" } } }, "localname": "DebtInstrumentConvertibleThresholdPercentageOfStockPriceTrigger", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DebtInstrumentConvertibleThresholdTradingDays": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Threshold number of specified trading days that common stock price to conversion price of convertible debt instruments must exceed threshold percentage within a specified consecutive trading period to trigger conversion feature.", "label": "Debt Instrument, Convertible, Threshold Trading Days", "terseLabel": "Threshold trading days (whether or not consecutive)" } } }, "localname": "DebtInstrumentConvertibleThresholdTradingDays", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "integerItemType" }, "us-gaap_DebtInstrumentFaceAmount": { "auth_ref": [ "r258", "r291", "r292", "r506", "r509", "r510" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Face (par) amount of debt instrument at time of issuance.", "label": "Debt Instrument, Face Amount", "terseLabel": "Aggregated principal amount" } } }, "localname": "DebtInstrumentFaceAmount", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtInstrumentFairValue": { "auth_ref": [ "r273", "r291", "r292", "r485" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Fair value portion of debt instrument payable, including, but not limited to, notes payable and loans payable.", "label": "Debt Instrument, Fair Value Disclosure", "terseLabel": "Note, debt instrument" } } }, "localname": "DebtInstrumentFairValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/FairValueMeasurementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtInstrumentInterestRateStatedPercentage": { "auth_ref": [ "r40", "r259" ], "lang": { "en-us": { "role": { "documentation": "Contractual interest rate for funds borrowed, under the debt agreement.", "label": "Debt Instrument, Interest Rate, Stated Percentage", "terseLabel": "Interest rate stated, percentage" } } }, "localname": "DebtInstrumentInterestRateStatedPercentage", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DebtInstrumentLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Debt Instrument [Line Items]", "terseLabel": "Debt Instrument [Line Items]" } } }, "localname": "DebtInstrumentLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails", "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails", "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails", "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentNameDomain": { "auth_ref": [ "r42", "r96", "r102", "r258", "r259", "r260", "r261", "r262", "r263", "r265", "r271", "r272", "r273", "r274", "r276", "r277", "r278", "r279", "r280", "r281", "r291", "r292", "r293", "r294", "r509" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/FairValueMeasurementsDetails", "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails", "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails", "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails", "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails", "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtInstrumentTable": { "auth_ref": [ "r42", "r96", "r102", "r258", "r259", "r260", "r261", "r262", "r263", "r265", "r271", "r272", "r273", "r274", "r276", "r277", "r278", "r279", "r280", "r281", "r284", "r291", "r292", "r293", "r294", "r301", "r303", "r304", "r305", "r505", "r506", "r509", "r510", "r552" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails", "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails", "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails", "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet": { "auth_ref": [ "r271", "r287", "r291", "r292", "r507" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of unamortized debt discount (premium) and debt issuance costs.", "label": "Debt Instrument, Unamortized Discount (Premium) and Debt Issuance Costs, Net", "terseLabel": "Initial purchasers' discount and issuance costs" } } }, "localname": "DebtInstrumentUnamortizedDiscountPremiumAndDebtIssuanceCostsNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet": { "auth_ref": [ "r271", "r505", "r506", "r507", "r508", "r510" ], "calculation": { "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails": { "order": 2.0, "parentTag": "us-gaap_LongTermDebt", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after accumulated amortization, of debt discount (premium).", "label": "Debt Instrument, Unamortized Discount (Premium), Net", "negatedTerseLabel": "Less: Unamortized debt discount" } } }, "localname": "DebtInstrumentUnamortizedDiscountPremiumNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtInstrumentsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Debt Instruments [Abstract]", "terseLabel": "Liability component:" } } }, "localname": "DebtInstrumentsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtPolicyTextBlock": { "auth_ref": [ "r243" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy related to debt. Includes, but is not limited to, debt issuance costs, the effects of refinancings, method of amortizing debt issuance costs and original issue discount, and classifications of debt.", "label": "Debt, Policy [Policy Text Block]", "terseLabel": "Long-term Debt" } } }, "localname": "DebtPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent": { "auth_ref": [], "calculation": { "http://perficient.com/role/BalanceSheetComponentsOtherNonCurrentLiabilitiesDetails": { "order": 3.0, "parentTag": "us-gaap_OtherLiabilitiesNoncurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate carrying value as of the balance sheet date of the liabilities for all deferred compensation arrangements payable beyond one year (or the operating cycle, if longer).", "label": "Deferred Compensation Liability, Classified, Noncurrent", "terseLabel": "Deferred compensation liability" } } }, "localname": "DeferredCompensationLiabilityClassifiedNoncurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherNonCurrentLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredFinanceCostsNet": { "auth_ref": [ "r34", "r271", "r507" ], "calculation": { "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails": { "order": 3.0, "parentTag": "us-gaap_LongTermDebt", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs.", "label": "Debt Issuance Costs, Net", "negatedTerseLabel": "Unamortized debt issuance costs" } } }, "localname": "DeferredFinanceCostsNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "auth_ref": [ "r86", "r98", "r401", "r411", "r412", "r413" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.", "label": "Deferred Income Tax Expense (Benefit)", "verboseLabel": "Deferred income taxes" } } }, "localname": "DeferredIncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredRevenueCurrent": { "auth_ref": [ "r31" ], "calculation": { "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails": { "order": 9.0, "parentTag": "us-gaap_OtherLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable, classified as current.", "label": "Deferred Revenue, Current", "terseLabel": "Deferred revenues" } } }, "localname": "DeferredRevenueCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredTaxLiabilities": { "auth_ref": [ "r391", "r399" ], "calculation": { "http://perficient.com/role/BalanceSheetComponentsOtherNonCurrentLiabilitiesDetails": { "order": 5.0, "parentTag": "us-gaap_OtherLiabilitiesNoncurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting.", "label": "Deferred Tax Liabilities, Net", "terseLabel": "Deferred income taxes" } } }, "localname": "DeferredTaxLiabilities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherNonCurrentLiabilitiesDetails", "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredTaxLiabilityNotRecognizedAmountOfUnrecognizedDeferredTaxLiabilityUndistributedEarningsOfForeignSubsidiaries": { "auth_ref": [ "r419" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred tax liability not recognized because of the exceptions to comprehensive recognition of deferred taxes related to undistributed earnings of foreign subsidiaries.", "label": "Deferred Tax Liability Not Recognized, Amount of Unrecognized Deferred Tax Liability, Undistributed Earnings of Foreign Subsidiaries", "terseLabel": "Unrecognized deferred tax liability on unremitted earnings of foreign subsidiaries" } } }, "localname": "DeferredTaxLiabilityNotRecognizedAmountOfUnrecognizedDeferredTaxLiabilityUndistributedEarningsOfForeignSubsidiaries", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_Depreciation": { "auth_ref": [ "r86", "r233" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations": { "order": 2.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "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" } } }, "localname": "Depreciation", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeContractTypeDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Financial instrument or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset.", "label": "Derivative Contract [Domain]", "terseLabel": "Derivative Contract [Domain]" } } }, "localname": "DerivativeContractTypeDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/DerivativesNotionalAmountsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DerivativeInstrumentRiskAxis": { "auth_ref": [ "r49", "r457", "r458", "r460", "r461" ], "lang": { "en-us": { "role": { "documentation": "Information by type of derivative contract.", "label": "Derivative Instrument [Axis]", "terseLabel": "Derivative Instrument [Axis]" } } }, "localname": "DerivativeInstrumentRiskAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/DerivativesNotionalAmountsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Derivative Instruments and Hedging Activities Disclosure [Abstract]" } } }, "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock": { "auth_ref": [ "r465", "r478" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for derivative instruments and hedging activities including, but not limited to, risk management strategies, non-hedging derivative instruments, assets, liabilities, revenue and expenses, and methodologies and assumptions used in determining the amounts.", "label": "Derivative Instruments and Hedging Activities Disclosure [Text Block]", "terseLabel": "Derivatives" } } }, "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/Derivatives" ], "xbrltype": "textBlockItemType" }, "us-gaap_DerivativeNotionalAmount": { "auth_ref": [ "r451", "r453" ], "lang": { "en-us": { "role": { "documentation": "Nominal or face amount used to calculate payment on derivative.", "label": "Derivative, Notional Amount", "terseLabel": "Derivative notional amounts" } } }, "localname": "DerivativeNotionalAmount", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/DerivativesNotionalAmountsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativesFairValueLineItems": { "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": "Derivatives, Fair Value [Line Items]", "terseLabel": "Derivatives, Fair Value [Line Items]" } } }, "localname": "DerivativesFairValueLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/DerivativesNotionalAmountsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DerivativesPolicyTextBlock": { "auth_ref": [ "r101", "r450", "r452", "r454", "r455", "r463" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for its derivative instruments and hedging activities.", "label": "Derivatives, Policy [Policy Text Block]", "terseLabel": "Derivatives" } } }, "localname": "DerivativesPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_DifferenceBetweenRevenueGuidanceInEffectBeforeAndAfterTopic606Member": { "auth_ref": [ "r341" ], "lang": { "en-us": { "role": { "documentation": "Effect in current period from application of guidance for revenue from contract with customer compared with guidance for revenue recognition applicable prior to change when using transition method for cumulative effect in period including initial date of application.", "label": "Difference between Revenue Guidance in Effect before and after Topic 606 [Member]", "verboseLabel": "Impact of ASC topic 606 adoption" } } }, "localname": "DifferenceBetweenRevenueGuidanceInEffectBeforeAndAfterTopic606Member", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDeferredRevenueDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DisaggregationOfRevenueLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Disaggregation of Revenue [Line Items]", "terseLabel": "Disaggregation of Revenue [Line Items]" } } }, "localname": "DisaggregationOfRevenueLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyGeographicAreaDetails", "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails", "http://perficient.com/role/RevenueServicesRevenueDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTable": { "auth_ref": [ "r328", "r332", "r333", "r334", "r335", "r336", "r337", "r338" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyGeographicAreaDetails", "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails", "http://perficient.com/role/RevenueServicesRevenueDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "auth_ref": [ "r328" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation of Revenue [Table Text Block]", "terseLabel": "Disaggregation of revenue" } } }, "localname": "DisaggregationOfRevenueTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "auth_ref": [ "r388" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensation" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Share-based Payment Arrangement [Abstract]" } } }, "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_DomesticCountryMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Designated tax department of the government that is entitled to levy and collect income taxes from the entity in its country of domicile.", "label": "Domestic Tax Authority [Member]", "terseLabel": "Domestic tax authority" } } }, "localname": "DomesticCountryMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_EarningsPerShareAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Earnings Per Share [Abstract]" } } }, "localname": "EarningsPerShareAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasic": { "auth_ref": [ "r66", "r115", "r116", "r117", "r118", "r119", "r126", "r129", "r136", "r137", "r138", "r140", "r141", "r476", "r477", "r550", "r565" ], "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 net income per share (in dollars per share)" } } }, "localname": "EarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareDiluted": { "auth_ref": [ "r66", "r115", "r116", "r117", "r118", "r119", "r129", "r136", "r137", "r138", "r140", "r141", "r476", "r477", "r550", "r565" ], "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 net income per share (in dollars per share)" } } }, "localname": "EarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "perShareItemType" }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r498" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 4.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents", "terseLabel": "Effect of exchange rate on cash and cash equivalents" } } }, "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "auth_ref": [ "r393" ], "lang": { "en-us": { "role": { "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Effective Income Tax Rate Reconciliation, Percent", "terseLabel": "Effective tax rate" } } }, "localname": "EffectiveIncomeTaxRateContinuingOperations", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "percentItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "auth_ref": [ "r374" ], "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": "Total unrecognized compensation cost related to non-vested share-based awards" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationStockAwardPlansDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "auth_ref": [ "r374" ], "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": "Unrecognized compensation cost, weighted-average period for recognition (in years)" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationStockAwardPlansDetails" ], "xbrltype": "durationItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense": { "auth_ref": [ "r373" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of tax benefit for recognition of expense of award under share-based payment arrangement.", "label": "Share-based Payment Arrangement, Expense, Tax Benefit", "terseLabel": "Associated current and future income tax benefits recognized" } } }, "localname": "EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationStockAwardPlansDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r2", "r61", "r62", "r63", "r104", "r105", "r106", "r111", "r120", "r122", "r142", "r182", "r300", "r306", "r380", "r381", "r382", "r404", "r405", "r475", "r499", "r500", "r501", "r502", "r503", "r504", "r574", "r575", "r576", "r611" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails", "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]", "terseLabel": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]" } } }, "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/FairValueMeasurementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "auth_ref": [ "r479", "r480", "r481", "r484" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis.", "label": "Fair Value, Recurring and Nonrecurring [Table]", "terseLabel": "Fair Value, Recurring and Nonrecurring [Table]" } } }, "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/FairValueMeasurementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "auth_ref": [ "r273", "r291", "r292", "r347", "r348", "r349", "r350", "r351", "r352", "r353", "r354", "r480", "r523", "r524", "r525" ], "lang": { "en-us": { "role": { "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.", "label": "Fair Value Hierarchy and NAV [Axis]", "terseLabel": "Fair Value Hierarchy and NAV [Axis]" } } }, "localname": "FairValueByFairValueHierarchyLevelAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/FairValueMeasurementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueDisclosuresAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Fair Value Disclosures [Abstract]" } } }, "localname": "FairValueDisclosuresAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_FairValueDisclosuresTextBlock": { "auth_ref": [ "r483" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.", "label": "Fair Value Disclosures [Text Block]", "terseLabel": "Fair Value Measurements" } } }, "localname": "FairValueDisclosuresTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/FairValueMeasurements" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueInputsLevel1Member": { "auth_ref": [ "r273", "r347", "r348", "r353", "r354", "r480", "r523" ], "lang": { "en-us": { "role": { "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date.", "label": "Fair Value, Inputs, Level 1 [Member]", "terseLabel": "Level 1" } } }, "localname": "FairValueInputsLevel1Member", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/FairValueMeasurementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueInputsLevel2Member": { "auth_ref": [ "r273", "r291", "r292", "r347", "r348", "r353", "r354", "r480", "r524" ], "lang": { "en-us": { "role": { "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets.", "label": "Fair Value, Inputs, Level 2 [Member]", "terseLabel": "Level 2" } } }, "localname": "FairValueInputsLevel2Member", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/FairValueMeasurementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities.", "label": "Fair Value Measurement, Policy [Policy Text Block]", "terseLabel": "Fair Value Measurement" } } }, "localname": "FairValueMeasurementPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "auth_ref": [ "r273", "r291", "r292", "r347", "r348", "r349", "r350", "r351", "r352", "r353", "r354", "r523", "r524", "r525" ], "lang": { "en-us": { "role": { "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value.", "label": "Fair Value Hierarchy and NAV [Domain]", "terseLabel": "Fair Value Hierarchy and NAV [Domain]" } } }, "localname": "FairValueMeasurementsFairValueHierarchyDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/FairValueMeasurementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable": { "auth_ref": [ "r456", "r459", "r464" ], "lang": { "en-us": { "role": { "documentation": "Schedule that discloses the location and fair value amounts of derivative instruments (and nonderivative instruments that are designated and qualify as hedging instruments) reported in the statement of financial position.", "label": "Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table]", "terseLabel": "Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table]" } } }, "localname": "FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/DerivativesNotionalAmountsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems": { "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": "Financing Receivable, Allowance for Credit Loss [Line Items]", "terseLabel": "Financing Receivable, Allowance for Credit Loss [Line Items]" } } }, "localname": "FinancingReceivableAllowanceForCreditLossesLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/AllowanceforCreditLossesDetails" ], "xbrltype": "stringItemType" }, "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", "verboseLabel": "Estimated useful lives (in years)" } } }, "localname": "FiniteLivedIntangibleAssetUsefulLife", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedUsefulLivesDetails" ], "xbrltype": "durationItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "auth_ref": [ "r228" ], "calculation": { "http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails": { "order": 2.0, "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill", "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/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTable": { "auth_ref": [ "r221" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Finite-Lived Intangible Asset, Expected Amortization, after Year Five", "terseLabel": "Thereafter" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedAmortizationExpenseDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": { "auth_ref": [ "r230" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year One", "terseLabel": "2022" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedAmortizationExpenseDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in remainder of current fiscal year.", "label": "Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year", "terseLabel": "2021 remaining" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedAmortizationExpenseDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": { "auth_ref": [ "r230" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Four", "terseLabel": "2025" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedAmortizationExpenseDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "auth_ref": [ "r230" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Three", "terseLabel": "2024" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedAmortizationExpenseDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "auth_ref": [ "r230" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Two", "terseLabel": "2023" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedAmortizationExpenseDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "auth_ref": [ "r221", "r224", "r228", "r231", "r534", "r541" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedUsefulLivesDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]", "terseLabel": "Estimated Amortization Expense [Abstract]" } } }, "localname": "FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedAmortizationExpenseDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "auth_ref": [ "r228", "r541" ], "calculation": { "http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails": { "order": 1.0, "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill", "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 Amounts" } } }, "localname": "FiniteLivedIntangibleAssetsGross", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsGrossAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Gross [Abstract]", "terseLabel": "Intangible Assets [Abstract]", "verboseLabel": "Finite-Lived Intangible Assets, Gross [Abstract]" } } }, "localname": "FiniteLivedIntangibleAssetsGrossAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedUsefulLivesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Finite-Lived Intangible Assets [Line Items]", "terseLabel": "Finite-Lived Intangible Assets [Line Items]" } } }, "localname": "FiniteLivedIntangibleAssetsLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedUsefulLivesDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "auth_ref": [ "r221", "r227" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedUsefulLivesDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FiniteLivedIntangibleAssetsNetAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Net [Abstract]", "terseLabel": "Finite-Lived Intangible Assets, Net [Abstract]" } } }, "localname": "FiniteLivedIntangibleAssetsNetAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FinitelivedIntangibleAssetsAcquired1": { "auth_ref": [ "r222" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in assets, excluding financial assets, lacking physical substance with a definite life, from an acquisition.", "label": "Finite-lived Intangible Assets Acquired", "terseLabel": "Aggregate Acquisitions" } } }, "localname": "FinitelivedIntangibleAssetsAcquired1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FixedPriceContractMember": { "auth_ref": [ "r335" ], "lang": { "en-us": { "role": { "documentation": "Contract with customer in which amount of consideration is fixed.", "label": "Fixed-price Contract [Member]", "terseLabel": "Fixed fee contracts" } } }, "localname": "FixedPriceContractMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ForeignExchangeForwardMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Foreign exchange forward traded on an exchange (examples include but are not limited to the International Securities Exchange, Philadelphia Stock Exchange, or the Chicago Mercantile Exchange) for options or future contracts to buy or sell a certain currency, at a specified date, at a fixed exercise exchange rate.", "label": "Foreign Exchange Forward [Member]", "terseLabel": "Foreign exchange contracts" } } }, "localname": "ForeignExchangeForwardMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/DerivativesNotionalAmountsDetails" ], "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": "Furniture and fixtures" } } }, "localname": "FurnitureAndFixturesMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_GainsLossesOnExtinguishmentOfDebt": { "auth_ref": [ "r86", "r295", "r296" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity.", "label": "Gain (Loss) on Extinguishment of Debt", "negatedTerseLabel": "Loss on extinguishment of debt" } } }, "localname": "GainsLossesOnExtinguishmentOfDebt", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_Goodwill": { "auth_ref": [ "r213", "r214", "r522", "r542" ], "calculation": { "http://perficient.com/role/BusinessCombinationsBrainjocksDetails": { "order": 4.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": 1.0 }, "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.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": "Balance at June 30, 2021", "periodStartLabel": "Balance at December 31, 2020", "terseLabel": "Goodwill" } } }, "localname": "Goodwill", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails", "http://perficient.com/role/CondensedConsolidatedBalanceSheets", "http://perficient.com/role/GoodwillandIntangibleAssetsGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Goodwill and Intangible Assets Disclosure [Abstract]" } } }, "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": { "auth_ref": [ "r232" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssets" ], "xbrltype": "textBlockItemType" }, "us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock": { "auth_ref": [ "r217", "r225" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": { "auth_ref": [ "r215" ], "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": "Effect of foreign currency translation adjustments" } } }, "localname": "GoodwillForeignCurrencyTranslationGainLoss", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillPurchaseAccountingAdjustments": { "auth_ref": [ "r216", "r421" ], "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": "Purchase price allocation for acquisitions" } } }, "localname": "GoodwillPurchaseAccountingAdjustments", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsGoodwillDetails" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_HedgingDesignationAxis": { "auth_ref": [ "r454", "r462" ], "lang": { "en-us": { "role": { "documentation": "Information by designation of purpose of derivative instrument.", "label": "Hedging Designation [Axis]", "terseLabel": "Hedging Designation [Axis]" } } }, "localname": "HedgingDesignationAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/DerivativesNotionalAmountsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_HedgingDesignationDomain": { "auth_ref": [ "r454" ], "lang": { "en-us": { "role": { "documentation": "Designation of purpose of derivative instrument.", "label": "Hedging Designation [Domain]", "terseLabel": "Hedging Designation [Domain]" } } }, "localname": "HedgingDesignationDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/DerivativesNotionalAmountsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments": { "auth_ref": [ "r154", "r156", "r159", "r162", "r164" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations": { "order": 1.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (loss) from continuing operations before deduction of income tax expense (benefit) and income (loss) attributable to noncontrolling interest, and addition of income (loss) from equity method investments.", "label": "Income (Loss) from Continuing Operations before Equity Method Investments, Income Taxes, Noncontrolling Interest", "totalLabel": "Income before income taxes" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeStatementAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Income Statement [Abstract]" } } }, "localname": "IncomeStatementAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxAuthorityAxis": { "auth_ref": [ "r396" ], "lang": { "en-us": { "role": { "documentation": "Information by tax jurisdiction.", "label": "Income Tax Authority [Axis]", "terseLabel": "Income Tax Authority [Axis]" } } }, "localname": "IncomeTaxAuthorityAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxAuthorityDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Agency, division or body classification that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes.", "label": "Income Tax Authority [Domain]", "terseLabel": "Income Tax Authority [Domain]" } } }, "localname": "IncomeTaxAuthorityDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeTaxAuthorityNameAxis": { "auth_ref": [ "r396" ], "lang": { "en-us": { "role": { "documentation": "Information by name of taxing authority.", "label": "Income Tax Authority, Name [Axis]", "terseLabel": "Income Tax Authority, Name [Axis]" } } }, "localname": "IncomeTaxAuthorityNameAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxAuthorityNameDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Named agency, division or body that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes.", "label": "Income Tax Authority, Name [Domain]", "terseLabel": "Income Tax Authority, Name [Domain]" } } }, "localname": "IncomeTaxAuthorityNameDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeTaxDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Abstract]" } } }, "localname": "IncomeTaxDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxDisclosureTextBlock": { "auth_ref": [ "r99", "r394", "r398", "r400", "r409", "r414", "r416", "r417", "r420" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/IncomeTaxes" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r100", "r121", "r122", "r153", "r392", "r410", "r415", "r566" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations": { "order": 2.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Income Tax Expense (Benefit)", "terseLabel": "Provision for income taxes" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxesPaidNet": { "auth_ref": [ "r89" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.", "label": "Income Taxes Paid, Net", "verboseLabel": "Cash paid for income taxes" } } }, "localname": "IncomeTaxesPaidNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsAndNotesReceivable": { "auth_ref": [ "r85" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period of the sum of amounts due within one year (or one business cycle) from customers for the credit sale of goods and services; and from note holders for outstanding loans.", "label": "Increase (Decrease) in Accounts and Notes Receivable", "negatedLabel": "Accounts receivable" } } }, "localname": "IncreaseDecreaseInAccountsAndNotesReceivable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "auth_ref": [ "r85" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 10.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.", "label": "Increase (Decrease) in Accounts Payable", "terseLabel": "Accounts payable" } } }, "localname": "IncreaseDecreaseInAccountsPayable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "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 acquisitions:" } } }, "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInOtherOperatingAssets": { "auth_ref": [ "r85" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in operating assets classified as other.", "label": "Increase (Decrease) in Other Operating Assets", "negatedLabel": "Other assets" } } }, "localname": "IncreaseDecreaseInOtherOperatingAssets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOtherOperatingLiabilities": { "auth_ref": [ "r85" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 11.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in operating liabilities classified as other.", "label": "Increase (Decrease) in Other Operating Liabilities", "terseLabel": "Other liabilities" } } }, "localname": "IncreaseDecreaseInOtherOperatingLiabilities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_IncrementalCommonSharesAttributableToCallOptionsAndWarrants": { "auth_ref": [ "r130", "r131", "r132", "r138" ], "calculation": { "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails": { "order": 5.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 call options and warrants using the treasury stock method.", "label": "Incremental Common Shares Attributable to Dilutive Effect of Call Options and Warrants", "terseLabel": "Shares issuable for exercise of warrants (in shares)" } } }, "localname": "IncrementalCommonSharesAttributableToCallOptionsAndWarrants", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_IncrementalCommonSharesAttributableToConversionOfDebtSecurities": { "auth_ref": [ "r133", "r134", "r138" ], "calculation": { "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails": { "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 convertible debt securities using the if-converted method.", "label": "Incremental Common Shares Attributable to Dilutive Effect of Conversion of Debt Securities", "terseLabel": "Shares issuable for conversion of convertible senior notes (in shares)" } } }, "localname": "IncrementalCommonSharesAttributableToConversionOfDebtSecurities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_IncrementalCommonSharesAttributableToEquityUnitPurchaseAgreements": { "auth_ref": [ "r130", "r131", "r138" ], "calculation": { "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails": { "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 equity unit purchase agreements using the treasury stock method.", "label": "Incremental Common Shares Attributable to Dilutive Effect of Equity Unit Purchase Agreements", "terseLabel": "Shares issuable for acquisition consideration (in shares)" } } }, "localname": "IncrementalCommonSharesAttributableToEquityUnitPurchaseAgreements", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis": { "auth_ref": [ "r341" ], "lang": { "en-us": { "role": { "documentation": "Information about effect of transition method for cumulative effect in initial period of application.", "label": "Initial Application Period Cumulative Effect Transition [Axis]", "terseLabel": "Initial Application Period Cumulative Effect Transition [Axis]" } } }, "localname": "InitialApplicationPeriodCumulativeEffectTransitionAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDeferredRevenueDetails" ], "xbrltype": "stringItemType" }, "us-gaap_InitialApplicationPeriodCumulativeEffectTransitionDomain": { "auth_ref": [ "r341" ], "lang": { "en-us": { "role": { "documentation": "Effect of transition method for cumulative effect in initial period of application.", "label": "Initial Application Period Cumulative Effect Transition [Domain]", "terseLabel": "Initial Application Period Cumulative Effect Transition [Domain]" } } }, "localname": "InitialApplicationPeriodCumulativeEffectTransitionDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDeferredRevenueDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "auth_ref": [ "r219", "r226" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_Assets", "weight": 1.0 }, "http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "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)", "totalLabel": "Net Carrying Amounts", "verboseLabel": "Intangible assets, net" } } }, "localname": "IntangibleAssetsNetExcludingGoodwill", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets", "http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestExpenseDebt": { "auth_ref": [ "r71", "r279", "r290", "r293", "r294" ], "calculation": { "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of the cost of borrowed funds accounted for as interest expense for debt.", "label": "Interest Expense, Debt", "totalLabel": "Total interest expense recognized" } } }, "localname": "InterestExpenseDebt", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestExpenseDebtExcludingAmortization": { "auth_ref": [ "r73", "r280", "r293", "r294" ], "calculation": { "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails": { "order": 1.0, "parentTag": "us-gaap_InterestExpenseDebt", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the portion of interest incurred in the period on debt arrangements that was charged against earnings, excluding amortization of debt discount (premium) and financing costs.", "label": "Interest Expense, Debt, Excluding Amortization", "terseLabel": "Coupon interest" } } }, "localname": "InterestExpenseDebtExcludingAmortization", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestPaidNet": { "auth_ref": [ "r81", "r83", "r89" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.", "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities", "terseLabel": "Cash paid for interest" } } }, "localname": "InterestPaidNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_InternalRevenueServiceIRSMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Designated tax department of the United States of America government entitled to levy and collect income taxes from the entity.", "label": "Internal Revenue Service (IRS) [Member]", "terseLabel": "Internal Revenue Service (IRS)" } } }, "localname": "InternalRevenueServiceIRSMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LeaseholdImprovementsMember": { "auth_ref": [ "r234" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LeasesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Leases [Abstract]" } } }, "localname": "LeasesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_LesseeLeaseDescriptionLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Lessee, Lease, Description [Line Items]", "terseLabel": "Lessee, Lease, Description [Line Items]" } } }, "localname": "LesseeLeaseDescriptionLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LeasesNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LesseeLeaseDescriptionTable": { "auth_ref": [ "r515" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about lessee's leases.", "label": "Lessee, Lease, Description [Table]", "terseLabel": "Lessee, Lease, Description [Table]" } } }, "localname": "LesseeLeaseDescriptionTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LeasesNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "auth_ref": [ "r516" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.", "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]", "terseLabel": "Future minimum leases payments under ASC topic 842" } } }, "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LeasesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "auth_ref": [ "r516" ], "calculation": { "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details_1": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.", "label": "Lessee, Operating Lease, Liability, to be Paid", "totalLabel": "Total future lease payments" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": { "auth_ref": [ "r516" ], "calculation": { "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details": { "order": 5.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, to be Paid, after Year Five", "terseLabel": "Thereafter" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "auth_ref": [ "r516" ], "calculation": { "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details": { "order": 6.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year One", "terseLabel": "2022" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "auth_ref": [ "r516" ], "calculation": { "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details": { "order": 4.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four", "terseLabel": "2025" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "auth_ref": [ "r516" ], "calculation": { "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details": { "order": 3.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three", "terseLabel": "2024" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "auth_ref": [ "r516" ], "calculation": { "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details": { "order": 2.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two", "terseLabel": "2023" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": { "auth_ref": [ "r516" ], "calculation": { "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details": { "order": 1.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.", "label": "Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year", "terseLabel": "2021 remaining" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "auth_ref": [ "r516" ], "calculation": { "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details_1": { "order": 1.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.", "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount", "negatedLabel": "Less implied interest" } } }, "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseTermOfContract": { "auth_ref": [ "r514" ], "lang": { "en-us": { "role": { "documentation": "Term of lessee's operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Lessee, Operating Lease, Term of Contract", "terseLabel": "Remaining lease terms (in years)" } } }, "localname": "LesseeOperatingLeaseTermOfContract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LeasesNarrativeDetails" ], "xbrltype": "durationItemType" }, "us-gaap_LesseeOperatingLeasesTextBlock": { "auth_ref": [ "r517" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.", "label": "Lessee, Operating Leases [Text Block]", "terseLabel": "Leases" } } }, "localname": "LesseeOperatingLeasesTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/Leases" ], "xbrltype": "textBlockItemType" }, "us-gaap_LettersOfCreditOutstandingAmount": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date.", "label": "Letters of Credit Outstanding, Amount", "terseLabel": "Letters of credit outstanding" } } }, "localname": "LettersOfCreditOutstandingAmount", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_Liabilities": { "auth_ref": [ "r37", "r97", "r158", "r178", "r246", "r247", "r248", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r446", "r448", "r449", "r486", "r520", "r521" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "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/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r29", "r97", "r178", "r486", "r522", "r547", "r560" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "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/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r39", "r97", "r178", "r246", "r247", "r248", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r446", "r448", "r449", "r486", "r520", "r521", "r522" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "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/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Line of Credit Facility [Abstract]", "terseLabel": "Line of Credit [Abstract]" } } }, "localname": "LineOfCreditFacilityAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd": { "auth_ref": [ "r36" ], "lang": { "en-us": { "role": { "documentation": "The effective interest rate at the end of the reporting period.", "label": "Line of Credit Facility, Interest Rate at Period End", "terseLabel": "Interest rate at end of period" } } }, "localname": "LineOfCreditFacilityInterestRateAtPeriodEnd", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "percentItemType" }, "us-gaap_LineOfCreditFacilityLineItems": { "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": "Line of Credit Facility [Line Items]", "terseLabel": "Line of Credit Facility [Line Items]" } } }, "localname": "LineOfCreditFacilityLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "auth_ref": [ "r36" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": { "auth_ref": [ "r36" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding).", "label": "Line of Credit Facility, Remaining Borrowing Capacity", "terseLabel": "Available borrowing capacity" } } }, "localname": "LineOfCreditFacilityRemainingBorrowingCapacity", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityTable": { "auth_ref": [ "r36", "r96" ], "lang": { "en-us": { "role": { "documentation": "A table or schedule providing information pertaining to short-term or long-term contractual arrangements with lenders, including letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line.", "label": "Line of Credit Facility [Table]", "terseLabel": "Line of Credit Facility [Table]" } } }, "localname": "LineOfCreditFacilityTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The fee, expressed as a percentage of the line of credit facility, for available but unused credit capacity under the credit facility.", "label": "Line of Credit Facility, Unused Capacity, Commitment Fee Percentage", "terseLabel": "Annual commitment fee percentage on unused capacity" } } }, "localname": "LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "percentItemType" }, "us-gaap_LondonInterbankOfferedRateLIBORMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Interest rate at which a bank borrows funds from other banks in the London interbank market.", "label": "London Interbank Offered Rate (LIBOR) [Member]", "terseLabel": "London interbank offered rate (LIBOR)" } } }, "localname": "LondonInterbankOfferedRateLIBORMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LongTermDebt": { "auth_ref": [ "r19", "r272", "r288", "r291", "r292", "r546", "r557" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 }, "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.", "label": "Long-term Debt", "terseLabel": "Long-term debt, net", "totalLabel": "Net carrying amount" } } }, "localname": "LongTermDebt", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets", "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails", "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturityDate": { "auth_ref": [ "r482" ], "lang": { "en-us": { "role": { "documentation": "Maturity date of long-term debt, in YYYY-MM-DD format.", "label": "Long-term Debt, Maturity Date", "terseLabel": "Maturity date" } } }, "localname": "LongTermDebtMaturityDate", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "dateItemType" }, "us-gaap_LongtermDebtTypeAxis": { "auth_ref": [ "r42" ], "lang": { "en-us": { "role": { "documentation": "Information by type of long-term debt.", "label": "Long-term Debt, Type [Axis]", "terseLabel": "Long-term Debt, Type [Axis]" } } }, "localname": "LongtermDebtTypeAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails", "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails", "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails", "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LongtermDebtTypeDomain": { "auth_ref": [ "r42", "r244" ], "lang": { "en-us": { "role": { "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer.", "label": "Long-term Debt, Type [Domain]", "terseLabel": "Long-term Debt, Type [Domain]" } } }, "localname": "LongtermDebtTypeDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails", "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails", "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails", "http://perficient.com/role/LongtermDebtLiabilityandEquityComponentofNoteDetails" ], "xbrltype": "domainItemType" }, "us-gaap_MoneyMarketFundsMember": { "auth_ref": [ "r347" ], "lang": { "en-us": { "role": { "documentation": "Fund that invests in short-term money-market instruments, for example, but not limited to, commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and other highly liquid securities.", "label": "Money Market Funds [Member]", "terseLabel": "Money market funds" } } }, "localname": "MoneyMarketFundsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/FairValueMeasurementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r82" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 1.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.", "label": "Net Cash Provided by (Used in) Financing Activities", "totalLabel": "Net cash (used in) provided by financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]", "terseLabel": "Financing Activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r82" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 2.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.", "label": "Net Cash Provided by (Used in) Investing Activities", "totalLabel": "Net cash used in investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]", "terseLabel": "Investing Activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r82", "r84", "r87" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 3.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/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "Operating Activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r6", "r56", "r58", "r63", "r64", "r87", "r97", "r110", "r115", "r116", "r117", "r118", "r121", "r122", "r135", "r154", "r156", "r159", "r162", "r164", "r178", "r246", "r247", "r248", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r477", "r486", "r548", "r563" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncome": { "order": 1.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 }, "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.", "label": "Net Income (Loss) Attributable to Parent", "terseLabel": "Net income", "totalLabel": "Net income", "verboseLabel": "Net income" } } }, "localname": "NetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncome", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Accounting Standards Update and Change in Accounting Principle [Abstract]" } } }, "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": { "auth_ref": [ "r5", "r108", "r109", "r112", "r113", "r123", "r124", "r125", "r175", "r176", "r183", "r184", "r339", "r340", "r342", "r343", "r383", "r406", "r407", "r408", "r473", "r493", "r494", "r495", "r519", "r538", "r539", "r540", "r578", "r579", "r580", "r581", "r583", "r612" ], "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/2021-01-31", "presentation": [ "http://perficient.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/2021-01-31", "presentation": [ "http://perficient.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_NoncompeteAgreementsMember": { "auth_ref": [ "r430" ], "lang": { "en-us": { "role": { "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party.", "label": "Noncompete Agreements [Member]", "terseLabel": "Non-compete agreements" } } }, "localname": "NoncompeteAgreementsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedUsefulLivesDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NondesignatedMember": { "auth_ref": [ "r454" ], "lang": { "en-us": { "role": { "documentation": "Derivative instrument not designated as hedging instrument under Generally Accepted Accounting Principles (GAAP).", "label": "Not Designated as Hedging Instrument [Member]", "terseLabel": "Total derivatives not designated as hedges" } } }, "localname": "NondesignatedMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/DerivativesNotionalAmountsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NotionalAmountOfDerivativesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Notional Disclosures [Abstract]", "terseLabel": "Notional Disclosures [Abstract]" } } }, "localname": "NotionalAmountOfDerivativesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/DerivativesNotionalAmountsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [ "r154", "r156", "r159", "r162", "r164" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The net result for the period of deducting operating expenses from operating revenues.", "label": "Operating Income (Loss)", "totalLabel": "Income from operations" } } }, "localname": "OperatingIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseExpense": { "auth_ref": [ "r513" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of operating lease expense. Excludes sublease income.", "label": "Operating Lease, Expense", "terseLabel": "Operating lease expense" } } }, "localname": "OperatingLeaseExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LeasesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiability": { "auth_ref": [ "r512" ], "calculation": { "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details_1": { "order": 2.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 }, "http://perficient.com/role/LeasesLeaseLiabilitiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.", "label": "Operating Lease, Liability", "totalLabel": "Total" } } }, "localname": "OperatingLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LeasesFutureMinimumLeasePaymentsunderASCTopic842Details", "http://perficient.com/role/LeasesLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityCurrent": { "auth_ref": [ "r512" ], "calculation": { "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails": { "order": 7.0, "parentTag": "us-gaap_OtherLiabilitiesCurrent", "weight": 1.0 }, "http://perficient.com/role/LeasesLeaseLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.", "label": "Operating Lease, Liability, Current", "terseLabel": "Current operating lease liabilities", "verboseLabel": "Other current liabilities" } } }, "localname": "OperatingLeaseLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails", "http://perficient.com/role/LeasesLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "auth_ref": [ "r512" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 }, "http://perficient.com/role/LeasesLeaseLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.", "label": "Operating Lease, Liability, Noncurrent", "terseLabel": "Operating lease liabilities" } } }, "localname": "OperatingLeaseLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets", "http://perficient.com/role/LeasesLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseRightOfUseAsset": { "auth_ref": [ "r511" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's right to use underlying asset under operating lease.", "label": "Operating Lease, Right-of-Use Asset", "terseLabel": "Operating lease right-of-use assets" } } }, "localname": "OperatingLeaseRightOfUseAsset", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OrderOrProductionBacklogMember": { "auth_ref": [ "r431" ], "lang": { "en-us": { "role": { "documentation": "Orders, production or production backlog arising from contracts such as purchase or sales orders acquired in a business combination.", "label": "Order or Production Backlog [Member]", "terseLabel": "Customer backlog", "verboseLabel": "Customer backlog" } } }, "localname": "OrderOrProductionBacklogMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedUsefulLivesDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]" } } }, "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_OtherAssetsCurrent": { "auth_ref": [ "r47", "r522" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current assets classified as other.", "label": "Other Assets, Current", "terseLabel": "Other current assets" } } }, "localname": "OtherAssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsNoncurrent": { "auth_ref": [ "r34" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 6.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of noncurrent assets classified as other.", "label": "Other Assets, Noncurrent", "terseLabel": "Other non-current assets" } } }, "localname": "OtherAssetsNoncurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": { "auth_ref": [ "r51" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncome": { "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.", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax", "terseLabel": "Foreign currency translation adjustment, net of tax", "verboseLabel": "Foreign currency translation adjustment" } } }, "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]", "terseLabel": "Other comprehensive (loss) income:" } } }, "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncome" ], "xbrltype": "stringItemType" }, "us-gaap_OtherCurrentLiabilitiesTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of other current liabilities.", "label": "Other Current Liabilities [Table Text Block]", "terseLabel": "Other current liabilities" } } }, "localname": "OtherCurrentLiabilitiesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_OtherLiabilitiesCurrent": { "auth_ref": [ "r13", "r14", "r38", "r522" ], "calculation": { "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.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", "totalLabel": "Total", "verboseLabel": "Other current liabilities" } } }, "localname": "OtherLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails", "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherLiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Other Liabilities, Current [Abstract]", "terseLabel": "Other current liabilities:" } } }, "localname": "OtherLiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OtherLiabilitiesNoncurrent": { "auth_ref": [ "r43" ], "calculation": { "http://perficient.com/role/BalanceSheetComponentsOtherNonCurrentLiabilitiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "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 non-current liabilities", "totalLabel": "Total" } } }, "localname": "OtherLiabilitiesNoncurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherNonCurrentLiabilitiesDetails", "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherLiabilitiesNoncurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Other Liabilities, Noncurrent [Abstract]", "terseLabel": "Other non-current liabilities:" } } }, "localname": "OtherLiabilitiesNoncurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherNonCurrentLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OtherNoncurrentLiabilitiesTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of other noncurrent liabilities.", "label": "Other Noncurrent Liabilities [Table Text Block]", "terseLabel": "Other non-current liabilities" } } }, "localname": "OtherNoncurrentLiabilitiesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_OtherNonoperatingIncomeExpense": { "auth_ref": [ "r72" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations": { "order": 2.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.", "label": "Other Nonoperating Income (Expense)", "negatedTerseLabel": "Net other expense (income)" } } }, "localname": "OtherNonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherSundryLiabilitiesCurrent": { "auth_ref": [ "r38", "r242" ], "calculation": { "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_OtherLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Obligations not otherwise itemized or categorized in the footnotes to the financial statements that are due within one year or operating cycle, if longer, from the balance sheet date.", "label": "Other Sundry Liabilities, Current", "terseLabel": "Other current liabilities" } } }, "localname": "OtherSundryLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherCurrentLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherSundryLiabilitiesNoncurrent": { "auth_ref": [ "r20", "r545", "r556" ], "calculation": { "http://perficient.com/role/BalanceSheetComponentsOtherNonCurrentLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_OtherLiabilitiesNoncurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Obligations not otherwise itemized or categorized in the footnotes to the financial statements that are expected to be paid after one year (or the normal operating cycle, if longer), from the balance sheet date.", "label": "Other Sundry Liabilities, Noncurrent", "terseLabel": "Other non-current liabilities" } } }, "localname": "OtherSundryLiabilitiesNoncurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherNonCurrentLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities": { "auth_ref": [ "r79" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 5.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", "negatedTerseLabel": "Payment of contingent consideration for purchase of business" } } }, "localname": "PaymentForContingentConsiderationLiabilityFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsForRepurchaseOfCommonStock": { "auth_ref": [ "r77" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow to reacquire common stock during the period.", "label": "Payments for Repurchase of Common Stock", "terseLabel": "Payments for working capital or other general corporate purposes" } } }, "localname": "PaymentsForRepurchaseOfCommonStock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsForRepurchaseOfEquity": { "auth_ref": [ "r77" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow to reacquire common and preferred stock.", "label": "Payments for Repurchase of Equity", "negatedLabel": "Purchases of treasury stock" } } }, "localname": "PaymentsForRepurchaseOfEquity", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsOfFinancingCosts": { "auth_ref": [ "r80" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow for loan and debt issuance costs.", "label": "Payments of Financing Costs", "negatedTerseLabel": "Payment for credit facility financing fees", "terseLabel": "Payment for credit facility financing fees" } } }, "localname": "PaymentsOfFinancingCosts", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": { "auth_ref": [ "r74" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 3.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": "Purchase of businesses, net of cash acquired" } } }, "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r75" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.", "label": "Payments to Acquire Property, Plant, and Equipment", "negatedLabel": "Purchase of property and equipment" } } }, "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PensionAndOtherPostretirementBenefitExpense": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cost (reversal of cost) for pension and other postretirement benefits.", "label": "Pension and Other Postretirement Benefits Cost (Reversal of Cost)", "terseLabel": "Stock-based compensation expense for retirement savings plan contributions" } } }, "localname": "PensionAndOtherPostretirementBenefitExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationStockAwardPlansDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PlanNameAxis": { "auth_ref": [ "r362", "r375" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails", "http://perficient.com/role/StockBasedCompensationStockAwardPlansDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PlanNameDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Plan name for share-based payment arrangement.", "label": "Plan Name [Domain]", "terseLabel": "Plan Name [Domain]" } } }, "localname": "PlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails", "http://perficient.com/role/StockBasedCompensationStockAwardPlansDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "auth_ref": [ "r21", "r298" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_PreferredStockSharesAuthorized": { "auth_ref": [ "r21" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.", "label": "Preferred Stock, Shares Authorized", "terseLabel": "Preferred stock, shares authorized" } } }, "localname": "PreferredStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesIssued": { "auth_ref": [ "r21", "r298" ], "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" } } }, "localname": "PreferredStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesOutstanding": { "auth_ref": [ "r21" ], "lang": { "en-us": { "role": { "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.", "label": "Preferred Stock, Shares Outstanding", "terseLabel": "Preferred stock, shares outstanding" } } }, "localname": "PreferredStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockValue": { "auth_ref": [ "r21", "r522" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 6.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 (par value $0.001 per share; 8,000,000 authorized; no shares issued or outstanding as of June 30, 2021 and December 31, 2020)" } } }, "localname": "PreferredStockValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_PrepaidExpenseCurrent": { "auth_ref": [ "r9", "r11", "r211", "r212" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.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 within a future period of one year or the normal operating cycle, if longer.", "label": "Prepaid Expense, Current", "terseLabel": "Prepaid expenses" } } }, "localname": "PrepaidExpenseCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_PrimeRateMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Interest rate charged by financial institutions to their most creditworthy borrowers.", "label": "Prime Rate [Member]", "terseLabel": "Prime rate" } } }, "localname": "PrimeRateMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ProceedsFromDebtNetOfIssuanceCosts": { "auth_ref": [ "r76" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The cash inflow from additional borrowings, net of cash paid to third parties in connection with debt origination.", "label": "Proceeds from Debt, Net of Issuance Costs", "terseLabel": "Proceeds from debt, net of issuance costs" } } }, "localname": "ProceedsFromDebtNetOfIssuanceCosts", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromLinesOfCredit": { "auth_ref": [ "r76", "r96" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow from contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.", "label": "Proceeds from Lines of Credit", "terseLabel": "Proceeds from line of credit" } } }, "localname": "ProceedsFromLinesOfCredit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "auth_ref": [ "r33", "r236" ], "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": "Property, Plant and Equipment, Type [Axis]" } } }, "localname": "PropertyPlantAndEquipmentByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentGross": { "auth_ref": [ "r32", "r234" ], "calculation": { "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails": { "order": 1.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property, Plant and Equipment, Gross", "terseLabel": "Property and equipment" } } }, "localname": "PropertyPlantAndEquipmentGross", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Property, Plant and Equipment [Line Items]", "terseLabel": "Property, Plant and Equipment [Line Items]" } } }, "localname": "PropertyPlantAndEquipmentLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentNet": { "auth_ref": [ "r15", "r16", "r236", "r522", "r551", "r562" ], "calculation": { "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property, Plant and Equipment, Net", "terseLabel": "Property and equipment, net", "totalLabel": "Property and equipment, net" } } }, "localname": "PropertyPlantAndEquipmentNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails", "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentNetAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment, Net [Abstract]", "terseLabel": "Property and Equipment [Abstract]" } } }, "localname": "PropertyPlantAndEquipmentNetAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "auth_ref": [ "r15", "r236" ], "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": "Property and equipment" } } }, "localname": "PropertyPlantAndEquipmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "auth_ref": [ "r15", "r234" ], "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": "Property, Plant and Equipment, Type [Domain]" } } }, "localname": "PropertyPlantAndEquipmentTypeDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PropertyPlantAndEquipmentUsefulLife": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.", "label": "Property, Plant and Equipment, Useful Life", "terseLabel": "Useful life" } } }, "localname": "PropertyPlantAndEquipmentUsefulLife", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails" ], "xbrltype": "durationItemType" }, "us-gaap_ProvisionForDoubtfulAccounts": { "auth_ref": [ "r67", "r194" ], "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": "Charges to expense, net of recoveries" } } }, "localname": "ProvisionForDoubtfulAccounts", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/AllowanceforCreditLossesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ReceivablesNetCurrent": { "auth_ref": [ "r23", "r30", "r522", "r561", "r585" ], "calculation": { "http://perficient.com/role/BalanceSheetComponentsAccountsReceivableDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The total amount due to the entity within one year of the balance sheet date (or one operating cycle, if longer) from outside sources, including trade accounts receivable, notes and loans receivable, as well as any other types of receivables, net of allowances established for the purpose of reducing such receivables to an amount that approximates their net realizable value.", "label": "Receivables, Net, Current", "terseLabel": "Accounts receivable, net", "totalLabel": "Total" } } }, "localname": "ReceivablesNetCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsAccountsReceivableDetails", "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RepaymentsOfLongTermLinesOfCredit": { "auth_ref": [ "r78" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 6.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 on line of credit" } } }, "localname": "RepaymentsOfLongTermLinesOfCredit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Type of cash and cash equivalent. Cash is currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash and Cash Equivalents [Domain]", "terseLabel": "Cash and Cash Equivalents [Domain]" } } }, "localname": "RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/FairValueMeasurementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RestrictedStockMember": { "auth_ref": [ "r139" ], "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 subject to vesting" } } }, "localname": "RestrictedStockMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareAntidilutiveSecuritiesDetails", "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r25", "r306", "r384", "r522", "r559", "r578", "r583" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings (Accumulated Deficit)", "terseLabel": "Retained earnings" } } }, "localname": "RetainedEarningsAccumulatedDeficit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [ "r2", "r104", "r105", "r106", "r111", "r120", "r122", "r182", "r380", "r381", "r382", "r404", "r405", "r475", "r574", "r576" ], "lang": { "en-us": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings [Member]", "terseLabel": "Retained Earnings" } } }, "localname": "RetainedEarningsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer [Abstract]", "terseLabel": "Revenues" } } }, "localname": "RevenueFromContractWithCustomerAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "auth_ref": [ "r151", "r152", "r155", "r160", "r161", "r165", "r166", "r168", "r327", "r328", "r533" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations": { "order": 6.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.", "label": "Revenue from Contract with Customer, Excluding Assessed Tax", "terseLabel": "Revenues" } } }, "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyGeographicAreaDetails", "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": { "auth_ref": [ "r94", "r319", "r320", "r321", "r322", "r323", "r324", "r325", "r326", "r345" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for revenue from contract with customer.", "label": "Revenue from Contract with Customer [Policy Text Block]", "terseLabel": "Revenue from Contract with Customer" } } }, "localname": "RevenueFromContractWithCustomerPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "auth_ref": [ "r311", "r312", "r313", "r314", "r315", "r316", "r317", "r318", "r331", "r345" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.", "label": "Revenue from Contract with Customer [Text Block]", "terseLabel": "Revenue" } } }, "localname": "RevenueFromContractWithCustomerTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/Revenue" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems": { "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, Initial Application Period Cumulative Effect Transition [Line Items]", "terseLabel": "Revenue, Initial Application Period Cumulative Effect Transition [Line Items]" } } }, "localname": "RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDeferredRevenueDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable": { "auth_ref": [ "r341" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information when using transition method for cumulative effect in initial period of application for revenue from contract with customer.", "label": "Revenue, Initial Application Period Cumulative Effect Transition [Table]", "terseLabel": "Revenue, Initial Application Period Cumulative Effect Transition [Table]" } } }, "localname": "RevenueInitialApplicationPeriodCumulativeEffectTransitionTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDeferredRevenueDetails" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails", "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": { "auth_ref": [ "r46" ], "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": "Accounts receivable" } } }, "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": { "auth_ref": [ "r139" ], "lang": { "en-us": { "role": { "documentation": "Schedule for securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by Antidilutive Securities.", "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]", "terseLabel": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]" } } }, "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareAntidilutiveSecuritiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock": { "auth_ref": [ "r139" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of 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 Text Block]", "terseLabel": "Antidilutive securities excluded from computation of earnings per share" } } }, "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": { "auth_ref": [ "r425", "r426" ], "lang": { "en-us": { "role": { "documentation": "Schedule reflecting each material business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities.", "label": "Schedule of Business Acquisitions, by Acquisition [Table]", "terseLabel": "Schedule of Business Acquisitions, by Acquisition [Table]" } } }, "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsBrainjocksDetails", "http://perficient.com/role/BusinessCombinationsMedTouchDetails", "http://perficient.com/role/BusinessCombinationsPSLDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock": { "auth_ref": [ "r425", "r426" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of a material business combination completed during the period, including background, timing, and recognized assets and liabilities. This table does not include leveraged buyouts.", "label": "Schedule of Business Acquisitions, by Acquisition [Table Text Block]", "terseLabel": "Allocation of total purchase price consideration" } } }, "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfDebtInstrumentsTextBlock": { "auth_ref": [ "r42", "r102", "r291", "r293", "r301", "r303", "r304", "r305", "r505", "r506", "r510", "r552" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of long-debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the entity, if longer.", "label": "Schedule of Long-term Debt Instruments [Table Text Block]", "terseLabel": "Schedule of long-term debt instruments" } } }, "localname": "ScheduleOfDebtInstrumentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "auth_ref": [ "r138" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.", "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "terseLabel": "Basic and diluted net income per share" } } }, "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable": { "auth_ref": [ "r197", "r605" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about allowance for credit loss on financing receivable.", "label": "Financing Receivable, Allowance for Credit Loss [Table]", "terseLabel": "Financing Receivable, Allowance for Credit Loss [Table]" } } }, "localname": "ScheduleOfFinancingReceivableAllowanceForCreditLossesTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/AllowanceforCreditLossesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock": { "auth_ref": [ "r221" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of finite-lived intangible assets acquired as part of a business combination or through an asset purchase, by major class and in total, including the value of the asset acquired, any significant residual value (the expected value of the asset at the end of its useful life) and the weighted-average amortization period.", "label": "Schedule of Finite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block]", "terseLabel": "Schedule of finite-lived intangible assets acquired" } } }, "localname": "ScheduleOfFiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "auth_ref": [ "r221", "r227", "r534" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedUsefulLivesDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": { "auth_ref": [ "r221", "r227" ], "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": "Intangible assets" } } }, "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfGoodwillTextBlock": { "auth_ref": [ "r217", "r218" ], "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": "Goodwill" } } }, "localname": "ScheduleOfGoodwillTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock": { "auth_ref": [ "r451" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the notional amounts of outstanding derivative positions.", "label": "Schedule of Notional Amounts of Outstanding Derivative Positions [Table Text Block]", "terseLabel": "Schedule of notional amounts of outstanding derivative positions" } } }, "localname": "ScheduleOfNotionalAmountsOfOutstandingDerivativePositionsTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/DerivativesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "auth_ref": [ "r33", "r236" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsPropertyandEquipmentDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "auth_ref": [ "r362", "r375" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails", "http://perficient.com/role/StockBasedCompensationStockAwardPlansDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock": { "auth_ref": [ "r367" ], "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": "Restricted stock activity" } } }, "localname": "ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": { "auth_ref": [ "r227" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.", "label": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]", "terseLabel": "Estimated annual amortization expense" } } }, "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/GoodwillandIntangibleAssetsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "auth_ref": [ "r70" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations": { "order": 1.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.", "label": "Selling, General and Administrative Expense", "terseLabel": "Selling, general and administrative" } } }, "localname": "SellingGeneralAndAdministrativeExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_SeniorNotesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Bond that takes priority over other debt securities sold by the issuer. In the event the issuer goes bankrupt, senior debt holders receive priority for (must receive) repayment prior to (relative to) junior and unsecured (general) creditors.", "label": "Senior Notes [Member]", "terseLabel": "Senior notes" } } }, "localname": "SeniorNotesMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtInterestExpenseonNoteDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensation": { "auth_ref": [ "r85" ], "calculation": { "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": { "order": 5.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": "Non-cash stock compensation and retirement savings plan contributions" } } }, "localname": "ShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Share-based Payment Arrangement, Noncash Expense [Abstract]", "terseLabel": "Stock-Based Compensation [Abstract]" } } }, "localname": "ShareBasedCompensationAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationStockAwardPlansDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1": { "auth_ref": [ "r363" ], "lang": { "en-us": { "role": { "documentation": "Estimated period over which an employee is required to provide service in exchange for the equity-based payment award, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Requisite Service Period", "terseLabel": "Requisite service period (in years)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardRequisiteServicePeriod1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationStockAwardPlansDetails" ], "xbrltype": "durationItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": { "auth_ref": [ "r368" ], "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": "Awards forfeited (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": { "auth_ref": [ "r372" ], "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": "Awards forfeited (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "auth_ref": [ "r370" ], "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": "Awards granted (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r370" ], "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": "Awards granted (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": { "auth_ref": [ "r369" ], "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": "Restricted stock awards outstanding at end of period (in shares)", "periodStartLabel": "Restricted stock awards outstanding at beginning of period (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails" ], "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": "Shares" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": { "auth_ref": [ "r369" ], "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": "Awards outstanding at end of period (in dollars per share)", "periodStartLabel": "Awards outstanding at beginning of period (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": { "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, Weighted Average Grant Date Fair Value [Abstract]", "terseLabel": "Weighted-Average Grant Date Fair Value" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": { "auth_ref": [ "r371" ], "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": "Awards vested (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r371" ], "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": "Awards vested (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails", "http://perficient.com/role/StockBasedCompensationStockAwardPlansDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": { "auth_ref": [ "r364" ], "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": "Maximum number of shares authorized under plan (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationStockAwardPlansDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": { "auth_ref": [ "r375" ], "lang": { "en-us": { "role": { "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant", "terseLabel": "Number of shares available for issuance under the incentive plan (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationStockAwardPlansDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "auth_ref": [ "r360", "r365" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/StockBasedCompensationRestrictedStockActivityDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": { "auth_ref": [ "r362", "r366" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.", "label": "Share-based Payment Arrangement [Policy Text Block]", "terseLabel": "Stock-Based Compensation" } } }, "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_SharePrice": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Price of a single share of a number of saleable stocks of a company.", "label": "Share Price", "terseLabel": "Share price at closing (in dollars per share)" } } }, "localname": "SharePrice", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_SoftwareDevelopmentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Internally developed software for sale, licensing or long-term internal use.", "label": "Software Development [Member]", "terseLabel": "Developed software" } } }, "localname": "SoftwareDevelopmentMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedUsefulLivesDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r2", "r45", "r61", "r62", "r63", "r104", "r105", "r106", "r111", "r120", "r122", "r142", "r182", "r300", "r306", "r380", "r381", "r382", "r404", "r405", "r475", "r499", "r500", "r501", "r502", "r503", "r504", "r574", "r575", "r576", "r611" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails", "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StatementLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Statement [Line Items]", "terseLabel": "Statement [Line Items]" } } }, "localname": "StatementLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StatementOfCashFlowsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Cash Flows [Abstract]" } } }, "localname": "StatementOfCashFlowsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfFinancialPositionAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Financial Position [Abstract]" } } }, "localname": "StatementOfFinancialPositionAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Comprehensive Income [Abstract]" } } }, "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Stockholders' Equity [Abstract]" } } }, "localname": "StatementOfStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [ "r104", "r105", "r106", "r142", "r533" ], "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/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StockIssuedDuringPeriodSharesAcquisitions": { "auth_ref": [ "r21", "r22", "r306" ], "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": "Issuance of stock in conjunction with acquisition (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesAcquisitions", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans": { "auth_ref": [ "r21", "r22", "r300", "r306" ], "lang": { "en-us": { "role": { "documentation": "Number of shares issued during the period as a result of an employee stock purchase plan.", "label": "Stock Issued During Period, Shares, Employee Stock Purchase Plans", "terseLabel": "Proceeds from the sales of stock through the Employee Stock Purchase Plan (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueAcquisitions": { "auth_ref": [ "r45", "r300", "r306" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value of stock issued pursuant to acquisitions during the period.", "label": "Stock Issued During Period, Value, Acquisitions", "terseLabel": "Issuance of stock in conjunction with acquisition including stock attributed to future compensation" } } }, "localname": "StockIssuedDuringPeriodValueAcquisitions", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan": { "auth_ref": [ "r21", "r22", "r300", "r306" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate change in value for stock issued during the period as a result of employee stock purchase plan.", "label": "Stock Issued During Period, Value, Employee Stock Purchase Plan", "terseLabel": "Proceeds from the sales of stock through the Employee Stock Purchase Plan" } } }, "localname": "StockIssuedDuringPeriodValueEmployeeStockPurchasePlan", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockRepurchaseProgramAuthorizedAmount1": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of stock repurchase plan authorized.", "label": "Stock Repurchase Program, Authorized Amount", "terseLabel": "Shares authorized to repurchase" } } }, "localname": "StockRepurchaseProgramAuthorizedAmount1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareAdditionalInformationDetails", "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r22", "r27", "r28", "r97", "r172", "r178", "r486", "r522" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.", "label": "Stockholders' Equity Attributable to Parent", "periodEndLabel": "Balance", "periodStartLabel": "Balance", "totalLabel": "Total stockholders\u2019 equity" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Parent [Abstract]", "terseLabel": "Stockholders\u2019 equity:" } } }, "localname": "StockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_SupplementalBalanceSheetDisclosuresTextBlock": { "auth_ref": [ "r50" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for supplemental balance sheet disclosures, including descriptions and amounts for assets, liabilities, and equity.", "label": "Supplemental Balance Sheet Disclosures [Text Block]", "terseLabel": "Balance Sheet Components" } } }, "localname": "SupplementalBalanceSheetDisclosuresTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponents" ], "xbrltype": "textBlockItemType" }, "us-gaap_SupplementalCashFlowInformationAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Supplemental Cash Flow Information [Abstract]", "terseLabel": "Supplemental Disclosures:" } } }, "localname": "SupplementalCashFlowInformationAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_TaxPeriodAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information about the period subject to enacted tax laws.", "label": "Tax Period [Axis]", "terseLabel": "Tax Period [Axis]" } } }, "localname": "TaxPeriodAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_TaxPeriodDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Identified tax period.", "label": "Tax Period [Domain]", "terseLabel": "Tax Period [Domain]" } } }, "localname": "TaxPeriodDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TechnologyServiceMember": { "auth_ref": [ "r332" ], "lang": { "en-us": { "role": { "documentation": "Technology assistance, including but not limited to, training, installation, engineering, and software design.", "label": "Technology Service [Member]", "terseLabel": "Technology Service", "verboseLabel": "Services" } } }, "localname": "TechnologyServiceMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails", "http://perficient.com/role/RevenueServicesRevenueDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TimeAndMaterialsContractMember": { "auth_ref": [ "r335" ], "lang": { "en-us": { "role": { "documentation": "Contract with customer in which amount of consideration is based on time and materials consumed.", "label": "Time-and-materials Contract [Member]", "terseLabel": "Time and materials contracts" } } }, "localname": "TimeAndMaterialsContractMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TimingOfTransferOfGoodOrServiceAxis": { "auth_ref": [ "r328", "r337" ], "lang": { "en-us": { "role": { "documentation": "Information by timing of transfer of good or service to customer.", "label": "Timing of Transfer of Good or Service [Axis]", "terseLabel": "Timing of Transfer of Good or Service [Axis]" } } }, "localname": "TimingOfTransferOfGoodOrServiceAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails" ], "xbrltype": "stringItemType" }, "us-gaap_TimingOfTransferOfGoodOrServiceDomain": { "auth_ref": [ "r328", "r337" ], "lang": { "en-us": { "role": { "documentation": "Timing of transfer of good or service to customer. Includes, but is not limited to, at point in time or over time.", "label": "Timing of Transfer of Good or Service [Domain]", "terseLabel": "Timing of Transfer of Good or Service [Domain]" } } }, "localname": "TimingOfTransferOfGoodOrServiceDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TradeNamesMember": { "auth_ref": [ "r429" ], "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" } } }, "localname": "TradeNamesMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BusinessCombinationsIntangibleAssetsAcquiredDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsEstimatedUsefulLivesDetails", "http://perficient.com/role/GoodwillandIntangibleAssetsIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TransferredAtPointInTimeMember": { "auth_ref": [ "r337" ], "lang": { "en-us": { "role": { "documentation": "Contract with customer in which good or service is transferred at point in time.", "label": "Transferred at Point in Time [Member]", "terseLabel": "Point In Time" } } }, "localname": "TransferredAtPointInTimeMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TransferredOverTimeMember": { "auth_ref": [ "r337" ], "lang": { "en-us": { "role": { "documentation": "Contract with customer in which good or service is transferred over time.", "label": "Transferred over Time [Member]", "terseLabel": "Over Time" } } }, "localname": "TransferredOverTimeMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDisaggregationofRevenuebyRevenueSourceandPatternofRevenueRecognitionDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TreasuryStockMember": { "auth_ref": [ "r44", "r307" ], "lang": { "en-us": { "role": { "documentation": "Shares of an entity that have been repurchased by the entity. This stock has no voting rights and receives no dividends. Note that treasury stock may be recorded at its total cost or separately as par (or stated) value and additional paid in capital. Classified within stockholders' equity if nonredeemable or redeemable solely at the option of the issuer. Classified within temporary equity if redemption is outside the control of the issuer.", "label": "Treasury Stock [Member]", "terseLabel": "Treasury Stock" } } }, "localname": "TreasuryStockMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_TreasuryStockShares": { "auth_ref": [ "r44", "r307" ], "lang": { "en-us": { "role": { "documentation": "Number of common and preferred shares that were previously issued and that were repurchased by the issuing entity and held in treasury on the financial statement date. This stock has no voting rights and receives no dividends.", "label": "Treasury Stock, Shares", "terseLabel": "Treasury stock, shares" } } }, "localname": "TreasuryStockShares", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_TreasuryStockSharesAcquired": { "auth_ref": [ "r22", "r300", "r306" ], "lang": { "en-us": { "role": { "documentation": "Number of shares that have been repurchased during the period and are being held in treasury.", "label": "Treasury Stock, Shares, Acquired", "negatedLabel": "Purchases of treasury stock and buyback of shares for taxes (in shares)" } } }, "localname": "TreasuryStockSharesAcquired", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_TreasuryStockValue": { "auth_ref": [ "r44", "r307", "r308" ], "calculation": { "http://perficient.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_StockholdersEquity", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount allocated to treasury stock. Treasury stock is common and preferred shares of an entity that were issued, repurchased by the entity, and are held in its treasury.", "label": "Treasury Stock, Value", "negatedLabel": "Treasury stock, at cost (18,501,711 shares as of June 30, 2021; 18,222,359 shares as of December 31, 2020)" } } }, "localname": "TreasuryStockValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_TreasuryStockValueAcquiredCostMethod": { "auth_ref": [ "r300", "r306", "r307" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method.", "label": "Treasury Stock, Value, Acquired, Cost Method", "negatedLabel": "Purchases of treasury stock and buyback of shares for taxes" } } }, "localname": "TreasuryStockValueAcquiredCostMethod", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/UnauditedCondensedConsolidatedStatementofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_TypeOfAdoptionMember": { "auth_ref": [ "r0", "r1", "r2", "r3", "r4", "r110", "r111", "r112", "r114", "r123", "r173", "r174", "r179", "r180", "r181", "r182", "r185", "r186", "r245", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r384", "r402", "r403", "r404", "r405", "r466", "r467", "r468", "r469", "r470", "r471", "r472", "r474", "r475", "r476", "r477", "r487", "r488", "r489", "r490", "r491", "r492", "r496", "r497", "r518", "r535", "r536", "r537", "r572", "r573", "r574", "r575", "r576", "r577", "r578", "r579", "r580", "r581", "r582", "r583", "r607", "r608", "r609", "r610", "r611" ], "lang": { "en-us": { "role": { "documentation": "Amendment to accounting standards.", "label": "Accounting Standards Update [Domain]", "terseLabel": "Type of Adoption [Domain]" } } }, "localname": "TypeOfAdoptionMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/RevenueDeferredRevenueDetails" ], "xbrltype": "domainItemType" }, "us-gaap_UnbilledReceivablesCurrent": { "auth_ref": [], "calculation": { "http://perficient.com/role/BalanceSheetComponentsAccountsReceivableDetails": { "order": 2.0, "parentTag": "us-gaap_ReceivablesNetCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount received for services rendered and products shipped, but not yet billed, for non-contractual agreements due within one year or the normal operating cycle, if longer.", "label": "Unbilled Receivables, Current", "terseLabel": "Unbilled revenues, net" } } }, "localname": "UnbilledReceivablesCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsAccountsReceivableDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_UndistributedEarningsOfForeignSubsidiaries": { "auth_ref": [ "r389", "r418", "r553", "r584" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of undistributed earnings of foreign subsidiaries intended to be permanently reinvested outside the country of domicile.", "label": "Undistributed Earnings of Foreign Subsidiaries", "terseLabel": "Unremitted earnings of foreign subsidiaries" } } }, "localname": "UndistributedEarningsOfForeignSubsidiaries", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_UnrecognizedTaxBenefits": { "auth_ref": [ "r390", "r397" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of unrecognized tax benefits.", "label": "Unrecognized Tax Benefits", "terseLabel": "Unrecognized tax benefits" } } }, "localname": "UnrecognizedTaxBenefits", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued": { "auth_ref": [ "r395" ], "calculation": { "http://perficient.com/role/BalanceSheetComponentsOtherNonCurrentLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_OtherLiabilitiesNoncurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of statutory penalties accrued for a tax position claimed or expected to be claimed by the entity, in its tax return.", "label": "Unrecognized Tax Benefits, Income Tax Penalties Accrued", "terseLabel": "Unrecognized Tax Benefits, Income Tax Penalties Accrued" } } }, "localname": "UnrecognizedTaxBenefitsIncomeTaxPenaltiesAccrued", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/BalanceSheetComponentsOtherNonCurrentLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesAccrued": { "auth_ref": [ "r395" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of interest expense accrued for an underpayment of income taxes.", "label": "Unrecognized Tax Benefits, Interest on Income Taxes Accrued", "terseLabel": "Unrecognized tax benefits, interest on income taxes accrued" } } }, "localname": "UnrecognizedTaxBenefitsInterestOnIncomeTaxesAccrued", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/IncomeTaxesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_UseOfEstimates": { "auth_ref": [ "r143", "r144", "r145", "r146", "r147", "r148", "r149" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.", "label": "Use of Estimates, Policy [Policy Text Block]", "terseLabel": "Use of Estimates" } } }, "localname": "UseOfEstimates", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_VariableRateAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by type of variable rate.", "label": "Variable Rate [Axis]", "terseLabel": "Variable Rate [Axis]" } } }, "localname": "VariableRateAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "stringItemType" }, "us-gaap_VariableRateDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index.", "label": "Variable Rate [Domain]", "terseLabel": "Variable Rate [Domain]" } } }, "localname": "VariableRateDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtRevolvingCreditFacilityDetails" ], "xbrltype": "domainItemType" }, "us-gaap_WarrantMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Security that gives the holder the right to purchase shares of stock in accordance with the terms of the instrument, usually upon payment of a specified amount.", "label": "Warrant [Member]", "terseLabel": "Warrants related to the issuance of convertible senior notes", "verboseLabel": "Warrant" } } }, "localname": "WarrantMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/LongtermDebtConvertibleNoteHedgesandWarrantsDetails", "http://perficient.com/role/LongtermDebtConvertibleSeniorNotesAdditionalNotesDetails", "http://perficient.com/role/NetIncomeperShareAntidilutiveSecuritiesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Incremental Weighted Average Shares Attributable to Dilutive Effect [Abstract]", "terseLabel": "Effect of dilutive securities:" } } }, "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails" ], "xbrltype": "stringItemType" }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "auth_ref": [ "r128", "r138" ], "calculation": { "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails": { "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": "Shares used in computing diluted net income per share (in shares)", "totalLabel": "Shares used in computing diluted net income per share" } } }, "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesIssuedBasic": { "auth_ref": [ "r126", "r127" ], "calculation": { "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails": { "order": 1.0, "parentTag": "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "This element represents the weighted average total number of shares issued throughout the period including the first (beginning balance outstanding) and last (ending balance outstanding) day of the period before considering any reductions (for instance, shares held in treasury) to arrive at the weighted average number of shares outstanding. Weighted average relates to the portion of time within a reporting period that common shares have been issued and outstanding to the total time in that period. Such concept is used in determining the weighted average number of shares outstanding for purposes of calculating earnings per share (basic).", "label": "Weighted Average Number of Shares Issued, Basic", "terseLabel": "Weighted-average shares of common stock outstanding" } } }, "localname": "WeightedAverageNumberOfSharesIssuedBasic", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "auth_ref": [ "r126", "r138" ], "calculation": { "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails": { "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": "Shares used in computing basic net income per share (in shares)", "totalLabel": "Shares used in computing basic net income per share" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails", "http://perficient.com/role/UnauditedCondensedConsolidatedStatementsofOperations" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Basic [Abstract]", "terseLabel": "Basic:" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasicAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://perficient.com/role/NetIncomeperShareBasicandDilutedDetails" ], "xbrltype": "stringItemType" } }, "unitCount": 6 } }, "std_ref": { "r0": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "105", "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695" }, "r1": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "105", "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695" }, "r10": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r100": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r101": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(n))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r102": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.12-04(a))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e24072-122690" }, "r103": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "235", "URI": "http://asc.fasb.org/topic&trid=2122369" }, "r104": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793" }, "r105": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793" }, "r106": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793" }, "r107": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21728-107793" }, "r108": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r11": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6787-107765" }, "r110": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r111": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(3)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r112": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(4)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r113": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r114": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r115": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794" }, "r116": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794" }, "r117": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794" }, "r118": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794" }, "r119": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794" }, "r12": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6801-107765" }, "r120": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794" }, "r121": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794" }, "r122": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.M.Q2)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=122038215&loc=d3e31137-122693" }, "r124": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=122038215&loc=SL108384541-122693" }, "r125": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "250", "URI": "http://asc.fasb.org/topic&trid=2122394" }, "r126": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1448-109256" }, "r127": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e2646-109256" }, "r128": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1505-109256" }, "r129": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1252-109256" }, "r13": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6904-107765" }, "r130": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1707-109256" }, "r131": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1757-109256" }, "r132": { "Name": "Accounting Standards Codification", "Paragraph": "26", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1828-109256" }, "r133": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1930-109256" }, "r134": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e2029-109256" }, "r135": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256" }, "r136": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256" }, "r137": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1337-109256" }, "r138": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257" }, "r139": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257" }, "r14": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6911-107765" }, "r140": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125512782&loc=d3e3842-109258" }, "r141": { "Name": "Accounting Standards Codification", "Paragraph": "52", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125512782&loc=d3e4984-109258" }, "r142": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "272", "URI": "http://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054" }, "r143": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592" }, "r144": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592" }, "r145": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592" }, "r146": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592" }, "r147": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592" }, "r148": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592" }, "r149": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592" }, "r15": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(13))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r150": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "275", "URI": "http://asc.fasb.org/topic&trid=2134479" }, "r151": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r152": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r153": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r154": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r155": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599" }, "r156": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599" }, "r157": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599" }, "r158": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599" }, "r159": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8924-108599" }, "r16": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(14))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r160": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r161": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r162": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r163": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r164": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r165": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9031-108599" }, "r166": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599" }, "r167": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599" }, "r168": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9054-108599" }, "r169": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4428-111522" }, "r17": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(19))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r170": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4531-111522" }, "r171": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524" }, "r172": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 4.E)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707" }, "r173": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=124402435&loc=SL124402458-218513" }, "r174": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=124402435&loc=SL124402458-218513" }, "r175": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(d)(1)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=124402435&loc=SL124402458-218513" }, "r176": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(d)(2)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=124402435&loc=SL124402458-218513" }, "r177": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "310", "URI": "http://asc.fasb.org/topic&trid=2196771" }, "r178": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571" }, "r179": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r18": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(20))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r180": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r181": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r182": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r183": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r184": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r185": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(3)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r186": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(4)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r187": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "30", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124256539&loc=SL120269210-210444" }, "r188": { "Name": "Accounting Standards Codification", "Paragraph": "5A", "Publisher": "FASB", "Section": "30", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124256539&loc=SL120254536-210444" }, "r189": { "Name": "Accounting Standards Codification", "Paragraph": "8A", "Publisher": "FASB", "Section": "35", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124266218&loc=SL120267834-210445" }, "r19": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(22))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r190": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446" }, "r191": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255206&loc=SL120267845-210446" }, "r192": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919244-210447" }, "r193": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447" }, "r194": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447" }, "r195": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447" }, "r196": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447" }, "r197": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447" }, "r198": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919253-210447" }, "r199": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919260-210447" }, "r2": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "105", "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695" }, "r20": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(24))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r200": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919272-210447" }, "r201": { "Name": "Accounting Standards Codification", "Paragraph": "3C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL120267966-210447" }, "r202": { "Name": "Accounting Standards Codification", "Paragraph": "3D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL120267969-210447" }, "r203": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 6.M.Q4)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=122651532&loc=SL122037091-237805" }, "r204": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "30", "SubTopic": "30", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124268681&loc=SL120267897-210452" }, "r205": { "Name": "Accounting Standards Codification", "Paragraph": "13A", "Publisher": "FASB", "Section": "35", "SubTopic": "30", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=125515542&loc=SL120267917-210453" }, "r206": { "Name": "Accounting Standards Codification", "Paragraph": "7A", "Publisher": "FASB", "Section": "35", "SubTopic": "30", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=125515542&loc=SL120269220-210453" }, "r207": { "Name": "Accounting Standards Codification", "Paragraph": "3A", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124269663&loc=SL120267853-210455" }, "r208": { "Name": "Accounting Standards Codification", "Paragraph": "3C", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124269663&loc=SL120267859-210455" }, "r209": { "Name": "Accounting Standards Codification", "Paragraph": "3D", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124269663&loc=SL120267862-210455" }, "r21": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(28))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r210": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124269663&loc=SL82922895-210455" }, "r211": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "05", "SubTopic": "10", "Topic": "340", "URI": "http://asc.fasb.org/extlink&oid=123349782&loc=d3e5879-108316" }, "r212": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "340", "URI": "http://asc.fasb.org/extlink&oid=6387103&loc=d3e6435-108320" }, "r213": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266" }, "r214": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=120320667&loc=SL49117168-202975" }, "r215": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r216": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r217": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r218": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267" }, "r219": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274" }, "r22": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(29))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r220": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274" }, "r221": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r222": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r223": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(3)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r224": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r225": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r226": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "((a)(1),(b))", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r227": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r228": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r229": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(2)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r23": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r230": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(3)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r231": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r232": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "350", "URI": "http://asc.fasb.org/topic&trid=2144416" }, "r233": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r234": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r235": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r236": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r237": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "440", "URI": "http://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308" }, "r238": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "440", "URI": "http://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308" }, "r239": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "440", "URI": "http://asc.fasb.org/topic&trid=2144648" }, "r24": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r240": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "http://asc.fasb.org/topic&trid=2127136" }, "r241": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=123368208&loc=d3e12565-110249" }, "r242": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=99376301&loc=d3e1243-112600" }, "r243": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123465755&loc=d3e1835-112601" }, "r244": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123465755&loc=SL6230698-112601" }, "r245": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S65", "SubTopic": "10", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359872&loc=SL124427846-239511" }, "r246": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r247": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r248": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r249": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r25": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r250": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r251": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(5))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r252": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r253": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r254": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r255": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r256": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(5))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r257": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466302&loc=d3e4852-112606" }, "r258": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r259": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r26": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r261": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r262": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r265": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r266": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(i)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r267": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r268": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611" }, "r269": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611" }, "r27": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r270": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495334-112611" }, "r271": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611" }, "r272": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611" }, "r273": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611" }, "r274": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611" }, "r275": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611" }, "r276": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611" }, "r277": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611" }, "r278": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611" }, "r279": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611" }, "r28": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(31))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r280": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611" }, "r281": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611" }, "r282": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611" }, "r283": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611" }, "r284": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611" }, "r285": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495371-112611" }, "r286": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870" }, "r287": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870" }, "r288": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870" }, "r289": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466204&loc=SL6031898-161870" }, "r29": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(32))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r290": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466204&loc=SL6036836-161870" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "69B", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495735-112612" }, "r292": { "Name": "Accounting Standards Codification", "Paragraph": "69C", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495737-112612" }, "r293": { "Name": "Accounting Standards Codification", "Paragraph": "69E", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495743-112612" }, "r294": { "Name": "Accounting Standards Codification", "Paragraph": "69F", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495745-112612" }, "r295": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "40", "SubTopic": "50", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123467658&loc=d3e12317-112629" }, "r296": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "40", "SubTopic": "50", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123467658&loc=d3e12355-112629" }, "r297": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "470", "URI": "http://asc.fasb.org/topic&trid=2208564" }, "r298": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644" }, "r299": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644" }, "r3": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "105", "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695" }, "r30": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(4))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r300": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21463-112644" }, "r301": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21475-112644" }, "r302": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21506-112644" }, "r303": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21506-112644" }, "r304": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21521-112644" }, "r305": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21538-112644" }, "r306": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770" }, "r307": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=6405813&loc=d3e23239-112655" }, "r308": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=6405834&loc=d3e23315-112656" }, "r309": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123360276&loc=SL49130531-203044" }, "r31": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(5))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r310": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123360276&loc=SL49130532-203044" }, "r311": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130551-203045" }, "r312": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045" }, "r313": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045" }, "r314": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045" }, "r315": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045" }, "r316": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130554-203045" }, "r317": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130556-203045" }, "r318": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130558-203045" }, "r319": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130561-203045" }, "r32": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.13)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r320": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130563-203045" }, "r321": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130563-203045" }, "r322": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130564-203045" }, "r323": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130566-203045" }, "r324": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130566-203045" }, "r325": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130566-203045" }, "r326": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130566-203045" }, "r327": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130543-203045" }, "r328": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130545-203045" }, "r329": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130549-203045" }, "r33": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.14)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r330": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130549-203045" }, "r331": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130550-203045" }, "r332": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046" }, "r333": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046" }, "r334": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046" }, "r335": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046" }, "r336": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046" }, "r337": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046" }, "r338": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046" }, "r339": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(g)(2)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048" }, "r34": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.17)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r340": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(i)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048" }, "r341": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(i)(1)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048" }, "r342": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(i)(2)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048" }, "r343": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(j)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048" }, "r344": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048" }, "r345": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "http://asc.fasb.org/topic&trid=49130388" }, "r346": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(i)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r347": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(ii)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r348": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(01)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r349": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r35": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r350": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(A)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r351": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(B)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r352": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(C)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r353": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(03)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r354": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123450688&loc=d3e4179-114921" }, "r355": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947" }, "r356": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(d)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947" }, "r357": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947" }, "r358": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "80", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948" }, "r359": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=123468992&loc=d3e4534-113899" }, "r36": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r360": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901" }, "r361": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901" }, "r362": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901" }, "r363": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r364": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(3)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r365": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a),(g)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r366": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b),(f)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r367": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r368": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(3)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r369": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(i)-(ii)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r37": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19-26)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r370": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r371": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r372": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(3)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r373": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(1)(i)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r374": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(i)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r375": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r376": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r377": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r378": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r379": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r38": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.20)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r380": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r381": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r382": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r383": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(g)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r384": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(g)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r385": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 14.F)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=122041274&loc=d3e301413-122809" }, "r386": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=122142933&loc=d3e11149-113907" }, "r387": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=122142933&loc=d3e11178-113907" }, "r388": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "718", "URI": "http://asc.fasb.org/topic&trid=2228938" }, "r389": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123452999&loc=d3e28200-109314" }, "r39": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.21)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r390": { "Name": "Accounting Standards Codification", "Paragraph": "10B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=SL37586934-109318" }, "r391": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318" }, "r392": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319" }, "r393": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319" }, "r394": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319" }, "r395": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319" }, "r396": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319" }, "r397": { "Name": "Accounting Standards Codification", "Paragraph": "15A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=SL6600010-109319" }, "r398": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319" }, "r399": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319" }, "r4": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "105", "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695" }, "r40": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22(a)(1))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r400": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319" }, "r401": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319" }, "r402": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277" }, "r403": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277" }, "r404": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277" }, "r405": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(3)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277" }, "r406": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277" }, "r407": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277" }, "r408": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(3)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277" }, "r409": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r41": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22(a)(5))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r410": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.7)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r411": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.7)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r412": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.Fact.1)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r413": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.Fact.2)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r414": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.C)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817" }, "r415": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324" }, "r416": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "270", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338" }, "r417": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331" }, "r418": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331" }, "r419": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331" }, "r42": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r420": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "740", "URI": "http://asc.fasb.org/topic&trid=2144680" }, "r421": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123586518&loc=d3e961-128460" }, "r422": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123586518&loc=d3e1043-128460" }, "r423": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r424": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(3)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r425": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r426": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1486-128463" }, "r427": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123413009&loc=d3e4845-128472" }, "r428": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123413009&loc=SL65897772-128472" }, "r429": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473" }, "r43": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.24)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r430": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473" }, "r431": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5333-128473" }, "r432": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5333-128473" }, "r433": { "Name": "Accounting Standards Codification", "Paragraph": "38", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5504-128473" }, "r434": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "25", "SubTopic": "30", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=6911189&loc=d3e6408-128476" }, "r435": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "30", "SubTopic": "30", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=116859721&loc=d3e6578-128477" }, "r436": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "30", "SubTopic": "30", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=116859721&loc=d3e6613-128477" }, "r437": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "35", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=116859824&loc=d3e6819-128478" }, "r438": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "35", "SubTopic": "30", "Subparagraph": "b", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=116859824&loc=d3e6819-128478" }, "r439": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)(4)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=120321790&loc=d3e6927-128479" }, "r44": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29,30)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r440": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(c)(1)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=120321790&loc=d3e6927-128479" }, "r441": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(c)(3)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=120321790&loc=d3e6927-128479" }, "r442": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=120321790&loc=d3e6927-128479" }, "r443": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=120321790&loc=d3e7008-128479" }, "r444": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "805", "URI": "http://asc.fasb.org/topic&trid=2303972" }, "r445": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988" }, "r446": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988" }, "r447": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c),(3)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r448": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685" }, "r449": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685" }, "r45": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29-31)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r450": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5579240-113959" }, "r451": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5579245-113959" }, "r452": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5579245-113959" }, "r453": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5580258-113959" }, "r454": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=d3e41620-113959" }, "r455": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=d3e41638-113959" }, "r456": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959" }, "r457": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959" }, "r458": { "Name": "Accounting Standards Codification", "Paragraph": "4B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959" }, "r459": { "Name": "Accounting Standards Codification", "Paragraph": "4B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959" }, "r46": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.3,4)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r460": { "Name": "Accounting Standards Codification", "Paragraph": "4C", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959" }, "r461": { "Name": "Accounting Standards Codification", "Paragraph": "4D", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959" }, "r462": { "Name": "Accounting Standards Codification", "Paragraph": "4E", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=SL5624181-113959" }, "r463": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=125515794&loc=d3e41675-113959" }, "r464": { "Name": "Accounting Standards Codification", "Paragraph": "182", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123421605&loc=SL5629052-113961" }, "r465": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123477628&loc=d3e90205-114008" }, "r466": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(a)(1)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r467": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(a)(2)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r468": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(a)(3)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r469": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(b)(1)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r47": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.8)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r470": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(b)(2)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r471": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(c)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r472": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(d)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r473": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(1)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r474": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(2)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r475": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r476": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(4)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r477": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r478": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "815", "URI": "http://asc.fasb.org/topic&trid=2229140" }, "r479": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258" }, "r48": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.9)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r480": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258" }, "r481": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258" }, "r482": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bbb)(2)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258" }, "r483": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258" }, "r484": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19279-110258" }, "r485": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13433-108611" }, "r486": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612" }, "r487": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL120254526-165497" }, "r488": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL120254526-165497" }, "r489": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497" }, "r49": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=99393222&loc=SL20226052-175313" }, "r490": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497" }, "r491": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497" }, "r492": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497" }, "r493": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497" }, "r494": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497" }, "r495": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(3)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497" }, "r496": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL122642865-165497" }, "r497": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL122642865-165497" }, "r498": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906" }, "r499": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900" }, "r5": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "105", "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695" }, "r50": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "210", "URI": "http://asc.fasb.org/topic&trid=2122208" }, "r500": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r501": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r502": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r503": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r504": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901" }, "r505": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=124435984&loc=d3e28541-108399" }, "r506": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=124435984&loc=d3e28551-108399" }, "r507": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=124435984&loc=d3e28555-108399" }, "r508": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=124435984&loc=d3e28567-108399" }, "r509": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=124429444&loc=SL124452920-239629" }, "r51": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669646-108580" }, "r510": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=114775985&loc=d3e28878-108400" }, "r511": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977" }, "r512": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977" }, "r513": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977" }, "r514": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(3)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918673-209980" }, "r515": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918673-209980" }, "r516": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918701-209980" }, "r517": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/subtopic&trid=77888251" }, "r518": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "848", "URI": "http://asc.fasb.org/extlink&oid=122150657&loc=SL122150809-237846" }, "r519": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "848", "URI": "http://asc.fasb.org/extlink&oid=122150657&loc=SL122150809-237846" }, "r52": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669646-108580" }, "r520": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "852", "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765" }, "r521": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "852", "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765" }, "r522": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "852", "URI": "http://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766" }, "r523": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(1)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r524": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(2)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r525": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(3)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r526": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(1)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r527": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(2)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r528": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(3)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r529": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r53": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e637-108580" }, "r530": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r531": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r532": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "910", "URI": "http://asc.fasb.org/extlink&oid=123353855&loc=SL119991595-234733" }, "r533": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.L)", "Topic": "924", "URI": "http://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856" }, "r534": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "926", "URI": "http://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959" }, "r535": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "926", "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r536": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "926", "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r537": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "926", "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r538": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(f)(1)", "Topic": "926", "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r539": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(f)(2)", "Topic": "926", "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r54": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e681-108580" }, "r540": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(f)(3)", "Topic": "926", "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r541": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "340", "Topic": "928", "URI": "http://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004" }, "r542": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(10)(1))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r543": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(11))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r544": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(13))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r545": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(15))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r546": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(16))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r547": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(23))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r548": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(22))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r549": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(26))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r55": { "Name": "Accounting Standards Codification", "Paragraph": "14A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669686-108580" }, "r550": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(27))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r551": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=124429447&loc=SL124453093-239630" }, "r552": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "470", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=123599511&loc=d3e64711-112823" }, "r553": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "740", "Subparagraph": "(b)", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6479915&loc=d3e66715-112838" }, "r554": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(16))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r555": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(12))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r556": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(15))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r557": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(16))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r558": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r559": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r56": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669619-108580" }, "r560": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(25))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r561": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(5))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r562": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(8))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r563": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(18))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r564": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(22))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r565": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(23))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r566": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(9))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r567": { "Name": "Accounting Standards Codification", "Paragraph": "4H", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438" }, "r568": { "Name": "Accounting Standards Codification", "Paragraph": "7A", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(d)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439" }, "r569": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117783719-158441" }, "r57": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669619-108580" }, "r570": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(b)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117783719-158441" }, "r571": { "Name": "Accounting Standards Codification", "Paragraph": "29F", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117819544-158441" }, "r572": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r573": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(b)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r574": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r575": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(1)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r576": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(2)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r577": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(1)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r578": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(i)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r579": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(ii)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r58": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669625-108580" }, "r580": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(iii)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r581": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(iv)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r582": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(1)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r583": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(2)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r584": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "740", "Subparagraph": "(b)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=6487024&loc=d3e29054-158556" }, "r585": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-06(3))", "Topic": "946", "URI": "http://asc.fasb.org/extlink&oid=120401414&loc=d3e604059-122996" }, "r586": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "310", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Topic": "948", "URI": "http://asc.fasb.org/extlink&oid=120402547&loc=d3e617274-123014" }, "r587": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "440", "Subparagraph": "(a)", "Topic": "954", "URI": "http://asc.fasb.org/extlink&oid=6491277&loc=d3e6429-115629" }, "r588": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "450", "Topic": "954", "URI": "http://asc.fasb.org/extlink&oid=6491354&loc=d3e6049-115624" }, "r589": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column B))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r59": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669625-108580" }, "r590": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column C))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r591": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column D))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r592": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column E))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r593": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column F))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r594": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column G))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r595": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column H))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r596": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column I))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r597": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Footnote 2))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r598": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(c)", "Topic": "976", "URI": "http://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663" }, "r599": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(b)", "Topic": "978", "URI": "http://asc.fasb.org/extlink&oid=123360121&loc=d3e27327-108691" }, "r6": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760" }, "r60": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e557-108580" }, "r600": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b" }, "r601": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1" }, "r602": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "308", "Subsection": "a" }, "r603": { "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-1" }, "r604": { "Name": "Regulation 12B", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2" }, "r605": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(c)", "Publisher": "SEC", "Section": "1405" }, "r606": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405" }, "r607": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "848" }, "r608": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "848" }, "r609": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "848" }, "r61": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067" }, "r610": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(01)", "Topic": "848" }, "r611": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(03)", "Topic": "848" }, "r612": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "848" }, "r62": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067" }, "r63": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067" }, "r64": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(20))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(24))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r66": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(25))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r67": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(5))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r68": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(8))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r69": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.2(a),(d))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r7": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "205", "URI": "http://asc.fasb.org/topic&trid=2122149" }, "r70": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.4)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r71": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.8)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r72": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.9)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r73": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "8", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r74": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3213-108585" }, "r75": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3213-108585" }, "r76": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3255-108585" }, "r77": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585" }, "r78": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585" }, "r79": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585" }, "r8": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r80": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585" }, "r81": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3367-108585" }, "r82": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3521-108585" }, "r83": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585" }, "r84": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585" }, "r85": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585" }, "r86": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585" }, "r87": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585" }, "r88": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3044-108585" }, "r89": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4297-108586" }, "r9": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r90": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4304-108586" }, "r91": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4313-108586" }, "r92": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4332-108586" }, "r93": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=SL98516268-108586" }, "r94": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790" }, "r95": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(c))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r96": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(f))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r97": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r98": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r99": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(2))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" } }, "version": "2.1" } ZIP 85 0001085869-21-000090-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001085869-21-000090-xbrl.zip M4$L#!!0 ( .9I_5*YZF32;@$" &=4%P 1 <')F="TR,#(Q,#8S,"YH M=&WLO6MWD[FR+OI]_PJ?K'/V[AZC#;J4;G1/]DB3P$PODM!):%;XTJ,DE1(' MQ\ZT'2#\^E-R$B#<:9S8K_/"&&#[O4KUJ.JI4JGTV_]]?=SOO*31N#<<_&M% MWA$KG?][_[?_I]O]G]]W'G?6ANGTF :3SH,1X81RYU5O\E=KO3:QX,3\Y&O8/#24<))3\X.+I7J!2=I>R2-JD+TE,WHC7=E(&\ M4PF"B;\3DWMV[KUZ]NO,ZCOIWAJ.#N[U! MOS>@VMR[DQ$.QF4X.L8)=\==):3I"M55=N7B)IEZ;V\RO<&8TIV#X?3D:?/3OI?S,]Y_]?Q!,R_.M7?/#UZ>.AZ]Z]."XS@]CW^5-[]G\W'N^F0CK'[0;=\Z@H90KC[N@IVY9UDN]P#5TZ^[)&O"=>_ M]XJ]UY_K)*G?N]%;D8V[!X@G'W? Q8%/= +?XL47!%$/1QR_!<7)J+SKWQ,: ME5[J\6"\DX;'TYL+J\7;_OWHWE?ZJQZ=GGJOCX.#?ZW0H/MT=X4'"&&^_]LQ M3;!3+^W2?TY[+_^U\F XF/"3NGMG)_PVZ?S;OU8F]'IR=]KU=^__K__UOWZ; M]"9]NE]?LWOY/K_=/?_QM[OGMX[#?';_M]Q[V1E/SOKTKY7<&Y_T\>S>8#@@ M?H'>ZWOU1!J=?^SE3(/I1SZ^Q;IGU$OGSW\]V:'RKY6>5:B#)*=<(G B>("2 MI"MDL_,ZNK_7IJ_"?[OO^FB Q_71U+NW/N#W.WO S1EA?V.0Z?5_T]E*IY?Y MUEG_=1;7AB\?JYV7^WKS-!^MOWS^*!QM'^T_:DWU M\[4_#K?6M@[WG^W+YX_6Y>9:/GJLM_K[;X;B^?'^J^U'&WK[T59OZVA#;+WA M\X[_/-O?^_/-_K.'QUO/=@ZW]E;UOO3BL7I^MO\LV:WCS;--M76\M??7B\VU MWX^V'FW"UM[!FVT^[_FC3;F]]_3-\[T_7VWNK;[,CQ[VXJ.GEG\W6\=_PN;: M7X?/U_K]K;7_X_,76\?[9YM$^;![_J9^OO;BXYB]^EAD\WSMYL?_F MA7J^=O!JZ]G#%]O/GHHMM6&V]_;/^'[J^='&V=;1P=GSM?QB^R__YO'>^F1S M5[Q^O+?Z-R3O$WC3=91C%X(*703%6CH((=!Y#S&LW.?/4GCC;?CM[A5YSEZ\ MYZ.:KWX]N9?93AWS'0\SGM'@?=$_.!V-6.X/>^.$_7W"T?H@K_'9K?2_)GWQ MOO0S%?1L9[LN6=4%@MC%Z$/7.RPQJ.(2PLK]-4IT'&G4T?+:Q?].Q)=\Y9V, M'_(OXU;"7Y.P?E_"/MI8C+;=8L$P 0LL7"U2UX1D61:%@K0K]VO_STVT3_C^ MP]P*]YN$"^\+UTK2&(BY#SH6+@_3;I0B=@.6;,B'5!P+]T]U@Z)=9;GFJ6S[ M>-"*\VOB-.^+TT0GC);4SXG4^UT^8U=FM&D$HW[EQZ!D)?7O3OV M]C7S>Z?:;F745X]-I+\WIMWOE%J [C_W*2<7 M/>JZ2KV]T<61[^S1TRF:KW;9A0]][^GNVG?W)@0OHY($8 T(J[Q6/ME0C,_6 MEV0N>G,QP'RU-]_'Y_?UYI4>$*"S+2H7@P&4MU$[="[Z&&0@D';: T(J]J07 MJ@=$5ZJNEC^.)Z8SNW4HOFT>.\S\6N^?.M7:.!F._B'T/KJ^_KA&@^%Q;_"I MVWZK@KARB[M7W_YKR#>^$DHC?#(6DC"8O,K>9&52!AG,A3Z'Q=;GQB/TFOKW?Q,SZS8,'V]W4L-"?,WZ?TYK M_&]X?#(<\-?QZNL>DZ/+T_CWX^%@=S),+\[O]=O=3S[B;:^]?9/O-IWZ'QN. MJRHTJ:0P"B>(52@Z3$E(-"XY$3TF=6XZ6]%\ATV?E6@<,V2*A EC@AAT .T# M0M12E:BPW!RK61K1_ #=NFI M;:6U7ORD0U! 3+9E1:@P69?4\=&!E:T7RK M:&28F6BD=H']RJ"R\>"@JC9 )YGB1G)%I3EPPB;+:/YDU5592=")D@9#B%[; M*(+B,>BQ6#T'LKHT IT+BRXR&VEC0+9E ")A<28:DT)4)CKY&%(.PH:A8 M2LA6RX@W%U%LLARO)=291+06(,6H(M.;B"$58?D_&[*4@B[\M58TW^&OS4@T MN0@2QO+( 0 ??"C9HP*3'3L'IIBEB7*LYMRK.7#8?X*]O#%X@">]"?8;$O% M%]A]%DPHE0.G,U*4(86L$(45WBY-Q&,>8II=] .\DR4[H5U!<$A,]YUP7GIA MP3HAEB;Z,1\QSR,(FJF@ZB<"Z27)A(R!S'-,"J2D]?% M%A:.2L =&*,5.OL"V9)$FY6Z'@F*U=XM7^1D;B/WYJ,HH8 R#J0LA;U 7V($"446IX5,!>721%'F MY _.R&VGI)@$::\,*0B1S6A@!FN3MIK]Q.B6)J(R)W]P9H$OHI"%,M):,!B\ M$QZ$B87-HO8Q+4]T):73X]-^72Z[/3FD43UO1(?U;B]I8Y"&Q]202(L):$V2 MDEAR8!&C5 &+2KE(8\1%VL]21%KF+++915UB1++283$801MV*+15&EA'*B?P M4F3+X,[/762SA.%50 V6=02 &-0�K:K"::B[I\D1O MYN]OSBA$$&7P!973VF20$+S7$BDGC>!++G%Y(CES=UYF)3(LI7B7!!E6HP(" MD^)4-:DM4$@3%"Q6,\."CB3,6-@861E"R!169KX MSQ-)&:FQ3.S!:AN*(HQ!*C22"* MP.1B1$,D$5R4:FEB,CY29'.)^_%V^)EL1AS!C3,X),S M)22LJQ!*6,*(R@V/TIN/G62G51(1V:].K'B93XJ6+G=SP*)U# M90>I$=D%""X**+6ZEM56"9N4KO.(?FFB)#?JO\W(N39*0DY2..WJRMGBB<3LEB;RL4,3[ TH MK^-HT!L0-,P)C _.1^0AY6U"M#DLKOT9CR;W'IS/?_1>TGHIE";G M]9RWRVH>GM0AT/*F/_HK@FHR;&=I%[=%XCQ9SD5!7H5L2J90D M4R;K/2VN79P3;A;%8++G7ELV2\O"[R@MAWP)76N6K$1:OLF6FQ^K<\A594)>UYM"M!D$JV--Q%K8!1%M5%XL MWWS+S8_5FY]RH60(%*)T$L!&B2(ZJDL,3-W?DM+23+GQ8*FAO, M$IY7#WA+N6Z$JQF5M2ZRUXH_A%17P),N<'.AOWD%L52DQ"YKC"0-1(_>A: A M**5M3!1OL ;_BG[**XF$SEG M),0@T-9.B(#.6_9JFE"&N(8MGHR&^31-MD>[-'K92_3!S#BEP\&P/SPXNSC\ MH[&+^L@='!S0N\#)9F_0.SX]7D8&78I-FM"0=@ :72R4/ \/5AM!&"=:C'PK M1O#ULF+$A*A3-"J8C%!DW8PZ4"FJ".^3C=B@.->#8=W6.DV>]2:'#T['D^$Q MC7['<6^\79Z,^-+!P0?(X5NL#O(F]]RHA_WQY?6S -"G,5OWA:R'"HW'TU(V M%T>_1CZ_N0NX2=S,[;(WW>V=1MOET7"8/S=R+DX:4=Y^2:/:'X/)QF!989XC:$!10I09B I#CRAF MK1.[1?9MQGD+\WG"O)'( F79R6+M&:,!,.!9C[(#6L/K0E!H4H'6Y476LE"$ M^4P@H706M7!$#@+HR Z3<^CY(P.\-&E:L$5X(RC"7&!NLG72F5K<7H)/$56B M9)3+/H2:[-K"? %@WDADD8A**2-]5III:/:8 ;,+/B@OYK.5]74C:RK?A[W7 ME.O/](1&B1]49YOZ-*'%Q=>R$(7Y[.9H,)$.Q5$.0#DC&-0)2&,JQ986Y[<( MYTL?43!21BUUHE@WQRDYD,P6LBG>.T"O6K O#-B;B2]BAB",RE8%P.A]+5*' M6M<97:6E7$(ZVE1\+0MIF LYULH9CU&9)"T()LD$MH@L*4,(!J#%^>W!^=+' MZI#Q9ZV, 2,5G8G<0P :110#5@GUAP-Y(?%D9%#AG&%T,+ /(>M36W0.B MST;J9?3 +L]_!['%Q=2R$(6Y$&*OL"B$#"X2Q)RC"4ZPTX59.:U4DTK[M=A> M<'(P%X!C219"DME2JD7)T:G,#]#:& LR+G,J3A, WDA,21M!>D_H=0$&D8^Q MN&)4AJ@HT#)Z5TW"U+(0@KF0W4 N@5$E,:H!(##U#=[%Z"Q@\"*TV%YN;"]] MM""E8(MU$"4AF**]B:686A&^!&_D,B?>- '@#<44>00O?8X:'%.#:%40P6,B M2B*'!I#,!JJJ;S3#,Q].TP[9H=YQ/!V-,?9I_?4)WVLYN:YS*$-A1J D0'8E MUNVXG6=W*H(QU(0<[SE"^[HAM51T8#Z9YKHP:IW!F"5@33Q(1NI@G2$;=:86 MWZW*_$Y(Q8C.ZKH+% HH,GJL^VH(QA1K371-6+S0LH&%A_9&&%US8+!>!"$Y8K+#&^ M&PFIXCWS2'0I0P"0+N@H9=V=R?HH0FH=J":'Z.?"+TD(Y;S.*:"K.VEC]#%K MI"R=2T*TT:;&V[[Y1'JB T4I.I\-F)2"-L"43NMH$8QM0N[]XH6CYY/E[@,H M9N@Z@ $!)@0CI7:0,RD)WK8LIL$F9RXD1KA4@J=:H@E!YQP(P68=M$ -.;:\ MN/$F9SYK>)-6RAMP"2)H96/=9%B(G*32K!!OIZ)JI"0C!1:D]K6^%9!)P?I0 MI)86BM-%B :0AT4)0'X%4=N30QHM,WN!8ADZ4)(NL4870ZI;)[CBO#%%F29E M;-Z$XF_Q]#6_QGKC4%M1<]E"#UTV@G*UU62 \ M(5 I)8')/D"JV^M:[:+(WHG,SDT3%I_>=A$F%I?SCB0000H&*;MH %U1*GG7 M!-]E#C7+&Q(NFPM?23C=*825 "E0M<8(0RNAUV2T2K()JRH;B*BEGZ%AY" 4 M(S5%!":=6(+T022OO(M4]U9I-&M8 M6 6QS#,T,BM5LI!>>H "(DKGBT[.^!@]>SHMHIIN3@3931R, .#@#KB@8 :N:"7"J# M,Y]Z+9YY3-39:68MD7206:J"!5565J1FN\ZW23TDEW.H!B=@ B."SV 3:)#9 M@0J2&L <6GNS2 1&23 Y:;8N+K.+;-#$2-[9F%5P\:)4V6(#JK4W"XC)BP>;](0GL]^ M;P3*UD1+R?Z>%LX++77=N\5&S8/[,MERD?=_7_[]WI9%B\UE]WKV.3WYX"FC M!I0V%N>4@1 Q%[[09C FFB]AD9B5*/CE,*BGV86W(PK8(OPT(OV%?[^9A;H(T*ND@2PV[.H\ #LA) M'XK*3)-;F"\ S!N)+(4VQR2\ F6!8HD9HM7*R22W92$*\XDE MZ*2-DFB"2Y"\Q1"5 V44),Q.Y1;GMP?GRQ]1$"48LM98:0%3BJ"B" 4CFE)+ M)+=@7QBP-Q)?UL22;:KK("20,EX)GZUD76I"L!Z6D(XV%5_+0AKF0HYS E\= M+I\B0O',%))&Q2I41QG0RA;GMP?G2Q]C8/0"@%4^.PL:3"2=1#9::Q.2$Z(% M^\* O9'XDL5$S72T9BI B-;KH"M1U500DY=+2$J;M!OZ&<,RA-K(2EL0@!LB?'=2$@Q MJ93%VV25D^"#BDDDZ[$PJ+(U*36 8;9L8.&A/1>BJV-1/OJD@Q60A(R: !T( MYX0,.I46VBT;:#*^E;IASEY-)"]$!Y8)V 2 MA>59,GNEPIHF9+DW4$$L\ZRPC+:(K"V$(, G%S/38P% 08:ZTV*+J*:;G+G MBF0@"X()C?%0D'RTBH%&K+A<*IAO):P:*4F%(C-UR"YC 8D^*AF+%UJ5B$68 M)N5(SSL N4!;+3"6=$*G8 $P16"=XYYHPH]9: ME\4@*E9KBEF34(3@ 1$"6B6D$EGZ()M4=ZNU+@N )Q]BB.P!%Q$B6*TBLIQE M*-+I;$52#<#3;1=ADDF!<#Z44L 3^I**"MI'HXV(!AM-$!9V6\QEGJ$!T@PE MM* Q@; Q0"JZJ+HUL_=NU1L+*1.%%B<[;:(%)# IRZ+R&FI\KJ=FY MN'/&:\IJ,(NJ$N )>E(KIB:<2+1-9HU+*R"6.H9&NE4+I+!%"1$ M)B_>%&]<$"DF$503_)H&(FKI9VA2<'):%T(Y 39+C!+02]((4'>(OI6P:J0D M4;BH=$AU)Q) 42.@3OKB6'$$:_$VA-67=J_5N7 8E1PI\H78SX$ =6?OQ+#) M$G0AAE0# -7NM;IPJ (,+KE0:QL#6!$BNSO.D@&O"]IE2)>])>K!D!4E"RP1 M!3A=HC%!NAA"G=G-MDE5^5I[LQ $IJ0@2@(=LJFU>Z-009N4#*,V6= - %1K M;Q8.52Y;A:304Z2:W>BC*PH885E9I@F/8LLG U6V<#,(;@ 6F;A MA5+LM&IJ,]":32<@U9(3'CRY!-99I+HAL$OHM=2N-&'12Y-T\7S2?$P0KI", MSA70AHFCDD$JJRAC\HVJ/;;@0W@N&KHX5$7R7V,LD/'HV#, U,53R;%1E;>: M,(3GL_& (]+)*%MD &L0-6@+4: C]%)=JFE88#5=Z=3NA-M?SW]$PX,1GASV M$O;/I9J&IX/)Z.S>T]WK5+[?NBO[#,-Y13%?,CG6JB6472!?"A.J"#Y##'0Q M.F&!1^?\)2>^77(S9+ZEIL@+8N%YR-(%IU/ )!-%=F8:D^ \]S%W\X1'.\6\ M-N98C +E592@R12 I)06IBG.Y]S'W!RV[[4D/#%)MD7*B M^7;N7>[G@ZD,>S>QM.#FS9XQ"5A*3$63!(\I0-1HK4(GK50HFV_V;EZ0<[&" M68A(D"&GA$!1171*30VCJPZ';KX5G,N(G,,>?2S#K%WVAE5K2C)D /8FA(V1 M:D9V\XWB7$;D'*HB@PHDE312"V#?/T"),HJD*&@/8/_>6-2!>.FY/^GC8 N/ MWX^F/QX.#O9H=+PQJ#MN]5Y2/:>N'YJ]!'L#EA.?^_'HNCSR3V;1C)40@D(F M+! EAB1+K>! P+S3I# 5"C='RT45RNHK'.6]LY,/HBP[-.:1E":4=R?#]&)6 M$V<+ P'1E:JKY0P@8&VR40H=1-T6!Q@*U@!Z5Y=:8[-F2FX3%N9OF5V*199 MK,'9]^FB<+"[E&$413KH& M^+UOLJ?9LH/1\/CNI_F*=,XOFR[K.-HT!L< MC)_0:/<01_3[V:=O\"/(:J0';=&SYYRR,1! )N9X1NM<2)//%*UN@ >]Q)"8 MBR_N@OH,F9;6A)9/ MS$DKW#Q[2."U2"6KK#RD!$$(JF430!=;?&I"'94EA,)\;)JN#O/Z?T]Y)OQGR=O!7* M4\Q>2;1>-R!=98'%-+N4$K2Z.':LI)66+:6*LJC"1@9-D":Z)@5D_I&\+M=8 M;PRX!P^J*[TZ'M/7I/?5=ZIYA#M\PXNGUJ^;O4'O^/1X&54R9() VGE@!]SY M@"+D9$A)!UF5T(2"0DT!$;Y>5A#)%%-.Z"%C .E$U.@I.7+@DBVA+*E=_V?8 M610K3[%8##9@"1Z<\H%9F3+9A^1T!.F7U,K/0VBSL_E)5,M.SDNO(6=6VTJ" MMMEIIY4O34KR^"[I/3QE/WER.BVH\K#WNGY:RGD4\MJ31) Y"DA&>(61M%+" M6$3*9LDTZ[8^@U56)"FUH&75F8\)QW0X[.>-XY/1\.5T7=12*DV#R@@;DJ02 MP#GMD[5!J62<1J:FRZ8T;TBNU[,2JF#T0N7HO0"MG(]@BG32L?:45M*2:ML/3H]/^U@G4=9+H31Y,FWX M=EG-PY,Z]?+.+__JF?GH=#QI4%Q0"<=N7;(U< NQ+A,0H6[LJ=@U!V>FZK"6 M^&H%-PO!R3 SP1EAC/2V8&8[9HR)RF>#I(H%FU.\92..\N_(.O8Z-@:XEF'' MYHO'%W&+V+2YD&*P.J-S3DH/"?+M&G8W(KT9CKW@DI4ADT&YZFPQM)'K#? MX@A\<.J/+('RP&/-!XJ:AYRPGE(!%J>-SI=,YW'H5G9?TXA7Q/$C$68/ D-- M]Y1RNJT $W[IE*&898[E,BE8*]V]_-!,N?P^PM[@:)A>W$#Z+O>5_L91]?ZI M/[+6-'BK;3(RU7!777E*Q8NL17 ^D[B8*&BE]_5Q];Y ?L2)EB1_FAF9)YLOOX^@>4[4KWC0/J_5-_* W*EP(RF&@% MQ,(FB^^NC1$I1V')7@RH5FR?'TGO2^)'7.7,[A2$' U:<#8%RLEZ+=$I6[+W MBQ\Y7 #",+OHH!0Q$JJ"5B9(:*.W*C,!1\Q**U(-6BBR$"1\+DL\@@OHM,L! M ],%X=#4.#P4D0L&9YNPF=2B"7$.&?F)]:!SR)0]@]'"ZR1)A9RQ[CT'HNF* M\88XW^Q48XXJ(Z(5M?NSE#X 9&]<(1V3+4U:M[\@OM1\ZO8 N(S XD/^ETJ( M7O PLSKJ%)5HPF[BBR?&.:3I6&LD*L)I)>JHHA$RNQ+9"/*@G MD;))UUUW+WM3;583-UXO7[PO/12$2>V HBA:Z1+!%!8/> M!QN"SJFPJ['\I31)1])&AL3,-,/Z&T" HTEN CB:BQ*"KUXTU^+ M(K_OB$7)&DM\-^_U(X3$EV)#RCH+=KFC0N4+2G(\SA2&0G.07R/ZS4'20OKH M?1( ENFYJGOXZ.PHETP?)6(O,.X?]@:]"3WNO:3\05+\^/>S33P:CA[TR>+1?5F).ADE0R"B@&!0*C9YY(:98G$C,.;CQ9( MM8+^AC=JR!J[&4$HYH0YU;+\.@/I'+-T[$"(%"(912V$EGB%W:RT$(%25KG( M]@6J9V.A[O874!GC1?B()B\;A+9'F4;;HXL=E_E^OV-ZT1\>+*6LC8Y))-26 M"%A9!$M6>")?K I9+[VLMX:#-#P^H0FM'HQH 9\K& MV%)2T)3<\H_IO1%FJJ7ZEU*Z!*$('33JX &\]=+Z%)V0$E1BMV'9I7NYSG:- M7E)_N'@E;68DYI"]S 45L$, 3J%7D9F=3UHF&^SRNP??+^;6.;B:@E*P"!=R M<"XRB(3WI%S)E%21VLF/RN M((#^,15?-&@V$D R)B>3B%9Y"5#WE&+PD#&H MODD'V8U+;'9C+,:J#V-(2CG M $A&)%%01Y4+.+>D8^SF8H+7,LZ$RSXJ-%1(0TPBY*BI MS=">>VU,&;U5&-.2CK7KC-5=3UX86"TKU; ^@+8R*@L* M/7DT.89BEW1TW9"<9FB[4B@%A=3H+=1D9IF,2MZ3$P'1-"#1?'%C$]>T1D)C8%LOBZ]X7*:(K 8M-'V7D+"* %)1.+GG4S M*P!I,#:&G+TU0*)NN37-V@H,'X5&7L0MC5C8&DX/1I1[DX>8>GU^K:M"W*&7 MP_[+WN#@ZDFS E;=\GIC,)Z,3NL[O[?(\OQQ;UGH=8=$35?,HHI42NS<&LPB MQ)I)9(+V&D/)T@ XPKCX,>P6"S/;.Y$B_X%2BQ% -#IX]DY],00Q"W)-JM-R M*T&Q !418A22LK,@ZU;8-A15DA)$1A5K3!.H28N@F^8FI\S4IO 9G-87?PN( M8\+QZ8CN7]R#/U[>X/+(Y?=ZAT_BT0HTJ6B?&6J@E8F1"J#/)DZ9K8) W[FOQ;;(=!.PQNP?2Q+"%KI:P# MFT!&""(3U#6U3I$RK@$%]YK/A6 UBO?Y)E@93E_,'*BA6=(8'"18A&120!)D=!-DHA MFC1K?POL_>U2I%HY!\%A37\%5:+73H,NSJ%()H8V(+'PV%QB]\BP>1>@93 6 M!.4041)F"\ED0M>D*LJSQV8C)4I%.)6$FC24TFV:5!;SC:&DYHO'9*W"(S*SW#Y.F B=-Q?8N/]^5^[Q7J M"=?J=XJN\%T),_ [#6IF\M()P@*NEJ UAKE\M%%%)^&R5C-CHMN"8X'!\6'U MZO?A\94=Z-X_]4>J?HNLM(ZA&) 0HPU4*)8HG/$Y)=6 C)5;#:!KB6HI+Q1* M@2Y:#2Q[A)ARE%XG:UB&+2:^\O3="0_&^N#U_YQRKSP8'I\,!_SU@_S(9S@: M86-F875!%V1@Q\<"%"4CUFQK2,XK9PW@=%-S+X)ND4A?1=$;IR M%@N*M;%.DY*L)BP[P,43@19&2;4+&G9(M&F8H)W-Q(D9UN:!"P%E%%?0K6'_#G9405,)=F>Q? M2#N-]CJ7O+).12UE1-VBJI&&;PY((F/!*:\RL)VKNV0J9N$2@W&>N=7'>UDM M<$AGEK+\+OB>W[K^_OO9TT'O/Z?\A'$:]4X^V(GXW7D/>J-T>EP]J$3;@Z\M M86A*'L3;M8P9SSY:R#CM 3YP>>TW+V,4*EF+N>[=:D 6$Y7TF##RRY)THDDE M8WX<+'NOALNH^FX@8)UKT\5<9H[!9:RT1=&"HTA\.XK$[%!D M=:U 0HYI/0@?0U;>&0)7C)2(U" *U:)H;IG-06J7P#,1KR;-E5CJ'GRIF)+) MQ8OMK=\%'5H4+3J*OBO@,+/Z>Q0">V_!H@#(2492E@1[5'#PNIS MX46.O5T\GA<,2O5O]1!L[N[/"T<-)+#X:G@\EH9F6R M^(%/IK)^;[3R;_N$HS'3&3DY' U/#P[YXS7,[ER+/@T^1^4=\M\"[ ,$2L8' MI5VPM<1U:?$X8V"$Q1P"BX)'70R[#C5K.:L:=PV*F1\R'A5[IB3$XN-QC1O[ M$B>]E_3.N._TQB^N2N?A<$2]@\'ZZW18R^'QUUH.#-1KS,_!= M[NGE\:WA(%\?%UQN)(988[Q4ARN8!P6@5P0$&'VGDQ:<%\ MU[K%'Z^+(Y79C97HM2Y2*Z7)VT,3DXGX^D9B7V/_8A=YD MO_IL$TK9,Y('JBB3I

%LH&=U82+/WY;I-R, M3K&^Q&@EZH(>0A3>>PM& 4,E&VT:$-.8!5)40\9UT!8!A0!*"H#=?] F1&TD MA$+:P.T8U]D\BJEH$A;\T(#XSWWR1QF5))G3&66])@DD;!24F.N9X+*2 M1<.2ZI6939\M/E9FIU=JS2U;8DC))F!.A\4*"]/U'"FDTHC(6XN5F]$K4I6< M548)*C%?P>!D"N C(R8X)1?8%[C);9.N9YA6GF@"BKH#4MWT4"FF E07&4=+ M98&IXDWN"O3C77^W]_K>B,;#TU&B\?G70\(\?9_<>WG_-_[G(@1:BO#1^12M M J3>Z#N.',R^?55+T\. M[TDA_K^5*Z?6%^IBOWO)[MTM4ITPO+KX\GH;]X>C>?XGIGU\+=TBWX'&O?W;O_^RQ-,>= M+7K5V1D>X^#__#+&P;@[YBXLYR>.>V^(6\"-F7Y]==Y Q_?I]P9TV6"I:A.? M;FWLK:]U=O=6]]9WK[[S K[M[OJ#ISL;>QOKNYW5K;7.^O\\^/?JUJ/USH/M MS^J6S]J"CA(&P0"\-GWSI__U?THI?%^@U M/]VW#[=W-CN_L9(8# =;S#]&O=2YT"4[5&KX3*$.DIQRB<")X %*DJZ0S<[K M^,G=%3L#K.HY4^_>VC!-64U-IUJYF!#3?YW%M>'+QVKGY;[>/,U'ZR^?/PI' MVT<[Q\^/5F'_*,&^VE";1W_J3?6P]WSMC\.MM:W#_6?[\OFC=;FYEH\>ZZW^ M_INA>'Z\_VK[T8;>?K35VSK:$%MO^+SC/\_V]_Y\L__LX?'6LYW#K;U5O2_] MZ\?J^=G^LV3W^?O6LS_EUMJZW'^S_VIK[8_>]MX!;#Y[JC>/-^266G^UOY?$ M_M'FR_SH+\C__J/_7/5?QJ.3P\VU))^O/16;>W\=;1VM"C[?;*\=O'Z^E\[V MCY[J_;W?#[?>[/0VI3_;7-MX\W=&;\ DWR4111>LE-U8L'2E0?:!O75)^)7[ M4G3_G*KJ=U*XW_D(._,!\D\UY-O9'M#/ER\TJ5N/7KY&'([8N'3Y;?IX,J9[ MEQ]^S;WQ21_/V'!-[SF]Z-=C'!VP 8G#R61X?*\:CRG!3=B_& S3<7%^^,*N MA'#'&UU-RX1MV"1?/OC\J+@CZZ&[D_SQ,77'^,\?_=*5\H[X[+%@[T@9ONFV M=Z=O?/[6W"^U]_ZUHE\IQ/Z5#[NFN')MRN)U5$/ M^YVG@UX:9NIL[OYC#)Q;]5DKB#(<'>.$K^86,W6[%X?#?L1^?SB)P]>?TA]_ MGN*(M63_;(=.AJ-)(U7)PUY\]-1NOME_O?EF\_7FVE.]7=7(VH9Z?G2@]]7S MX\UG&Z_VC]?A^=JJW'I[S5_\+#-XOC=\LW6T_F;SS?JKK;UDMIYMBLVCY\?; MW 9^]]?[1[_W]O<.7_!]%:N?5X_W5B>;N^(U__\W29!&1-T-2NLNA"*[7B)T M2[99*91&9EE-5G!@?OU0$;W50Q=P_W$DGX_OF[=X4RS_^71U9V]]Y_%^9V?] MR?;.7N?)TYW=IZM;>YV][0ZSI3VF1!VI.]L['6E^RC]WMA]V]OZ]WGF/2+TE M4:L/]NIA&314MU(K?./"4S54G\G;[--4G=- M(=8.YU=:CC5=;S[;Z6T=_O'A^O/YFBY^W^6C=;+*& MVWSV!VN_/X[VCW<.G^^]^)!;\7U6Y;YB[G2\<[R_MRFX;7S_%Z^VU]9?,R=[ MM7F\U7O^Z&%_^Z\/N)6.4 OL=UU0M@M T(W:I&X1R0F)WDI'%]P*EIU;[>VL M;NUN3!G4HI&K3X48;\"G_C+OF;P=>I?$IXR&QYW)<($L5J,-ZX/A\7%O7./X MG=)CPSHXK:'Y>]<9\5J?AOSSM)\+?2U:+BZ=OSLT$%O7-7#I*X7NWT8.OL; MI,Q>L=,A,I8NY)RZ/F3;E6ASMDY+Z?W*_2?K.P\W'FRL;^W]TMG8>G#GLP9V M_DCZ3'AU_36FR53^G6'IC-[*O8/CSOB$4IVUS)W>H-.;C#OI<.HHSRL4Z^]8 M#Y]S%[Y$[,'=T0 S]Q>NYZY2WU'N\X<7\;;JFGVF\R$R#Z_ITT3SVKVF<2U M<#(:OJP#\VIHZ%Q!UP6N(W:7IBMOIN4*+I:R/ACF9NKKR_ T_U4;KSYO$?1YMK[%X=_2DW]U;E]MKJ1^'I>NW^T?JKYX_VS>:S3;%5 MP]I[JV?[QYNO-H]6U=;:TQKVALV'5UVH;&Q"QXX3>@%=L"5U$0-[5"K+*'UV M*925^VO4QUN-BT2B-!WW#6;X-SW:-]^.]@C1HRBJ:XW +L@2 MNY[0='W=;")**YUA8N>@J[S1ROA_,-Z_%=17],%7K./%/1G>31DEGPXX_C0U M5IWAJ#.<'-*H^\;MNEIHP,<]-Y,O__\V #=2'$TL6B7-<$J4 JKU5D/6>,Z6SBZ.QEK\^>W--!;[KSVN2L MLS;BCVUDY!O0I6X?NN!O+9))TO@N^<165&3=#:!B-^FL?-V4')-;N;][VF-= M;X5H@?0Y(#W@C]NCO>&KP:V#T>:;OV4JV0=%W8BF= $PLI)*U/72"2-TQI0B MPPA[@TGG\?"T-_X02+]<:Y;&M_GB%Y*<$IOMT1,^DTE,,YWP'](*ZN^DI%8Y M^2XHG[N0!76#BZHK60@DHT4K6)R;O7%=(-#[6"GFTEI?BGYE"T_CG!6K(ITW03],B.YY/#X>"V3MYN MR+^]93,1L:Y6B(XE(S23 RS=9+(*.B67V9^[;U3HZ@4GEI]13^_F5O_W?WDE MW:_CSH3Z=%+%?I$A\$L-@_1/:Z2B@SQ*.S6-_OL5UIR23C[=[EW6OZ/>I,=W M/)]EI!'ESLGI:'Q:IQLGPPZ?,0UL2/53_+EJ[YJCLIHF]^:6G0C2_)/I1BWN M"&=G/M6F_!TP?N:WU?Z.M-_VMK.>P9MOMEAOTI].>A.FPT[JXWC\8_EPB]C& M$4Z5R.[9<1SV?QI_/H#:U!9N760N3(5(%W5!.ZQ%7AWV^)=WJN;C4.E-!=MO MJ']N*,'W'5NYT.AG4L7I6&HD6[G(W%W[O;^YMWK&[W.T=?RPMU7?X^BPMZG^ MZ&_O/7SQ?._IV=;>%K_K^D>9NYN/ZD33!K_/IMI_MB'V^5Q^YS?[QT_-YK.= M_M;>AN3[O-C\R[]^?]I9) 6UCGC7$%9GF:CK(_O.0F?G(@:I8SA/(60T[TZ& MZ<4OG?^7+8N0G1,<=5[6(AC_?'*JQ?87L7VA.,_U9@OL;P#V^KN4]!)(I1B[ M$21V(9#K(M6OF OX'"A$9O!/=A[NM?"]ULAE-8W&9GC>-,(W MWB)<>6DU"G9!LV0?-3K3#5G*;E;94Q2B+F1E\L7NRQ:.,_ZG\Z@_C-AG#Z?/ M/D[GO(KI%\'_Z;G<+[IUGZ][,B=/=V.0ZUPU=>)9)QU2>M$YKFOY7QW2=.:_ M>G?O\DWO=7Z2/W<.<3S-E,\=[/?Y:%T05/W%_YSVJK?(3F*DBQ/XIF\=1ET3 M!]YFY7$\]&5&B*4N6JC-=DCGN_,3WX]'4 M&9\RAQP?#FO6Z^4:BC"@<^?WHJ7U3?XN(^=6W4^,I[XGC2":*3\6Q\I_.=RQJ?\5UJ&\<_NNY" M&;BA-;N??H/KGR1X<#H:UJFXRMC)4 M5V?G3.GF2+((23GHLG)_GSZ:E9L3.H=S!>;6Q\NFEEA?3]48:[#CWF3".F]J MV$;#0>56_;,.,<\ZZTQW%L(TG759PPEVZK*D#[7YNWN\'PO<.>4S09BJL'?H MX+1_GO.TV]WK_%07?[E?E59W+DZ8'/:F:Q-.ZMJ$ZU;MY^_[5F/3^.=6&5^? M,GX/0A5!%[KYUBGCS5=_"RFM%41=LKIT02G9#76O8PQ%H,\IHC2M,KZERICU M'W;Z.&*6BRFQ,A[5;5>F^FE4F>V_ M5*+-MV-V6N=3#CH'H^&KR>'EX3O,NZF3J?0&O6+EV1/ M%N29.TK/?NFY6)CAY< MG-!(.G$>_7I>5[BH#?'\V;K9?_94;*V]4%O'&[#UZ.&+S>.'A\^/-E]O[ZW# M\[W]#Z)?)R^V]@[>[!_M]/?W^H?/]_X4VWO[:O_H0.P_X_?D=]Q\LVXV]P[[ M6_VKZ^6T%X8E9;L092TYDIB)2&8B+*E0LN1_3%JY__C3"G_Q2I#\.-\1'[/Q MQE54^72C5C\6WU*U[VU=G&^?&VY2\[8^1?!N@0B;WZK=S]'<)6OG_.J/G?. M:3__?CKF%QLW,\9[HSS@]?LK:54LI43479MCJ2MI7==[H;HR1B1 TGSLVTJ/ M+9'*7?^TR]D.VYD.V\M>?C3MY ?G?=P.WZ\-W[/WTS38^^2!*WS7.B&Z/%YM MUQ>)78'"!W+6@#,W6#EP?@NM/R@FMYPM6HJ$@O*%V&/-F?]DR+17/C5U-9VP M8DH\&$[GFT['-#V+FWI>_/D3M1&'H^FS^F?UX:]Z_&A^;&? ;1M6HO:R-YY2 M[ $.4JU^S\2[EN2I)]>]W\<=H_ M.U3BX.?R(S:9H+ M/DT%WYV^P_;I9&I:6.1,4IAYT/26MVF@,2T^D'\;2.AY%'6YVPUS62VZD53H M)BK@D[4>)*W-@_G7Q\R==V MZ/O>707=RN4UAZ-WO/Z NG%$^**+94*C>]A_A6?CE;OMUH-7L+*W^OOC]5H4 M_<'VUM[ZUMXB;3^XD+/C7]C=XDLSP_Z.5+.?;_;JCK#?5JGU>VYK[QCY;2_[ MM45WF%ZP2W*1$5,J75G5\,3#VI:7.I5R;^WW^?FS$+XK8W>,6T:B> MQ>^$"_,NG<-1)2[_]0T;L8J5^T]P-.ELL"G #Y75%Y;JM )=7($^?!NGV!B< M4U"^V]S%^PG[,2UK^WGSTWSVS],536N4J)8&[&@Y/4.T=GCIT=/:X;91B]RHU@ZW=GCQ-:E2*_>? M7AK3SF=S>&TEL3Z-%7PJN&N MI[3V^5:@2K?VN6W4 C>JM<^M?6Z )C7?;9]K2O&(#OF\6EJJ[H5[3-]AJ>^T MEOJ6X0M:2]TV:H$;U5KJUE(W0)/Z[[;4TVSRPV&?'S:^V.ZFL_Z?T[K#:.M9 MMRC[',I,:Z_;1BUPHUI[W=KKQ=>D6GZ_9XWCP\[#_O#5N\AW:Y5;+)UCR;96 MN6W4 C>JM#"E!F]WEE_KC=/I>%SK%U5'?76 _;-Q;^KJ MOV,4E7*Z(!NZ M)1O+(]$_:_G:WF1:Z6U*'/B'_N7WRCOZP_%IK2V'<7AZN>EQ9Z23Z@)\T8J%-F<23T3!1KN1A[A)N MJ<*UBUY_+G>DI0IMHQ:A42U5:*IVL9>5:]O2M4LDTNWIEBEMW=I;)?26);2- M6NA&M2RAJ=HE7):N76U9PO*(M,XT=!YBF@Q';1CA%LB[)0AMHQ:Z42U!:*AV MD:I-EEP^B3X=G&^X2J.Z"A+[Y[O@710GV*5T.NI->G0^(?%T3/7@=%Z":JETNUUZ8EDXLCT3;28E;*/26)+2-6NA&M22AJ=K% M7Y $VY*$Y9'H^NO#7NRUE1MN@ZQUNWU/VZA%;E1;+JFUFPW0I4JNW-_EKL5) MNR#@=DA;?[$2P=T)QCY=_OYVF-W_+8[N?G#1>^*Z>%%0=YSAQIP,Q].*%_=& MU)^N6/WU52]/#B^TQOL7GLO^GGAW"<;QL'\Z^?B2S[_(^__6>_?ROU:^):UA MY?*BP]$[HW- W3@B?-'%,J'1/>R_PK/QRMTK;WW<&W0_:/+G&O@>D(].QY-> M.3N79*_6(9OOLW&G\W!C:W7KP<;J MX\[&UL/MG^M=W;6'ZWNK&UL/>JP=)[QQ^[C[>W_KM]W]U;WUC?7M_9VFRNN[QYD-_WB M#]C48:\^]FT=X,07\4^4._S[Y+ WKDO[1PR7_EEGATZ&HTEG>''@X7!TW)&B M^V?GIUIS2(E?W_XR_2Y__;F#(^H,AI/."=MOO@-?-AF.JG5]_YEUECV?%ROJ ME--JZCOT^H32Y+S^T"^7+]4Y&0V/^.?IYGS#TAF]JU8T?+=KWW#4*6_+&Z7+ M\D:_U-^GS^P,I]'Z,AS]_^Q]:5-;Q[KN7U%QSX>D2NW=\^#L2Y5C.RGG!DAL MO'WP%U>/("PDM@;;^-??MY=^AW^&P' 77[ M_8^@#L#C7GKOG[0.3_K#>&6(,*;AV.6[Y]*-'WO]SY.*2>/>Y/=!9_@11CKN M^TFP8@P?2Q-5V1;YYRNB[UAVW!2CJ; M:T["[Y_LH-,?#R]'F\?_V0Y;(,Q!3L+3#O-4]<9G<9 _9H?#\=EY->U/6J]@ M'^5>3!XN!H]^T1_#KW#YO,EAS^=1YCGM(UC]+ESKVP6HS38\T^?^( Q;W<[' MRT\O% M;B=^NOYZ!%B?W?2%\T$,G9MNW!_E:;'SX_%X4E\# MMOMD'TSF:+['?/_LW ZRAC1YZTGK"!9A,B$M!]OL<][&U0XG(*TCE6WR#@&J_3Q%0V_)/6L\F>QEFJ;KLX')7P_K-MC585^/MVE.0174<)/%,-(9.+QWR9"5;B]_98I^>[XQ!;/[GQZ)*F MNIVSJA#KJ/_S]/O=;O\S?+,--^I=Y*G_?-+Q)_D+%:/DAW+PJP4X=E)GCL=> M_U/,]#/H]^RGS@# \M/S@_^\>H&(^;D%5!_B6<<_W7C9-C6F4+:.K_XX[W<[E3E:P]E%INJ,")?Y. Z'F[D^= /69X;92\ANQ]2SQDW] M5)X,AWW0VS(%?^Z,3EJ78K+E3VSO>%(W.\60,=.>L'F[U>UG>&2P -W#?7JM MKOT,&L@@'H^[,Q5RAB4/0FHSUXQOR)IEV%RJXY5N7H/+C/"Z%^VI!,ZNN+NM MA^&-6@_;G/4@3[#*\^!!.P7U!XAJBH9J[N$.GSI^&LU.3^:N5[GY65<+;S+GWS9G[V8:?,%"E M[G>R3ZM7D0Y(@YH_X))F6JD[SB;$[.56_#*1*JU!-MTVSO(I^MM;@K)P$_>P[ <6T MD\"2 P$][*=1Y8OY%'NA/]A0!!PW9P&FU'.6K>,I!&S+V:X%FWFF@@['Y^?= MRH4S_-CI3JO-#>(0WLM@J'37*PK49J[*2>-6I6:Z=<[..L=3RV!!:ZQAT]QI MSC33)XKE>0 Z'V55%#9_WN^3O7S9>;D2N?!RL"-;_5$[ ]C,)3AMWA+4MOK( M?FEU(Y@%V?F0^WL-L\7[*9\4',^<$M5G[.?AU,7?&4RTV/-!'&WPNGQLSKI< MRH7*^V_/ 2*@$.5#P,L3F\GAQOP@*^NJOM_K3]4!;U4[=C-]>J(Y\_U=G]Y9[BZ45^!X MT/\,?_<'Q[:73R6ZDR.+T\QG!QF]ZO5/MCN^5(5]_^RLGQ^N[S_.#TLO8R4FL/H4!U7OJ!0GT9>S M+^=[31<]UH QKU.U8U^EV M)I$F+ H%ZV9:GA:\.\ M%0#ATQ".3N50J*N-=Y=S#5M2W;@ES0LP07H Y:]3!_)4C/^*7$YL'^BFV6SDB)'\H9I]-%0TR<>7GJV1:O2E8 M)0>"S!AW?#VZK!Z>]6N<1W[-KC&(*0X&DWM9U\^CL+"X .3\[]4 KUGH2@Z] M"7&"W9-H*_!/5[=>_VX>\U6-[%FOEXEA'LLW"]K[?]6!4;[81;2#5NSE.[R( M/IXYN DC[1;%%->9)O3]^')$_<%Y#OZ>1,!4CQ.S\R4')L7.A'0FO[:O!/9\ M$]13'5F-0#[%?PZ#BU] +Q\.)Z&*.3KGUDF'"X28QS6>W&%ZA!]/;#=-(M6F M05)5J&+7PKAA:D%>#B*0;.5#^H<[#&\'T::$\C07LL^ZL.!9O?P,BSB)P)M% ML5V-%)VYN&?1J]\- ,O^UT&T6&Q!:1G%.(M&G>[.]M2@ MS^(Q:S2?.J.+=A:4E42$;5*%A%E_DD[.@Q"&/8V>/S;#^V MID%E_S34'.P_D=%5 &OZ-@ W'[7T*\'<&H[]2?V[F5"N8*SLU/O?3-0_N%H.PNR$CAUDE>$GF*'N[!R[?1E?&[^-6QU?BV2M M7?^;@-7I!Y[GJ-3>Q960\.D\ )__-S>.JP(G)XCM9,DSZ@PBP*0*I80) 4E1 MF26#B_EDYBCG6]Z:D;GM#JL0T>RO 15V,+G'M[Z=C, \%?&_X_S=SZ!#@055 MB8D5A11+;/ZM)FHB<,A^-X'8:-R65ZN)216P(Y M5Y)0)4M"U8]G[4QJ9#^I-8Y^7);7O\CBMIFIS?]"W?WF5V'G3 N0-X M[&4U^GG=L?WK]/3TS4F,=UOC!WV*GRKQT1_#-4(E:'T\SY*@$HDY]C.G'51_ MU1P8/V^:*C21ZI>,/@"IEK.;N_9\&)_.?OD%K%LP8BZ>=GK5]:HO_7)F!\? M8U,QD#GLFT3GZI$G;T_IS9@GG(C,<--* =,;3\GO245^LQ3L*^])_$03JL?Z8]R+ M+88K'PAI_33N54>Z,?R\P)/B_)P[W_WH%-)3D-+,8)F06[,'W*Q)N^8\6J0$ M23,W_K:;QZ1T@M16/ MO;KZ-'=AEBV=L87QD:K_VZC'?FZ')Y42Z_,O\;_CSB?;O6)Y754P[O30N+4) MC_X_2SUB_=&J0CV->K9_=[X\[?5[OPTFI^.M<:\S>IUKY8R'86>2Y/]E\D*' M&TT<)9%S*3B65#.JO31)Z"!U\N+#JZR78,GP3BM$WSFSW>'_W4& @XFM Y?X M,GK:&Y^%_FCZ_DZK9\]BOADZMO;\:=YD^;^7\^WU.@Y'@TYVI^Z=_LSWZ6^?]BS].]E_LGQR].R+O?W])]EZ$TS_9?O?H:Q^_/SOZ?/#[ M*W;P^WYG__05WO\*GSO[^^+H\.^O1^]^.]M_]_ID__ 9.R+ZR\$;<^;/?NL= MG/[]=?_LMY-]^-S^Z;//[T__)D=G+_G>X4O^_NQ]]^#=;]V#P_WN_J'_\B=[ M#=?[TCTX??L9KDF.WKWE^V=_?#R WP_>'8F]=V^_O#]\"==[B]^_>]\].NV> MS;X#]QJ_IV_E_N&O,/[_G+P_/*8P-K'_XJUX?_H1OO=;=^]PC[X_?-U]?_:? MSL&[]VGO G_Y\_#E:.\-_OP!)T.,9!0I93CBG#AD?7"(,'B1>29$TCN[6K:E MEO_^U]4=$Y6303AJ&HDY 6"D%Y'C^ $Q=H4 M\P81UF.PHYYY#T\PRB>(/L).KXZU>W%TJXE!%WO^&QEXHVEJ#7K5Z\NU&.[' MT=34+?2S /WL/Z_K2TH8PZQ#-$2&.$L2V90B,C@FIRD53*N=7<)-6Q&]+/_< MS 'WJC#=U;)_]-!=@X91H+L"Z,XU!V*#E+ X*&"3$)=>(F-L0(HZZX@*DAD& MT&6LC;5H$'0?@XOIKYSAU E5-%UO&&_W97^/=^YJM&TT[ZQ!99@NQLO)6A3> M^0'>>5-3&;Q)TB;O@'((J R&1^2H4LBRH&ARRGBL=W9EFXDF&2PK\K 4X*Y1 M82C 70%PYPJ#C"XD&SW"-&C$7>3(T&B1@I73@C L/=G9%6VAEE87BJ=A(=A- M&A[Z*^>VQE"' M"0)K6"%$,,.(!ZF0"2D@+J0@FGA'+!@NE.NV$&Q%ILO=4+%!WHC'"O,UZ!T% MYDO ?*YR)$]CD #S$)E'7-.(7(H.T4@]D4DZ22G G,JV('@C8/X8?!=_S4KB M5+TV_CONG)]5R7HE4.*A3STFZ_)7U_9&SWKAY6QI]F/AJ$4XZJ >+\&XI<'I MB)+7 A209)$-/"%J;-+,&)]"W-DEM$WHTJ-6-]IAKM\& M[Z%^0E5AJZ7]'-M-2.LX%)FMSY]Y>5[G<1ZDM\-8F3^%D19AI'H\1;+.!9P" M"I)CQ#DH%YI%@H1GQ$BE5=1I9Y>)-A9;F+)2$+S. Y*"X-4A>*Y31"$B-S+D MP(J$N.4166,D2A)V+4V*Q00Z!=-MP4R#$/P8O!._]_LAMS4NKH@'5!QFBU 8 M9I$LL<-GF5TF>L*S#]&!=4*(0#IGMW+A#7*<:*04)\)@B87B.[NFV8:I!)DIQ,FR>]E"@?!]0GFL6 MU#F6G. (JV01]XX@)ZQ#!#M+F73:<[&S*UE;*-(@*#\&;\,DCP/F&Y5]&1T%NS^.W;GRX+7U..J E V@/"B>D.94H:0<5L9'%J+@)6FM&R3Y?->-REGI5!9H;+U)^<4*EN4RN8Z M(^$!5$:O$4NY1J!/"CF!(_RI./52,:MUY.7,1C';O9-VO _0 M-*#VM P>*?3'^6SJRN.NHB?!.H>X71K[S7U*_IQW#*^RG][D!O G_2Y,5-4F MF*A?6CEJ?W31^J&V%/\\)20]'];AYIGNK;\F6ZM4,/@16\G7W3X! M;%?,@T)$2(&XH@EIZ@Q*6D7,'6/1QYU=*MM$;F&<3>&B+>6B=?AI"A>MA(OF M?AM'->;<..2PD(C3JMXK9DA%Z:/606F>ZZF(MB2KJII4 H5^I.!KS0(JD4(/ M'2E4<^H4#OH1#CJ^$G=LI0,Q$9&U6B/.B$$V1H8L(UQ$)G3BN1^?:DN]- >5 M6*'FHG==L4(%OGR MYDP)%UJB#.RR*L3RA^\;34]K4"X*,RW)3!^OA-?"(IO E."64^2B%&!4 M8.F3=3'DEE.$ZK;6FX'VQ^#D^+/?.T:C.#@#$+E2$?;A-1!8CT-8CA>P&H6- M%F&CTZNE6+Q/S%*%%$T*V$A+I&W08"1YK*2(0;H ;*1U6S;**BI.C0W4(PIF ME\#L7(-(0)P.T(F4L3'7EJ?($A*1,5C&_KOJ[( ME['=W+/V>J\SB^:B)&+^("%=*<@2F:;210(F#>>("\W!FB$4:2^X\;"*04\. M9W6CJCB4@BR;IT,4'*\ZA.($!V!:1"63B.,8D5,L U@J MH;40/O&=78';6)?B+ \1;?$=_:&4-2AE#1XHG*10[D*4>Z5,BV7!",X=8EJH M28R\)3KW!.,*6Q](R/W\F.)MNGP_L$V*(RE\5OCL@0)F"I\MRF=S%5(3S4F, M!#GBL@I)-3+4)J09&(76NT@C SXS9!4!]R529D50O*EP2*P*AS2F(D*,5%%> M*B(T:=LTH")"Z'QZJ+;C,<7!(&9Z O"T?CJW@]8GVQW'UO]\3[+]%0=O3NP@ MKD3"O=K_[7K7WNFX*DS_90<'@S__]P3[L__T[#LS/C@]AN?ZS\G^*8SUW='7H]/7'_=^_^-D[^L1ACDZV_L: M.D>';^G^BU]/__?KWI1RT MAGE!?VG=NNFJ]X>KVV\+M""O;\5JWPV?C4 W42I_WXF>P38>Q=Y>-># >#4>V ME]7@LA,?9"<>??Z@$Q-,:0(:O<= /=GCR?5*JW%OE[&]1-JKUY8O> M4T] T\$2=&>>'5,X ;,(0X14@>%D\J&!IH3^TJ!8]%)\M)#0_4ED M4.7 :W6@//J.G0+/ N/=J^YU=+'_XF]^=-@].?KZDNR_VV-'AR>G^^]>?89G MP?_[]17_0(U/WNB4$U1S#4^9\TJL @V#8NY@H;%T#WMD6K9/@[>/H#9ZIF'3 M>,\05P+,W,!-+B=I.)B_E.BT)>>EM7U8#K<:L?_^OOA *+%*"H.L]!AQ[2QR M. 7D3(A"1^)!<#7QL+1LI@9N)DT]BY)1%*(E0&$YTE9*C)+B(<)^H-[%7!$7 M;]!9Z8+;L+B-'W +OF4?/).!^:21RV863X8C'9U'*0AAC*.:\%AE"0I%VTQ? M3_7]QA><';T;L.W*8>I#[SW//W#NB4TDH8@QZ'*4!&1YXBAH);A35G!*=W89 M;6.%VU)=SS"8[;U_.'U8E @?1!X7(GS S?CR8N_X0\!:!.D](L0*H$(+JAV5 M#EEA0Y*$4R5#1874R#87MV_''Z;"!]EXA0H??/?AO<\?>/)!10^ZH,4.# NP M:6W"!OG$-+S"0!*Z*1GR-C:W"^+K9'C7@]=2]&+YD\I;P5;. GX(8+4#22RY MIT8A;[*FJD%E,(DZ9$C""7O8.X8 /3>IED4I1M.8P[N"R]7BLG9&%U0PE"CD M@@4M'A.--(\8S$AL";6"6*JRVM0@7#Z&&C//8*AYFFVW=6X[ 75Z+6_/.R/; M+65P'[))\N6R_ 6K\JKW?+(F-4(J7+00%UUIF&RB2(:*A!3)2K3#'-FH-#+. M2E"ID_$:E&BNP(8C32J@60KA-D91*$A^0"37V@TS'8&(+6(DAQ]:2Y"V/""A MJ$V!)!D"S>4G35M+V2 D/X8"(\^\'Y^-NSDJHM6?]![NGYT/XDGL#3N?8NNG M;G\X_+G5Z<'+\9&5QOUI+>K&$)X3?ENL(?ILS:IRF\_K*_:J6JD_8=7VX^@@ M'=HOA;H6HJXK78JQ(X+BY!&SN8BWLJ"$F" 0YHH2IH5QR>[LDK:^H5'ZS\5- MT51D-TS[*'B^7SS75!&*5=(N(5A(,"H(=#BTD0G;]G1UR[<.W3>'QYA^ S[WZ^OQ >1 MX1NT1T&2"&*:861]T+GV"6\F^L@6H_Q M]6.(*^=,/P2XFEE%N(K:,Y2D8=,F[1QS)(V70./!69H#)+!L4W7]L.GNAE5Q MZS88M6NPK IJET?MW'CBC##-F$9*9^,I FIUP 8I;X,(U*5@*Q-> MQT #0-*]K7H)X4M"^/]EI[+"9@$TN-&#$.# L?D4U<(B]) M-%IJ)E/([;%X&ZM519N6]E@K;[Y:)6K>77'YI[F8KM#D&9\R6(G0'[MNG*S2 MX^QTN,JIV1J^7V]?UV>]4-A_2?9_5=?U8-E,Q)@B+'+\@$X1::$, @/54= M=+%^ -(;NH!^9YP^ A@']S?,ZHI//LG &7V''HY*05X)$0>\/);]4Z5[DLJ=.S/=^IW)CPPAD\X/#)M:F8 M//#NO]W@7[NWSM-T:)P^40(>Z+P_K'+%G@YBUXXZG^(OGSMA=#(CO=H7IWL3 MS[]B'8QP/+K]*VM$M9.:>\DY8I9%ZCES-HD@A58 M^0^YXM/T2R>#V1.[=I WY["ZS+8&3J^YG>>?KVD^JM;X3LY#W.GBC-;GT; M/R&WOO>]RQ+Z! OU0Y?]_GM,\\T9K)%F?.YDV'H)'!HN,Q%N/7%]!-/RIO/E#I-R MQTVS"2Q]8.M"X<=MX MX=.:[3QU$=I+H@367DCNL;!>TZ!%H,('3HSX\*(ZM.:8H!6D152;Z[=!_^PY MC"&/[EUG=/)\/(2IBH.77WQWG*?XV7 8X?]#@^I<7.QUIB>] MTU]/WY_]R)R][NX= M?N3[I[^>''V%ZWU]?7+P^V\G^U\]7,?3O;.7!.YY<73V5GQ[(O/^][=?#@Z/ MZ=[OOYWFL<.]^=&[EVS_Z[.+_:]'DY["+_[HO#_LILO3F#?X\P>!G55..$1P MY#DCV2/KJ4/)F6@XEYX+GC.2>9NP)M6Y6-.Q="&L)CW; H1EHS &6"C8J'C0 MR1!#4TA2))J4TJDB+#PC+%P(J]F$]?62L)C1AMO@$3%$(*ZU08;9A()C7ECE MA3"Y>1*7;<:NUT\HA%4(JYF$):EEAD1%E8]<8:,Y3YZH%&50FCDUU;!(T; V M@K#(G+"\@4VF"4HF\5PHW2"M"$.))$L$9D;PM+/+!&MSM85YJ(6PMI2P--<\ M*A*BQ(D339U/,N( ?P1*HN93#8L4#6LC"(O-34*?-([8(AY#0-QE#2LDBE+2 MEEEON'9F9Y<:TC8W=-M]\'3;;V*QB*CH:-4);>4:VW6-?_#:SF)N8*?'[]^V M?/+J)[?+'7ZSU'R>"X_V4VLP=8NW?O+35^""GSH^3D+!NN.J3CJ\'.+Y "1= M%?U5Q879LSX\SM?JA79K>-+_# \1S^W CF+WHN5BM__Y6E6D4N+C(=S3>;$/ MTN_]?JBR Z8+_*;?#47E6$#EV._4O- X2*$QL\AXFVTDBY'#)*$D3-#81^$J M+S1A;:*;U%&JU.K98+=M ?*J@#SWSCKC>,#"(YF$0IP%A71(\!M-G@2)E9!^ M9Q=,!R)6E1Q9<-Q '*_3FUEPO"HX&\3B]? ?*J@#QWYGEB<&2.(&8M15QB@;0W& 7E. Z4::;M M)+Z#J28!^3'4SGL3N_#B<;MU''MQ8+L33T XZ_0ZP]&@2A@M35N;8/)/%^KW MR3(!-SV[LD@OOYSG',9"4HN05#T(34HAI+4>Y?@-Q)W0R!G%$*,D*,*,HPY( MBJDVI[Q!31]+G?\-MOX+IN\#TS5/ "P:YA0CZK1&8"\X9 P+L,>,P %42L/! M@F"LK563&KD63&^P)Z!@^CXP/?<*1&4$!_PBV+:5,9%+W#J*$O,:4^F=%FIG M5Y$VQZLJ.PBZ/ W=NTY,$6/7,HBASGPOO M+=CT6B$L#';.\HA5!5Q&MC"1H0#W(4SZ MP?!^[<<#<6:V*Y1H'C+'%=0$:9 MA%2T'H0Q5]S)G5W6QJI(W"T&[CKM]@+<'P?NW#I73H ![D%5QH0C+B(8YBI* M9!)7,8EDG;4[N[0M<9. ^Q@.[Y_5(O;+*7T3C//ZBARD5[V1[1UW7#?FI,#1 ML'#0(ASTIF:N<^T5P0XC$9E'7":%8!EU[G>5B 8K+JJTLYOK+12G_Q9#>9WF M>H'R*J$\-^"C(]($JY#0"NP Z0QRCALDB-<\1(N])SN[O,W,JAK7%2@W$,KK M-. +E%<)Y5I9D92\3\$C*@5!/"F/=,RU14+RW#EA&,\IBIV=G6;T:637\L1_&)6 MOO_ON#/IR-3*.?W7*MX6Y^(]F?I?XZ ?[/#D6P[Z=3R$40Z'S_MGKM.KJ*BV M2*]SHZT8H--RD%^%G&--7*1&L2!H2BLJ]'&Y1K? MFA+Z2X,\C^7(8(.M_@+M^X/VO -GHL9S0A(RF('AX*)#5G&!?/">41$CERX? MXBM=#O&W&-@K\ $4]*X)O?MSP6PXZ3?Z"ZOM#]5PFY\62-FK$0O"(8VF0Q@!MEPR6P6JAB,OQ.1(W MJ?K5HSCF#[E3<&Y%FWM*)]L9M#[9[KBJXI=!"<^1W\L-I3MAVJ;VD84#_+1> M)\$0'AA^NP-1/;]UIT*F A)B?(H*8P1UP2#Y6$MLIBG( 0G09*=74&N<]RUTI?E MJ*(IZ-\<7T*A@R;0P5SI"8I@:[E%R3"%>#(2:09TD*B +8"-"X+EV$8LFY1X M6%AA QT1!?H-@'[-B^$5@P45!#D2#>*,&.2B,\@GG(@7WD4J=W9+K9\MAOT# M.S$*(S2!$>;*@#$J!)LL4D9R4 8<* .)4!2=MMA++ DEU:D$6[I*80F!6*C7 M[ZN>[Y_%5AKTSUK]\^FF7RH.HM93F=S>(WW[*&^=R1 'DY7J'4^6[\_^L#AH M%Z.G5W77A0]6&T8QP@GG"H6<(6.X0DY1GUS$/,9LJ\@V-DMK+0NA9(,.91XK M[-?I]BBP7P'L:RX*T$EBCJIV'C. /06MQ(&=8G0DH*U$KW.^!,EJR:IZS1;8 M;PGLUYED46"_/.QK[HD40#&#W8N<(!IQ"\:(H]JAY*7 P2NO-4C[W&)Z9>>Q M!?9; OMU^C4*[%< ^[FT9T#1%N@:,>L5XB0QY!RQR$H;,(G.!^5 R>=MLK(R M*?<+^ULZHO*'ZHCZST_[T+U!RPC7/L+M\J'=+#_VXZC5 2$QB,-1*TY*UI9, MHG4$"?VC+#T?I-'35].UF"T+LI]>1#=ZT1GZ M?$9@>^%%3'$PB.'5<#BV/1]+:.3B0OGONN>-4T&5X!@EEZ,$#+;(6$>0Y2G: MZ*/'EN?02+9\E$")>6XN)ZS B58X8;,Y8:ZH1X)%5-HBAJ4$^QQ'I*7GR"N- M:0A4IWQ8F".'2.&$[>6$%7C8"B=L-"?4?'8\84ZTQRAJ9H 3%$8ZX82<$HEQ M'*D4,EM]PG6N,!#'HC&!()&T1SP /_TK"8J-A>H# M.10*9.\1LC6[7VOE==0:,65 QX^!(<.41-A*!DB63 B=ZZ N[0DLP&VPC%V! MV5\ >Y^ K479^."99 [!,FG$I699QA(4@S;.$68\!Z/\>@&C!Q&QVQ6<\-T$ M'Q=3?Q!;$S.\-;)?8DGR:7B2SSSL[[=!_VR2GSB&J3VX3-/ZM5K4R><.\Y+N M=7K]06=T,?-:/NN%JU=Y^=\QO+T71R=]>.=3G!2_*6[(Q1COJ.X$H(:97%@1 MA909+W"--':@L5#IHW!"@*JYLTMI6Y%5U6TKX<1;0B?K3!XJ=-)@.IDK4-I* M02CFB!JP<[AS$ME@,/*&)(J= D78[>R:MC2K.NDL;+(E;++.G*3")LUEDYK_ M! M#G& >.1R H.4] M0)OKI^_C7V8NJ,"D\MQ%.^[I,1WE*J!:@]*H>&L:B0CBD@&5C MGG')O,OAHH27[GE;C.+UNU<*BI=&\5S;X,J+)*) -EJ#N 8+1EL"/P3V\!(8 MNSKD $^L2RW)+4;Q^MT:!<7+HKCF@F 8,Q%I1(9(AKC (=L,#B49#+6)1Y%2 M=F@RWJ3VEP7%&^]-*"A>&L4URQ],(6N$0DP#=CFH3T@S'E",L% 8UI8RGGO+ M2[+TL<3J SR6*Y%R5U?B':YQ3^4]R@@W>83;Y8.Z.0II4B(EL_(R-'"C5&R< MO^U_EGK$K1'XZW2A39(P2Y&T'Q'S'Z]40L9*1YQK+Q =.PB2T@HKQ&G,I=G#@1^ M8!I8+@@A8E7S 6]AAF6AHBVEHG5Z,PL5+4-%-1^FHH)I920BR0(5$6.0#L(C M+V U&3%*6K*SRW";R*7C'@H7%2[:0I]LX:*EN*C633P2(02Q2&'&$9>^RF)W M*!D92 "%5BN1L]C;0C?)1&NP*Y;!(X7^V'5C:P;/!KH2RRC7/\KM+"]^ MM<..;_4N';2M\P@H/;&#XJK=6CW@KSAXDU=XM2Y;^JW,?VD'/9BMX>QVU5:[ ME/VXR/Y_EOVG+Z^4RV;!2RDC4KD]'<=>(^UI0!(T-VR\#8;[G5W\1#2IC6:Q M0@K[W(5]EG32%O:Y'_:96QZ"&I.$TT@*YQ"G@B"-141 K[;#G[+.F7+>QS+^Q3\\$*&D$6>($D"\ YH*(BPSA&F 3GI0U8U<"O]L.?_.;%6U?N]\$_AGVUQ8A7^^3'^J;FQ M+#:"P,J Y6@"XI089+6W*+"8,.6<6&$J-U;AG\(_F\8_]^W&*OSS@_PSUW]< M#6[7!AZWQ,(96IP>/ M>78^SJTI6N[. 5J/M=I$-1G#!\P_?5<-,X9G,%WV..Z/SUP<'*3)DAZ,1\/< M !1F^ZH;O@0_WX6]]JX$0'$MG",<4:<,XLXJ9"632'#F$@XF"0K6&R-M0[

V$ V-S[A!0-49@O#ID,8 \8B6\%#)I.<&WUDOK)P7? MC<;W.A,E"[[O$]\U[X=)UDJA."*>.L2CY9..N29YGE(D3&L\P??R[2T*OAN- M[W4F'Q9\WRN^:Z,Q%P_QA+0SZU&6"2A';92FECA6\DFX?LQ!,K< MZE\("T30W(G![NK-W70&:X"'8>H0O49DA<,6XK"_K_H8E-.)$!2\BXAK)8'# MN$(D\& H=S)A!AS&VEJJ!OE('Z SSM8CO $^AH+P52%\KJ4HCJG"PB%G,6@I M2@FD3=0H)D^]<2EZ*0'AM,U40?AV([P!7H:"\!4AO)XL)(-D.< K>&*S':*1 M3I8C%FVPVG)C=*QDN,!;&&=1$-XL/T-!^*H0/I?ATB8'&GFN3PNX!I4](*T, MR\V>N-5)"QMM)<,Y7[H[S*HC&?XULJX;X=_0^;3[;_@QNW7M6J?CX:B3+M8/ M,9HA]LT$?6>S=Z_1'<;]1O M=?(X.V? %G8<.MGA 301J2KO-+Z=.S_9\QW;A:>"%JFGDDVM3,7G@ MW7^[P;]V;YVGZ= X?:($/-!Y?]C)^^_I(';MJ/,I_O*Y$T8G,UJK?7&R:9[B M^5>L@Q$"B]SZE36NR7=7@%V=C?K//-J*YWA*6#NEO9.4*V9=H)8S:Y,(5F#E M/U"Q,_O2R67-L'.@5.0&T7Y$-L$#/K7=S_9BN/.O*_-PUNFA;^;]#E,VA=L$ MS9V\+T9/F:RDZFWK_)"HN*W8?K4"?\5!ZO@.#*'=>M7SU_=NTP;\]A*2SR\A M^;P.R3>70&SU$[QU=CZ()_ Y@%#KU=6V DU]QI\ZO=;HI#^&:X3AS[/A5H)@ M#OJJ0!F,J&O/A_'I[)=?0F=XWK473SN]ZKK5EWXYLX-CV.I3ILC;_!O!4SWY MY.TI HQYH@7)()CZNJ]RQ+R1$OQ M0Y?]_GO,R,T9K#%E9K4T=[KL/YS4_*-%9*Y]] :39T(4C6J@G_[VO>2[)^&L[UW?Y/]%[]V]EX<7^S] MOG]Z=/I'=__%R>G>Z4MZ]/5UNCRQ?X,_?TB41D\40]H1D1O0"N1R>&&T-D5, MN&2Y;L-J.M,U[T2O,-&6,E'I3+40=%3;W'4-&&W MJJYTA8D*$Y6N=(6)ZDS$+IF("V*,"AXEG]N&$\T02!..= R8>4)XX&%5/>E* M69F%@'OY<>#0>SYB]9H %?+\78@=FS(@5YG56A4SG?LI];(?GED68X_K==3.H0' MAM\6D,H59UV)\IH+Z>GR/I^N[F%>W,EC/.N%P_E2/[M<:9#Q!^G0?BGB?0'Q M?IE+D<4[UJ"*2<>1LA3$._<6.2KAA]>16>,9R>VO29O>X'K]>8--C,(#J_13 M7O) 7OSP#YW;S*LHF!!(J=XE3I%D<-2(N&(-50RCS7=V577RR\5I&\%TE?@ M""P2?S-)8.Y:]%8%:2U#S&*,N+4>&:\-TD8F J2O%=8[NV#/B^MG'(4'MH(' M5N"&*SRPF3PP=^Q18QSCSB.K@T'<,(MT= IADT ](%:3E!U[;7Q#Q^D'X8'M MC39E,-NA/\ZY2/_GFUA3R%EH:SZFR&+5\*8X4( M:GC'W<*?A3\;%^!7^'-E_#GWAVFL!(/-CIRD"51@')##"2/A01ZF8*4B*H?[ M"48*?1;Z+/2YL6&)A3Y71I]S3R+%UH6@&:(JN'QVZ)"FCB'"9?!.$A=LVMFE MO"WQTK46"W\6_BS\^6#!E(4_5\:?M=!*Q94S3".B<[9)]!%96#J45"YQ)S%) M5H#YSK=$_RSU\4I]O.VNC\=74A]/E_IXI3[>+?7QWHSZ_N-)OPLT/9P]V\.0 MI*9$_;*>(=P\-7^$F5 <$_#_!$PZXJ3S@]XJ[T2=4_UBQN>\6 M':1/#%[]90EY(LG=JLTM]IY@M]^T<8,U=RRXUXC!WM?,4KZ6HH./H!!?J4]X M__4)5[&_2J6VE55JVY*9*P4 R[9ZZ )_,Q6VU^_%[T]2^>353Y:)7>?$RJT+ M)#WK]R;^@F72P6]EKL8D1I<1KGV$"P/HQTJ'GG5"Z,8'.HC[-1YW>KWL1N^G MW#2WTP^EAN@C*5/CG:>,!^X-"=QE=[VB7"D9L+4D2??A5160PACY]D#UZJEI MW5L[\58VYK#TX/GTL/3T^//>UWPO__D KKOWXO7']X?'?/^%YWLO_A9'7T\Z M^R]>G[X__?MBWA;LE8![\_VO+\71V1\?]T_A]E1Z?=CT>'QVSOL-N!S]']WW\[.7CW\F+_;._ST=G^Y/F^OOWR_K!*5[FX M/"S-*NL])E8HK[#3UM.*9G"AF?NG&3RO1>RX$#19I'B,B',KD<..(,DEMLP3 MH66FF2WL+%IH9DMI1B6'HXO66^>Y,\QPIHWECA&:'+5I0C.$%IJY;YJA\\P# M3YV0F"&F4T(\2(>&6RZ!S M10F;+*,Z9IHAIM#,_=,,GVLS @Q7&11B7LF<(,J1UL$BRU.2PEELM-_9Y4TJ M9KYLEO\J7&F;X)^J8%(5_XR]X:0"8A5:&4..^!S$X6C0\?FO8?7!3_!"=F;9 M7H W1YU!%5/6&MI/\.JP==Z%)\AP'G3<.%]L>*O3^'OE4VZ8QPTIG[( T1&F MC(W!T" T5SP;<-PJPBEQ427J%TR;_QH'_6"')]_RX+S6R?"P_PPF-(_+=O^R MG?"J]]R>Y[C@JNV\L\,8GMXW*(&I M,,&E995!3CCST3,NHK6:28<-!55(VR39@@G@A0DV@PGFWB)N<_HX,$'PUH,9 M9QS2@'_$A)0!##G*;"A,\ B8 $2"(-(9:[GC''N;E'!">.-H\N1.N:8TD-EB91EY()DA%GIQ$N M_TA*98^=E+GZCJ..*^ZL\0E+^$>:0 B.TS"2@N5[Q_+<,:"5B<)%B6 -*.)@ M$B#CB >; 4>P'9@S'*_P?+=@>4NP7.1R4[ \-_@M3LHRXY# ' S^2")R%% M ML!8D)@K_L2*7"Y:+7&XJEN?FO,O^.H4)2L$0Q!EF2#.A4:+95VN34S%NC%Q> M4Q[;FBS]F_/8YLZP5O:&H4ZO-?6'E2:GC^0:C\&A=8=LLT5$[G8+UI!PQ$*" MHLPYUT:;%+2E7 0E@Q9)W)Z>=>=ZET7F+B5S#^J96TP&Z9/&R*8W&K54F.8HY\U1QQ8*-CAAO K462ZSE M[?E.!;=KP^W '5->6*J4B>SVC)R"V[7A M=NZ;4HF&H")#!E8$<5"(D F 6VXU<4HH9T5.UA&B#3*W0;@M&3MW0^Y?@SY, M>ABVTJ!_UAJ=Q-80@%*5=9[DZ(Q.X!&/3ZJW7IZ==_L7,4XJ.+7^&@_\B1W& MUE]=VRNI.;=Z!KQF22;@.>JYEL8YB5G0B0<9B97A#JDY-_#;J^%P',.+\0 F M;A)?5P75S9:H^LQL@?+Z% I<@ +W#I^-]F9-+9]]8)$)[8 $@^4<\605?7\*8@H8I.8LH.0LP=EH@*Y-#+&'N3'2:6;:SJPJ*MQC%&MC;*2(5 M%Y$GL#<]H1I;E02W/&"S<$Y,0?%:4#P7QI)P6!T?D!$4[!#MP"(!VQ&!42DY M-6"A<+FS2TF3PM\+C%<,8R.(]RXZ%9/BP25#XQB8X%1I9 M!N11>%=7X&NXLYNUY 9C MTK8IP0W;3 D B22TL=I[E6F$$MPG? MPM+UA0]6Z$4I?+"I?%#SQ5C&D['>H42-SJ20PZ(]0]JPX'2B2L'"[YHVQR7$ M8_-"/+)7T_9\G,=T="I_RNFX-V&(SYW12[X[S\TT_;T<3W\O$ M?Y/&H_$@7G'OE."/-3ED;JO&^#WW];/YR@X+2R[$DJ_J/A4AL"5<)Y2\8F!$ M29U9DB-)'4\J&IIBJ:OX&#"]3J]* ?8] ;OF' 40ULQQ912-2*H Z9K44 M;.JYE$V*_RI=TQ_\DV4)'OR390D>_)-E"1[\DV4)'OR390D>_)-E"1[\DX^A MA%FIR;^L 9TX%8H3DA+E0B?G..&)),4P\W7@@O;UH;T>V&N3MMI0I%6(B"?XX0)Q*#+C4N):RV0SVD6; M<%707M!>9/O&H7TNVXV4ABM-D*T%[46V;RS: M:V==P5#E9+ HID@1]XX@*SE#BD4O-,_5I<-FR?9'T1O ^_'9>)+L?# ZB8-6 MCF4?Q)/8&W8^Q=9/?_:'PY];KWJ^?Q9+NX!';\OQ<4N.V 9_"6"D\(1%@RJ6UCE!C$_4A$2&P=+?W!;C$ M9]&;UP?=FD],,4NQ20Y)C66.$=/(&@7VLO&:S0'O MAU MSD9)E$W".LZ$-H%)RCA8P%1A.\-NJ3'^P)"=2]L(<.54!V0MJ[IZ2*2U-<@; MZBDS.%B6,F05+^5J-@VW"PE=AC%5R5IO*2>,:Q(]XT1(386T!M_>'* (W0= M<#V%W 5NA"0H"IQ%+35($RV0=EA( S"6S.WLTK:\H8WE@PC=DCU^-_C^UA_ MG[V6'P\&L>IG+XLZ/+(,\(4L?1&3RLEDQ(%D,UA[S$04%J"A MG4GZ#BG@B[-;Y7J\XGF<>!RS]W&ZI,^G*WJ8%W3R&,]ZX7"^O/.2'?MQ=) . M[9?"D LQY%[=HV!H$,Q%CH+-139(=,A)EQ .Q$9!HZ$<&)*TJ;K>M^SN#%F2 MT1K,!-*21+F.VE/#&?..""*= HW&*!^"O4/B^"W.OP+W1L"]YH5@5AC8,1@Y M#"#G-F*D$XE(QN@!]I$FAW=VU?5C^H+UK< ZY=0I%2P1QO HB"/)&^>="P93 M@=,=LLF+U-]4&JB%XQJMN*(.44<)XAI^Z&0C4I@'T )54!+GVA)"7*\M49A@ M*YB @9Z/9:#,*\,)]B#_.5?6)!&DB8S>(0>],,&&,D'-0^*Y#]))B[!@^5B1 M,F2--R@F$ [>V]Q\.NO_6-!F,,%CB%DH^4'+LIO#DG(NO;2,<&Z=H=8PL&"X M9)$2%V\/(BXNV[43TM]UAP0E5D:JP3A1/B).$T4.=%5DN <]Q3L:4\R$I,DR M#HD21KQM@ >5-EFJ&!.!$VZT9L3&X)GE.H7D;H\C+H!_ ,#77!*>4A)H5(#P M($ #(0I9"UJGT@!U+V562*M35KR,!E( OVV +Q)^HP!?:Y5(/3/&.N2HY(@' M%G,DE$.!!"Q"TB9J7R1\ 7R1\)L,^)J/00BA5-;AO9(> 4%[I(UWR'@JG(=5 M)8)NB(1_#+E"AX-HA^/!1:M"04D&>B37> R.M9(,M(C$M;!7M/(X"LTYYL9X MXIT0'L,_@4=QAV2@(G'7)7&/ZDXTZ9SCE!!$6:"(VV! Q4X.44M=A/\YYG(W MH4?"MN<0B\UHP M89&102*>+"C,W@L$R&5* QU[:0"^4K;Y4@?T!;X-AJ\FS.B(!>8@;+74.BEB ML27> +LK8FY/%RKP?0CXSJ4O(X3ZB#$2&.>\(2>0M9(C6"YE,4ZY?QW 5YLV MI==;UQ7X;@5\B4HT&I><$Y[CA*U7SED1([%<.4)+TE"CX'MPI7J=);!8R.F< M]F<%P!^R,]9]:3,75^'&8.MD?T2AR65Z/:*?928Y*4F07"NO;*"\:25ICPYJ;E: ML)OD=ZENYIRL*&_>Q&:0F_,.1WMQ=-(/A?P6(C]?]QPH+H5*QB-'34(\!/@M MTH2, @L2*QQ(C@R6;8-+/M"6PIE2RX1W!BN1#]:MI3$%$'XA!@:VB+I#/E#! M[+UCMN8NT"1BAQ,H+-Y*Q(7F2%M/4+24*RJE,3IEA:4 =CL!F^LI:Y*D=2& MNLIU\DH A]N43$CF+DD]1?X^*);G\A>'($'$*F1%R+X#+9 #1"/MJ2(.4Z8C MR%^BVI@OXSHH>&XPGH-BU&,'[)UCGGVP 0>OHQ1&&YR4665[R(+G>\!S/?8E MMW95#B-85()RO")R24ADX*?+Y?JX-SN[O*UOZ S9G/R:)C<,VKY//H9(C)+B MM'0!%\*LQ9@98!>>+#-$,DFQ])3E,G.Z!$ W2"9\O%+%56N0[(&A%)D!'2\I MI#G\28B/H+%38279V658MJE:05VJ$@*]+9 7E/#@"59,,2YBTA$41>Y@ST1% M./$E!+I1D*^Y:+@V1A,.9EWR8-:QR) 1E",:B#"4Q*SA3R,Z] J.A ODMP7R M1R@7,$C:(&.L1H%P[0)+BBBR,5+^,:0ZO8XC"R^&UDL[R&DAMT=Y;'IV M3[E&R79Z?-E.BQRZ8!J$$A%S1SEHV,:J8*4RBAF30E"W)SL58;LF8?OU9=V+ MQKETEA"))-,,<5@^9+S42"IA? YAL33G.#'6INQZF&;IS[ UR/6)RQ!=D@)[ MGCC3D4N6J*$.E.:DR>UY3@6YZT-N/5[)A,"BDHA;:1%8-!09(B("HX<'%;SV M$I!+C&[S@MQM1BY5)#*AK,8B,/71C[+-;[V'QQIE#X _L;WC1Y?%M(@NDBH7 M.P,%Q(,@TT9I,"\CT]);*X.YF_W_-0[ZP0Y/"IFMF,RNM$$FV%"M14#$6%!# ME G(&4<1EJ"=.(*5PW@'2$M30G]9ELQ*J'1S0XR8]B9G%FIDJ(M(!*V2,\&'' )30+OUH/78 MI0CJJ"55@D-R$:S^:#P+4C&:\-VL_@+:^P-MS20'JBH%: ML^^)BE83[%$&)N*8:00VOD$N$.NCX0& O+/+2$.2!AW]B\-8 PR$2RU@2<&OQLP!8(7@A.3F%ME^1%8CWG'LL)7"_'5 ME;[#6(#M;IA%KLIS-@FH"FQWA$606DFNB%<[NT2VQ0V-A\M!PM: UTCMF:94 MR"1YB$F#)4],#%A[, 7\79H/%_"N!;PU4UX1K&5* B65LUD,3D@'+I D1*A< MG30(FXL$27R].FG![M9@%RQW+#UW-F1S'GMG7-+48Q$!O\3&5=8=*=A="KMS MP>N"<,%K@ZB4$O' +;(*.Y1K4Z84?(JZ2CYM$WF]8% ![]: ET6I$TF*.QDX M!A6:Q0B:LS+8249JORWA8@I.A%Y-1:HD@.[286.Q5UU%X0P73T MMV>ZEI"B=9'1E4Z]08&6IWQ .!B%.(D469.3' MS@::D>6ZPE.#QXIV[+ #4P%3BQ6GB1CK9<0T* )V)1@4MR>Y%K2O#^WU-KW1 MTB2)128YEH/V+7)2&20=F _2'1 M6HD2D8!V)1PR2C,4*2N98(&$($\3(('9V.2%M8U;E M6UX%9![X0*D09B',E1"F!:I,GC*#D^;1 V&RH&W.M@9-V0I7E.8F$&;-(6:< M"TX&BRCW%O'$,-)2.B2IUT2EY!4/F3!Q&XM"F(4P"V$6#?,1$N9/< MB.X;3CKG@3J7"!>&.O3;MBDP50%?B!QM@2SI: #,KW]7YMZ:;-G86-B2O/O4 M,9KVWCD]3ZXIURJP*Q?]=F8')^WN9'Q$_U*7RO.JKW_[V@ZCTPS4)[@":VV1 MKI]ZK[^@3JL65WUYW)7F"K_R.TR<&K_ZVA#R1Q/S4;:__3K"K M'[IVC37RY^ZZ52-+^8UNN\6UYK:X:YORRV8*FH'=K%]N\F!OD3#A MAS\UEWZZQ&I0"=D/I",O#Y0X/AW$V#J WYT.6R^Z(8;6O\?=V&)X]P;U/K9V M6-ZVO]U@4+;K[,[RD7C>.SOK=5O%>K';&N9HF1M5@IEIPW1!&UZB$*_Y6LBF M\E7U^":Y6;9JY/ J6&1;!Z=95JM95ML5T7@O!8NN7 Y;%7]=;5<7;/U:QJ Q M@_^C@5/B-*/PPG@J(HTL\154,ZHVS;)GEOC2X=%X-!S9;A[8+;'Z_]7Y<+SW M[?#37Z<']-^=P_T_Z<'?!^+#_F?Q_NP%?W_L^8<_#OCA'R_H1:O_A[__ZASL MOZ"'?[_X_O[L'3[>,;I+Q*H*+-P,)AN4N.$1XQX6 MB#>$.A>)X$Y;K8QAW%#*I//1R1740FIPOSK6$AJ%U[+@'LL&]PWN+^(>'>S[%O??>)>,Y\B"M(:ZI1KFV&F*,.HV- M((J)G*]Y5^H[GZ^^%]PWA9INAN^W@)=AMF\,,Z):HU/HT,DI_!M;+\[ZG=YY MC)4ANO5Z//"G=AA;KSNVVQ1NNH8%<\I1H@367DCNL0 EF@8M A4^<&+$#3) M+XEC?#4HVU);7<_='CT?,[LH:,47B6! ML(Q AY9E]8<'>!L4"9X00>S.,]I4F-AJ'-LHC %P!AL5#SJ!\D)32%(DFI32 MZ0;)H!L#X 7 \,TMP 1J(40GT$4$!QS0B MXX)%06%-/&S&I43[G2T2#8[7&L>::QY!_HH2)TXT=3X!N0=X$RB)FM\@1W2# MXP? \(H-3#-8+HPA=+QPWE:%N:$3;ZJ)/.Z]F4YC^[8 MPZ8NUFE7;T(H;@;VB6VPA%&,!M$.QX/SVLZ1[1MN?)[[68(L"HQRL%-K9+]= MG+FHL?V_/^.@?M"0VVWH+:#X[WY7,TQ8)Z,2(B$ .1& ML$,V&(E )37.B0@?XYUGL 0ND=L_&]?,NF+UWNT2\Q&@W^.@%^SPM 'PKP/P M7.Y@*Q2.&;M>.XXXC1X9K!W2TCIOL328\%S@05-"?ULCYTR#Y%^PZZX\6J(! M[0I!.U$=%@ M=758G4N=R@.H_,)X9"-/"*0@@;0-'.%(C<-8!\YA@R7D+ "65 F M$;;66&=A4S-^93I(XQ!9:US?[\&+!L%W0/"<%<$)SI@ ^<8$:1&7WB%#!$'* M>)!]',XX!B%'738#-NC=)O2NP(#0[,H/BNDY(P-ATE$"B@M(6H@;C)$E6B"6 M+#')1,STH1PT-B:,4E4(\.H:,4QCIX'@R'(C9 ML9UGC*TJK<,]V!_6+^OU]OURN_(L+Z>_%]UPQ\R>B\7C5U_S;-.WC'LHBMCD M UK9OG$P;X_!Q(5@DD9!$X.X(A$YJA/RC"LN7904VSH3V)TS *X01AODGFI8 MXTKSSR^O#-BPQ@I98\X&Q(RC'L@=.2+R,36KD9,I@+Y(O01E,DEL"FNL(*J] M88V&-1I98W-98R9K&*$MB9T4!0W%>XX13XD@S;!'(5$M16!6LVV2->ZM'/$O FVYX]/V")[FKXR-XWJC7:N=VML\ V'876(=-&(\NOJ2>QSV:P=9+([&_-_2>K/1_N_&MA',[:771AW&\P9)_& MPU$[G5?X:>>I'SUELNR-5RWYAUSX5Q56*C/P.@Y2V[>A";NM5UU_]?)V:N8_VMW6Z+0W MACN%X33^"J8^PW.?E MT;FAM^E!]9+E$N:>/^G%@2][ M/=#BOH"P?O/COM]^W=TU)\)ZC?)RHCJ,HWQ.H7<6[W+V9*FU:.U(^;_N MU,4--82-A^'7AFQ>:PZ#Y?6JK*[_](9K$]GU_>#MQ/[U_MO[L_?T:!_N!?<_ MVO\3KOO0/J0O/Q_]\?[[X1]_XH/C$WSXZ3V9V;_^W3G\^V7G:/_@V\&G=]\/ MOO^)CX[W^ =HU^%9;M=?IP?[)^S]\>'I1?O7^[-WY/W?[_C!]Q?GA\<'WP_W M_Q0'^Z>?#^@+^N'37Y\__/WBZ]%^.(6VI(/SVO:5,\HXQ62NG8H4]@3Q7*S" M)8I1I-8+DD*D(E?FQ+M$RNT[LMTPT98RT0J"3!LFN@\F^CYE(B(H)T(DY#AW MB#,ID?$R(L54$ Z;9$G:>4;$KM#K5&ECNP3FY<#;"]E66AGC2AINP)IO=V*K M.Y7Q\N?YG<^&NOZ@]Z6=E7%WWNI5PG:O.WQZ$Q7N/LX$K_P>*Q+GJPW&K/EB MV(]]6 #MGS]6O+EI%=94%)Z?D6;_N<7^<_AV3A(V7%OEK4(TD9P(A,D_6>,MA_V"Y68HVVGR8?R@9+C@UP?QZXW^>JP83HI"/(2\D03]3DHTD$ M)6&8S$6"D_,[S^BNQ.L$W!7)C9LA,^R=]: QWYM4)&LC,\S/R%%ZU1W9[DG; M=>+>,).>,IXE$3Y#!C2,"4Q41I"L'M/#/RLA6_ MR2B[MIB]7]&G0>HO1.I,P''"N>B91U)Y$'"TMT@[H5#$T4:'>6 Q6T[$JLZ] M-':3V\90];JH>-2&E^OB-C5O-\K@4L[L_6Z',^N(5SPP+U M,;& N$T"64$IBMQ;KSGL."P;6O"::6>-H67]I(T&P_>*X;F0'Z(LS!]%B>;: M$\9AI+6,B&.GM"1"82=!4]CE:U6[\E'9*^9MB_D@7HANU KMH8<.CHH,TIYD MK_>]X>BQF3+65-A8M B_K XP=T^>YQG:ZX;]>OX:V_"MHA5SN;JWLSS56I'( M$T;>:Q! .*A1A@N#L.0:.Z&MP'3GF=C%YL[R1V/M6%]8/YRCIX'UZF!]/H5U M-DDB2)P>?$I6C23A9I_,0C\HJ,@M'+M5N;'O0^F([ MXU(_)V,3.I2_RTD\VJ&./B[%PHV'PY_TOCP*W6KE-?Q^KP<= MU"<'[)6?_WPZ8<_GYVMO,+#P:8DY?WZ:7[[J OT!NQVE*R[Y3]NZ=J<].B<- M_]V*_U[,BS52)H8%D2AZBQ&/A".-X:W'7FC!#;!@V'EVN<)88U+9&MC?ITC3 M,,*:,L),(A*22AR=081&#HI.TDA3K)!5$F-*N1,Y,)[L*K:&5IH+:;D(+9A? MM1:TZ?=X#(?8*LX8YMJ*O6D""%M"Y(H=JU.313L.=\M1-A 2YVHNKN;XVD9L M%3=/,?- %3PW8L@>EYG85Y:'?#8TMK_D?&&/S!)\ST%M-Q:P7G5]+L8<]V/U M+PA-]5SM=<-A3H;Y9CIEC91T*RGISWF]B6K!'!4>M"47$3>"(RMY1,Z%A)T/ MT@<"4I+<94L2:32!;VN+Z_O5FZ:QJ@V^UP+?R>0IMH@+F""N914*IW]T&Q)T8N;RQV-O;:1.QI@WP.P M9Q*'D91ABS7"/'@ =N1(:RJ1(C1AZ9*4)F5/] HR\S71<7_3M^2.T>6R, MS#&9I]?5-#6L="M6>C\O;N"DO$G*()IL/C,D K).$"0"3SIH)@UFA974.F7I M:VP=JU8BUD3H:)!]1V3/Y V83AZYCH@2:1%7"N0-8P.\A9G5DAF6Y0VY:\R: M&# ?H6UCSDG9&#CN)6G RA2B_\RFKF&I6[&4GY<_0@A2BYSCC6N0/Q0/\"H2 MI$5TW$LNJ,WG_LBN9'=),-#8.]88WVLB>S3X7AF^9U((X93+I/-A&A(1YSH@ M'8-#P5@K#5,N65_A6U_VLSP(OA]+,9>K4GOG,*H?U]&Y>77A+:\?_.!E4W(M MQ=?U-/Y^_FZ8$ZO,S+;3F6Q([%8D=C(OI%@;&&$RH.A=5J4XJ%(>2,S&) Q- M$0O!=YY1LZOUJ@X';FNM\4?'!O= H4 3]$ MY*27V";BDY<[SYC:%7@SV& EL?6;4-ACC8J#K(EXN+RBXJONESB\:47%N_5] M_;C]#N'RO^!RTX#ZUX%ZINPH%YV0FB,JB,H%,#!R MWGH4N8C*IV0\)B5_"E?K >KMDL^O./MJ^^T1M&.6QZV=2]%W;:=S#G#Z$CN M!!CN7AI]M8/'F MS! >"T)P0HQ)@CB%/U9*BI)33DD6#?,Y49LTZQ'5TH2J;:*0T0#Y5P%Y)EJX MX*ECVB*O$D9+UTIQJTPP:Q6EL M*WD[--:-^TNU=DG;^7TZ.8\\X\!D=XFF M;6+0MHP1'B3"OF&$7\<(<^EUUN0&/1@P,*PE0:] MLU;^OL2R%)'BD87%/MP)G2L)J9Z.L4< M1@P'FH4)C8R+\"=$P:46UJ>T,C9JHF77%\3W&L_2('G5LL7>QR@4#UAYI(1C M"+"KD(V8(>NHMLP%KQALJQ3OXI5E&VAB96]EGQBV ((K$"H>A99S3T+%F]B? MZCG_Z75/CN.@H:0[4-*[Q1,X@A%M% K&&,2M)J#J&(^T52:9Q'6B9AU5G<9D ML89Q)3>6+AI(KQS2,RF#8<.T2 SY@"WBWF?C8Y+Y0$X2"J95!=AE]5(AHXF0 M_<7^CRQ6]"85L?/+64GLXAOI+SFS\\C,&FN>>>1E;_"CFN93:VP3%O>3A+90 MUX)H%@)5&!G,;%:;.'(VIZ$E1JB8!15-JD#9%43%-9:/=<3Y"H23!LP/".8Y M&P@+-*3($8Y4(!XX*!S7'6[_3.8VR]+5]-CQCG1#V-I>2>DI+,V6:/3^-;F*RC M5.;CN)HI^' R3^7CR2SE26JXZU;F2C28/G^L3R30R0%G4+;B*(2$I0*AY'C$K#L%,,) M4\9$RL4LMK" YWH+(_7Z'F;Y8Y3+N8P'YY4@TMA!ULD.DE,IO8D3>]51RBD: M1^<-)=V*DA9*4VA*C"?1(B%<1#P7%':9H;A5)GBC$_6ZU-?1^"XY2QI#QU8+ M%[<)'&T@O!((SZ0*K4J%+ <05@1Q;BPR5!H0,@+'$1@Y4KN.L5J/P&X&<3@: MM/THYV,MYH_Z]/LC,WRL;?Z2HE'-IODH'>=)_KN>X[WA:YCAHW081V_SY+Z= MSNU1>C.=V:)D_57-:\.$MV+"SPN!)89PY_+I%PP2#4]$(J,P!V'&R@@L:%(T M.\_$+N7-(9@MQ?Z]9BIIL/_0V)])09X;!A0?$/?.("ZL0A8'CQB0/J?&,AM, M=MAJV>1HN_\<;?^HD[3]GZE)V;:I1IV&"!Z("&8"#BQ7 MK@*.B,H 4@X#Y493YA"U7IA@?+ 2B$#N,G6YE%/TQN8 MI:-N9K7\_R]FLS-3W$IV[6Y8_&#NEPW7W8KK%DH!,FR9MSDY;108N([R7"L= MHTBB8=K9R(W=>2;(76KT-&:<-4;Z*LTX#=+7#NDSJ88*1I3B"<08XA"/$2/K M.4,Z!$62P2D(NO.,L;OH-HW1YG;5 2M!I;UJ&>61:V3W&2YS)SI[#4/1 _W- MYT"HN!^K?^%]9YRG9YXX*S)M^.]6_+=0C3"R2$'("2AIH#YN?$36.8I4M(Q& MPX/5.A<]YOIR^,TZ:G6-B6[RGJIU2\P>F2&HEL0(^8Y M:R(-25C#J9:.*:N4T\X0$V'E?WR5^9!01AY&PFI8[5:LME!@44K!!58149H$ MXBR793/PQ\(V!_,LX3]06L*H.1*U-1BG1$MK-+$F>.ZI=C21I)WW.'E, M!EB')JDU B&$]VGBF\M"917"SC-B=@6_LXIZG]:W22L>O*[F7&\9="GT MQJX3%[O[T"4W;]O$[=(=EE?C?#ON]ZL#,+;3VF\/?: MC=FZ;X%OVV,EC%G),*[F&RA-;TAI"TEI/L\ M_=(0TMT):>Z4BV&8N."0<#P;CV"&G)8>$1Z8M(8RS@T0TJ[0C>7_8>6\4Z2.&;;*'59%[>&4N]7QJL65\.G/\.G"_G=(O4R1%)&(2[X#W2 M\!'RDE.JE?&4B$Q&FES.S_3@>>K6QOJ]UO?8+DEXN1W[L-=%11I^U:V3\;7J M% ?G*S%E;T2HWG(\/I35?5.'[#$X"*JJ'>WAMX[<^UN*;"T4&WI> #=37$PB*%*0CR1](:OREK=ZX;\PCI 3B/TW4+H M.WZQ6,#$@>Z9+ H1*\1Y<$CG>M0)!TTB"]A1M\757AL6VU(6NT\=M*&R!Z2R M.?V51!M@RI%*+B!N">BODE&D@N1,Z\2B+%5N%;US"J[[>YL?%Z M[KNO7VZ7#KF<:*:E'G/$S#@#]Y)HW!_T^M#B\W+<(I^TZ.?0J<;A\DALG/D7^/AX=]D;O8S%]-OO&K?:-A3.K5K@D9$@@ M\UH.(K#FR&!E$$Z18$8\"8:N8X6.Q@W34-2]5DANR.A7D=%<,61EJ5/>(I&< M1-PDG$\G,"1BH ECJUR4.\_XRLYFK4R$_=?;?\&?RZ+E[^9@5 MGQHYS_[;#?[U;-K>FU[V"P!7[O@T+^VVOQZ"M%A,8VQ9[WMGT)KS[%[H]D;P MO%&O"KMIGP$H[1@ $C-!=T/L#JM7Y=R'S1_7J?5M!WH#'Y3*6T^N'(KZZ9P^ M40+:W.\-VWG&GPYB!_3++_&WK^TP.IT0Q-R%U30]Q;-+K(-&C$=77W*/PW[M M(,O%T9C_FUM;:"4'Q&JGM'>2OX"%I[_.+- MJX/6N\.]=_NOCE_LMYX?'>Z_.'Q;O7I[])]7^WOYXY>O#O<.G[_:^T_K[3%\ M< !]?;OVW?SWN\,7+89W6UFO:%UJ[L/ ]<+F]UP^]VV!X>I=<@9^536<64"$_]O=/SGQ]8 MLCH\KR4K>,J'XS_%^T^OOA]\@N<=9&?5LX9D? M]XFT52^ "QP.W]7/+#^N5_V/GOO0B_UV2+[U9G??#3\^O2"6W4D:*PL@#E+; MM^$M[(!=_Z28^MKPW7#LANW0MH,V-/\?T,%.S!$FL7.^VQI!,[*M@.+?GE=M M*>_(;_]LG=HOL>5B[+;Z@]BW@U)SJ;1Y$$H1REQ[LO7NR=LGK9/8C0/;Z9SG MKV,_MS+_;MPM\2S]01O:V^_DI]?/*E?]L;?W>OJTW-A/E#\NM'8SS MC?+/!_%DW"E+N*JU#5^^C:#@E>H@Y1>3') MZ-M9>SC,J_T?3UEYI&'0NCZ$';<-":[-@W0JSHZAS(SB;RMZ@ MU"\&)9M*]GV8#)5%8G4 M$S"WB(CZ;3C7KHE0OYNKD(X[U9K-1NEZ!J=Y@%*G]W58GI-O6.7_&<[6Q9,6 M0&<8E_=X>-H;=P*,.3S$EB4$7?TT[E;6A^D:NMC*'P]E;EVM.)W&0805DMH= M^/'TEK"4\N.6W7VO"TS;:;V)_5XNT-IMO82Q;A&,_K]I+\^C'>2,1W#'?1CJ M,Q<'+4:*T(2?7)::5B/+KSM/$E%XM^"TO ME@AL 50"4,K0R<"%7P$(,JAA(BC %*SX_^>K6/B/EG"]H2XED;B/=_>E_CESB8/@+0-+GI9,)'IX.L ME\.J&K:_M49 M'HY2ZO<&BPS^YNK!;0^$.BA/:'7R)$QA7?=RVLG=[&JJ$NVV "*#D_SB"S3/ M EIVIUM/+(EWAWG1A]Y9CF_TY;N33L_!4$< 'K!A' *H>_!$(,;RN&&_P!<> M/GGP;NL$QG[0K=!8B!7FM0<\6#TL]WDB2)6I+E_"=S"T0'(9M'!G:"0T;C2P M>1KS99/5,%L,TQK)4U("%CA'=H1.\UGTDHFA_KQ7E@L0_J@N/'@R;H>8ES \ MQ-M\ZQ/X%5PU%Y@&;:N8-?-@&.=:SJ#KCX?]DN]LNEYF-0R?M/X^!:J9[C+5 MC SCY8;.'C^W\W3::51M.]G^\BV/%UQ^/EDD@]CNPJR,QO6."S?MP_W*&-;C M6:9X,H_5J$;OM"W#3#5PYC%B;KFT7BP!$NA M3/7R.:[&-K2@F?DA&0+Y)D!"7]H^3B:P,RZ/S3__WW&.<"@_S%MXEET*+P + M5I#I5R7G6\ J9YD]!BT/LPBS.V@YV_V<^^3+= &[ Z '<5YBR$](N7F]:GW/ M-I9J .'^8WA*A=-36/NYG[60\J8]_-QZ"0NB-QC6TDJ>J=R=N^XL%VP[%Q2# M%6\U-U.N.5YKY9K^>N7ZLAH-RO5;Z'H;Q'M TMY4LGX-,DM>WZP_^;TPZ>_VJ B\_?'GA_0%^3#)U"9O[\3%]7L0_KB>^6( M>('WT^^OS_^Z^SP^^?OA\>=!._91QR(H<$)9)+D MB#MKD*%>(!:2\A1FD3I^4%.5+*@DK^H9+\=GYUE MX1=X;6XB6K.9:$VFXBL&RW=5E,L+:$.6^X:W$9D?J,G+AO;7 M,@L,TE&:#M'CXPKQ,=>'(CH1Y!7UB/N4$-R'(*&X)U('PB.[B/VU5Y.FYJ3* M3#-5QY?JL95&G.62'"XVL^!D6TR1@MK9<#$S0V2)YU M$%=TCEI0JW21+(UD'>RLEJ)2_GVLM>A.':PVL=',#";YAQ4]GN0G7W5-]910 M2E]6XNB5&OM5S1F >@:;0?6CK"=ULV@>QL7P,;NH&*\J^T,V^8S&<]IA):F& M=LIB71KTSN ZT#AFXU3I)<.Q/ZU_E173R74@>4_UTUHFO)V3]4H:VV!%'X9H M3G'I@@)2C'=%9QK.;;OSIL5ZVP4Y/[LB7*7$Y.&\HVAK2FFQ>N&Q.Z"VW M]=S&/%=I/YWR@V);6B*/+X@2MY//5R..LV7B. A#H-NAVF'/8'[K3^H4A0^T MI;(G]:;Z:_=1:.V<##[H=>&EK^84)/6JXMWP57?^-Q,#^-I(ZA.'V*<]V"5/ M^(?]/7I _^I\V'_3.?ST\O3#W^^_O?_[K].CO]\)N ?]L!\^7]Q]#Z =1SE, M:/_]]P]___7Y\(]W].#OEYT/Y?H7XL-Q!]K[X?,A?9,.CC_3@S\_>L4"QR&7 M#0HX)S/ER'FC4.(^POKS(@1S458G-"J++&2+/H0&_.K;FMO? *+O&R,E>G]Y70_F\/9 MVQ'L:'80AJW?>_#/@J?MY=[;WZ>NMOKX[M)+W_6+9#=Q%.Z]?3>][+#WI#0! M1GAWJN ]>)!=&:/]Z$9UR'5^60G6SWO=;,?,P,];_5$Q4![54O,_WHX=[)8 M5T E0*_R@.Y#@[X4RWXE'OQ/#,6(BO+-1CEVLHCP+V#41C.AX^@K?%2.:LW= M5A.!./[G+QZG:T=EM_7UM WR[Q!DI@Y(;Y7W;%Y^RZ*8+\,T:F?/:S9&#\:5 M[)OMQ<6F7?R_@WC6RZ,R,8//W>2L%V*GUD.&E0H4RX.R2!=")8M-9B)%6T*! M)S([R'<]6-J^'M[K6K1;*TCYF:Z=Q@-?ZUK9?]JN5)'Y2T->"?7S6O\+TF@U M!,50'J8379Q/%QY:KJQ1DI6KXL('B(R*(Q6&HCT^J\8'\'%I:$!M&E6ID8LX MVJX67*W<5;;P6*T6/UU4(&)7+3R?BL=S31SZ7C\[E+)OOUBS02O*3NQJ] ?Q M^AM-KRL>[QS!6]UD-#^_,7M_NK;VL+9&N9CC>' .2S8?^#^+H%V%XI2PG>RD M*I[V3O%:@!2?:]D-[ M%&=S(K19THW[6+1\%V:P4SQ[E76L^/6HAGW;:=XH^/F7+:E3*6 M1\QFV.4%77Q+:=S) S$:](;]>H1&^1AIF>GI2+Z;NCBFU]I^?]"S_G1W]H"O M[1RNT.]#SQ962/:@PMCD I_C_%A?8A9"*J3N]>FX>E^Q-FS.E_E =;4+! MH4WJZE#PC8SJ?K#XOB)"+%>A;J827;[NA_+VL\QX\.M_6[@.=I_*&D2K> ;8 M8?/IH>X($!F_V,ZXLHGE&^2& MCX97V08O _#R)[=2;F]H$Y)K[:+EO]Q%^Z8R'[\$"7(BEO\-V\?S.AY@713A MP_9$$3YA!_O^Z\%Q:+\_WCL_/'[3.=K_Z_3#_LOVX?<_OQW]\8(??GKS^?#[ MYV\7%>$CN.[P^]ZW0_KOTX/]5P0487[X]\O/!W^_8H?[+S@HV/3PCS]SY'0Z MVG_U]>#/C\D2S+4DR$H<$0^4(4"90BH122@GE%EQR<81)#>">$]A/DP03CG' MO#*&$QPQOZ0(US/P$][6'S]IL64L:F^%43A;:[01#@=*N)'1.,:)DAL4%_V@ MH%@O&]%#0./HSX_6"4*(3,AZ3A!7@2%C>8!7AM!$/*?BDOW3&L&CQ$*31#G, MB<:.<-C#DK&)PT>;ZZ^\Z#N9>N7J\.2\5UX(V$JCKY.M$?;(4-X,;2>'7;VZ M'"Z^U,#TO*@>M>H^,S/- L&/B_E$8KDV)J8R8KNM&F&5Y6)F#ZIL337,AK_< M,G9M(V>.U4&[JU M_[;2].K(]N'$YC++7K00&5R%P!:=-0?$9LVJ4]T;;ADGAP,J.T56LB\UZ[(# M]EH!:EW6RMM)/^HE,_R53HZ'6&?3#BXL.-!SSZH(Z7RN9M NYRU*[IL4R^&/ M+$!/KBSKJ(Z^; 6X32>?PSC9S8)Z93TK[^P8<%7'Y)9@@1P.6E3]2>@PW-Z7 MV-[=UBCZTRX,P4F.H$X#FW5QG\U_NQ?XJSIK4@QS"\KWE N7M[D,]=FX,\K. MQ!P&/LZQL_G)?5 R&B./G<1L)B-.F701N4&\R[Y>AHR%+/R74.Q-F#E)^98Z%F3SV<-+N'/ M=7-OB;;U7Z:OE\[B5229 ]Q;(WA^-C/--K[RHVPYRH::@VRLAL7QJ?!:6?1Q MD,7B/@J8&'8;AO+M,GW#A M[JG]+?\D5E;KZ1OXE:_,S1D[HU@]L@J%OM2@F;%X=W$H9J?(YBUN6?/N?NFU M,(L#J3LPLD: ]/9RV_V,Q93^<]/!LI/S=!.#JCT9Q!C0N ]/&WH8E7%QBXQLNS,9S5H>*'?-OH-BVZVC M](<7!_$VD53;=(:JT%#K>25)54+6>3^G1H'Y=NU.EH;*X:-.Y:Z9L@X0P)=V MGLYI4%P^6)1_"1L?K"KH!$A4]1T*-10_$-RBD_?$5 Y4P.P4(LA\!G.7O1/= M"AD+4]-Z5>&R+&OX]=?>X'.-IN(>^%)YP8HKJ5L9V2;.C!H]DY55KZ>R/>5M MZSR.JF"RX9RMOEI^N_-KJ#TLBW\0*A/_9#?K%7/[W+[Y)8]_\>%E WSQYTY^ M6X.G,*L?M O5S46S 8)F )@]U7?L<++?5N=G?&Q_*8=0;27>E'79UAKXJM&>'=Q=;1JUV4]\;N5 MYQ&:W"G?E)4\\3)/!VTB[K1.8"/M3M;FA*__,2/:ZRPQF&-E4S(*5'SN#+92 M.YH>G+T>!X MTI/)\#TRN\S!)W]^\/6CI $&6DH4$\:(1\.1CL$AQ@5V7$DJ(\Z5*R_:&_.R MN&XR4Y*>12LB4YPSJUR*7F,J(A$&"X6;R5SU9![E($.KA*<*V9P6D>.@D>74 M($(B]EYPSG-.,G9Y,F&4A[4"EODE;R3M6=S$/RN>F@DO]5')$F!0A0.D4HG3J(9$8K<\?I9WOD\SJX8Q9ID4]P3O37+Z!!G<7% MDXNGO4[(B=06&+P.FZG#0(#$R_',W(6%_66W[/*3L\=QK/C <>]ZVRGFHSK1(&C_ M/FZ=/EF%D"U7)!=,'CFFJ00&Q&(<.&@:\^SOK_*';+3ESD[3K* M"<:QW9ULOB4\I5LFOS:2Q)DA ]DALJANS]28^M;:MU-K:FV=G1BB*O5RL7D_ MWX[\I,E:N4J5F6G5M5)3WJ!J/9Z5**-)AF1X]G!XC?+]>MDX3K7X2GH<%0V[ MG2FB6S^V7T)@8NEQ#O>H!*B:5^KPE1*OTYV@GU>_YS'"TP;AU:-7?0OQ+6Z]NCB4]^ M7"Z%1LG&2^F2G#PSIL MKNY0W8RRC2RR[M2^."QA LL?9&&I=D]F"RVOU2]U')+O56Z62<<+N4X?G 7: M7MX'8,8&G\?]3;6&S[N-_F?B-MI:T_A2)]G56P7H+(. \A9Q?H6##997IMCB MAZDDB0O@G.S&L59O3XI^70S1A9OA*==N(S>^E4@.HYF.':K=2; *G*X =F\A5/>^S!6QZJUG>_9PL9!99",T) MN=IQ-I9%7V)7IR:Q22J);+G(.;2&PVFNB$GG:I5TVK_\T\JX<=KN]VO+V]R] MLDOTFD&_Q?A,''?0\@LNNOGG7342 MBB2;!O+%L&[/2GJ?B_+$C]?P3$B8;M7%:M6-HT7[^&#AQDN7[1U.Z3W&@$B] ML0&12P.(?A@0="%^0Z9\TDLY*SWA 5L7N4^!&6])E$SSJV(5?QCWL9Z!1U/X M786XDT%O.)PXB*I#OY6>N>!0O$8W1J".QLJ6-RPG&]*BL6[J0[V&"6:VV#O: M'5J3E(R9+;/(8+^5] M+@#A":)G_+2V :'0$3 M?M;.6DQ)P5#<%9T\K.!%"2T%1=&X[[):7 Y!<3W7'Z MO*5FMNFYM 5_]&RRZO-CY^7J4')S9JM?]NG:*_M='#Z7.[[\";M7Z*M%N>[T M?%&()S+GCUH[M>;-G+P3$:953J78#JC)<)].I\X ZZ?B>4MVT-A!-+%45:55/F3DJ MJDO;)1ZL.L]<\>(@'VJ=\@?@.@>6G=4FM9EYU/5ZG\N!F).>[4Q"B0K1SFZY M:"4L076UHZ!?RLQ,? RAN&RJ(X+5:<;YZ[+MM>I0'4,P:_&<^\;5M%'[[P>C M]G<[.729W;Q?2UZ?F<,_TU]UR+ *B;A)KL6-@.+^Q.L_/8/Q&%(471FT?C$( M8GH$M#I\>B&9;W=9JJ&O\-/_ND6E+&XT<91$SJ7@6%+-J/;2)*&#U,F+CZ^6 MUO 3MZ@1N^P$Q[3*Y+1@EGQD#N;#3Y_)P)LIQYP%F6A(PAI.M71,6:6<=H:8R(DL4XX) M9:29\I5/^=&?'YVAEEDFD,#)(_,ZS)L2VUYR/]U*-W[XCFUL/9/]F?8S*48\B6%9%E'7!-1M*5]^?R4.3YJ MNBV9S(.O(._\JH"Z2GT[LY^RL?C\*D5W9J"( MZ>&E.L-LK$/(.N,2I#&ɺ'A9E\RJK2IU':/Z@97[EK+3O_,M^E_(#+CN_3B['?D[CVQ1#]R=&?2$R[#B?@'ZB=M]6PVT-[I M;OIQ]O0_YM/_.4,D%2QYQA#&L!7"W.=*!5$B8@,U1%-FPV7OL:(6>^Y]XHS+ M8*P$+9-1T$ 5,3!7FWOZ/_6R*:YH*7EM3"M\S728V4JJ' 63+X:]\: .&>[; M40[0F#O3LG 0YQ]5^K0QM#4,__GT'DQ5<%WISBQN(\< Y2K6Y9C>T\F+WZ!W M_8X]?]KNEN$I%_VVF%$&(> M^;AN5EOYC>Y:BMS7C "T^4J/.XA.GTI@QFNML=<'/"@ M,MJ]6##:+8S$#2<9Y_[N+!D](BZ.7L[?OX*AJR;A@48O2Z97+YC;]?CQ#1W^ MF16V\32RC9-YE ]YY#O^X7G6;(?SY?:SD ;ETT.;JOC_.86J MV@!U;8'Z PD@'S _&?3&W8#JQGH?8TK7#< RT>">NK]<.CB^QD1_<4']J-\W M7A6XM?92TW_]NL[/=[JX.=:GU[<(RQ'&,>\$-2)8GDBT(1H8!YJPUEXZ6]O+ M^8*]?"X^A]TB/N<'^75??*M//>_5QS*.[;=IU [;3(,[W.];Y^CLW?G!?@>^ MWZ,?_GCSZ?#3G^+#\;_;A_O^^\'??]+#X]\_'QV_IQ_VWWV=7 //&G^@[^2' MXU=?C_Y^!<_\\/G#'P?T<+_3.3C+;3WX]F'_/3GXXT]Q^.G#9[A'.CC'W_YS M_&)T\!9__1A,](1Y@YC##G&M"=(>>\0LMU1:&ID).\\(,[M478[Y6:YMK P\ MP!FMVX#HNCWL1_1]<1]LZ*^AORG]$2ND=)(+IAS7P6KXGQ$D>.*X,HS?DOZ^ MQT$OV.%IPWSWSGS?I\QG#)?>LX"(I@%Q&8'YJ#2(QV#A?U%PP[,]I=0Z:YBO M8;Y'R7S!<<8M3L:1P&$$M#0QNL"8CS1*DQK!;Z/HCTSI+S*6;% ,&>%!\(M* M(HT%1I( \T7E;.*\$?P:^GO<],>I]-R#U.>Y?CMNDN-0W]-?3W..DO M6:*D95C%J$ =8HXIKI35\!+8+]E;TE^C]SX8\XDI\WG8TZ11&#%B0-NUF%:' M.CUC003KG7&XT7L;YGO"5$0)8:DB'&0!2WWT@JJ@C:$AN4;PVRCZ^P;4 M5SD]]CZZ)$+B,N:#S2#Z<9#Z-/8,I6@8EPEK%OUFB7ZW=EVG\K^-&RP^=SSMO( M2,[5()#RBB,>HT&:"8N\8H+IX"P)!)B,[L*2N2N1+:>,7R>L77C>E6%*CQO: M2E@?F4DJ!L-C")8+RSR/S/J49+HMM!L%[<%0/7-,8AJ#=,$A*1Q#.=,NTMH* MI)TC5OC@F24K4] :6*\CK 4A#KC=1^<#9RF82(+D022M%;>:-COV1F%[YG63 MF$7GM$ $-!#$K;'(^A!S>B4388*L#*;9L;<:VA$D;RQHD*!=6J=!"(=5P M]I0R0AK#PD9!>^91BC"+P>B A$L*<:<2QNA MS:@2VCHJ/)$<@[X=LSDID!BX,8+SQENR*:B>\Y8$FZC7!'&>_Y@0D"44Q/(@ M4S*4!=C,&V%\NV%MM:(.1 ML\1407"6D("834X3;0,59-WV[,=P3FUF[+^;;7])U[>,G"0QE"LE@)J E02W M(&Y(:SUH%D$0UMCV-XFMFT0 MRP,-R6M"I949VGR7RCN[[1IHKR.T352>"YH\@)IS;D#K-EHYIR2W1F/3V/8W M!=4SVSZ.05K&,9)6.,1YM$A3!XLZ$9)K3_M@5F?;;V"]CK#VWDC@=.Y(M%PD MIH5+202N93):D-L><&IV[ 1=H)AJO)7'LAI5TBZ+G[')JA@I8'[ MRA*30*.@A/.@DB-),:6#C(X+$6^;5Z?1)QX,U#/C/O>1*9_+II* =0T(>.M M1B)I[[&$_YQJ8H6V&M:<)0"K$M8%PFV.W_>",".5B-*Q$)L->Z.P/3/N.Q-U MDHDBI2-@.R2.C",&)658\(D"A?-FP]YB9#MGE61):FPQ3\3I?!0K8H V[-E6 M-9F@-@O9,]L^)\[!-FV0#23;]IV%5U0B$V '%U&%2-/.,[(K6',B9SN1'4DT MB=&HA.<:*\LY9<1&*V3RWK'&M+\IH)Z9]H4#('L,H&8T5W(6%AEE'%*4J6 < M95&Y1A3?:E@SZG%*+!BB))?&&(TEUDP&3#F'M=!LV!N%[7G3OM$R82<-4E%S MQ$4*R"2;D%:.;Y-N;1&'S55<<]3[G%-=@=7J4Y!=@Z!-B4EXE'P0,:9*L^"-55Q98YUV M@=D(BJOR&-_6'=AH*@]&!7-E2)@@H&0&$%YB#E-0'EFK$@*E%";069Z4_87I M6!LJV$PJ4 YDW>B=TD%PX3TL(]!X&6-.6BYDDR%HL_A@YFCP"I16DA)*T>6< M?I8@:[1 1E%/N+$Z$-.(!@T?7$PKI T'"=(SPP7'7!@C"&&*AQ IX5HVUHZ- MXH.9>T*07&]$4F2,EHASJY"1'L0%)@6H$$K)*JT0W<7&-'S0\$'%!UCY9'3, M!5HM9R%;Q3@HEX9ARWAPM[5^-JK"@U'!S*E!A?4T&H,4-PKQI"FRT ]XFS 3 M7@6J?V7%PH8*-I,*HF>4:L&5YXXS*IV7&FX2/*$,5(-&--@L/IAWA 28-L,- M1EBDB#@-!.D0&1+ _M0H1BR6&R0CTSB8^44&%6#^;W, XHK8# /4 MQ70NL\RC\$9JDP@CDB?%$L:-F6-SN.MHOG0!YC[R8#3"FGO$(F:5 :^-XS M?&=>"Z$#$\93)%BR.=FQ1 ZX&3D55+"2,)!*=IXQK1OP;B-XE=1"629QSH.@ MG'5*,)\2:!@F,B%\LRUO%*[GO ],1LQY0%1R#KAF&#FI"#+,PU0"1D#=@&P; M<]$1!2M;$9PT28DXGI$-<]\@>QN1G1,'1.T,<+KD %MKB9&8JF2X-IK=Q S8 MP/>>X3NS_2<<8,H(K%X<[M,<9KCM88:)G;XYNG#;S$5 3DJK2'B,W!MA8U!.<*L2I5ZK MQG"_280U7Y? 4LR#P!A%1X&NH@,91,,L:B- "K$65$:=XQ-!D]!-?&+#!Q,^ ML S3P$..0FQ0P:T-\SZ.<.*8@(&)<2@;@I$'>.(R,X M0<0IQKT4EN7\QRLP]S> WQK $V5Y$H1%9[G"T<7(7"Y7CN$%MK81 #:*"V8N M L6"320FI(A0B!.+D8F$($.D\3;72L2B$@"4NG/1M(8/MH4/(L;,64$L=89K M4&V)-CA;KI0#)<'=-H%ZPP>..6$/0S]P107C) M24":';GZ(+F&,(J M@/NVET9?[2"V;#>T3NT@Y#?-(83EI@R&LYDK>>\)CQ@4&/C7@W9KLG]#ZB;M MRD:0UL'QWFC![^I"RH8F&"T<<8*8G&F#@XS2."76$<+G,PA;'05G!EG"".)* (2%T8C8H"B. MT9*08QIE$Q2UE?"UFM+D6%!,2^XB,R00FFRR-%")?>-37$?X'LYVX,1,L-(: M)+0#^#*=D/-$(.RDTS!C7D;3P'=KX>M5"";+U<9Z+K#1@4O/&2=!<6I(;%*4 M; ZH9WMR"AI61@I($:L0%T0#J(- SL#[)#A.%C=B]58#FQ(N@F<@1*O G1%6 M.!>UDBY0HT"W:DS[:PCAH_GTZC G(29$@9(1]]8A@Q-'A!@?M&2<4H"PP*R! M[S;"E]M(HR3""46YH]C&* ' 2ME B0RI@>\:PO>@\LP!A/<^!@<8!?)%1&' MKR($6:DU4AY3[952@M&UPN_C.4]0I_NY=)[@AMZ.J@=/&0QRZ(US >7B\;B# M/W'9.#T<2_W7@XS+=M VLRHJ+;@! 9M'&S3F@7BAC4L,<],$7&X4H[^8=U4H MV(J!RPG2(N>(CX0A#?LQ4BQ0Z[+=DZA?=.;B3LAZR'B,AE$;1KUKR*H-+KC$ MC<*,1Q9<3JXMI"&! 2_*QKZ\EK0Y,T5IRQ+3U"$9@T34&X:XH 89&Q(*AA.2DF=$TRR$\EVRZB"_AE$;1GVLC$J")29)I8*B M7!JF@5H)C=8F;'.@0Q,VO6&,.I-/%6CSAC&&DE<@G^:(:4U(0$%Y;#7&$5/Z MBTY.-8S:,.IC9=3DDG-7"""9H0 M5@($4188,HIKE+02FB5K-'8[SPSE#64VE-E0YDHB;:,P!G@PV*AXT,D00U-( M4B2:E-(W"0EHA- U8M/Y: ''970J91)5!O1ZYY#5S")@6.FMS>5E299"Y2YC M&V\I+9$&_QI9>!;\&]I?GDUZ=#B&Q=7VU?N\^-O=L2U=_&_XV:1'H/?U#%7KH]T-,!A/F2Q[XU535OV]L (J M3I')1^Z4L](3'G N4N-38,9;$B7+E?>NN$Y1BSWW/G'&93!6&D(999HI8I@A M/VK^ \W>_UU>J*K5'P!I#^!Y>8<8MH>C8:N76J<]:&OWI)5B'.ZVSFP;UEW7 M=GW<;0&#M[OPW6XK?SCHV@Y<&^!NG5X_AM9;:]].;YX/H_;M8-2%)P]BBH.! M[91[/KD263^+R*77%6*80:_0$ QXQ_:'\>GDQ6^A/>QW[/G3=K<,6[GH-QB4 M$UBE-5[S"KW(0OF!U=>SQ?L$5PNX#GZJGUQ__:1\=8%3J^^H><*PN?)K_(1< M^=UUMS5/M.0_==?KOQ/LZF45#-P]Q<@N'[OL$KYZN=RNQX]OZ/#/ MK+"-)Y%MG,PC:$PKW_&7@V$KA^]U#S2-UJMN,X0_/835:84W5YQ6^)D=:RN' MJ0%J ]2U!>JC.%4%-RM6HS,+,].VG6%Q7&3K],^>L?KQJMAB9]<-.K\='BT1 M.96Y>BW1@3.L-&:$:<6M=,P2,ZE@2YI U3MXM#X=?'O_W>/#XU?GAW^\8X?[ M?W[]'.R??#N 5A]\A_8>OSO/;;_HT3KX_O(3W)<<0/L^',,]]G_O''[Z M_/5H_\7YA[.#[P>?WG\[S-ZQ[Z=I&O+_%G\[W'__46%MB' 6!:(CXB9X9$U. M1J%$BM)(3V("C4FJ72U_04;J'VXIZQX)T##@8V! %[6.VN@8+..62)>48@*0 M0R(.2JE;,F"3?N?!R._[//DQDU(T%E8WR;EXI=7(*>809LE&YAR35*\L_TY# M?@WYK4^O;W5.*7'*@_'6>*XCM\P*[;240<7DB&O$OXUB0+(@_GEKK;(6R4@T MXDP89&6DR'(G*&$<_M&-^-=1>64\]M0 /$["\)0,V"O"#D9^8)S\3#4XT8113M(BK$) A M6B 7"1/,:!/=ZNHZ-.37D-_Z]/HV"K A@GIF2,HIXY2VG"L>%=$FT>!B(_YM M%@/.JG$=_TD_^AAD,)XBKW)=#)#JD>::(<^2HT[@)%W:+/GO,93D>MG^%D,^ M[=#JQT$.-8">GO4[<12O]FDW*8NKC.-6!N>QIIQ*'EUR@3O)J"(>*T(L;4^%WH*C:=R4X"]X*E,GDO.A4:2$HYRIGED<*[> M)6CT"EB;2=M4"MEJ9(,H:D244@"W<^N]X]1ADZRS(FDKFBBLS8+W@ALN.<:" M4P:%:"/BR3-D?0@H5]U4)BG,+6OV[6U&MQ0N!>D#I8GD$O&:8ATD@6T[9Q/1 MO+$Q;!2Z%UQ,C -1&P\S9P5!/":'+&,211^LB2QY9Q2@6^S*NR<#;="]CN@. MGNML.]3>69XTB.*>60K;-G/$6$D:]\FF 'O1?1*D<3F=FG4>(\Y,1(Y9C)3E MD@J1G&.DD!\$8$\8KC)M]>Z/@O>@;<$2EP$E" M2DH+6C<(Z!:F-K^B-HMG4H1UV[@?PTFVF?7_;L;^)5W?,GHB23@FN9^RIM]>ZO1 MG1176%O'K>$V"JR5BP:L\%F$%1[T=P? MHU(Z6@8"AP/Y(SJ.K#' 3UZE$!QHD80!/^UJLC:^R";48*56 ]B>,)7Y7*[@ MB5L-@+8BX 3HIL[RQMJ_*;A>L/;3*&%:24"@-.;*MMPB%PC)$@BH%U$:+UT3 M1+35R,YUL3 CSOC >20" *T$<\Q+QCVUM_7C-=OVP\)[P=HO70HQ85C-0<*V M;9W+.08E;-LF)6N<5HDTV_86@YN32)*67E)%N#;4>>REM@G@':3POC$:;!2X M%XS]\?]G[TN;VDBZ-?]*!7-CIGM"R9O[XKY!!#9NCSM:HFWC=L 71ZX@+"2N M%F/X]7.R))#8;!8!$N1]X](8J:JR,L_SY#DGS^)BT!A;)(SBB,O(0"<'A LE M S&826GBRIIHS*'!<@'W(H*;N42UTYX9B;G'Q+'(K>)8*4P,\ZGX^I<%U^=\ M_=QZ@9W0R"BM$5?6() C&'N89_G/54SIV-[Q/D?[-&Z<^,Q+P55G,EO$J:TYA#_CW'U/%$ MJ0FBA!$N$XE=Z-S"E$X8J5$14\Z=U-8EZ4.RV'%- Q?E%&%9V.!\@2!CE3"6((\C M1CPQBIPW#CF6@Y2HX,3./3JIL,'2LT%DD6('&XGW'LQ:::EV),+_,4:9IZ6H MT')1POF3!XD#Y]CE@":/N,41V4 9@N7V'(Q8QP4K"D*AA(M)A=PJ)WCV:VL. M.H'U. $QI)"TQ%*42D3+10GG*Q$E02WV%&%.%>(F::23=$AY30RUCH"IN+)& M-6L0Q@HE%$J85!%P,N' )#<&<^V5"XHGS'DTQ'CMRBG'TK#!N5..0*@5E!I$ MG*:Y6C!!EJF X(]>JL13Y+C8#(4-+MH,Q.20->R=T#S9J)VDP \1% ;EDPU% M05@J2KA0\H@S921+R$02$9<.Z"!$A02VPF 1I2=XB32$EY @L3GSLS"[@7 M$=PZD>@(34'AR.&_CLJ(G2>YADK@IC0N6BYPGZ^)I)PV01D410ZXI $,$.PE MPMJQ))7*26XK:PK 7;(DGB>X<>"@CZ>$978L3-%SY!%NW5JID22P7N,^? M.@B#.87]6E$?$+ 'WLP2W9"RZP"*FT>8$5\N- ME103B@/1AMRV>W0!]]."^]PA@C/./ Z1RQ 69$',$]/( MZ'9>"8253EIKK(-V*VNZ0?"]>R.71(G;)DJ))6"+*NM 5@2M&F+0!B=SX.%?30+"B&!&2 F@J/-(85]:8 M( V.[VUNE*"&YT()/#+@ BLYLQX$PQGN$TN4*#!8="2X4,)24<*YDP,LHK'> M8^1,2+DD,_SFG46!X,@])\9H/J>3@T((SX40A,,:)Z>T=)*[P"R.RBK->*[ M1N)MJZT50GA:0CAWVD"4BH[2@!3.2=_6$622XDB!#6M%LBQPE74$VA#WMVL* M)3P72L!:"& MEI.-Y:*$&0:[ ;&$.&1*!EH MX)AF)8$T*)M7CXB2''$OZ'[JI>&1[ ;$1 M)AC#(TK""<1M<,@(PI&Q@0.D92*2KZP910N GR. N37**^-M4)Q+;)Q36LDH MN&;)RAM5L*CL;$HU\\:VC9Y@Y/GS 3!(Q4.4\.$]P(V8B\YNP&T"X@?&\2;LWLSQ39X M^!\23EK$*<6@5U.)$@=SR<=<&9>LK$EY[XHG!<"+"& 50 &+U.KH8JYQIIU* ME .8 Y51<5T O( ;DZ.Z@#$N+7[501-,*<:8>H PL019$5.-\3$!T,-)\(M M%(1?3I["I"+1I3R%&QY]C-_@%8-)#KU1[@)='W_9E^?! MW X'K*215!K%N5$&K.R -::46,=BJ>:T5*3^]ORYA>(V48,9LI[F-6 MC+C#GEG.I"3N@5(Y[H6MIPS0*)Q:./6^KF:?JZUHKJ/R7"IIHPZ$*F\U(TRE MVW8(*9SZU)PZZZ[RRB0',H^B3RY;N@G49&50H!H6U]HH/%BZM($5*8Q:&+4P MZESJG]"<(! 5D&CD"AO->?)$I2B#TLR5-FQ+QJCGSO5RS2H:N$%.185X,!QI MX%@DM9"*PXAK;*8<\N2CBFX( JG+A>GGCOCYL1$XU)"1AN*N* "N1 MZ*DZ M%SK1N4-T3F?3]-X1:(51"Z,61JVU5*YY5"3DX#].-'4^R8@#_"-0$G5IIKAD MC'HAZ$!'#U9^+B7$?0+;/P7DC$@H.ID"K'>B#H\3 @U>>G]J';#PGZ&%9\%_ M0_O[VG_#C]/QSMQH'R2NG8XGZ%S[;]?_S]K96][XND=$-^O#(#.Y!>S <5+U4[?5@N-W=*L4X:%0'M@VX[]JNCXT*P-?NPF>-*O^Q MW[4=N#; W3J]PQBJ3]9^.KMY3DP\M/UA%Y[KW^[ M&V)W^(K)>OM[BLG?VHM =)U.[RC/:"UC,.MQ ,.:+D-H#^SN;C_NVB%,HCNN M=F-OMV\/]]J^LOUH&Y4=P"S#A!_ ^IOP'I6KMWIY+N"_,,=ZZ7S$TX<5+^U MN_"EW@@&'P:_OWJ$*8?KQN]W"O0Q8F&F._9P$%^=_O('O.YAQQZ_:G?K^:HO M^@/D<+?=/46_.+P,V/S \<=_'+7#<.^5,:M:L+QO3:*-)@\>?TI6ZRWM ON, M/Z-FE8VOO/)CO$JN_>QGMR5B59CK+_W9;7_^F6!T609+5@E1RS+8!YS9FTG7 M+V+E?AG>:BY]]0JMV\?,U4\4/Z>NCI_;Z\=8->%[>X/J+;!TJ/X:=6/%<./: M'/87,"V?VC]N,"DW%)IEB*.\6E.\RL:=JG_TG/IWA0:XX(N<3T+G]<;7(N"Y MSAR>!ST\U\DI8C4?L7H)$>R?N^UL;'P:@LUQUP#V7R_^C;V 3SH7=W4$WN#] M?^F'>-(7OX7#+Z@8F1=4)F)X+A?%.)/<8:NBU82>!D_R$NIS'X??-FUN_=79 MWE^G.]G)MP6?;VWSS:U=#-]M-[?V]C;&SK?- MC;<_6N\^D-;^KMC<^$!;[][#\YI\\\MGOOEN)S7;9ZT%CKXR%[4R*2%!C4/< M2XVP))0!#W+6X&;.!\F%!Q>+#@H/WB!!,>4>]#@"%6H>B#**>6,]\=$YE4K3 MZB7C07+&@X8PX5GNAR>(RMTN36XJPY%WQFA)+-.,K*PQ+AM$/$ MV,*#BT,' MA0=_S8-,4>ZQ"RX)RJFF#C2$*!+GGE*&Q4U*;!0>7!P>9&<\2$.(DCF/*!$" M>%#5)2D9"DP8'W!@U-B5-:IE \NET0=?0F7L<:R+A[<8]MMW;")ZK]) RT)= M1D:L(V=">L%98L;D_N7$4*]II H7E]X24=?QC$L/%L\%C@VB CO$HY'(8&,0 M%H:11#&H[;F^1$/I>U>7N%?1H+OI:$]>^FM9\"V$YP!>9;$G7%MON&-62FH5 MD81:4EQ52X7OJ:M*>VM(8@HY@G-/K\B1#2(@$R07+%I*;,JU#C2_=UYNP??B MXCM@#$L?>/#>\NBHLXK2VBNC*F5-=5@Y-XYH@7?BXMO"= .3 4M0#_WGIC >2(&2^>B8.*VE;4+ MOI\6WU/7@@)82RL W\D+Q(6WR 5ID Q.$J&X)ERNK(F&9HN$[SE%18UA2E>I M6' _PA+5^%Q*+_$#IU$N"\L+[251 FLO)&SUPGI-@?(#%3YP8DI@U1*Q?.O- MC!<&6\NDSSF4.N7:G@XC*T"5(&PYJWP^Y1E;(=9"K+_H M7A&%,<"6P4;% 8.&& KFDQ2))J5T*NZOI2+6F4@MIY1TGB"/*9C'UF)DJ.=( M**6(AY^)YHA5+AOL_@IT(=9"K(582]7/YTNL4[\C]]H$[#0*U)+LEY!(LR"1 MBK"X7D9!Y9)7_"S$6HAU<8FU%%5Z5L0Z=?AZ9Z7&CJ!@M46V4]DY2KIAU ML%MQ9FT2(?M7_%=N5A:C'M.E=..Z))!8K2:6QOM >^TQN, M^G$SO>D=',;NH)[AC[&3*PR]Z0V&@T][MA]?6T#V/_;X();7]X?-[<^ +K^;;QD MI';B__MXO/,E'#K*YM@)S4!_:T/7TT4.C# :'3$Y: *AQSU"7D6586F8[X&@8UA?5CW MOB6"2ZD8L8H+[!Q/,DBI98I"AJ!7J@B4>9BEKS\"A'\:PO2B>M:KV84YA?Q$ M("Y(_@6"6 MI[K70P-Y"M)9:=D\S#_7N^%]-U=3:'^/_W3@)?X!#O?'+Q&\1U]93($[)Q$Q M42/.C476Z "_)>P,(90S2X6#I7 E>5X/7 MSRQ'U1Y4UM?QQO )*&!5NUO_H1]RT;SJ"-2J:OW3FVJK=P@RHHAN5-K MMCMJATE=P[U8#]%VCZM^]+W=+MQS4 TR_JY:\K[-RLUQ-1K49?WV/C7#__QFU!^UA/*W'6!W"N_1"HSK::_N] M+$Z[L1O[=6W%N1/,C($ <^A?A5'_""1U$+LW(Y_U?M]V=V/6&%X?7U(BUH]L M/]0_/IZ^Y:?Q2_Y3OR-Y:?1T\O['5\939+#Q(N=H;J0"FH55-J!@@@'#0*6 MYK[[8SBKG28S^"Q+5]IIQ!C3";9WV0I6 U-]<<@R_1!KSNYP>2" "KBZ?=W8:V'TW*=EU7XTZUZ42NB M7JV!CRFI%M.JWCH7:%/]Q_FOU'\D?OU M+H53'>1ZO)E.ZPEMU/(#D&QGIPL L?V]'4:POJMC+)\"XTRG@'\,:^ MKWN9H. ?&VW028:]/LA^.&AWVX-AKO";OW(!'AE)9W6"Q]_(_ZCE&[!P?JGW5:0'**LMI#;D^:+3YQ[,%PG?;[F3/U9^]_KM,&"\6 M#YL;_N1K"%I18G+'(FD05]$B$X@$I5CS*$EB0JF5-;)ZN?W\!3S4Y:EG]0U[ M.M%CFVDP&-7FTK42N82;W]+NVM?:NKXW&$XMI'"VM8ZUU\P_@_:/"A8YU["- MYVK8UA12'<$._E^/&!YY&P99!W7!9RWD:BIY^R/_&E\L'S2WUH^;NU]SU2NK MF$*)&P:,D+(YDSCR)ECLA5/&F.SE%M/-K>T?(!#2,FJ,,HAJ;A''PB.C2$0L&@M;!-8QYD!7O'JY7,RI1#2R/7L( M2@ZP?>?XS!/2S8>0\7:R\IB$\0^(PM@56Q<=^ ?(L1^'H*W5ZD;LQM0>%H%9 MQ\T/7RW3/EKCD"3Y"-0KCBP'-=M* 6IA\('9D/6(R\>?2\$:11)N31VL>?35 M,$ZYUDVFBU -['>P M_0?58;:4LJ"<>F@'8_^:'0QZOET[(?RHW\^79(E+H^&HGPTXT(- S[$_*C=> MSEDU:)&UFK<'AYW><3QUQ%Z]K6W9'Q,I'4>$E UO*K5O:6OWJ\?.6DT$DHP!U&2V>KEVU)G W-:X.L^%J]5#67'XUGQWWUR,HL#/453?T\T/ M7YF0R0H:D=(6Q)-SBHS6$;G@!(DB2BY%MN+FJ(_=-[RQ",$#\=7GX\WUK\I+ MT,^E1C@R4,4\6'&6D8"\TD$2;B*5:F7-K%X._'X (^XQ^:*H[CY"/#/-KS;VE87C;B?GMWO<0 <71^_#^I".[.?YP2%5F^X'6'2 UC@ M/FB\5N>"82BPMPW?K,6^M?#3<.TY 04\YDLE3(L:@0R57QO?$^YN8YPZ/> M-0&NXT")RS_/ATYDEU@UZG='P^DLN=>9\HH 3@B\L]#E?^<>Z>#=A==F,,;O/X=UNPGZ5DW2+=ZX-0AOQ?#J!,G86V7 M"._C6?QX[27.[4 'X^C]K'FTA\=;.33K!><$BN;N5^=@"5RTB$CE$.S %&GA M%?)4QUR"V0@6+J8)+4> U\=+Z0.393_35V\0QV5S:/4XQ/JW29!?.R<1]$8P MM##X_=7MX^H7+X7@)I%]=:;SA<[(,)*./1S$5Z>__!':@\../7[5[M;WJR_Z MX\#V=X&O)M2=N>I"9G7]RN./)S1FS"HG(C/9I!KGY,$3DENM2>Y"FOCX,\& M#NFU'^-5/5.2N5_Y\L/3ZCV=O^XN*I\O4%.7J&@*W M>ZD%;-T]#MF>;T_XY9J!+Z>VU_K8]JKYLXY;KS9R)M>?.6OLWYP$]N):G%_> MX\96:V\T' QA@\KVJ85IBC[F!("*D;$'YDX=@^;2 6Z)JM=5A13XI--0: M"\H2L<:3Y+5+D8O$A3>U@PD3RLC%NC5S2N5X^S\CT&'>=V'A1W51B_H@9VO/ M3I+F!V=V_CCI8V%*VMQ1P9V4M&E]R[D:FQOPG'=O66OC ]G9^,9;H-"V-N 9 M[SX[R]Y7%KX]]OFUN[;/O+6PSWPCL;ZZQY MLLNW#_Y*S4\SU6V]E88FJY&(V3T:5$2:4XV"L($&R8Q.8.08?-F5OJ"MT4J+ MR-(BYL*.] G(\52IF.@4M3J1M8FL3-2ZQ!EOXL*;-^'-:?%: M)P,F0C"D:0+>5(PCYQ1'DE/I4^[+Y52NL;C*^+(PYTMH*CD^%AAGD,=0>DK^ M1 F4TDM',#,X>NXYT)T4W&K%@M&617*#\K"/17@UL0W>=\4 M02<289P*)&QTB&N*D742(PE_C-QQIH-=62/FWGUR2[NJ18'^]6K./?'_B/K. M>?@7I6?._#!;L9]PI30!0LC&(HD!.> %%)*)-F'+P(A<61-B55V.7ECZAE?+ MH->,U?[[.+Z6D-M^>[9ZS;_U M.?,A(".-1S*Y&+G.[7OKDNZKYMXJS1P9X@6Y:E*OGV+[Y3EKGJ]6\^?IBA;% MY@[L=:XWI7(XPF*"8L-E+DFK#;(YSDUJ3ZGE00J=5M;X91?TS?6:XJHI>LW< ML3\" BM*S9QI8>9PRFFJE25(QI#C7;% AC"%''6.:Y&,QN/#J?LK-<5/\Q"Q M3.=B=.<0QS3_GF5+Q)M7ZDO*NT22B9Z"FL]"M+F$4XI6!!:8$/2:'+H2XK0< M;#@;XB285@E;@Y30H"1I&Y!.A"&O.>$B<*()L*$F80^"$85BB7.P5LFJO.R(7SXJ MOJ9YXKEN40_5.E'0A6Z=*!^L=>)A/PU?O;7]G+0^..6B]6[8ZD>;&RG629(+ MD@U)FJ?]3P]VOC7IMMC>^K@'_X5K/NYOP_=VML+^Y@;<;ZO)6QN[ ,9M?BD; M\N##RY\#?8AHE; M01 QTB-.C$9:B8BT$40818"G+[4=9,ISK9EAG$L KK*):>Y @=*2\:C5Q>S) M5ASFNO^Y2L]A[%?U,MRA.^*O'WM^F,:ER)PW3%C,)5P8N8DNP54A@3W,%JT[ MXF/E#E]$!.R/;0^PV&CGK/*P2#G"3X**UM%7Z7,='Z\1A3$@+H5!QA./")$J M4L(=2?:BN&&K,7=8BA0"=U1:)X.,E$F9G$GN4M_0Y<@IKIN4U?G =5.\.B?V M$"SHK#;5*<6PX_E19PS37LI]RD!XZYXU8W&JNH#^]A3]M0%>_3:;4]RH6S+! MSCK]O-T=UP*!NSY6QO&CY_L*2>Z2[\OEJKEC8N[/;DO(JJ9W2R/^^6>"\>49 MK%$/,%B\*OG\,ZD?:&9AL&*NF=37GMB8)GBNC,(^DY66= MED_M'S>8E)>8?G^;9)T%7^2?'D'<\HUOD+;_O&;N^B3T.]4T>%Z34\1J/F+U M$@Y.6V6O^Q?0+//%EG.UL[^Y?.!O9?[[?V/_]H MGGP[VOGR[W[KW4XG.V%@S'O-C3_W6QM_[<,[=5H'K?.IAY)Y9:PGR/H0$9=: MY1!]B7SB. E*I0EQ98W(AE"76Y0N:$)U*451".YA".Z^)>L+P3T2P:T1MI1$3VB"15I98[A!Y.7>BH7@"L&]*(*[;SN9 M0G"/1'#LC. P<:"I$8P\*-R($^^159(@%>L44L\S)&5[#28V[3BRR=)_5C3[MV3,IX-]+N2'00:\[R3.: M23!Z8>5A;I<7])BNXPNAYN,\GTFCC\'[P6 40TU>9<^^Q9Y]+C]:@XI%H_-( M)R,1YQHC:Y1&AMNDO&;!2-BS&6D8>N^:=J4 S$(#^S%=I@78#P/LJ3<5:VRI M8121Y!7B-BB >*[M)"1C+#$7!:N!K?6\5G8!]F("^S%]9 78#P/LJ?N, /4R MZR7HW@2 [35@FD2+>$YD#$93'&4-;"47"=AS\I MBSMA+/#5*#<';G?KGL*C M84X#&B?Y7)78WX58 6J*";2^8$1;&0U$8X7Z,,'53,$:UUT$AGPA'/!J, M3&0$N:API"QR*^F\W!2%$9X=(RR,:Z,PPOT88>K?P#$Z#2N(DC ,\00Z@A56 M RUHH@6H@RG%>?DW"B,\.T98&)](883[,<+4,<)5 GHG&$5I0$? G",31$ ! MYX)8S"I&]+P<(X_"""\A'?$MT+0?YBB+NN9)^WNL!M&/^NUA.P[N%FQT4]=P MN0C-Q^QL&P5[>>NFMPT3,LUOY0/K^9,G?ON[Y?%[VTG3=U MJ-=X9UX?PAJY45VF:*LW7;*Z]-VG\8)M]?X=+U?9MF^S;<_VE,**6Q\80S%A MC[BG'.D@)&+><.,<+)[*K1?D(E58+PT8%M)K5S#]I)B>NNL"5]*G*)&S)C># M<@0YA1T*WCIG([8QAI4U*N]=*;Q@>J$Q/0>_6\'TDV)ZQN&&-PR_:2L,)RXIG/=I4C#]K#$]!\]9P?238GKJ,DO:,VE-0!$4*\2=ULC: M:!"/U ;J(O5: *;Q(F'ZA>4E30*)VH/!J"ZRFWK]ROK_&;4'[1JL@,U!.\3^ MN(KP;^120[H2"OD0CH-3W_Z-^&O<-.,SC.R?4=_OV4%*.I?]_6!D,$]0=%01'8(GTJRLD9*W\,PQ/3?'0<'T$V%ZZCBP M- 1!HD *)XUX,A%9@R-RG GK4H(%EBMKE%YNQ%HP_9PP/3?'0<'T$V%ZZCB( M6C%MJ$-.!# M ,+(>"X18TQ00Q11C@&FB2J8?M:8GIOCH&#ZB3 ]=1S0R"0C MS*!@%>C>B1*D):&(>BWS_Z+6*A?8+AE("^4X\+DY8W\PZ3P7??NB=TV M?*';&\9!"3U8D'2C&Q'[M_RAGS/$W%^"/V?7L0LZ%X M9/M]VQW>S3!\*>ZMISE:?F,[GC=\F2Q4(:O;%*?>6L]$-;;^UK^" M_DBT=@Q%RA0"ZDK(!&M1$(PRBPW6@>8XMP7R;!5O]4*>*L_Z>4YBOQ?L8*^ M_ E!?GP&G/&NE/Y#LHF)X' MID_K1FUN>?8U>*,\81KIJ"1LW=$@(UQ".)H0.*5"D+"RQLK6_;P!/>?:#F7K M7@"8'Y_"?/?H*U,TJFJ3>&Z6W'=VUE?1'!>&LL\THI;,%,$14Y9C3PL MM=?$Q& P*#2LH>6\W*>ER-7S884%*(196&%>K#!U7D0F XE4(!F% E;P$5FE M/#(N4D6\C-YX8 7:8',[5"FL\'Q880&*8196F!,KM&9T!2H58]@A19/+YQ8. M:<\P(L0XKQ.'O\9:5Q!X7J5T"BL\'U98@(*8A17FQ0I372'X9!(F"6DL->+> M*F1 (43.8Y8"&(M&NUI7X/S>.76/P@H3)\KI*$XEGM>87Y1RAN4>BWF/%].F M^4:^M7O'&"[@TDFP5!;6<.K8EYM;A9(+R_L M\\S9YY[>Q\(^#\,^4]M )6 =)C'"SAG$A1((1%4A <8?2$'RCH;,/O09)KD5 M]GGF['-/+V=AGP=AGQE_)8LA!M!-D9*>(>XXR[V)!2)$*$VC=C9W'L>KYAD6 M"2[L\\S9YY[>U,(^#\,^4]W'V4@5$Q&!A>P0]RX@G1+/"?^&1VW@OSJS#S<+ MQ#XOH2'0QBV"P^X=Z;IP;W]S&KWJ%9\=C3ZT VLB;(5(;T6D'V9=6!HSG8C& MB"0M$9>Y:S.A'@4MG<1"IX#Q?(AT\:+N"_\\<_YY:!=6X9\[\L_, 7>@3!II MD(C"(ZX(1=I1AH(@3$MO01,7M1/KWD$OA7\*_SPS)U;AG[OQSXP;2QNOI,,. M)2XCXC9JI+$%_8? =I$8[ F\=J*;PC^%?Y:-?Q[:C57XYX[\,W.(1Z-/S#D4 MP4;.%?-S;!\%$@)2BI)0::RI[:]%:H-1.[+^4Z?(PG]#^_O:?\./TT?/W&M_ M-!BVT_'C(X:.2T6>FZ!ZG)-);(T.X)[^W+@G,X,RJ[UB\CS53=YD_*=V-\3N M\!7*7WJB=\MLD+'>[H[&K8-JX&&K,7<8#)P0N*/2.AED! U;)F>2TV-^@&MB M6,^1OBQBXZ43VD4+J@G51%HPC:22(@B0OI6UNB/1A6>MG4[IX[_X'^<6B?)5 M-HXT?5X:@_&-EN;@K]JOJM_7O] MU?7!( ZKTU+FU5DM\^JH/=RK=B(,_5,O-U+O=0?5^Z[O]0][?0L<.Y;E/$(/ MR+3PF'[LY ]@F,.ZPEWU&RQ!)_K]???;ZK?)G.YN]WH=F_LT':.!T.0@>%1K_]MT,COMGIVY]=] M>*']GO\VF-X[O^IO[>_CV]=]XZZ]_=D:[/4Z(?8'N>;9/_U>&/DA3!YL:#"G M:7@$7Z@^K:ZO?IH^^)]/?Y\^L5'9075H^W4S^WS';X,HP*S.+A=\X];KGH7EYLL*JP(OO!4/#CNQ>@/3->K4">)O M)E);=S2;C&;VN[/#^GZC!\$VUML%F1G&>O/['B\(T/@+,_>]T6U/!3I__T8O M/)73B7Q^/YVH.PCHI[]_(7*7>;%,7 M/J@78#-=U("W8%2O.[#VRZGY=N+_^WB\\R4<.LKESL&'DYW]SE[67'=@?"W0 M7G?>_=EI4;AF?UTT3W;Q)ER[L[^7FOOOCUM@/2L.RH842#'+<@!L]MXYC8(T MU%N9@N?JHLX1G6%.$QY4,ER"?DN,) :N-X8&)L&: %:TAUFH^Z.XLK8%P.C6 M*489)L"2;72Z8-7@;,5RZX-\X%@O6Z;6&D^VXT>=,1'!M3\K7%$=1?@!>$RP MB?:.8#>M[]$;@72'P>^O+BF.5^/G6G!=J:#\IXJ]>/4G+S/V\-! M?'7ZRQ^A/3CLV.-7[6X-L?JB/PYL?[?=16/5_54N-W)!J:\98OSQ'T?M,-S+ MEN8J'EN;DW/JR9,G'Z_6'UTP-<:?<;E**+WV8[Q*KOWL9[;@E\,ENB[S<&3S"S1-YO97T19_#(YR5SZZA6>+Q^S M+O)$_B%UI7]HJU9,FV.%].TYA?3:JCPO8%H^@9;^ZTFYH= L@P_T:K?05?[B M::(G/9?H>46NYX(OL7D+LX\T/&(SY3@O_&XO$L"UQXQKV,P<@0&==$.Z%(4CXX MAQ-61-VR1-YU54'OZ0]8/X"%&SZ3BA>OOS6W7A^T3O[=V][:I9L;'TXVOWS@ MS2_;;'/K&_S^9WM[/Q^0A?:E [%W'WXTWVVSUI<_]^#^<.^FV-G8_;&S[P4\ M2VQ_^:N=W0PM^E=JMF4+*SP!*TS;RC,?>.!8 M(6TU1SQ:ADR4"3EA(X^4T1X6B">FS0<=D8XD*I$AN2V(XPEXPE$4+<6),RFEFGM;D,(5 MSXTK$A9>"PXSX0RGQAG##9:"A: 9%UK=NG5A884G8(5I T/AI##>4X1M[@AF M\9%@@T&-918)FU,6&*/(8AR1D31R#[]%(^>FY2Q> M\8V"^%E=Q8'.2W!N),$Y)5PG[[1*QFIL4J)ZGBT""NR? /93)P@64@=M)8K& M.\2YTL@Y9E"2UB0%2ZMQ+@7H,<1]OD8 P&SA N/G<)XTA.*(I#=H(+IS1 MF@OII?,N^$ TGF?KP\)OC\UOK3^"Z.-D8H+L&1RBW=F.'(N1)2H"(E2'T5D9:=_":#W M7#/L4Z"!:NX]-QA'RHSG+,FDO9QG7\("^B< _=1] =LYK++T2!,*H#>8(2%]Q:;]S[-N#6,CDPG*Q CQB >6 &)!X%;((*Q#!AYN76F"/JENAX MIY#,=?%>]ZMO74AFT4EFZD8AGE BDD7 *19Q;!,RB1&DJ7+!4RH# Y)1H%S- MN3M\(9D73C+W+&)=2&;126;JM@E12*N=0(GQG'TK#8*5ETB+Q%0VV2U+19,I M)#-_DKEGI>I",HM.,C/I.#CF%$R/I#:@R5"MD,'2(BF")EX&(Y3.;B+#[YW. MNP D<[Y4]N5"RF=%J<__?::TYP15G*ZJ7,/OL#=HY^^\J@-10(2GI?LRZF8N MG+POGEYBW2 7%[[^DDM%99ZHNC4AYTLHSO[N>[8<\51OM?LQ5P&%R1\.]7A_N&^KY M[,?#TV+-\+7189[G__I9BXT+"@LWFCA037ANF8PFJ4 X.Y-2 MP1.!@C4_..AU)^6\AGN@7>SN57;R[QD9.ARO315_'+;[N0;Z1O0QURP>:RR, MU$7AZ6J5I?7TR[XWZH3* 0N,!H?C$O+ !:$]."N87-EAE8TN3[:!=*I=QU0_G6C MON)TC> E9EX'7O(0[O4# #6,G>-' #42-\#T83\-KP'TR\7O_EO:_/"56YQR MNWCDI7"()^N0S@%C*A%,E=-&TK2R1@59O6P0G&'VM]O9FT^STF]&!Z.QTCZF M[ND7PJ?)*%^P*+0^?%44M&3/(PI*&L29\@AL,(.H$RXP21W'N52#_!E[C]?[ M]TQ(O=%P, 36R?1W)9.?:^YR08OZJ5%V?[VJ7EZ>$M9.:>\DY8I9%ZCES-HD M@A58^:]"K#QBCX9+M3QK!4NM5@_=CF%T>-BIMQ?;>6T[6<_]M!?C< .VPDYO M,(+U7)1&"ZU/$V#LKY_L@-#O?/EPO+._39L;'TCSX./>YKN_#N#:D^TM3[>W MPK?6_NZ/B\!H;K2^@=!W8$P'K?WMH];&YV,8$]\^V(%QMO9:)SM[+?J!;F[\ M"<#8/?JJ' D.6X8L)PE@X2@R,2D4B77"Y@10$RZV62"2$2JHI]XE'I0W.B9' MC.=": '_NMAF83+O53WQ]=[:Z^:V-?=H?'"E*?S+<4T;)CQ. Q#O,Q4/LED[ M^+L'.%GOAC_;79@,H(V/H,:UOV?OS05 M-5D"0:V.%P7JD5M7&+.JL+I+YPI)5C5F\V]9H%:QOFL/A9_W5WB@P=[LMO?M MKW"CJOH+6-+ZG*Y0_3;JVA&8.3'\_B#ETR>BO^QUP$_-X&IB =^J*/ABAEA> M_:*GVPA8HJ<[QJMK!<-<7.WG4/+]?,.D%U?\_368']GY<%D.&KGAU+T:$Y?> MRXMZF#TW']*M#K G,C953EMQ^&;4[\<%.I>^HYXZ.9=NGK3HQW:+OCW:V?)U M[^76%CP+_KVY]99DS\/.UB[>WG^++YU+GS39#HQQ>^MUIW62>R^_)_!>N8>S M:&Y]YJW]UYW-C8_MYM;'\Z7GL8#I)E2CI"/HN)(P9)C)]59BHHE0ZK/O0:N& MN7^(W>(E+14^>J9\A#D+,M&0A#6<:NF8LDHY[0PQD1-9\Q$FE)'"1PO 1].( M7\.Q4F"8(NU)+F:M" (S6R#'M*3*:"6R=3?>ZZL;;7C]]C M=Y0[+U^AXKW4"E9/HA.=+LF4@P:%@>[ 0+.%9C77CAN"E45! M4"U\B%9H8"!)&NK^#%0*T"TN?!]!A2CPG1=\IPI$9!KK: *2E)J)TUX2GYOH M$$\IL]&&E36N&EBK!8+O2W 6U0G9=^PK<'48\SWS!Q9NAFYMO'NBQZ-,_5NL+5&\*#1;LMP_L_MEOF$<+=K^L\F)/_8[_:L_UPE-.7 M?AL-8AIUJDX[U=F"/]M2 TP$2Q*,;MA2B8/M%?;3%(3G# >"W95;ZHS6"*/V MK\*H?QQM_\9[[>=Z?'^WBM:7O]J;6Q]!5WP-[[(->N?>MVWZ[T%K MX_5^$\:R^0YF8N/?E/7%4[WQBI05UCK9/FEM-&GSX#UKO?M,-K>^D;6Q_PSKN/>SO[.ZEYLON52.DUIPEA3G-/KF"0\50C&AFS <.>+_S*&KNH MGE5Y=6=BY,;Y)B42XWE'8@1*",4L&I]K7FL#XR9),P>'W+4,\:[? M&PR>B7GY:#0Q]UQ%1'%S0E-E]S:^("W]_O.6;&_X8WH:TMEYG+^%78-VHLBI!L" (Q,@AK0A%)B5&O1#!NZQ4 M7#(>AKV?"A$/N;@44YH3#+Q@+#;!BTB)XH$F(XL0/1LA.OD,FJD%,<>)+B;.@B%X:N(P:@+#42,LI 3]*#+D"&:( M&N*$Q=+#_K:R)AJ,+Q*"7\PYR9^C/L!N!"9./@I, )- B@LE+"F0R**49U8D55?7) 'O]$5=UZ>[Q]L+/7>K=]W'SWF;0VFC^VO[S% MS:U_OS4WFKRU]>VX>? >-]]]3/#9UZ2MM(J:[*/ B&N#D;54(BJB<-3;F#BH MJF+^JNHS[+5WQ4:GF8[$\EPIBGN!-;4N,DJ!/*V-81[AOF6CFR>NIJJJ4"92 M2SGR-F5?GB/(&$.1\D+'Z&+DDM1M%\PBN?)*M\PY(SAE'U_R7&H5N I)!Q,L M**>>P8189HNJNF (/IGI:6"3BDFCF&A 7$H*"%8$Q<"YBC$WP*P1+,R],ZV* M,_[V(/P[VD'^UZ4F;Z>J,J)\"H(I[ T7'.LD=>"22NP) 2NE MJ*I/#P;7P?4?0"5M'F6OZL[!>[:S\>^WUL8ZS,,V;9U\YLV# M5JVJ2J:,2TDAZYR%'=FJ[#RJ7?,Y-CIRS-F#J*HOPBP MXE5=0 3;9)W&-#BM@0FITHZ+1!11H+(226)151<,P3.-1(.."C.&? 3D_N0 M8&N3%@F*D[6@P 1%\KF(Q*4HP&-KJ8/!JVK=^W&7@!@ .H=]0$==/?M.U866 MUVZ^OI_#4Y5BX0?7E6/LG ?I+*'EXNXI%-VF\ M^G++;LQY=A:;WQ=+C[N6KUNQ4/:M*'LVUHYQ6!V<9.[;YA!W+"*+L8ZE>A%(\V;N1CLIOO5WV[IVISULQ\'6"V_X MQK[J!$*7$D8:9R^Q#11IS3"2,C)M02RU=Z6 42E@M+!U;:ZN7E3CO?)CP%>= M*>)+ :-2P.@9'"&]'0SKON>A2K;=KW)W]CJR:=R&=3<+/?PZ: ,SCUNRGD+@ MN/J-W,MW]MQ,C&==]^$1'"VO1P,8X6#PIG?@VMU:V-Z<">&;61D\U;N.GU<1 MU,]\>ZMYLKW_;V?SW;_?6EL?Q,[!!]'<^*O3//&L^>4SV3YX>PQC^7')BMC: MVVN>P/B^?,[/)*V-SL'.QK>CYL'GD]:)_[&3K9.M]_#>?YZO4D.,%QQL/V0H MRZ8$X\@R19#FP:?(N"BZUF I%DM(Z+ M@&0D"G$G-3)6;INM2)#862[D-)L^=8*@073&*(!FL1YXHC[4)$5'DB2- ! M1[>R1G"#\-+P[!E#^!$TC@+A>4)XIBZ>Y%PGBY'P*2".@G-JW?O^*(;JN^VWZY,"WSLXC-W!2PQO7@Q]XK"?AJ\FR_+O M9%7>S"Q*H:';T-!L2K]TG#%E.&+>>Z A99%3."%BD[/:!&D"!1HR0$/W/M!= M/%=, >\C:!(%O/,%[U2'<+FY,?4",8(%@)<)9(2(* AIF M.&9,CD%5#T)>< MSO\4T-N(*8*&/.V\7OP03^B'.%V-C^/%*,;+[8GG7'8U ?N$1B^1ILPA'A-# M5N6C'&ZQBX8(0WC.S:0+U;"YN!^61VDHR)TG9IEJ8E373X/=7]XO7X5:XNS;DJW@M3TA+15"2*07,G4O>YOI*4BP2@%^4YR$>''9ZQZ!3_/G^ MS7IU:(_K8H+%#_%4YQ>G"_-VLBYY6?Z9K$KAHSOPT6Q$A*',X2@)\KG\_M@C MX1U!S I"M(\,EK!.3,.L1$0\8Q _]#E& ?'<03Q5*K@E*2B:VXM14"JHX;FB M"D=!T&2LQR[QNI&&H/<.M"S.B5LA$$2\W^MTJGX<%WSSO<$=58D78=<\M"HQ M68Z/X]5XDQ>CL,YM6.=<5P.)G<%*(U/7<1*YLV$@ 3&ML+&!49-2]D4H81;( ME"F^B"73' IF[XW9J:9@34S828-<(+D3".(4Z1AS05=*-,/*.1-7UK06"V2$%$?"PJ@#!9SS!^=TY]=*<1H#05)G M<')#D-,$(TLCE3)R[2CL_.K^B>/%0W"GI(F#&/*0*M^Q[8-!%7_D.-]87 5/ MG#71'"_+FWI5WHX7I9#0;4CH7(UWIHAUV"'!HD%<8H6<% Y19;W1L$.XQ%;6 M:(.I9UB_HF#WD9,F"G;OC]V9I(FDO0B,HZ0!P%S0W-V7*Y2*,I^K)#1$FMVOS2WK?7A69T,E[KMA3T+>SY1O&YAS_NSY_$9>W(<;6(Z(!*% M0MQXAQS#$@E/(R'8"YMC=0EF#2KGE:^W^%7;'Z%@>ZO7]:5F^X6:[3^^.A%D M8(XCPDE 0!L>:<8%,E@9&@Q+F.A+-=OK-2N%VTOA]D71,7Y6N!V(!97B[:5X M^_,\ZCG+,&EW?>\@5D/[XW*81ZER_$QM@$R O77/JCUQQ=- # /Z/9)4VR?K)/FUJYH M;>SB)GTKMK/213^+UOXZ;AXTCW>V_CI?;YW)(!F1!@6I#"A59CHF3+1(Y8?*4QT'R::21O6SAKL03ZI2X@K;9!3 MGB+K2 B"V"2XJWLF&[)(3/023M\^1KCP>\S8 -!Y&)EM=[-N5QWV!NV\ "64 M]RF5HL_=?O2]W2Z\0*:CU[$;4WLX>%_KX/"'?V+7=C([3:(&"DG=AJ3.55>G MG&A%$\J^/L2M=4A3GJN;<>F!O)A7H2[-+$MYL^<,ZD?0+PJH'Q;44\TC6LR) ME0XED7)0OY3(A&"0B EK8Z26AJRLZ0;&]\[R*Y'#=W,GS999GS;\*Z'#"^") MF:W7/.T!T;NU8Y@>=!6"N@U!S:8A4T>-%4PC&+Q!',>(+"<$R=S4.% P MF'3..FJH^Q/4XOEH"JB?P*E10/U H)[I'>>)<4I2%!1EB&LI$#"VS1G++BHN MHB(BETGC8I$2!5Z"NZ,UW'RF8M^W(,HS59P9RZ-7%.3. M$[DSM=J=L38ZB@A7"I +MH%U*2!MN.%*"H6#J8N<+%23QQ?ELIACC=478=W, M1W\XB?U>L(.]&U=F+&QT-S::#2+1T0KME4%8BX@X\0)9HBQB-!+&M+8V5UC] MW_]+4T+_6"!CIG@HEDR3*$!^""!/U0JE@N048R2U!8. :(:LP!;9X*A6/!<_ MHG.JLEI\$G=H 7--\'AQ2CQU3N^E+A*%C>[&1NUSQ=:B#Z!9H*AS SFL"7(D M>22B(X3!JDG+5]98 Q9W@8R<6$8,&INJ0*XPN$X9?@J+A=297)"Y:B (\Q.\^&NI^@I$HA[;N1]FR\ M24I,)N!MY(0#,Y %L !-4$A+GIA(AI(@5]:X:&AR;]:>+W0>R1/TZ\'<-M.H M$&LAU@74B0NQSH%8I]HP['2$8$1]7U@1NX+EE M6RY4M96Z4D?]8_P2KO^?M;,7.OWP0KH_RO3UBLGSG+8_&@S;Z7C\IW8W@%B^ M0OE+CX]=FK'[&_G]]$4>__%_G)LJRE<9SQ.Q/JAZJ?IKU(T5PXTJJUJ5[89J M(_IXX&*_8J3^*WS6CX?].,AN] I@7R7;[E??;6<4JPCS#(01\ZWZXT[K]4VB M[7?AD0/D[* .T.X.X9_9,0F_#MH@4N-@[>&>'58']KAR$:Z'Q3N!;[OCJAG# M5F_D]QK5Z[YM=_=[_MN@OG%^_F#/]N->KP-WJ=_AGT]_5X16!_"0/?A6&L+@ M\_=@S(<1T/$]QV?]SZ@]249;/2]3EXK\P+_'XQW58SPG=;^2,:+/9.P7\CN' M.]7LRE/"VBGMG:1<,>L"M9Q9FT2P BO_5>B5VV)K(CR]5W<0+ MIG-2YF:R+\U<..$1/+W$.J",T?#Z2V;FP<.+Q_X30930"V(Q\W.O/V6=W8@< M2.HW5,O9*]LYLL>#E?^<>Z>#=A==F,,;O/Y58C##65>MV85E?<2:-?68! 'BU(&:_/-1,:)QZU]?]+Z\A:>_8UN?_FW?;$,UL[&.FD=?-S?WGI/=C:: M)ZV-MS^:[]Z>M$X^T-9)DVQO;1]O;NWL[7SY*S6WFF+SPU?#0G3"*J0\LZ I M8(^,,!QYN)^V3J9Z*B)O>/)K\:S?YDS?T9R-Q/E"ZP[7M9?COFAJ[%-9>[/=A(Y,;;&@5A<688\*OK,EV>P)\Q!V! M"&"W]]TH< %4;E[Z] T;*#43_F;V95ZOPW 897WO*)=-GZ'1NU M:IVRR MGG[6J([VVGZO:@^J;]W>$:S^6-T]/5(_NY4?3U*^"I3.$#NKU19\;_ITN$.( MH!V '@!?'PU ]:WO5%_1S^JR/3SL]RP\+.NT\/6#\3+40[;9V=29**Z_'?9Z MG=_S^\"WCO8BS'<;9M7VJWY[\*WRH J# 0A3"=#QN6L*_+):?8%W!-X^6[OV MC#B$7M7M#<=*])4WJ6?XN,H?GT[O>%QYQ@"Y[3""6]8CNN+%SV8>E$6X'.;- M?KZ-*_=X!_ 4>FQN^U4;#C\D_!KU1W^<%&2N<>?9ZU:$= MP!I\S^_0.%L3X/LPUNH;]2U ,QOTNO7#\C\'H\/#7G]<_!$>'3W< P9]5Z7\ M%UO84K#:>K4'_P((V'/[^XQ,CX'O8=B]@VQA9>9KPQ\FA3W@%>"C?AN^=@0( MR6GH_0!+'D;]4SD?M'^<6F.QFS^;M3(Q?#/F!@]I,TQ> MY^/9VUQM12Q4/=VGT-Z:1U]U$)Q98I#"P2$>0'$S&F-$F:=>1&(M9K_4WA: MU/)FV1X>5^TQUG[&;;!'#?X_>U_:U$:RM/M7%-Q[[IV)H#BU+YX;1&"#_3)Q M),8VG@G\A:@5A+5PM)CEU]^L;@E);$8@0$"?]QT,DKI5797Y5&96YI/#=MOV MBEB3S9J2/PUV47%Q=P@#"?W?WUW!]EN!_ZDIA@G&:[B,)LS-,:S6,-6+I^WE M:U3<_/;].8:--(\SV(5R#-^8H67NPE!;AKZ6BI#X*VSB]7(3WYK9Q.>AK7U) M*2]W)B6>.A.A,V>ZH=321IYSU. M'H/GD?&.F)N;P%>@]IB@-M44/A\NRD"1H$P J 6,'%<)$4\CI4F:J/W*.I<+ M3F1]/$A["]6.VV6(N)LNG\?5;.@>Y]6I2AYO B;F!%5$*RV2XYH8[90DBC@; MB# LTKL98I=Y%"JX>CRXFDZ]ETG&2+E%-%B *V<2,DGD=J;>15A-K*5?&)5" M5?6XO&I,L3+2> FK+KDC7'MLC(J9@%QQ)41E7SRGPDZE="<-[BZ3B!I%$<<^ M(B,=11%L0RZ9$,R7 CAJ ["1K"@P;KV[HYF117?>5JHFJ%[Y(%2QH)# MD;/G'U5HG#LIR*Y\3QRJ"IUN Z5[99+7)IFB'0:=HJ4+#(\$\LYCI&-VJ+$N,4X!6V375F7BBZ1EU2% M-!:LJYIK'A4)4>($UB=U/LF( _P1*(F:%[J*Q[J**UU]2EV=V!#!!DXU& W: M)' 3'"/(,">1$0H6*7H)6_73GK-P2#F M1._TQJBE?WM.*^%N?LP_L#AQ)Z4*C.8"H^F<%/ RHV$I(*Z=SC$+BFS(=@03 MW%D9F'8!# =\!8M^G]>5>:$1B5>NN0NW&2K-?53-G9@1UB5'4Z"($,D1-QPT M-U&-1)(X>")@+5,F9;C:H.)95/ )0%;1VH(1BY5KCRO+T"T*4#T(D%[))2 ML.4QY%.D *!$(@W3BC!@HXPN,SO%#*"*//B\?0D ]!JFQSL1[SU//?DU#"%W M(]N39)IL[V8VD/NRB#Q]L6-!]&8>G>CM?6;)B?W^AV[;-3O%^F\V^[[5S;0X M2T+20.MC1MDV?.[H?;NQ"Q@!>+-W]%DT=AN']ME(8H:8F]S/;FC3=$BD23QUS'9+3#*E#F>0J8 MBG"9U&$\_[6I!?@US]N<=&Z_'M3L0W!!K34ILN BIU3!Q0ZP]LP>K4.LM4+#E;I6!EZ??CH.!BFM#['@][_6%F M"1L10F6NI>(C(+L;^?.UOX8]?VC[L7:Q8"/6LJ/ M?BTT#S*97NTPVM;@T&>*L[;M_8@%QQB(_,]FICPJ;G_YTD%NB%(0R_B"Z.5X M/*QCF(IXB=;XQ/9+/?C?<]CT2G.BN3;1,=#(7SG8&CV9J%HQ)Q5)MC);T4[<;3IJMUD8G3%&^PV= M$$(C3BC?Y1M3I?KYMMBW!)8L,8I2T!+Q0"7HDB#(8!I2@HU+Y!I"BM>N'D/5 M ();\,N,R$UX"0N6P-."W:QUMM0"-86K'[K]P0AH"0G "<08"XQQWB"DLC<4N1@FV EZ[FD(QEI=2%C)?U61B M8>W[@PL2RY-, #E*&0PE<>18K$;PV?$;.@Y%V@PR$(=QJ1)98&]C3C'+' MW9(UZZ7(WWB_^"OC\D:!U_GE,89MC5@\=^WIYL7S;A23\6:E,OL9^]HK9RC% M*+ )H&4&KGD%;+&*YF#-XE M8; ]URV@1HVR15NZD_85"[1UIWIBW&;M]@>9G?2@X$T=&[E%#XWH#SLY4@>H MVVK^C&#A3VS?G4ZM;D?&!A\W )D>N84/']N"]_2F0:_"ATX.NS IJ'O2&4U4 M,S2S+S&:H?%<>OBW%0>Q[.QQZ3GGFM_:UK#7/8ZUL-:%_ZLUNC^;M:\V9'K4 MFDT)C-812>S4)?#Y7DDP#'OIU]AS3;M6^R$)\\X+K5)":- \-&Z1"Q M'NW#!?I4CL52(%=]=XLU3O9QD!Z\"X,"6$F(VRB0,0RV:.5%-(I$3O*>3-:N M9L;/XUK4EE2:*J_BKM*R?=HXV-/]BG2;F$241,"##. M;*XK(%@C14/R+(B(#2+/9SC9'QX)HD3"6+0E,; MY^1+[SHZ0';0AUV&- U@.0/ M(-=@ZMG5LC%.SA#("PR6[!CS^OF"]]T#,&\+K^,#Z,WDNFO]FOQUX+3$S@&, ML'.]4W/0ZKIIS\7;XPO#$7:3SF%N>9(->O /.B"H_<,N[%C]LS[(;]E"L.R< M4.MWT^ DGP" *=1JEF.&V_Z,K>YQZ<0,@6IP1E2Y&26'[< M@Z&<*9@$F*9V_KZBOXS$&(SX;@*E**:F_/J)5^9;S;S9E4U.8,(.F\=EMXVI MYAO6]W*WB#Z,JUJ?][W0T7 #L!,3P(YP&FE%%5(Z'\3#[JJE@KV5W6(97I2=>]L_ MO$"6M=JBO8LG%++*N[BC$!UMG-=/]ID,-!CK40J!() :A2SU'C'P1;$T(@@E MP!=]7._BPJ=HYHX['72+:W%-YYK[MG5]# /QQ=WH33:%92^V*>RU"5B_3*BZ ME(!EP6UFSCF#&>8I>"W@'^D5%4)+2N6C]]_\Z@]!PUO@15R#VOWW9U-_O>4D MP9V-?<:--]:"ZQQYKH>-'&E86N2HBM*!DZ7-_.0FDO.Q;9=9WN63[RDBXU(L];4HJ%]5+L)/")(EMONG-X>4V_ MZ(=8WJ3L'97]@MP]:K3/7=<\ZM:#T!?3.HJ9-:D?H1L36S-B\1VIP)YEC](Z M2O"[M8Y:BL$^QH+!8.\X!0_MGG6G5E)+V!YHG(YXA^9*KW8.)@>M;WD6_OKZ MG_L^_BMJKO;!]J_HPJ^:@KVFLL:[/>.KJ4^\?^K?0@*"UP8"LPC"&UOP$3 $ M8^?EAW3*XD6X]]YYJ_G]"#[W"7[?_=)L_+/'&YM>U,\/BG_A/J<[NWNGEXL7 MZT=?CG;^^;.=?8N](QC/IVWR_>@ QOKC?&7AT\W3\YH(*G MY86G*:+C0&.B6""N5GAN>[G\( M5L'3\L(3N8 G'Z,'"XHAZF*.U2:#M'(4:G,MC; MW?SM.8FF"B24'@X'/[%(\X#PPYQ1F*SL;L:2C':Y:(I[!#E,1%L:0PJKJP7W /TCU<6/:L4 M=]'^6Z6B"U/1B5/FO1%$&(4"%AAQ[BW2"@ND?&0A!I]42IDL]\$F4J6>RZN> M"_%V*O5!)"0"L8A+K)&Q)" ;9*XJ9HK[0CVOLD*\;/5\"V=/ MNW-0"E6M0JM.=TOF4E744DNWHR)=)6J/JLJ#J)74WD"@^C91]0[MGA^#HW(T%I2!M;CLCU_<&CTC3]U4!N_3?_T?,U-%^1KC M>2*^Q.->[.?JWN+(MUDFB$RSYV5.[/:HD\X4ZW#LS7$?;Z\"M^ZCD M#;^YKT-)^MJV9S47X0ZP3(!O-7]Q<:A"AM8)_?D1<71!MECQ^9:%E2?,W M[@\TR4ZYN2O RQ(6NGS"_NG3>.MDYV M/N^[)"W%7B+-:3[U(QYI;12*P1$"!I5PS.:V]#?W/"3'P=M#,<^"Z@29$D^#\ "V]75(\\WMGT; >^OW'^C8*H^D23Z<3LD!T(0"A9U[,P9(.RZ%_W=9#[OA3V M -QUYWATF^*O>22<8.>BIL-WCC9)XQ9A@U'2>4>FU8RY+0SX"XY*Y*"%W#( MI\"WP'7>X>>1**.,54P%8XWG$BLKA&*6)QS 'U/R>G+Q2J*64Z*.#D[K&_N: M:LQ1A+E#0RH,](&G4.DO1U?J+"RD*PU[V!8H&1X=@/98==YJG M(]^A%CL96(L&2PP7#9;(:K8I=5/JR)";51 M&"675+O@Z+^.^O]ZOV!>P]U[\!N5LH[1P 7#FGD2J0G!ZA0MQY4C^<32](,W M#C(Y;="!6Y1[2B(N@D$::XK 4 >_T?$0&5CDUW'3/KM!_BC&=W T6 LV6);) M0(@VG 9EB97R_(!$_WQ8[F]_.&YL G+L^@RHD-. M.8>D=)8J[@77]+84S/M:X))S%2P'<;+P,R;C- 8LE,PQ[RCFE07^DL1JZSPW M$1(F*>H5$DH"<@9+P8_#$H7$->&)$L/5XBWPUV)S\Y=O6J9JY\T3O8%V)]8@ M#T& 2>X\$E(Q&217#*LBV7O!;95TMCQ+,1LQ/=S[OPQ8)]C)8Z2J8?,#)#7+$ M<62PQR$[J<3@Z\L:[QTQCP$3BQ/#+#DN$S7":FVD,2SX!%OT'>SU2K266K3@ M7Q MEK" O9PA[(E$7/B C.<E-IU;1/;7W8M MO?I]R]&4=+QW'>9,EJ*J+N\!'34XR0D' ]",HM^U+7(_5V%. MRGQ0N%6S<^7=UB01M,RBN>B@#8,HNY?V?]6[])Y]IE]28U/!UK"Y^>T'-#95 MFM_KMK>_Q]3BVZ6^O,'*J@5IU8*T:D'ZRUFXW(+TB7BM!MWC9ZK9&%=$7-XM MYV4;6'!SK>>;D+L7]LSWY+\L+7B^1WXY->;7UNN4'WGI?DU9LM/^_F-G$\:W M^W>[_NG;67WS\WD=OJM^!", 'Z=!&\WON]_;C[S?;HGZU&>P\W-K_,=B@-/FKBK432>H%XPABY M&"02FF-I8K38L)Q2L"C>H$7WWBH59Y%T0A7856#W_*7?%=@M#.PF5=\BBD7L^7=V^)3I=L?N_ M)(=T^V+YR@_O# YC;_?0=L:T$Q6BS8-HTZU40Z24N>10(#QECEN"#/4.>14U MEUC0Q./*NGP-;0#NQ7'[)G1^&?VR2N<7K/-3G5>CI]+2@ #B->)&&:2UXDAX MR[2!Q3^&NR=0K%3C- T[3[58- M%9IB$E%@AB"NJ4/:<< J1A0CQ'F9R\CD-3'D*PVA7@J)?Z79R^Z 5)I];\V> M.AVBV. H+6(Q!,2=YRB7 R-827B%A* XSD?A5VLO*LU^%9J]C&Y&I=GWUNPI M7EJ<$N"U1RK:!'NV#LCDTF\MB?0Z0[?A-S00?1;5?O7''6,?N3K:>&S_H8I& MW ,\9II?INAH (%HECCC6S,%VH3T#@Y_PI8I&5"'()3UVJ/3Q M?OHX,=,)H4)I2A&AWB!N)$46C#844G": %PJ10LBT>H8\!7KXZ)L]4H?[Z>/ M$^,Z*66)5P$QC#WB)&%DHU0($YJ$H9I9:E;6Q9N,UB]!7\K9:ME[YG1=WV # M+[ZMS\M+$'WPU+R.#-*J_^0K@O?I B%+8$T3HR@%+1$/5"*C!4$&TY!2Y%1H MOYC^DXO5JQ>055^A:H6J2WW65*'J8E%UXL3B(#T *WBML"4B;J- QC",@O(B M&D4B)VPQ_2?BW%3-5 M6'/0K\5,4VFG>^S9,=E)654UZI57*-TT_5?^^%]?_S/;.N^"1M/#.MC_L%>1\M6-XJFZHE1MGRKR@@@V^!G[X7<]QGU#3P6NZT.5DWE5-> MNTB$=)X+H8S5TO/(F4U&.5Y2(Q; 65(C,D86R1[[5Z_[$Z8E-]+<[I0W@C^V MR^:;&]YG$D18B>W.6!0F[*4S?(B[/9"Z%'L@#"\=:Q] .'MPVOB\;QW6,F8^ M?.\HX@I+Y)(C2"E/?2!>.(57ULDU@#EFPEN]+&SV!E*A>85-PB8MC0\L8)]' M9V'7MB0JR3"U9M2.X8'"=MQ+@P5+VNY,5(VZ0,Y2W+&KQVL \F M/)',,T2X$8A3&Y'1VB)N**%<&RDTR;)VM53L1BQK7:UY>",P]HKR#A\B5Z2Q ML1^X(=JE@+#,7>TY\\CQ9)$623&1?([8Y#WR%QS4ET3K@F#V;7&)=O]L:#FZ^Y*: MSU/':0B_A"%3/P][$ZK@@X@<;(\_D$TPV'>V=6+/^BO_GGFF=K.#+LWA'1[_ M'FMV"[&^M9HPYYS!#/,4O!;P#_@W5 @M*947L>@&V(N]IK^T?U/+#.S75/D( M_K;1G"=/5(HR*,W<]0V99SV(K_XPAF$K[J2/3=A[XW] <*[4HU]4E?3_LKW! M3KIF.]^%0;UO=?V/-[85-W;KI/YY'POM9 *WE#B?$)<>=F$;&/(L@M-*M?'* MK-0BV"O'69QZPWA? 7MJC\A,S1ZP_#7CR__S_%'P!A&S J,#=J MW_HQ#5NU_S33E<38M]3W8&O4=C!4$S+JBW!PT(L'V:/>F/C%LSR,KY[NY0/L MKEVP7VNE:P+/?]@\ODM[D/GY0:\Y#O^U@#Q[ILFUUKWBGF&BG=8>CF39&=S MZPRN/87K6/WH^X_&YM[)WC_P]Z=OYWN[C=;.[I61\NT4(19DES446LA[Z.%14S\9M4;*V>E^MQM$!./"?2?'>T8'XOKM-=C8/4V-CGTD;N<41*2DS9QQQ MR IPYFF4.K=Y-$[SE75Q16%1[39!67"!P/T%]L9% ;>N!.EU M"=+.YWWEDPPR"$2Y"R!(F($@28I")%%8AJDV>F5=_0+YRQCB,C1J>$/IS7=X M^->1P'PO*_.V3.82CEJWQ9%??._@IP:D25JR4E93$%4D.26(FRB0YD0A9[2/ M5AG'.5E99^SQ^\XL+O'X-;,37;B^^5%:W8-[V?._?NB7Y-?ZR"F55#F &"Y] M<)++1(RQ^= +FRM-T2N_=GF@:+J%0F)1NE09PD^K161F]W&P/,C; +L/X1[90"TXV-C!VN@@E5U9 M?VZFH(>8NB_ME*?1[:"K%($%U( /NE[]*".8^]93)&'EPP,DJL M8]1)4A-89? N,>1,T_4K@;' 0B(B0Z;KYQ:Y%,$5IYY(ATTHB!:NQH67XB"G MTJ7*XGU:Q9E8O-I0Q3FAR&-B$1<)(^:8XFL9CXQ>,=)G8L2%\7S4T5W?TF+ MV;,A%CI0Q76;RC(O= A6&,D MP8::B&D5UWWZ!(?[Z%)EY#ZM%DW%=:U4R4B+I,S9LH1:Y%A(2%,IK$W2X\2O M9]ZHXKJ/HVN;\6=L=8\CS&4W#4YL[W[&[NN*0T5N$F:&69:K;K741&KO%":$ M4^^TKHS=Y86;Z>1\2KR@EA'$=.X)KZ5!6AB"9'* -CJXZ-G*.G]Q,=U7DW]O M@B8A6<+*!*.4 V'"6D>J$AAZ-!&FB*D$Z74)4LZ_ETP&:352,;.X,4J0 M<50CH>!FG$EMG#8S;ENJ!8N<*^\D;.).[,,/$DD>?'N,>OKKL_ M=?RKKNA:_.R\CHV7.*^(QTY233CG5BO85:,0EFD9DD_5QOOL&^]TIBO70C!# M L)<2<2Y3,@1K<$[$L0R)BQV9&6=\X4UJ5VNBPLVL?2FZ+A1L:CO'H_X"_2L/\,([;9'*Z%Y,S)IX;]]8X:0X."P[:,1]MOWE::\.8#OLCQKEI.EOX6=!# MU@Z:/_-@P.J,?I )E<>M.2;CF.Z.<='M(U^4O^W$]J=;@HQ'Y>)!L]/)'X(7 M*"9FK399[.N?Y]#^C+5.=P#7QLYX=F+)KUN/8;<[](9!QJ^U8Y:C>5CZYN'0?%P6S#&AY11%$ZS4 MQ[Q04^34;YKC",@:,M13) #7L*'662E>+,=E_WKX&6NI M[<4I;02A+UC)F[GK3@DZA1*$[O&X2]#&UV^U1GQGVNYAKVCM\W5X?-PJ4,'V MSC*,U0KMJ$VI1P%2U][XD9_]UB==+>%ZA&,=,'3[?=N#[RF@S!=,R9.V3@, MMEE%3]O?WU6$J3/O:;B2W_SV M V@]E;S;;2M:SV5G:_P*]F*]M!>W9NS%>0@;7^4Z+I9Q\5D7.9O^ST' ^:P+ M_27^C)UAO!(4?GHRJ&>=AN?D@WK6!Y\C/JBYYE&1$"5.'/P-YY.,., ?@9*H M^:@MT,BAPJ5#-14?9/?H8#9-CCMVO48B>Q$Y9"_3[QI%#C\V]X[J)XU/C1_P M'US[^;1.&\V]]I_PNB??VUML[Y^MTYU_MJ]$#NO__-FLGV_@/?H9_MLCC8)I*SC))@D26Y(R/5&FE) V):PA*#\R:P M6UEG6*\*:I:7+^I";Y[R6.]9E;41![G!5_=J7=&#$[F7[EGG/L]YG:!KHS & MD#38J'C0R1!#4TA2))J4TFD$NORQ01=$K^BY%O_3[?J=+GKGCF>]3 M(J=U0EQ@@%YF+-(T>9."C\'F9KAF%3[UK)GL#P37%V@)O[?]IJ]U+B!V$C=Y M2(K*:P/;ZQ[QY8+M7['W-:_P8D&7SG&.L&5[^2BH/QY)(847^(HK?/TEOLX4 MVW$A0U &(Q-T1#QF:F4L!+*:"N58D$J$7"8DKW8;?\ITM+=GNFXV&0[Z ]O)LS]K+5;>^!VP;#H0JICA@BF!%,YDH>!^(RNM0C02;22QGJ7, MFD]6X:_*7EP.- MS&)*/3W51X=E"\>RR=58AVAT0;3J^:$)4QC".2.(<_%\! MGG!2'&$3#2PY3E[EHQVZ*O&#Z> 6;9_=GMO][TN-TN^0]%R(#D\):Z>T=Y)R MQ:P+U')F;1+!"JS\?BY/6^(\<(+7;JU?7D":ZZ=N-YPT6ZV-SI4ZC4FVW[)D MN38^C%3R:.\$ON .>H-[>.JEO?D_UW0/>^+R/%9$L.8I4 M3!Y,!= NQV1$23@#(&J5X;H$7!!0 +B,DCRK&W;6>:^Y,T8R?XO!W!IP)9:K8W)?#I<0FG*E$R0FU_7[M>-CSA[:?4[^;/M:ZL+45;R?; M[-5^VM:PR!S.!FI9<'M1!+*:$WSSZZVF=H];_[W M=($0>!#9/LTU//#_G9SMW81WFKVO-Z+_QW"QW,*>:KE'*6=1UES<32"&-9JNX>YX":7$W6Z%_GI1=W.](6YXJ<]N>RBV&EPV(NQ M&.>M94_D:HW."Z\I*X3L:OU[=AM;PQ!K_MK^XZLPR5,=*WJ]O'Q%W1/(S 6Q M+_SA+_5P*TL*PA5:M-7:R6'3'Q;%!BYF']:"P S@0<($.\JA%;JB_@#0'#3; M16K_L."(J>4BVNP-YZN+ C8827Y2E)^ZUHZ#PR[(R=;UEQ5/ /+9;==:&5I M;#JU+ER7"4UR7=L@=DIRD[7:1CDT.RY=>*(YJC7+NK-FB$6Q7&=<\I#K[TZ/ M8Z=?2G#S8O6*L$">+XK_F!YT\1+ S;@"S?M2Q_.=OEV4\GSH9NGLE[]-"BF^ M3FK<9JHM"Q6<1HMF-RMA+N]T+^:B7(?\I5. ,H,B!0:4F%$6C)3[2 OF.W]Q+_HL8^5V4Y3FY0'WIX>8 MXB\0IGN#'BT8R@2W-XA\>_1SWI;<[4G9RCYX@?S&F4D MF"MG(RMLV"FJXB],Z#OQ Y#"DH.MLN0KN%1U^23UE?BC?AX.=S8]O7QJV-C=@G%M\YU/WP\;1QNLL?G]1^/3 MGT?UHRU*-<]CYIUN[*)*\4=(C+$) W/B C(D2&9R$H#(7 M)J25=4[5JJ&Z2H1X4EW[:S;8;,'D\!->C6DFGS>6_?#;'"AT+Z=A%H[Z\,#P MVSUP:;R"&]YG@Q.F>6/"&E6!UCR@-4W1[PGV'C851&PTB'/+D!4^9OB2$K#* MF:!7ULFJ)E=S_7^ODE ?1RFW+IC&0$W@C4ZM(+OI^+,<%^[T6Z. YD0!WE@. MZHM!K8_E^GT8+=_N9/4^V69GJ:I 7P1T-:?M+:D3EQ8CQ8-%/"J!7* "\>2" M=R(ES?'*NEB5^&KY_=VAZ^D,K9>$4%->Z4Q09Z%LJ#=3H;YJ3W:14[/<,#X' MBG.CB:,D$!7PO>E0?\J(A\-H7(VE(L$DFPD4K M82=(CH [9+F )6>G$T(NWUS.F&]\/VL)43P\>3>6'V M5C-ZGQEMQ,%#9/1M3EJEVI5J+_^,WEFUW\)Q^H=KJZ\JKO['>OY7<^@4:4K: M!T\C)]P(;X7&5 B%D[,TND4<.MT2&2YVFM=Q&-7^_N/[IR\_&K1^OK.YG>_/ MON_^X/7-NJC3/=YH?Q8-NGT.O^/+AU'?VU_@VL]L[[S.ZT?Y64)K9_?@I'[^ MX_S[T0']OOF#[1W5X?HP1)THB%Q+\(,%JEK )SJVL&[S* M\*)HJ1Z=GO^>('WGEL<5U+TJJ)LG3>IYL6[* IPV_BKTFP_]IDCY?(J62(V2 M,!YQS )RF"J4F%))&:R8R'V-Y2IFXN'9417P5<"W3 ^^7+AW&>S .=LZS?0+ M,)NO*^GHZ9!NTL$]4W$%8@FR(4JP\P)'6L*?!/-$ Y-$$)H[N*]2M2BZ^@KN M*KA;I@>? ^Z$"%XQRT,@B6.*34S:&64$=2RE)!9025BYM(N%.G8!=; )B2@" M>+.YKI!+X9"-U".F';5610GK!BZM6N5&55!70=TKA+IY7-KGQ;K*I5T(^HF) M2QL#]80'I"2SB L=D,Y,F2I%XY3FW'E2&'I$5RYM!7RO#/B6"_="+\?[5V2^74V(>J,(1BZ0M]LSSJ)1+W"8[GH]38 MY (H0@.XHS$"7%&.F'6,.Q)D$CYS1W#*EZA+QCW1Y\;\H=>IPW/Y6?=6XLJ9 M>EK=G9P/"F&"D48C%RU&/$:*G /?2A(1-=&P8T#@T64*^M>)*>N-MH:$(!TWFK/JR&;I-'AR9$,H+!TQ$4F60(VYILCBZ)!CVD8I M/ RD1\]"C45+'?@LEH3%4K<@VV,!>@IPPII MR0D5(B8LU,JZY(NBG*IH3.>LNQJUK7IC)*5S((US^:C.&4^IXM9P&P7V.%GF M:$AQHSE._*"&*Y1RY8#Q:",,B$(!#E4CK)#2;) M9 8$30G]8XDHWQ>4>U I\+,K<&7T+T2E)X%QRZDW@2GDK%*($S F%*AT M6":P]U2L5+I2Z0>J=.43+%Z))W%S)80-F8/6.)$0^&X&Z40CPCIF)XX'H62E MQ&] B;$*.3<>?,#(N/.YZ)LJ00QCT5FL?!4[7SHMGL3.@S$V)&.0M]FZUIPA MIR1%(%V6:*^Y,F1EG>!5)EBEQ"],B><)GC^O%EBJN[I,R3$9DN0*] MMI@BRZ)"UDGOM54Q>IX;=QC^D,AZI=%O>ENN#.Q'"'Q-!=V#I(D3K)#@W""N M0)VUA#\C3B9%#F_3G)JRRA>6H%[EH-]-#W=[-L1"&ZJ\\QO3W[122GJ>B$V< MFJ )CFVQ5RI8PSB2 7/$?<<$ ='CFB/A!+F552N84Y M]M79?*7 E3?P."H]";@;YJ)+T2#G8JXBL1RYA+->&Q-%@M45K%+I2J4?J-*5 M/[!X)9X$W*6B1OJDD3W*E9I<3+J\262T9R*8G4 MAC-)')6<6AVU%0$,-[F /-?*A+Z'JDZBZE:GE(_ D$_"Y&:Y&AFO%?(<,Z8\ MDTF;3*-1Y:._-#6=)Z3^!'I:6)@TR,GM)?%US+R/E%HFB MFIM3C\"-CD@:PF@R5A#F5];UJGD0XTNET6]Z6Z[,ZT>(?$T'WZD61FH"3K& M'YA@9"/8VXY1'+UV7%J5BTOP-4I%>4BK MM I)*R1]"TBZ7$!:11 6#YV3 SHM.!'>*B2#B8@;&I$6!B,3,4Y:Z11U/J#+ M4H-1J*ZE4D3,%;CQEJXKC"CPK\*S <\%$:<^*GI4; MOQ \G1Q("ZZ(9I$@88L&FU0AG91#2EI84(YY,&YE7>)5(J]FBU5N?(6D%9(N MKQE:N?&/<*(TE0B@A65".H^,,Q9QXA2R,6+D<@-U[I*CQ@-XLE6A'IP)L 0( M6F00_'M@X>O@W]#\N3Y^J,:P#?KBU_\?O#A^A*E['PW[@V8Z&^GD^O]SO7^O M7SQX<9^9V\SJB:1@\Y.HJ/*1*VPTY\D3E:(,2C.G]C>+>_42BT" MBASG5>\-X\I5.6AV\BR_8[+82Y\8F6F1&G(889 C :@-"PFHM;((U+H)%G8B M!+7FA134;"$&-=O+OP+PMEK=D_Z[6=DM?MPDV'=1B*>>BEGD*?3Y G=* (&1 MM.QQ/[X;__)':/:/6_;L7;-3W*^XZ(^V[1TT.V,P$L=7\*-XY/+M/TZ:87#X MSI@U+5C>*4>I2*,O+M\E:\4F>@D,R_>47A-Z;9/ M5,#<;H;0BL_=4*L76X5KU3]L'O=O+&)^Q*>_7G.*;>IYC;MK=ZE(&$N4$!ML MXB(Q;4A*DACEM4Z"RFMWJ2E##L;DWX5A[RS:WMW]X?%&EN++W)M*X^WH$ RP MOP_WS@_.ZY\^\[WSS[3>_LR_;_X-UWT[;^QNL9W-K=/ONW\>73;>=L#H^_[/ MQZ.=S?K)]\W#H\;FWAG\^Z,!>UICMT[JNY[7=S^VZNU&JD^UU;J\+];I-MR_ M?EZ'9]O9]+SQZ3O,R?8YW.]D!XS)QODVWH%]\_M1*S4V]B6F)CI*D&(<##^6 M/++8PF^"D! %$4ZSE75QV3RJH=IM,D0$L38P$[2G' ?JG+<@35$*HI/DHI*A M5R-#.Y_W!6,D>BD0,9P@'KA'V@J.A'(2;%XIE"T2TJX(45[>_JR5\90)OL^Z M/36Z'1A]^S@.P" [Z,78!KOM?MO3 Y_^96U/S'D1 9:$3(IKL-^MMMZ(P*FW M/M!40;CC:HW^W&T=;9P ] M="_'*#;V(R&$*Z60U4;"]N0S.U"2*/+$N?+*49Q6UOF6)1")H(P5B!#8D!,!1V\,>'C6EF)P,>*YBD @5&-.(N6F2E3(B$)"4))KLF8)=>J_@S O\6[-$[-$)Y MV!._+%VW8%H(SQ()1'$1F(Y@, 2B"<&>Z!MB]96N/ZFN3Q=%:1ZCC58A(4#- MN98:@>['G,2OO;(2\)D^CJZ_P-U]#F['*BPZ @2?"!B*CA('0.!2<,;Y!)*E MM0XA>E(!PK,#0N.6D-;>>8!KMV!^\EGZ9]+8_+M5S_1$Z3T,2# 4F2 M]IS""U8DN*GTNI*A5R-#X'/&F)5U-9_? M^G\RNW3H]CIQ_?>CH$:YSL.Q*X MP=@CF'$)& <_'!$4Z6"IUES __0+2(>XR(6IV4YG:%LU.[7>^>9WO=([Z:?-EGY@^XNAM^*400L&@'-M.<1+M7&)BO(9WVZ$]X[7L[ M?_?WG$*[":;@[I;8V]T@>^TZJY^WCNIYC$>?Q66SL0Y/U8!Q-FCC1_W\QTGC MTQ?XWA;<_^_FWKD_W_FG?I*?L['9FCE-WS=6:<]$0HHEA7@ $] *(I!,R45K MK8E$9FH\L XK5JVG!ESZD(8AKPUFKWO$"F8?"V8;,+3=D]CZ&>LPSL-74CO[ M5 @[T]D:.^D=TRCP?++#C4=.J82$QEHGE1-!.65\5H9K\^(K(>]&"MLG0=;IW,4<%*&>Z\0)90@[EQFV\8"D02K M'#QS(8#5JE8EY971^M30*BJCM3):GP]:/W:'5<1U'F2=/JC?5S%J9P1#G.9& M85)[9)UE*&AF. Z6P++F1F&\ZF/PU&FE%R>IE>E:F:[/@Z\;6?P*D(4+*I"= M!V2_SC1*)MH(%Q$5@2,>@D=.:X.D5MYYZ0PW&$RI528715?X1%0O^>\LPT=6.R*61>HYF* M"\C2VHQNL-GL^U:W/^PM3\+5V4CUVO63[[N?Q=[YM]/&^6>\L_NEV3@/S9W- M [%3)%,U#N']T_KYQZ.KR8#O6Z B1SGQL+'Y633@NQMTF^]L_N#U?[;.]^A' M>'_KO/Y/(]7S/7:W]U,@(6#L$(X8-,AKBHRW!F'&O%:<".Y-":8@BC%L9"@, MP1I-E7(L!*Y%T"9: ->$HTXX.'HY0^L_W2E=;N XFM:7 MT6+^K#E/<.NK7WMO-CM=8HA-*V:F 0='VS^&LU M)_'9T :[H3_HP4L_<]5]_HI1NE^MFW/^:JT\JEZ_=FQA2X'I*1(!!]VU\LDR M\]*U@ZD=][H_FR'VBSS#WH5 ^/)SKMOK=4_@A7YM>%S+$U!KV]-F>]B&"YL= MWSPNTQ:'<*=NJOWO.8PMR[B K3<$#<96Q,(0H5+(Y:X)X%N0D;$%V]&TL;7= M^#B'M?4?6.Z=5#[S6+;KY?C?CY_L@SV&=P9G%^:5?',8OR%V=K\!SN_A.CQ7 MX_.^)]X*RG/+>9=KDK1 N6H$14ZMX8DRZ;+!A/':58.I!DK:*@2W/W1'T0]* ML?'==KLY*$0.Y 8\JWZ<5V(\X*T0-F#C"#="&*:9-; U",(ZL,1E$+ZFGR M4N1^C$K<(C!KM8U6J]8=#@!3.]EZ'@%+O]8]R71Q&=\*P+L>R%P$$8NU,(P% M,EXJ0[C.4!YO-:/]@-,UE9.3C[O]8LG?E?1;/^,H)WGD3DY=.,IHQI-+K.MW M6\/!S9=,;82^V%F>*?>S3'L-,B!L/] 123DG6V=V+/^RK]G MG@GV)G1I#N_P^+^P ZXS*&ZQX7YIDUVRX0A3CC"!J0N,)VPSUP]VW@C&1" I M/9\-=ZNU6";BS/MA.H12IF0T'0+EA#V"K%N#=C*]@V]1*LT:" M?A4\BW\..['&\)2MTXNU$[ RX*;3VN=LRW9\_)7BK=5VIZPEP/9A+YM+\P"[ MC@[^QY/F5'$GF-$&.YU$Y"[@J.+(7>,S[MJ<"#\V"?ZR9P5?44X8[L#S90N@ MVQ_TWS"8[\&]MRE\!]G9/2#U@WW)@_<.R9-@BV!XA@%35*(Z\L'JP5^M 4.Q&I"I4#9ZD9<&8(TUP8E MPIF5T438)%;6\9J\LEG?N'MG9 DQQ4+Y4S'S $HQ%D5(%CR+_K!5^ @W[^#C M2J=!/JPO-O%^\[36+C).1^5.,]BUMB@.V"7P12_X<:^?&E #,**+2JZ+:6KV M^\-BEF%26W$PR-X?_#KRW)KEMF /X!X'>3.8>&FE)S M1O$$'[N][=&3[Z3_E,\]ON0-Z_BT1;YUDBURZKF/0J+$+5CD01!D:9#(Z4QF MJ3!3VN5\N%LL\IK-48:S6A>4;@""_L>,?7!5YN#GT,="[D:OV)^VV2HLEE^$ M%VXV3BY,BT,;:H.3[B_&D+]G29S*BRC$K)#N3,9?2G0EM:74GM8_[T<2A#>: M@:W!/.(Z2? CA442UH)Y:0/ 3=Z9KJ9P3MS(KT.7)WC0!, \RZ@YWG9&DO1_ M_I>F1/W1GV86/V[%< ;# !C/X().R/%:81$KV[#>3\5WONE>VU[.08*SD)_ MD('AN@GM'@]&ID!^][@'8ZWU\N9S)QE[FV'@V-9$6JV89(03 0L+K[EJT1]]T<_K M)_N@:52"481,R(RV8$,B;168EAIS &8OM4I@4%Z_Z&"592NR<.9J_]E^O_-E MWCV!)!,8I5)QZ3EQW. 0N=1$*AJI4+K:$QYQ_3'L"4$!W$;)D9843#-8#V2- M34@;0[U)VGD3L]*3:]?_\?:$2(P72DE-D^#4:N>"34'S&)CE3/$*'AY=/$CV M-X56$;9@9)F"/2')B)R5!!F9HM N,)GHC? P]Y[ G2;PW!R;G*T7DB/,*O#: MF"'&6GD]HVVUZ M=])V-?4 $)S VR&4&2VXS.D1'BTXQ1B @?36HPTIQ1QY[FT7D6=RCC/#<9$CB\,BUFO'>>TZ4G4(4).#0B$>QR)&,_[&5J:?S3>?.2>=-XBY;.'):P3Z MRYC:JTJ3ND&(67UCWQJN6! *>4"TLN3<:D:0RU3..,)&4Y@\F@/$=L%MKY,\+O M@U\&*M=J7X]!SE-.JV^=S2K?I6_,(CZP&0QRD++9S4L1;:]3Q$-=! 6*%Q%/ MN)$]C?W5C F].,G-S/@QS=KX6XZ%4OS'UOOMW[8WQ[5N7SL]D R_AH] M<*XH_#!YW)+8[?/H82_P![]E_#G?PK")QF!,,)XB[*7-+E= UH,'%JFD1F-' MK \Y2BNN.>(#RP4>(.,8$<_!M(L.C#S#0$BQYB)&S$!N5]8%7H5-)_]WK926.'(C M@HZPK]TMCNR6!/NVI[1CMWL+$KY=:9E"L\8F/"F@F?;,!L$0)M*#8^@L K> M(N:<#XH*EV-CWA'+ %H*B53FWC44$*Q"0 M<)XYR:QGV#P4=,96WH?I+6^W.P"CK!$'M?^ F]@#C[]6P,&%$?A J"("FX@Y M(T9(CF'O=Y9$&R3W(L"SXLI,6PJ)O 1L8*9)(K$P7")CI0,S+7)D C'(TL@] ME<'RQ$$BKPN2CH%MK38I1!E[-=?G:13IUYT!>%)CC"NMN.,R+;9(TVSFBJ]. M*)R%0>VD.VR%<8)FX0T=][JHP*':G00\W_.%[K\-0/880*Y'6<,[:7,\.94$ M9PG>W72AC8W!;G"_74X N M%4&-9I&E6P0VLO5Q]U#&_&6XR] ]Y674/@.R%>P+.3?U:^PTN[U:HSN ;\P% M9#.L6J^Z!KJ8BYU.;6-X &,JEY/P0J+QY>!9?QA#^8FY<[>_ERS\\K!^.GOG:U&07YVZ92'8 M/@6W6@5-P.\Q*%*>A4 Q9&&ND=$N2*S NQ8DYV70:S;O?]5NA,G-$4R63 90EY;HD4VV6&<9$F!&(YXD2 5T8\!J'FSF"@I3#RW^SOO]'?2ZJ& M(3P!V)@;4[ONUQS,;!9T"1N^$&=B&"L9%T8L#]-/-_OQ\1.6)XR=6% IY$A! MOQQ=09U&"B]_W% >5%H8_/ M=6QPTQ< PM\ZHV.1 'SP)^8[LY;&]T0O'1T4,5M7G@4[QAK/XFZI_W/6>1 M!640U8$B3I-"CFJ!%+$R4THIG5L^JS5V"^'"":#@_+(A+"-9ZG"TB2N27!3" MJN2DHTX17E;?%K*!'BPD?XU4Y"-H2)8"6'CPUJ9%X0W+P=Y)?6.?2< @[21* M2@K$2=!(>\M1")(&&S6WW,">3>F:NJ4$9OJPNQ:T046]5.]B <:>*1MM^;_!OAAB O>A9#\*L>][39?WW-CJ MGOQ>1M]_:S9_GRM8_F12EO%E)VUE8Q%V8# :N_^3B[[Z!0C]8WN][)2_82'S MYX _/%H&ZR 1M@GG8&4^4Q8**1.2![,D!?^0M\'.3C*7AB+$JVS%%LL5H M*4INK9&TC0S(6KDV,T)W(6:%+=4?^L/R5CG8,A%@,+KZ\,U@!Y99%.,!',X6 MK8&@^YAY.$MS[=:QC(7CFM&46'O1"G'R?7.2&SWI+GP3W+;;W4X1(WW#6O!# M-$[V,]*FF#R2(BC^IAX3]&UQO:WEFM M;'Y-4PG1E?28\O3J*SU_J/C_L% D>,.>M9BP2)K/S$,-JYJ7()RJA M5G!0C#>\4,2F/(!NF!S0 !XW>[7,0MO/4:N6"_YW).V*$^X "=E,E MM+&:26ZR%#3FO$2Y>=E[TU.CT=2*WQY^1&+Y]BK) M:%&^@ORL 2L[06-)6;1*IN5>#2 (GM PY=!,#O'(E8D5Y6:^IZK06;1?D-CM M#>#6_3K&TA#QI4C5^_H[\[&:YA] MCVRG*@$W'=/BHOPR@C=^#SM(/2N'ZKLCQ_L#K-<%"X!!,#14@2[U]^I)FO.! M5),_/YN_=@8&#_,&*.G/I\6@38SKN7)=IX6A5T&0#],UBH=[\-A?*-(0\ VL MT+F5F\X(FH_]8#R$NDYA*:O*1$L;\8*PU%;&Y&C0;XSE/@SR)Y,CPU^0=V*[ M#U-P!+8=T/C*#@F&").WDR;#OF%PF>98*A3LAD[1@ MK$V3N:UM$#X7W;U=GF<.IAOX%TP_$1K; RGF2&&Y-Y+ZG#.LE"CX.<+J]O>ZS[8;=P&3<^,\06: AS"Z8(2RS) MO+8)A=\3##:*]>6NPC=->N%IEG.7,# [,\&]E\X)3D''E>7:F0Q=;U$VR(V% MI$UZ.4\.DN[&;N9AAI-,$ILY2T1N"U(DA2)>2V]HZBT8J+ #\^(<25B_0L>/ MZ]+3%]DI)']>G4(N[/RQV"DDIUYYH[U(I4AX(;4O0!(5LYSY5,GK#OL^6X>D ML_ JO^WP:LM3[Q4OOQ]O'=^0IUXZO-I50-$Z+ V$;&K]XA]6!ECYE0*L,DUT MD3 8MU1"%E+9-)$Y6%])9FWA>!M@O:FL[&P@Q_*9*ZR6E@ ,I$04+B=%:L#8 M%8!DN@"R7@"&-5=WK?+MS,=7UYY@@/6&+*\-L%Y+[-Z* %$R245BB$I80005 M*0$R!V*'<<6<42UU%O((TR)=$>6ZU0 K?^@ Z_7VR#; >@WAZX8:$%@9'+6: MRCQ4%Y1$4IK#/Z;P', JQ5+%/%]?T?#[^@%6?E'F:AUSY1>GE=YO&-8Q9@7\ M3W%M1.*]DI2EU !,9EP)PUOYO#7Y_'RR#?+I@*%A9X64%I@>EWFB&0/SUULC M+-4:.-"KUR);SU;T.7DZ@5>^.O#*V\#K+09>^3,)O/+;"[Q>Q5/P)&SW]_4! M_2"AF\Y$JHY96>?FL":*%\R%TATBIX4$\F%8[EUF<\GUZA+8RY#^]P#$^&0' M;OOO7C@;\*(@NXOWV/F^FWK*)> UF%#6$I'A.2S-,5%5JBQ)/>9T+?J.DES3 MG#G."IJ!99MAA?S,XX)D/DL-S#:@J3I"V1M.@)',AY*;EI1:+'/<5+U*O+!\JQ0U &B:25RD4B=/M/NAUU*?2JI!WD1Z&I*'-#:G&&&JTT%I\;G7%[K@.HTMMQ,T*H# MQ.5T<\0U#COD561(IY+!UN==;PUM&WY&";X:S>U?;R+C@@MJ$:0GX*0U"9Z:S J5.I*)( M*Z!BK9#=M9"9GV!_,Z9AWT@DX0G/B."I)\H:!N9XEHB4)3X-\>8D/T_,K@HT M*7>9+#*C$JE$YKEBQJ>%2ZAVFFLG6AFX-QG :@HL =/<8W]DBCW0M9:DR%E! MK"TL$$W/.EZ=C9![$MIRF\BI!U4'$J5#%XT@(NAJAA\1;0;]4%=XR>;% M K:U]&MMW9ER1+ C6'G*D!TLW" (L^-3+(\T1PD7?&[D*PZ=+C=;^6JEJL] M;)TJJ!1*>4;RE,$&YBC6.V>&Y(ES--6P1!2S2<\IY!/J&824DIE,-]B76CNL9&Y9U HS^:^J/8V&:: M$-G!BKSS*9[CN<(92]D^O@ZF+;9H%>4ZA/-P3LQ-1YK;2SV/,=C,4D MHZ3@N2/"YBS-?*Y=BF4JS\_]FT]6>$FG=+9##9&=D%%148NP'[R@PSD+%1X6 MPJR_C =[#B&ALV5TPV('*1=<8FT%B@>%G_>B>WR+%2A0[MJ4MX== M42SN<%LI;]-6;&=BRZ+EIB?8*Q)4?'9PQ@_ /HQ=_9HQU]^N5P__"#U;_3W2 M-,:!W2H/,A6EX=$KVZ*)55.U,U&F,D'H[OQ69^GW[%S#:LG^5,EA(@!041AF=8LH&3 MG)LT%4D!'Z9X4F9EVUQ_3EI*%"J4TI#8C3YT["B)TG>FS,!V] @$9F>H4!LW M\;C)B\TKBP4]BG R13C"#,V!RN262*"1) ?FP3EL?1([#:WHJ8SI '28$E' M35_ (U_[1O^IAAB\X/S"4W,"!,A1L!H8$R1E#GN@9=A[RDN2%ZXPSC#E5/'J M]0J0F&LS.R<3TRTONJ>C_R=DWTUWJ<;U-=:LMGH6]].S&\BT=.?6Z,X5M9DF M)LN495PQV&I\JL%N4;!K@.8ZEE-V&6UNV##P0@:=:,>#H1TMVR\MRE].N_<8 MH+QGN0>D-T09P8A024$ \W-B"@O+(1.7&?/JM0<5/E^_F_Z)T9RJ1NJ+!/F> M):;%_YM*R/=C8(F)-(71.B6.2TE -A08P#PE*C9V;+G'.'J!W-Y:INL MX!G+CPU!U*J'^7E=*8?!2_;@,MM:O2M%=QO_N['+A,\RIW+BJ,:XD')$VB(G MC,H\S^'3'.N$%,OEF:9&[]%P@$5HZE]OR:N"/TP6)+*.;)Y]^F/5UUH*?)<4 M.)PE"5GS)O;'C4?EIH=AIG7WW8^8H3/$2/5X6.I)3) ?]"\6AJ634?-5$3LS M!V#CR,["X:7?47Q:4;A#4A22"M>,F>G->5YC/*$S^M*"#%.<'5G M+FQD9>_\:"'LL ,\?F;VG9WTX@F-*:@TR;EV/C9;GL.8PRKJ$X_1/[=FNXNG M [&/>BPZ,(MWH\,2C^Q5,=IJFNIYF3]O=X/JIJC'YQV[6PN^]J/QRL.2%]UJ M+7"=&'0>A3<=8OY@M=SU#(P'"UV:RN%L"E3,>&Y<$'3F7D*\W\6 M]BLDR'M#>':(DBAT3VXO*%3M M8+/3WX]< EHOT)(TL*V].PT-S>]Y\53Q69$A7^(ZU!&@6 !B&"C;V@6;(!KG MT8H;]T[JC+TR5'X(+B8LHC# VG:A)^"T:$-%"ZO'1XK5C'0NY'8L)7:P]-$F7?5]:XRLD004#/_:18576G<$CZRM@.GY<=C'Q^7(5[H51EV.9@PB MU+#HQ_9Q#:">?5ZIJY\@M5CO?"K1YFV2R/V*/=3%*_ 90")B@8WSW[ JT;!V MA2I-:RN+;FAX@?DS[[/WQQ-ZV-0#"-_"J9KI49J+"1/Z =@ F*]L9A5/K7D MD3[B>6/$B4&OM.&TQ;]5+Z21@GFI*@/FY>X"[!\?85Z-=HH@_+,8X(^;_#_'?/N MS@;MGN[M6LYH7B229#GL?D+2@BC&4Y)[5^2@_AFS_M5K2=?%^:6 ^F<8'#4R M_%"]R:5-C#FSX&)[L7G(?Q!JF,-WT9#%>CCE8A/+MC+O;57FE<^L,N]%E787 MJJLXEG-=%#F'"_%TN*0)<$NJ1>%?0^GZDC\GPF^IHY'ZK?_C=EJ.C MGCKYK>R'J0A?^OU0#?< +BKD1*@(/!?V\>HIX8'QXQF*K-.().,A_+^MGUQ] MO!X^^M?8+G\6X*@X\V.ZSL[\[+S;,K:>9^FU;GO^9T7V9 :;K .\/I7!WN', M7OJVH!>H8__O*_ZJOJ[6$.3Z5[_R7T$;AF=]I8I@_98<_>RP^7 ?!K46]2ZJ MW/TC(XWQ/C0JIB"T. _%95XJTJD'>JU\Y6N=:?V=^:;+RT?Q/5<)QZ4FY=R5 M?E!:NGK&ELZ,+Q# 5I0MVH;'P^.X"W'G>#6Z.!H?W]:.C=C M4;?RTF>JW[.<.7[IF7N9\]-*UMU+UIT"N5;F^]YP,.E;4KV\,]L%WMO6E2[>^?$VW=O[L;6_"V/[X6'[;^;8/SQ+?=MX= MP'-/NU^^?:^_ \^:?$L^9]L[G]G7TP_L&]RC>_A9;&V:XV]__-G;.GP'[[7? MZW[9@G?L_OQV^-%W2_KSKYVWX^XG>KR;*$.]*QQ1W*1$I-X0G?"46%\(+50N MI5& N&!U@*PM>?U7&UJWHQR "9TK*LEY>]]%2+VX?[;PUL+;M:JEM/#VX/!V M.H4W8YA-;>J(+W)+!%4I*91CA,/FQ P6P#?^U>MTC18MN+7@]C+!S11IXEE! MZ-SQS(K^!GE"5MP>QAP8U-P2W/M"B53 E0;N!M3.2ED+HDT ML'J)H5KG>JK+;P]#+SQ*;QIDSCJJ2*93[#+D=!$>FK@'Y!M M"XMI\*3M4^=N]^R?].'_GI%_\B\W&OW6^7Q6=>LI=R!*R+'G=*\A4>>&>)J=?GZ#JI68>])86=.*U+8F4LA-R[SAB=$%45! MA"H8T9DUQ"2P4BK)M%,9*&R2/69M;3.:;N8QN,F_2WZ&^DP#;" MN3:? BMSMZ"SL[\!=;E:>%L1ESN$LQ<2E MN2 ZR3P0(>:<"Q'-)+^)H[Y5VT>LMK?G+FAU\Q9T<^8:*#2G*G>2"(MU(C"C M2N?>D)2"U2(SJA7WKU[GQ6-6S#:7X")5!17IF"H_IZH?=%7'3I4D4I63FK9;4[-X\;ZQ^7Q:/9:;:'_*M#_J>'F*&QF9&%2 M9M M1@3W"9&.*I(H83)&"^J9P!)7?*TH^$U3S6Y151XX"-0"90N43^5T50N4UP?* MF<^)29U39@5Q.O' D:4D.C4)&+'P>P8 R:4(_N!\V>W4PF0+DRU,/O)S6BU, M7A\F9VZ^PJM$,Z%(EF%N4*HHGJDWA$N?,)\SK9D%/ID7:Y0O^Q-:H&R!L@7* M1W[BJP7*ZP/ES.>:)2*CAE%2 "(2@9F4RN6.>);F)E,F3T6"?#*5Z;.%R5OP MV?XKU,*][2J]#U_@^'W5T*OC?AYA@X2ZUUU<^MCG"DL;C\J?Y_2[JJL?TTXH MP![;.3RM LGW7&0M.:,\W;,KYDP3>?M5?)-UGI[]\2,K.7PW@V7K.;W>75]B M,>=+%HN]6>7>1UC&<2< >#<"]]LYX+ZW@L:/<%H^P6YV\:3<5&B>9550UE92 MO?*#T-&];CY\:R5'GKOGZLKO_VS<4ZFD(O.% M=Z(0@G*A%<],JKW+O$RMK#N0BC,ZD"[G M9V\MMH)J-/ZNW/JHG\1CRN%%I; M/1-'U7OV[>#/[U^__-G;VMQ(OVU^./F&CJ:=#;&]N5]^W8%QP!BW=[KIHJ.J M>_#/8?<0__:9=C=[W[?)5<[1)%39J3 M5!:*""XL484N"#69U8SG3&*)C9S=V)M_5:UXJH766G1[KNC&N!2)T\RQ0@N) MB56>%<(KS.?@/G4!W6B-;O2BK(Y3-QQ8-=IO,>]^,*^1[)%G.J-<$NE]1H1) M)%%)BHWS"I5QK:4R"1ZUE0E+?F]QK\6]%XY[&?=9FKJ\2'-!I2YL(O/4B1Q; MG"OE+N@K?Z7H8PM^=P-^LQ0.J;5@#&@>XRXG0N:<%#GUA-K"&%@Z^%R^>LW6 M!)+6Q=!;::!7 ]+Q*1%8*D5J1$6$>)$IP3#C^Q/-$%*]BKU\E:KS??D>6H5^985^;1Q!M^DL"R>I%E:$)%I2;1E'K0Y%URE>590=VO\ MHU7E1ZS*]^A,:?7YEO5YYD7Q.>-,TY1(FFDB$NZ(AN4B3N5&I<(E1N28W\U7 ME-5HM?G9:/,]^0=:1;YE16X6Q_&&J5P25F#A*I9@*QZIB2H8U0EC/BOL8]R8 M7T("TDK;_T67I7W(7)QY$(K5N6#Z0GVN%G^N@#]SA6@E4YP[(PB6T2%"%P4I M"ER31*E4^M1P)\'"E[<5C'E$\9965Q_4OF\U^"8:W##M):R7SADQ#)OY63 * M5*$X_,J=<#G8>O;6LTE:+7Z,6GQST[[5U[O2UX;I+IW,A?.8[@7ZFEM+9"8I M<0KZFN8W/IC=ZNKCU=4',=Q;#;Z)!L]L=E.8U+@"ZW1IL-E])HB4 MB20NIP*H=&83YQ_CCOL2XO7G-YG9&8Q5;WJB:%K]8.C,8*^/K6?:DK5MY9S' MZ@ZY21)K"_97 ?MF"5M&M=. Z40GA2,B,9YHFQ>$"Y/DU*1%3MFKUWPMH?FS MK:33%AQK8?-9>Z9:Q+PQ8C:.-QG%>)9;4F@/'%G9A"@MS[@]B?H^>#GPYZ=:D'T:B Z\Q(ZQ5.CA2>%,(H((*%$ITZ2Q%&J M*$^IMNK5ZVR-%\N][.\ 0J^D/O<$I+%H%OC,"-CN94%KEV M"6%22()6"%',2.*=5CE/N#'IK:=,/SP&WV'9VT=2>Y6WM5W55IK:VJMM[=6V5,U]N3B4*PJC=)$I*H0U#"SG MS%''\LSJPJ2^K;UZOH?C\^G6S@>Q_>7S\=9!]Q3OWTVZ>(_3[B^P?<8\?\W/KC MG_G:JU2S0F4V(PE+&1$J=:1(E2!&&2I!MHTU^M5K?N/2#FT=KA;-KKI-+6IL\Y2EPK.K-1IYCFW12K30NOT MR@>'6G2[&W2;I0?DJ?8:5H1PHQP1IF!$:9H3FBHC&(8;>?'J==92MQ;<7CBX M,6-$DFN8$I:(HLBU89:EB18**PTS?L70>UL]^@%PKW'T2J?4.YX3EF64".X(99; M143N*2 3SXA*G2LLUS:QXM5K?EN'A!Y1XGJKKW?F)FKU]9;U=>8?XLYRKZ0E M/L6*J,H9(EW!"><\=X53N:+ZU>OBUM*K6X5]A I[ZYZ/5F%O66%9XUA9 FKI M"I*97!!A,DLD3U-"I;4Y=XP!QKYZG8M67Y^OOMZG,=^J\BVKLJK=@GK>J>E>J.C._+5C8B<7B MPVGN":QZ3@J1*L)TYKRRF3$T>_5:L!N[OMO:I6WMTL), *(U\W+R;>5]EI@;('QMMU( M;76]^\/,1L\ [U^+DC7&R4864*<\2GQ(IG":"*TLD+!3)*/4L5T;J1+QZS<1MA>D?OOY= M6X.T1=KGB;0/?!"J!>&K@?#,748:T>K6MR2&HBKE^65*X#>I%V9_$+*<@C* 8%.:4LX)F0MM, MYB[/O,L3^#=+#8VZ!-]Q=@,5(.%9E@I/F6=*2)$5&<^Y5#K+:5'PW+YZL/*G MX8Z_E6-XG#D?0))8Z*D?%@)7-]1%[?S'V;T5Y5&O6>\[V:I;0,??@?D2ZMY4'W;F96+70L?OQDU,Q[".T3=''5^ MP5MB >&$_MYX<%R \'?V>QC&_'5\[KJU^D+ VR-\O1\PDK7XM<&>@Z\.UYHW M6/&,7^-\&!BO*OOU5)2PE92JUSF:#,V^@FD?=09#_*0<-I[54=Z7/7SG,&/_ M@DL&^,R.C\&Z$+( 21A/EM]Y^R@LQAO,J77#(P73-1O3>F=G?CWBD&&V!S]* MZ^:68[J<@WA'6!1E_CLIAVZM [\J6!@ *3<>]]PA+%U'JU$)*ZJ.X&8_8?\* MBW?F5CK:5_"^"[NI%!SV/J721&6PFZ::6<.*A%E+\X)EOMI-)1.D_F%N-TTO ML9L>#?WX-]P[W\,,#B2]V)[\[OH?GE[^C5Y!Y^_/>U^V?*P@YYN M'9C=@C+KG./$9MC/'%:$%&DJB$R-9$QPEQ8&-LOU97=X!U"GAPL?UQO5P P. M#_$/XX'YWE%C$"18A_*[0Y6/F/$_YQ&PO]TPK,KMBDXR)QX-@0AJ$K7D$X[X M;QSD#FRV>VXXE0OZ\N2"=G<^[!JK,B^E(,X5A@CI*)$NP7]X(8NDD'F1OWJ= MLO5L^83F6N=XOS3[L%ETW'\G@&B +X@VH+0:D [$X R1&>^#T #ZPTU4#R & MF)8;]DJW:JLQ@R&BZB#@=K@@;B$CE*JIO,U_<8J1_'XPLF*35P)*8S*I%?5Y MG@K!E2LT,*0B8UHPJFRB4=J9I 5#LR/^T +EW2I$LKWY?C>UB;$2-"#W2A$! MZD$4SRE)F'>*&EH(#PI!U\]R@%=H&7^IY/\7Y6$CQ_4?@?@-IZ<(QO-2^C?N M]*!&'UW-+7Z]%-K&9UT'%TDYK8JV%K=A+150"N)MP MRUFFI?>BP!/QZRO*%-T9Y/+K0N[TBT'$\8]'E1@/IV(<2EI,1B/@_TH/?KCU MSGL_;S?T@#6/.D:-]IM8BX-Q/]W0E"-XPG@E[XW<>QGL([E7>WM#MP<@W5&' M2*?#O.!3ALXXH.FVXX>#PW#I2M8-VT.O!Z__HWJW,^\7YG=N7QE,>K:C,1$I MP&N8RR-U4D_I_J!G@^T09Z(RIGIN%%\4IAFLA".8QNI!:#RX@8];V]P,V $N M;.?0N3@",RSA!4J%^P/,)KQ)&*\)9_3*_EY'P6J!%@?S+)@JX9$G'1"<#EJD M/]UTX:NW"=U<\M]'-0C!NN#%U3UQ%N%1(I7KKDOG%), M:\#J7"3:: 6+SU5NC199D8JXYBRIUIPE[9K?ZYHK)G-J*>RM*D^(4+#F&C95 M(C K#]8C8P:KS:PO&S/GT[EZ6T6<"W@/L&&#WN7]1PJ/KCUN=^KL\=<&& MD2:+G@H2<(I$#FT[Q]4,GN52KV?X8J=Z?>7UW.H+S_D5>=[*\,!<'& Z,RNI M>52S12#A9<7"E#7^W1_.>@CM.:(!X[Z3 M8!C^IGK'ZF3TZE]S[P2LA2S,X25>_P)M7@4+EP/)E1%0( Y<%T7.I?;"6@V[ M@5.<:E$X5W!D$V=$3B^.A#[$\AWC!C1G]%S';Y3 +"A&5:XS+AC-E-#&:B:Y MR5(8O]Y]ORHI+;#?^82(-STU&FW[2AVWAQ]QJ&\KDS]XC:8?CJI/1^P%>Y"Z M/^'ONRS1&5@P@H@BU\AM"Z(2D1.7YY1["D**1QLD6ZVYCM?=ZDLG#%%2CRL/!% 18FR"2>.J413 MRJV58,V*;#U;/I[8.7+#:,&LK=BWRU%G--$'\$>DHW6T6UD$QN"SB<["L+6B M=Z7V6VUZYB\2;!P\ ML&A;]B:UQ]VI8;_L[XUF,U)[ND#.772S=13P4-B_JL\CM8 G!2=@BY9/27-8 M]^"&:!D< )XIA?"&Y=[!>TBN M\Y6'!AKN)""5YC<[&5IU,N=+>HMC"=SV[S .^$H8;3W8LK\S5.A2WT2._^(D M)]G>>;OK9*:83QU)G4Z(X 90QCE#%!5I!C@CLER"]43I8L(F;F\A' &S/@I! M.Q>*.6#VP18L/WIZ(YZPM2A!S;A)]4D:/N*+VWMM!=VNI<$N96G@*._F^9>S M= [5"8;?:E<(4)J0R;$Z/ J:BY\&U^Y\(&\:^@HQRN#>N^,(UBQN:E'SL=+' MRG2!*52,]X>#R1X,O')-JY,0/;VB9SI1.;,V,9I3)KQ32FIN1AE6/AQW-S_L4D^53;TDN7]T(QJ//H YAS3\9B=10 +SOYE#^A(^M!L[K:,P".^IU+DT.@-" MQY6V"= DI7QJ54ISLYO35U=YV#VV4(Z^M&3]]O?SQ1,G@'-N1_W$(KV]P6@R M=#MP_W_W8 4?5J5X]TVM4E_3K5,#ZK1_V-W\]OW;P8>?6YO?RN[AQ][VYF?6 M/?P'5.R?@^YI-UE4J6\'W_G6Z5MXWM?CK<./AZ ^=.OP_(=I?+W. MP618CFP9H1/)P \%_'B">3(AYZ8?,F/@4?VY2\$<")@@[](NZG"G'_$"P9^)6L)0QWQ=M4I@J.>0@8'V^&SSE2(6$+7JS^3FW?G#@UG+&.A+(T;C&+S\9X>V7?L/S,D:"/ MQ4R&0Y"!.B^M^68=?1(>"M,0GP(_A/&-\.G!967+D>KU!L=(?F%H9K]C8$,K MQ],U&X<24;.,K2OQ(B: "6I<;Y@0O-,9@45@GF79")3-%]MD5^!#@W0\02$ M<+-Z#6<_5N\!^/$FOLECX4'W#MI;F]^37=CW.(==G21IEH-MQ0O,3_C@:]'YB068Y0I(] +^>? M"G]7QZJ,.7P@I)/A&(S&<7!A1DNG5I;P$B ]&#*%BV:.B?FWY:O?3KM>"8 4 M$Q&7=&JLOKM^3/_#.-+1L*RA#FNP]>T(A_.CW!O 8T:@T=9YAQ_"5^MHYWIG MH]]0QYFK&@RHA+:PAWF"0F"(OG$EED?"\R+AES-\4FEHT,*IPOE7KQ.^OMQN96J.73USIR5R MEQSXYVF@*ASU&369T<:G-YU/$ST>'(&9E0M*&(7]9*W3Y.H= E0LQ)!PR>;= M,OO*8NK6I#^K+!E47;N^\^65W2VBD$PGS F1I0(D2O)$FJSPJ;29]":]@>[6 MMM_GQE#A]?X=!_J2=?A]VMW8M=CGGM.$%-H FZ#"$"V+@OA$IKPH"I'EZ:O7 MQ7E'(7]Q=?O:)[+F=>&)[?[4(>!&&\: M?IHDH8?0!ZZQUL;NYJ[)+<^(6F" M)[YX88B2*B$F$TIXH].<@SRP]141GRF[]-,"M+^B1PU^G]OF;R];\_%C\"I+ MT'E?I0D$56 MERIBO:T'-56)CS"P-]$; ZJ]?50=U9LA)DE>GHHDVQN[B5%9GN0)27P&M,<( M!^"9***\ND,#:L.E]?[C/ROU.;$PP?%\W#4?FSJTF/2E:M^19R@\S@1'3HKZ$5]PL9V[&08#GNBM_MG]F=M^HT6D@GK@-)S!T>#:"F.N/HMO/UD'647U$ M&IXT\+[RVZFY)\ DD>H+Z- *)2FB\RQV&[S":S61M#I:#,-$)W[(TESDJFLK M?5N8'8%CJCSUP:LW'%8F<*]4NNR5XY/ ZAZ91;19C12T^:]JG.7C22QX /TU M:/1@ZH#'[GZ:8@LQI2G1)LU):J5+0V5PE!&4HM%)K4LSA M1=';&PPLGJ9?JPIA@<&D^GLHW:.UCB]_AEP$T 7X[6CH,/.@[N4QJM*4YX]' M595>MBXCF#@FU3R&!QI6%]L*@VG>H?&E^K#3-'J UA4J-OP4BON%_.1_JUX8 MV*=]YS"C;UFG.K],^FIB2[CZU_FD(1Z3NNA+LA#?]SM[ )Y#!;)08AO5E8AS M%.3--$(+=7V>H2O[/[#72\C;KC.ZSPB UO'7T42/2EN"5+HJ+C@88=&?>D=? M[_QG<.Q^U,?7FI$>ZV)1 12JNLQ#?=N+'O]F'[XWBB_Q!N;W4)=J83 QD-'I M#?I[(! P()C@& RM7Q15 [Z/&6VH&>,JY/)#E3VL!#D;1"QF41[&W2L$/+JJ MK_9B.8U&?*9.;PA%*58\,<2THIX.W:$J\?9UE#:,)6XBTP?#A.)66)6X6S'E M+TF^WTZ=@[CZ:F[MUZ:S@X[DPW(< OD-(4(Q#WB%L2U@,7"GB%Z@K- $X@I,!3M7'_I*Z:)5+.2'"%!(9[NP*2NP63CQGTKFT5&O-&% ?[5\2B$%%?4F@DX K?NC-#[CUG^ M*/'Q4C]!-8'/HO:/8+G""-4HU$?Q6 +2S>LG3."H+BTV-\2J#DT,-DY?9EH= MIG'R!O>@$+C%!<'LNL#O<,;/X6FS@C1GR-.E,1&Y:RPNI&:;:".D.2-Y."NX M>$'>IEOJ%4\6/H1K?"JASKZMIFC;OXN3\:DQ%R^7')Z^I]L;NWDA"EH(35+N M87G[[)PHYRR"/Q/*B,P346A%!.6IEAH- ME_/J83) MR76^_\%7_C7Y<-+=[)7=G;<_O\%SOR9PW>%;]G7GG_WM/[HGWP[V3K\==OFB M=&\=V(-OF^^/M[^\_]G=@?O_\>T QI3@][:^O!5?3_\\W-[<.OQZ:C'0(KJ MO!8[9J4I8:D&$4]23C0ZJJG-M+AOX/+FY"5K">P!N<\]UU81Z@46+ GFRL\8M*3$5KT"P?1)^BE M:I147%G[$$G^83#'IPP\&BX&K)*?9E_UX9/@O1Z6H^_KG3>S#X\".*+5=#@ MQC,83ET">#M;YWU.:P)%%W/(2T /-=RNNC0X H!1[0W5847W1\Y]K^PA.S'1 MA#FJDY*!*_$T_G!)]Y'/CG[?6E.X0_':AAZ#HR1!(S08WG!\X(S MQI7!C['OL*@2F$7H>ER>Y!"YJ,YN'DV&L$3!S;&(J,N'GZZ"L=?_\"47*4KH MDRU2M'+'NMP.M/R]"T'O<5+3QGZ';G[0VJ8+IF*/G0:G?&Z\Y=^#ZMCP7F@\ M,NP .1[540C;F!UTP\P[J/:KV9D#MGTC<_#;E)'4RJ[ONQ/?7"U];[>^>A@)&RW%X-ZW(_"OC-U2BU/B:L*,9:'^)0APGX5074*]L#*47;9 M9)6Z:@-=[_P1W@U_KUXN3N;(-4:X&'K"8&ITE=?=ZG^)CK88',*/E_K93SW M51SIKIYEC%UYJEK$P+=H\BS@W5J-:H?XLY VW:LC#HO_^BD;SW=+C3P9& M.L$2IUM5@?/H=AEM^^W)N*Y'/0.5OZO];+2#TOV"N72ZM;$K>&:$M"G1-%5$ M&),156A.J+8FS[47WBYQXZ(.'-H%S,!.?"!]X:FN MA_1&J+(81)S $.WHU]_N(;X%WXMX/"5HH=L7(W@TTO==O0UJ^:XQ5M5A[:6B[?! K[5$2<-KG9G.<84W76QG^^0G92F+96XR;E>HQX.C M!WO+B_AVHRWD.;V2K] ;]'EI^"7D_CE/S@5ZL-QMUACGO']2K_VN3H>JW9A3 MX^?2/797O/5SZ\*]ZA6?31]M[E.;BTSDB4VPH7:16&U4PO/$%D:X_2KM MLV=(/&_H/98>VM>UX:H>VG\>@&5VLG5J>'=S3VQM?J P'O'UR[=]3+3?.MT_ M^+;3_=G=_)HL]M#N'G:3;P?O.7SW>'MSCVYM?MS_=K"__^WPK>B>=G'LO>[I MV^.M@V^^6]*?TQ[:3&9%KEE!!!<)6'_:$96ZA$B;TUSKW#&CT9VZEJ?\IDVT M5\/:M=I@7Q-)%S>B%HN>*18Q:I-4I9EQ%+"H\%J!?$NI-.6*.1F= M#__WI.C=3JB8:4XK($=3-#'A2_U>\,L8'-FP;.&YMN< MFF<#Z590:Y0V.96YT#X%1/!9IKQBN2B,LBV]?"20?M*@ESKU*@,22=),,R)8 MFA!M)24\Y4SK3!;<%;=%+V]1:^Z:EB[L )>FI2UFMIAY%TN!'@YDS&BR2Y,[=% M@Q\!9@;Z_*\0HFPF%YR?0G?^=*H?_8!K.+#E_]%AR);;* M6JD-*"0HXA]O:?=+]Z1[^H%_/?@LN@?F=&NS2[_M?*!;!_\^Z&Y^%TNY$J>@ ML*=="O?_^?7T/5QORZV=/5#V+NV>?NR!LB?=/[K'VSO[?FOS/=O^L"MEGBM* M#7$TY41H[HD$^2&\2)*D $%*N5W,.S;.6,.$38'P" &,-9>T4#R3EGJ6JG0Q MMP*GO1/FO=-U"F>]RG"[=J;^RLS BX>U<,A 42>Y4$P[V%"$@&E(O!$);BVY M3?R=Y\!/Q;$Q*S$9_G&EQ#^$:&)*/'7:*IH2ZS(>4^*!7WN2*T9E"JM-E5\^ MUY#QU.=:I+"_:,^E+0236-M<&)X)^G33?AHYA/NE&V(-VU ^.59E"6TNCB8Q M(1^OBGHQ=F:_7_YW4I]PQF2YR2B>/#Z,0M>\\?2:*EM\H&' /^)AZ"&PLMGO MZYWMV6?5DX?.XSED+'DQ.3R*&7I53GTH#H.'HL/A[)!5/XD)@-B*+A1_[L=2 M&2&E8?+#9"W57LBF/O?\A_#XW7<"V4IR+ MOW!M.BR4CF'L]\[[J"<( O^=#- /&II%AJ1F%0M212V(I^M+G%O>)"3!5%96W&3F>!2A4%(6TWCTMWG$8;S]'K,YL!#]G;!Z7LP4*4J,!8O696!0@T<3P95N72JMXB0%.FC>,"94&24IV,0>QQ MHZJ%#_(:6/MIKXS0BQ![P\$:NM "]=\U08W-HT?[P"D)EM8"4P^>6[5!-&HX M/$$^-#T#M'BG9DV0ZEXSJK6R5L[JFFMK5RHGHB7GGO$D3Y01E@EMG*(\RSW5 M3*1GYC==I9S(&WC1C;[%_[R=O>X*1\RC*0)RW]9NZ(:^L:NM9[ >V!61"2($ M=T0YJHE,>9I[8P67]-7K/%M1F7A:LQU%XBKK+PVGN6>.!3-9J,)KRG))DZQP M26;4&<[T=OUO>?U/MC[LJC1W@O.,I+*@1.0J(862!=&Y$#GCCB_4ZR\[I MBKE8;_J,@T&Q(RR>5UP$(5U5?9QVJ1\@++H34M$9+"+61-AP '[DFK"W=/T2 ME-861_,^+\R*;E9B;%0FFRNM>P1+L5:1BG(4IC(4:XP]ETR\ QDD3,[[=U'RF\?_W(M0:?7A*$I*)&<5SS)V7'\R.]:B7>3'JM,Z:X M5U(4FDHI,Y$F O#-(JK>M)=4M8S;N 9_P1*\KU?@!6/9WL^MO5W*+ _QA,(G MD@B&5?9SY<'HH%[F.3?"%]B.9CG8=^VMK."90@^^<"810EHM>%IHGC)1>,=3 M<8.MK%WKL];ZI'N\FUJ1\LP41";PCW#.$@7Z1C+-A4VD34'W@+><4U=O977A M,]CM7*'T6T#_9[&-U(4&8M'A>0@-I0#\XE&6Q8H#Z+W (D![535UV-3!9IW= MI&X9&!B#Q[/"597ZNB,A=A%$*Q@8@S(F% 8-=1U*#WN;PTU)N_$QUC$(]E!5 M5Z&F"=5HPJX2F4DUKEA_OO&A#Q5Z5[W2]%5"40 LFEK-1V,,U>8TC',UJ.HD M- Y$US=9#^'*JLJ KRJI-G-%/?ZAVN_J?:S:L/[8V/B[X228NLD7-[B;'-R^ MM,8L5HAXR4PK1@KW4/!J%A*7J.EL;%#?1H."ID>PBIL%JQ_#2"C,5;RHC)4G M9HWHFWQJK5ET>Z9L%BP@U)>F=L$SQOL#&R6F\AS583O8;,RD5[D)5O"E2[WE M2N]&[0"K'MAH&-%3YGOL*MIS/]1,<56L=GA2E1>9>;L:A;D.)G8/?P@-4NL6 M%JB)?H(.D@:D5,7 L;16\"('SPX6%%E51R6&^.8;3%Q\1VQ%?,8-KS!]6 ;F ML)'(@-/4N--B:91&@]?Y"]$/=-;CKE<;9;FBR:63CEYD32WVO&IJ72ZC954M MK@NR)AXZ8VSU\FTW.AU\1",:]0M[:'3RM3Y#CY=0];+F$9$+-&.6W24^-H\P!PE@.+9>"BC V& MY5[9#^?AF@]!A]N4;X9[J9KZ38NYA>*N""3 - @0F(T2DNX4]59)K1O06=A M->#:(3B54+SYE'\VQCLGKCC09IAL6;< 8=)ZDB]O(5W1JUAHF>A"<:^=$]2F M*I/249V8W!;PRTTZU,].(.CQK!3D-%CR/7EB;R M%F)D[7(O+;?8VMOUBC.NN"".,DT$-MV4A34$JSLHHWF:YCEP^(R?V[-C/B16 MEPV]$$?XG>.(88*)-,DD=TPXFFGJ#',L1:;./!7=NNVX8\!<:.X_FI-GVI[K+T=9!]_1;N;WY MS^'7G;W3KP&IE42DA252 M2$EL8CQP.)_S=.DPC\]20X6TW"4&05DYI5VAJ-8J4\ZZQ<,\<9HO/%9V.VZX MU0ZXBT;\A(S5.G32"[.*-;;1/P"C,9BQBBT*T3,PF(P:C3'"M1VU-W01GFI# M+Y0RGW7=C)=A,"0 9#!U0^+V>6K)$F]M8A43,+<4$#UGIA!2PSY:P%3/97,T M]DR8 O.;G0R/!T,+IN9E-'4'!K;MWU2QP!>FK=V=+M^EEMM,6Z!$DF? D*0& M2RNGA&6%S*DH."_DJ]>8ZXP]MQD<'5K,GZZ+^AR/R9. )GO&K&V#'XQDK&E)'HVSQ'DWO\F!%V][DMW0;BJ%9=*D[$\I=*DF3 T548F5J8V28T5K$@KLB#FR,(U M"?Z\;+^-K_AHZ/V]BS?<;U?K!/#?P.1FJ0-R[P&HTD02CU$PV"M\X=2KU_PV M+;EKT<-VQ6\%T+[2[9WWR=;I!]H]>"^Z'W8SGQ0J2Q/"_2HH UMLKEPDI?L *("A!!G_@\ESZ( ZT!@+;B M<(L \#79!2T7J0:--QG0%<%%2@KJ-#90%1D# ]=I]NIULE[)!)Y^;5ZW0]/WO]K\@1;I"%>KXY>0?^B)"Z_->,2D6._*AZ!-V_-P)H0^YD MKIE1A-(D)T+"ME$X9DBFK+>II<;*)>_"T[#9(,3#W"#LI\ M(\VQ(O6A,?G+:@4DUXL\NU8K(+XNBSOHKI.N2YG=02L@R?G=#/9R[9#:5D"/ MO>O-G WN7W?S[%60O)--A 0F2I MH%DB>2)-5OA4VDQZD]Y"0>MY@ZBFMB>QK_CC*=%Z358;2[1B>=:=/WO;7]Z? M@)5SO+WY$:[_6&[M?!!?@>=^/<08^&?V[>!=;[%$Z[>#]ZQ["/<^@.^>;HBM M/X %__&>;6WN'W23;^6W/]X=;.W\<]C]\H_O?FJ4M2ZD8]I123)K4^R:HDAA M'2:6*BW0O3B@HX+;S"?6IZH0B M:ZD+5CC!LENH0MT"W6T"W:P6-4\4 %KA"68%$6&SE$BN/5'.%"+G7&=X7AF MCB?+&4&/%.A>0K^6Q0C?.B;%JJN#E7-3G8R M\8ZQQ!*G,T9$8AU119H0"7M,E@O/J0-.EJ1K,K\Q5*U&A(=L&=)J\<.SC5:+ MKZO%,\+AA2BLRC/B=980D2E+BA1LK"2Q&?PE89E6H,7%&BUNJ_G%@W"*)^CK M"CW@KLGFVE9%=S0USP:V'XY\M6!]%;">Z^XF."\4YA,5-$ MPUJY#(\89FN4+6>4W,@Z?-3=W6['0]9"9@N9CY7IMI!Y-9NMWG&Z)X/J4WUH1O+II^\\%PQ M<[JKK,#"2 4!8\T3H9D@*M6.&)D5T@N?NI0]S5RQ=[%>VF'9+P\GAY5?]4B= MQ')BJTZ^AY.N+RY+3')ZG2PQR=:3XGKI7.6ECM!=D-%[W\L[$,[L&9$%EHKGCF0?P/&PYJDRR?X;CD8WT;B+X_:21MR?^Q M3EQ6S"H MG6/7^^&ZX3!3"U-7@:EF)-X5F:8IL\0JK"%4*$>TS@215IM-!"T)7 :%F;*IPABF;.:!)#%.T"T6D M5I[XHI"I5EIF3+]Z+==HD=P25VH9T:4Q2+2,Z*E@$![S;E'H"BBT]::!0DIE M&4ML2JBC%J#(<:($@%)"60Y;L;5> 0IE:TFZ?.2^94)WC$)IRX2>" J]&TQ: MM]&50*CI-L(H'"Q;0:S6F@BGP123S!.:&.-SFRF1BU>OQ5I.EPO_M%3H3E,J M]]W0A38Y+2%Z E"T@2L5\*C\T9*B*^%1TS^DM'"I*')"O6% BI0A>)Z66*%" M9<0FKL":>9+HE!6D2#- K:00)O11*=9@'6\_ZG97.7G/G%C%>3_K7U2:3GF( M76_MM#?3"V-@OSPA'/OU7"VI7 +7MIE_*.@"NPN8D-903 M01TCV@A-,B>XA&7-O4DPDX"*Y0C=KRW[:@_8/:&LK_:T2'O [@G!=--S1SDS MQFA&>&$L 9/9$"TS3K@RB5*.^3S)G]$!NTN<%CFW*_?-SH] MTZ1CRZ;LSELVO1D<'I:A2_MHHV_?#*JNQZ9THTV@:KT!]MQZ) =A1'?:2FWC MM+OS#ZC95]H]?9]V-S^(K>0;/&/O)ZKGU]-_'W8/# -U[BT>A.EN=G]N??EP MO'7PX;1[\/T8OL._';ZEVYOO>E^3=P?=/[Z>;)U^!G7^!XLF\UW%G*>)2@F' MZ2-"4XKE2!@I+&AE;C.FC%ULX:1\HFW.TM19)4 )2R/E4PI11U56;%X<*:Q M"J$2]]PZ7-C9Z8FW"%[=4^K"*;SKDNRYW(I*;$P3(1 MD20%#]M]%PJP1+OO]CT/L1N^OTW)[J M=8Z& ]C-<#\:K75,3Y6'44&P M;>4DUO=WC4&YPX5UVY%F0"=]$)]G@N1T>3 MT-L4FZ&JG]B./';8@:VP[*OA"3;P'HY".U2-W_MQ8C>IC MM^FC(0S-Q&;/@\G8#&*_Y]'$['> :(W=$,<0*\E@[_+&'?;5J-,?=+ ?./;Y M&72TZY7N1YP2'.I@5(;7@_N%)U:5:>-MJU;C\=NPRY[ UT/S'U/-1.@\AEVK MX>(2NVM;V*_AU4IX.@RX:BU4#>;__K]DPO+?1QT/TP "CO->/3X4_9_TQN%0 M7-6L:- ?=:K> 14OQ"=BY^V33N@K<1+:/\)WZEF,[=M#T;+U2Q"!VSY.5Z&- M2-9S//M6O]MO07+*'ZXZ\E81\<87*^Y$9U]1&I@22-&97UDZ=_5 H-K(58_T MJ_'O%?A1.N5'^\/94;,]1S3(WG<2(IZ_J=ZQ.AF]^M?<1!R6?;(P\9>8LVNP MO<=+W]Z/W6$G6>]T51^F#'>2>N0/(1&5EM_/$%9/R*B#G'(R&M7]9S;ZJG=2 M]8M]-P4?V&MM!#^\YN,,@+:G /0$.5"XXV_E&)YO+G (Y-C18@S8'1GAH;)5 MSUR8J7=@PW<8)1_6JF9T6!ORN,1-"NN6 V6)VV*X^,$E+[S*_4C>%>?W]F2Q M;O(76GF.9LL&%\$:C =#-).;;4C60BM!^/58#8'*# ;?<0T;W\3EK'LD.Q5Z MA\+-/KGH&DKRC;IC._P)RQ5@M\ -,XY=O*:7L;CQ^S@HLU M/-L.W#?T_/D%OX KEM#?FQ>'/['??PU]H$?3X9,5PS]4)YT1<*%Q6$%@)B6J M5^DQ2*-/(CT*W2SQN=6CX#MKU2/J/QV7O=[BWT;[2'P6_QJ9SVCQST<]D)C% M/RH8B2F/8+!+'U44;.GO=8_KY0=$_K?\]\$87UC-A@]\J?JL-A0;G^",]]U> MX")QR08PP=4,89/(V)L R=HP% $('ZUWOK@&:U1CH%R!1!\>#89C>,W RL"( MF?1! ,?(4(=U1D"+]J\ENMUD=X MK*-ZQ;#U)[S41K^/+_71X70C\:V1^?]#N^ 'M@C&=RI[\!Q4Z*B);]^$ M27*]D3O&G+%E7 _KB@ 1!P)&@IU$BCTYPB:@-<'&VYTW*4C-HC41%M\O/"9* M1P"E:JD;7X;/YM=L';_80<\@RLPBG(UPA B-BP"098!P,<(!G(&.Z M>/>]Z0N-G=GOP]SNH9+_!H#XW2T-HW,X&+K0@ _>'N\'&@J#^ ZH-3A" ,)X M$>#M[[!80]??@^]7GA&$^/WR:+3PQJ"TV#*M##_BV\/>,N[#;[_C!C(@[1#X8$FKYWLM8Q8#7& MZ4 ?3..KZJC9&-D,!YC7T;SU\ FZ:,)H^/@2; M)X:'XUP&&;&P$X.Z@KQ:YX["K?1PH&!B877\H%<.@FL(O0=QU\4=V_7#?MX< M+2QL]+.XL*FI'@F>LN!+ ,D;57N]/>F#[IFP;RJKCIK>EN T"U(3IAE48G0" M+W]8/107'KJBG0]8(L14]&'TS)(;"PV @4 MA>4+HFSG/R"@H.[;PSTP4TYKAZP9[,%OH/D*Z,L/UPL(4 9?IAF >JD?Y7 R MZOQ2S]NOD<(=5;.WWGG?K[$N^HKWW?3#^/3/_<#? H6(8OX#(!DH%VHFC!Q) MR3B2);2PT #;@Y$,^Y'?H'L4<.9P@)958-@S8CJ,&$<>]+A6+,PN M WR/"AP!\;^3$E"Q$\C1CQ*_6%'N "CPSL?[)9H[ !"#V8V07]D!QEW'ZH2H M,=D/KF,,R58H- @,RH+]B(8H#'-O4B+$]!$-C8H["!I9S4TBW!9%9ZV&:AC7 M: *8-]=JON&-[7S9!X(ZI;BYT@[8#2QP&8,)%AFUT%(S0V94U MS-4RT%CJB@?,GAU&CQ.(HXV@%@VRZ,2&OX/H@ "!N6K0B,)+CN'=1T#J5=.Z M@>T,[!^8T> !5V%7&@TG1W'.*O/]\_JG]3A_$45!-?J#P["ES5ZONG;H]NJO M3H6FV@K6.\\-47;VAR&J,E<); U?.2P0&FFS_=8V0QE5" /WR^T8@ M"Y_1C/7,+428OL656.]LC' 25P31["1^,^"6@1LM@0)\@$^;Q;$JC3(+SXKT M)'#;DYES95YVIOZ(.)" 6-. 6NWT@65$KT%9SX9V4U%LLQTB">[!;SL%GC4#.R"%1L<*S%X.S,PP90-8QNZ0QA3 M+\Z9 2'%/T:&LE9M%C&@/*Z$.FZX#=2<@49-J!97:Z:V4P\4S(2J^KUWT)D: M/-%CC%K#Q=$+-D!TB4P'GP;&]; V;3!S:!3-CSAU82L%8XIH5[FT\0X-BR09-'@"6ET19O38AAT[.I$7[>RUIB^C[/NA@JUU8I VK%5TWH^/ M<:P*?2ZF5K._5PYV[N4:QA3*>DR; 56?7ATO0E>QL^N=[F TKA4+AG<0B+6* M[ 6=-G@;U-1X&QA9#1"P@0.J3/5.!;=%E7\2]\IJ4.5H:<+C4Q:>X,N?>(ES MD8W5O\!5)JHZSCPHI/?6T3"=]%%AUZ1@M9#F;U9P5/9,/C_5$G2OQ\[7B\A-'_#?\M_G=VIRO]3>WA#-.(=NNTF\?^-UIR^'60,=W\/=%R^V[JC:MBN<0N+8W-BF89TPV(!4 M,V"=VT8#B:@\?E/RO6# Q/F<,ZUKA^(*_\/4;SQS;@:.O._"8N#3U7"(&1BS MO)"Y8 $&:DH;XL#5G#:69YJ*.EO$]QB4ZA],^G$](J>NY[NZF0W2-#!&Q06) M.X'#=1HZ[V \/03M416?KDP>_#90I\.&I#2O7=P&QX%AE!CBZ\?MZQ@C5DX- M^]4NB5FZ77GTM5X%30F\NP](/T?EAW/W/G?(U9.7;[H7 M K(55;_$8C13T<_ X@:,U3[ZZ#:MP6PTC4"/:A]'%5>(>.NF1'@)1J]A]=]_ M-N[B#A@YC, M@<[*,/3^R#3[WYO*T7'FCG=3 M/]]\SR0.PZS^@D=F^?P)^T>FHO7<3"$Y;#RC&&(UU8<-]:F]S8V35$#^HM>[ M#]H;?@FY'\#DI[G0&C3 8RSFET9^Y: _J?-.5G^S>5H+% .]PI@4./IU+>8/ M 4T.L>]QG34YFNA:BD,R9TUQ@Y-_JB:7L6"6IL4.7/29SSR#8 [BP^N#5Z.1 M@R'5.5Z5.R@D1<4+IK>*^U/TF=?3"9 Q"DB%$S")A\%"2**.#\0!GY%--1T_ MS-(1TOG WI7!;3GXI\+L;)@04ZS2*?L6IQ)>U 90#K?\I4K*W/CTID[A[NP, MCDK3R6BV=E6N,3.7%\D&7HI^23 XUBYQLVJQAS'4.[MM!;MF8:UN#< >BXYB M6O22*L8LF.@,PU3!YF=-!ZP*&1,S C3!)(0Z^R9DQ,QLUX:O\Q<+"MN/INC_ MW]Z7-K>-)&G_%83#O2N] <$X>-J[$R'+=H_F==L:RST]^VD")(L2QB# !@C) MVE^_>50!!1(\=?#"QNR,3!*H*^_*?%)&.[619GZO=!DI)1FT1-&@TNH"\A;5 M'-AU]N_\("36Y#!@GMI0^/JD2$]->3$4^IC@AQ;R&(R[F3F8^2TA.-8)I4\& MG(U'D=%[D?NF9-UJ1B6P"V:OJ?"MP'PV<"\QXU%6:O1OQ2 +I;^;"$J *6\8 MZG_,V^2@!8^$8ZN7@GP TAIQ_"!.= .V%$<:B+[,W,&/IT^+0Q;R-\Q'7*V) M]WUTTKRN3:CE\!3_-6=CFL:O;($QA9P/L)TC)9HB,7R40O_0I$:^>&7E,K64 MUJX$_O6O_^&/QN_.9]HGC(.&MM()#A.>=%W1QJ M.;V*\7,1I$)A>AZVS/G-9*HO2%<@ "DO6+05R^1I]Q_ZF*9 A$1#1YA'C25" M@9+W$YE.%0H2D^1C9WEP+A?EQ5:*(5:[\/MXU1QC/#R!<8558'0TOR;QO4SF M..^#6<4W0@7S\,DE&* M' -LYLLH3I94U1B(GR @U+5Y!&M2%@.K\B1'4RB!?D@+!+/D@G'(9DIQ2'D- M 1>4R92\&SY03$U1-GPZ-;_\LIZFYDNY)TLWT(@MLH%4RJ:>6FP:=.,34WZS MS+;75J'-4&;-A&E,,;:(8U]90H)*LB6S>;X_(!?3VUA:QA$8)_RO4DD"RBZ9 MKQ_/+)SJ-F3T0[\6&(8P!A46C O!I(P66:@@=U)'<- (I9!N^%Y]GV4,3DL* MG+9&R_E<,\$Y%?S3\HVV$LA=DS%6@ M;(D3]26<<@XS#PI$D\HZ9= O[+CV1!C?Y]?^AC^9)$$OFZBTN?* .5^IGY.A M[4?3HS_P_1BFH5$27GP?R5M('Z@6[^3PT/_,0"-1DOM,>:+&2R] $$>94="H M,PJ>U=30K JDZ*OKS\>1(,QF1\1)"TY;)2WX:$B#RCQC69!FO308!*A]E6Y0 M.>1*E%RQR1TG6$577#1=6^=81Z$\&]C7W*D99TF:R6)W"D-@'CT7KEV32W*5 M)?U;E&CG-XD0'$B#%Z!QQ/E+(#)_$P,RO4V841B/>H%O2GNA*'A6>0,D8]_' M-_'$9Z@V.(SB.9FK,$,'6EEF6IE]JXIJH@4T:TL \* :V$JJ+H^2@LF M0Z8RU5!=]8WH"G,B4IGAB(Y4=!-3]K,T,JBP49E$O%.P";!-5 U)@9.6;1OI M#XX'E>,ELGX2#34$9..KCD55J*K4,R7[*-1*/O%.%.$!X%BIC+QKYMEAN\'K M[Y6"O,"#C\JP--O@O[QV!?>+#,=+U#7!B#!,T#,F7$%"^B3OMP YT;!FAG/+ M_%4"S0OIZ=4*^+O.3A?P/RMVT1;47O4JJ;7@HAPXW6B=+/ZQO8^5;FN*CF_3 MP=EMB N#6\04UPHRJ#0PW-8O>%"OG4[#.TT6I:W M[L/VTY5K_.6_V)_)K7:".\8"$\R.?JO^>(=0BZ'_\#:(:(OHH7?ENU^T;:?0 MCFDV_'5A]EHVF[X2W%Z.++^VZ*LI[&;^SFU:K69C[M>VYR:8WZ\5(JX-0X^2#DGZ<&0D"!6QS #[!?(59+!O%@V59*]I@*=GF,M7+P M+%-0A-;EP"UU.;!G&QWL.+FPD?T;FTX?2Z;3"ERTTD;,93%X3Q+?\]_N06XN MV<** PL&G,M_"W:\8J?J#P^>2NL?[>;X3D=SVRWFX_NN;M48&S4W&Q##IR6 M=34Q'PDQ-YIFQVO5Q%P3\_X3L]?EKNFW7%J4JY)>?])V>V8 MG69G1VEY;=>UNMO\3E/>8DR,N4Z_N]XN5'+A[E&CUUI7K%:?^+-*SJDAYT:B M#O.(FK97']%N']&)TW!G+LCKX]F5XZ',;?==S46[?4Q;XZ)C"-B74T@W-#P+ MA!UC$&=XX8@3U\U2IV26'I%?\KBMV6W&=#H-TWED6/11^[,?KGG-'U48NV8W)[T&U;)5%:IG=3:O0FVN_[!M&;-3&^B9SV6$G"3/5B_F#S]Z M[7:L;CXV8['/HGF6WIOH>>\5Z#[W?FJ\[A9%N:;L)R&;B/JJ?X68%!AQ\*;7 M7KN8R4MT1-L9"EN,5#\0.;EU+)?)S;8:FQ*;;36?M>!Y'Z&OZ(V;HWH;)^)G M/\RHXSU\7,)G)CC*$78I8RQ5D[#CLA3/,Q78?IXZ)A+8U>EV2^UGD*WRE8*X+;5+*$@+]=[&TMSS-.V]AN4P,Z4*EE"Y3R2'5RPDWXIC 9JUE[T/EMM+F64ETUTW\%QT =-86V34RQ#GXFB35T- M>5()6:V-;>U-\%ZJY[6 9<@&MBWNI&<(OW^;-YI;-DV47D="=^>:7;1=$:W/ MI(+N&@VFNPW @A3=-=:7\;95/:]E=.=9C35D,]*;AV[LZK-"\$!="/M5L\29 MS(AP,M(D;IML3>9'-P@"+!M_X0\(S4^SY&"$1S#$44*H-@\30G6'19E&K^A' MI=9S T&N.IURGP3C'ONB!:.\=_5:<@*TYP9Q*K8?+[3A5;'$IF]Z!25=_@FI.\@&5"# M 8D[#1Y5)+2^HB.1W(B$WUZQ:=@2]H[@3>L82)G"!CA%.AZ0ZY_\(#'^ 6=! MVNB"O%;L1$E0GMA,<@=LRW-LDY-/&@..>B@,U57>37*0):K9^5*^X)Y:>8MF MQLW%V.80]X1;6>@#2RVX-H:P:5SX<#@/Z02V9'(?)S]2A(*!W[YZG_A!].^X M_R-]=[GSQ?YR]2'.2IQ#JV.W37\)((UIV<,-]S7S\T( PWE M%]=&@5\P ,ARJ]A95X-DW'!G[>J=7;RK^;K77MJ#R7V4I&U"N/5J@37GZYP$ MU,>8O2">50NC[6J[+W23(&H1JR#QXI$P MOOL_MP>62]/"UBYZF]FA&'#OL71"'>FYZ1L\07UH<,X3G#/V.2?'C*'8&8_6 MGV2@G!YDXR:6M-)BPY:90/'87U+O;LF=6@2U6<&;$'@W-XXK1P[;:_B:D@4] M!\-^:_FGY9@E_TL"CU?,L-)7#6,P5J<7J_NELO$7&9?4

#\=AJ\L'P\T43 MW#F,D_@US0ZM;1 MOXD$:@3P&@%\3S:X1@#?_:.I$<"?6A4=*HYUC0!>(X#7".#/OA]'"VCH-5VS M:=<(X#4Q'P QNUW'=+U=A>>LB;DFYC46W@):;CT.>Z.FY=TZTJ.E9=;;LU,NYN'U&K54. [_@1>?:Z")#U$;UX M_+^& =^#8]HJ)QU#Y+Z& J]1^38/]GMFHUWCN=;<47-']>U!UZX176ONJ+FC M\CJBV=Y#1->:.6KFV(?[C9HY:N8X3.;PNF:WN8>:X_BPP!V%!>XUW<=4H\XB MY"ZI1GT:''"OJX$J/AT.N*MA-:X*!-[20!H/#&CB,4#@&AYA"]&(&0G3WHS2 M;*O]C%7/1P"#P.=(GP_UV M$?A\G16V/!T:>?'"*D".:\3O5=3PGB-^MYUU>4"Q3ZM=@4:UU#YX/-KWFDS@ MEA!EUV8"'ZTI9PG2]Y)Y3(/A;%VY'240;:L&HJVQW"LQM<&:4/[2NB*M0.:; MA8%?)@L?A^0.K'B[ROP4B#MY/&.&&PL?:DCWW8%T;]G*F'6JL"%7HK].!1S\ M,OK;$-&]L[+^)=)3]+K*C/8*S7VO>&&O,,%?VYH8)K!O;P7QRM9BB0+YHSD2 ML,8"/\!0R%YB@6L8^!J.=!58]1*!.Q< / 'I)_#_RZ! [_^;!H%CO<4BO=F M0-US\:PK +L=+1PX#[![29#F,7#=N+#K+!K$-PPM3:PF3 EP+O'+^0>;HY?7 M$-\'#?'=6C>B7;3F63.&7L-[[]FMR^I[4<-[KPWO7>)"U]/[9*X4*G17=FYT M:&\UZD;0WOA;%79;%ZD[O?43D>N9$6X.JQFY9Z!Z5H $7P8KOK+>78CZ/280 MN.=4;L'@OU\%C>'0[O3:G7ZOY3;:GM\;N'[#\_UA<^ W[7;_7]W&JW5$R?,Q MU@S>$[1%4=M.U&G;GR8&'7<=JMC;#,U[\ M7;>U&?;RTLEZ-4KR^HO:04"XDL)Y"C3D?=V(#Z(O1CV1&)[#%DD5B.1!5]!= M^.FM5!'PAP"E<>>'Y.Z?.#- V2LF*-:H'GN.ZM$!WWM',3UJ?)J:DM>A9,]: M%Q*D1J=YNNW_(TY^H-NK_ ]P,_IA-N"/YBB>4^/$75WSK H.L'-;LSI+5BUQ MM[G.\1IK*Y#= Z>H:6Z?:*[;MM8MJZG!-M;:X?,1WN*GAG_G!R'%;F ]X#OU M$S$(L#]RGV[EUE6TA\Q&54O<;39RNEUK0\S@/3+O:YK;I;4Y;F.;-/>DI8U; MN@,X<4XI\:_GAW1I[4\JT@AGHET&F^,PC==-K6LF98LU+9GYI1?[Y8E?IG$K M0LK"ZL/6^D&47U6F62\-!H&?4,D@Y9 $J1'%$TUO3&)CF&%CW!BV [&B,V^/2JYN4JWU=]^KCY[ $7N*?&M,L)Q,=E MJ9)2##]-!5@Q3&6E;[1LJR=+9]U"$D3UI2AFW%"P]XI3#H@0OC+?P7:=Y\F0 M^UAPMC37B-AQK*T\SE=>I(&NFN? A=!=36+J=_;1RL-AHI[77K>VW);"[]-* MDS55#L'(3QYHGG%$X7T8O)@4S7=(-\&4Q2M+N#'GA"9I%^6A)N4ZT /]6S^Y M4>NPIQ0(OD);-3*=EO], X2T"> MI)3C!V)#9N)@H'M,.=/X+_C90(!U%8^-5()%6,:J8]O:V)ZF138?F\W&2LP2 MO1@?1=W"!/>9Q&R4G?=3AAG(STDH:#I:.A[:H\50&PG1'>*9$\DTIR6K2_:H MKCEHFH,<1\4!-%H&MTU1,^5JLJ8'#P:T^0B+@R9 @#!.$F RZX M2?R1B8Y2B4<3,0HF,JT62X;(0?(YX9-0<(AR:5B=7JF>+P5?DM+N>#@I%,T9 M.<#/22 (*IPIES-4>P/]4_%Z)Y&X%/3W] MFG+Y'&OS,.ZSF'BXB@<5L^432( M".0]%@U^EB<^1?N')D>_1L9O_@,35EOWZ;@M]8-!)C9I&5:?YR/F/*3);X)J M"09JD\YO$L'D?(*O>*4+C_R[5Z=,+$2WH[O,TC671 MO4G%,R6P%L._R8T,&"6>(-Q-B+-*TKQ>$S\4DU@ZL]^G)%DQ4>E%LW.>B+LX MO",K@G_7BY,DOL=2,2,;,]3(R/\9C+(1NHB@9,=8#T@75^R@819PX?FE6>_? MHC_A!U&?!%S/5H(O:S>+1RSC/ Q!X$Q@7R/*8_#EK5A\#]O,%V+38KE83$^0 M"SJ096YC_X'BH5%LH &$3_I<^3 ,<)M'_@1$*Y#_ (.6J!3\!X.)H 4S(0D^ MZ^TG7"4!+]7GJ2*)2Z;(84=%6WDU;TG_$!S64'"9+]DR@LIVJ\JHJO=!B3U0 M/(*W8K&-L(_5Y0NY>CZ]D]KV.2M?;9->BQ:"1D$^RG6=(8ME_!MXQPU5#N7T MSCSQVM&('D/)>+0Q;.\$EO2N1"6S;T^PJD70"/*3(HZ_A"7GDVA.8+<^R(C[ M>,D<<)S7MAXKNLYZ^'M9E>,C3P[U%U.#E/:[5$5[49F/0S&XD44_ NBZM"AU M>WUPE/9>DY!+I9.?%%69LLQL>D/CL;)051Q.<&76B6>YS5_0'BN=]RGL>Y:2 M7":\LP0A)>"429%C20:A=CCT!QPSDB7) >/SY?NOWXP3VW+L-=_JJ+>Z^$>% M1$O)S8RB#(/_A=0'&8;K@A&;]#A0' ^-*\TB,BG'"*91K+]L=O)0RO$E 4ZS MDPQ)0 25H_J$^#861"UJQ!"]]IAM]77;+E>1O0H\X;?"K[YBO_K0R.9[A=A[ M'_O) +GG0P ^]21&&9)-;N.$ZDFY %5WXJ3F]1S->&3\#":^RN"%/S=T@66[ M 7G9ZAJ8[69Y%^RRY%$_[JLK\S1+QVQ.@6C%LO58H5%**P M (.+7V$V#.Q@ M&F"E1O$HZ)OX6(XT#!\.)!HGC0;/D@',8*B9\I'SJ8,W$*6^+*&]ARW &0T$ M%J7#"RD2!D<%OH($@I&3P%)=46"_P#LEWD0QOBG=<] ^?<'>-SL9H,7Q:, ^ M"")IM,@]R0\2OY J#'RE[ 9(C\KWP3/H3$O/5%O. NNDQA\"P9W?>TV==3' M$Z>E'30'JDZGA7?EH2\Q= \+N&(AWWTBC"FD2"Q]AO^E>!&ZL+TPP&QQXQZ\ MH8F(D+1H0RG9 Q5L'^%-"AG^+0/KU+%[S3-':>J//^$8HQN!,5<3XRUH4I/G MQTDJ,-+(_X'Y(IJ*Q\C2-$NBXBTTO/9Y3N-H.=&^(&'FZI_<(YV^!J!"4J:J M,:>EX._52T;^0.0T$@,7*S8HL56%_E)K/W,ZU6O7G-X*SM)@!0B^"59(2.!T MR5G%:P>7*8$01XA8@W;:5Z"\&\Y,.BP(C64*$(,(='&.1")QE9B(B.A"CHX4 MNZ.\T&&0@$#5O'D@0;*<4 X& Y;)P*M!Q-?WP(="<5JN:6;0GXUK,)(9::6Y M&LVD#N\J#613/9FA)+<;YVNET-("P*4.;!*')*5L8\) 8 MJ(A_!TMF3TA%9/+@*@'UF*5J[Y69EP$]B 4AR/GKP*"DK[-R]46=5[JSD!4)!;\7S/Y,F-P[ MXXY\'0ZG1.]Y@N%N-ML.+?;VAU"%'+<^WB1'A+EVIFXO4]8]V@:@I)(_1MJE M!DM^"KYY#[@X#'Y@K :;KM#;\E1_LG61A"7&G$HC&>:6<4[RIN[W5'Z?8WO# M6Q6\GNJ-I>286^V"26R<>'ZH)3[Z4" M5_A0Z/LKZPE9>#(7?"<1&(4J].%J)MD2DP#E:D>#537+95]X'[)251=;37DF M$YM*/330!@(8)*#X*#Q'],E)PY/;&+W'G ^F+N7@G7I=&(: "P"[B/+65/R M%>U,J5*!":EB9EH)P WU%9IPS+FJZ(RB6ME,*3/EMMP+T*8R=%?.HIN^FM2-K^:7*>A" M_V81I<3A]BC0B@XZKU5(U1F!/2@*_I')D^!/,W)+'\"O8/\8OM68T\<;>0_3)582J+3HO$'=ST,MD9/A(% ?%E4 ML(7UKZ6X8-8AM3#@>L%<.>>9JK,R0QW^M/#A1PJIHRSZ-!L.@WX@@=1'*,KQ MQ=,)\WH@7HO#JZ]93"K/*H(M-AQ71F$MXZ_Q/:PS,64KT-(]1# @>D$S!*B, MRDT+0T.AWK.(42%:4U]'K-M-RNS))>3%UW]](G[TVP\1M_T%E4SO B_(0DI5-(V.$5 2W35&&$Z9J!H91 @C6&S M5GS130S;%LG:"TYJ5B0LBKW1ZT22+=H 0J+&N?X\#F5^M* *1A'7:=/T2#' M.(AN@/ B9,%$H":#(QZC4.F3GX)[B%3/YD:I!T4^IO1>5N;.38JY'PD9W=YI MR.B+)"" ".,\[U5C7(&9C7QW:&H/<=^+ECS&6"Z3[(9AAI*5KW]Z6H,#=]=N MW:ZS$14 8R@2]C@ X8;7^17'9VZU;=DDEF@+RZ[? F;A<\X/_$;^'_(U"."1 MX=AG_S]7[00%SR)T-A1M:$8-OF^$_7_[BKJKCEVB2.3]5Z2-S8HE3^;1GD0I MIBKVJ!_,'34'DNCC,D] ]X4PSFW*9(BBC\'V8>P=VWXUP]8O+7DN@0 ,SS+^ MCNDH0/Y<0 %[!1^$ZM\?0(&&,8.[^SUPA8W?.$#^+4A_')I\^H/S84&'Q[(+ MA;P-2&"QJ5XLJ@?FI&?*-GS_ 1Z7.2^R)091GTQMIH]F6(4&I+3PJ1.LN M5=?U;_URNWN8E]N[T"^'-CA/%_N&9N>UB)!"[@ZPMFZ)I/%EE1O&J#"S;@UQ MTQ-]<&?PXCKW_V6,<"6&@V1 M H"$$!,',=S 7\V2V-0"7F.!14_8-$XD] 'EAY&$OL6BG2(#KAK)W)85VHIL89UQ.A%;W\6P\XJ2#229A MTR9!2'%1'P/S&8IG56II@34Y1&J)90J=MVO&_ =XT1WIJ^?.*ELXC3SF,Y-' M][NZ1%DWCXX[Q:W9D7"/"D6J-S+O-7CH"F2S$ER^0)@NRRIBSK.563+9JR+< M#!*,VX116&V21\"J:\:TI+&9L#6^?*8E(X6HE0@4ZAJL9$CG?FFY%@[#J#ZP M ]5U4+8,#A#+@*4,)VOE@^5Z/OG* 5:D:R#JYC0D#>X&[+*-J*L M:Z>C-:Z_Y[M*D:.&Z#E:4QD[)Y/XAE*2. O$]?H.]6N=?HJBJ^>9);%,/@I MIMPMFI'EM9N_T(".Y3;M7ZH0+[6(@M1X/"<,_A=E^4G1?0_)[\Y/@CA+9>I' M*:P_K;]7R2XS9YZ23Y0]2([G3OV2S;VP"/KJ95._6=G9WIDY2.\69.T]^-U:#>^7,*J_=*CYZIGRJ76$9-"G] 5T2YV@N\^]L MZ4X7R:B4.%$-K_L:FXWH/ZF(SGV7U]@K#"T+W&16 UT MQBM,\QB@&W%HU*]GW8SP=A#^GQL:$4IU[*QLHW1%\"Q3_XRA&1 MU&%ZND\Z_>0CEFA2DI!T>Z6QDKWR]U)B.A!#X9&;*Z]]R9I3MINTTF@::<-5_ONGO M4&IR6LI:H9-!D87%!,IDG9Q'P9LVF"JG'ETPVG3_;Q63Y]-> K9W.3;@Z__;=N+RTC*_?__KQ MFW'YY=/7;[^=?[_\^N69;+/N3F\'F6W.N;3;\ (4L?\P6^G01-UEE&L;E%%A MJ +89V$?T28"H--#"2<8MDPE>+*+0M^;["EGV MKI+X@)7O,,M")O-A#C=RKZ\DIDD&"V!:<9N:MU:$VV #[N_OK53TK9OX;J<0..H7'>"+CO'.WK/+ MVS%]*;ZB:G+<7#75-_V;:4Y7*L[?(W )@Y2Q8Z\5'O1'\ TG#\8UXB,R+CG* MRM\9H^-*5K_L<;G9'$6+@?$DQ[I.N+[?&<:MQW&HW043410^]XTO\,VG9 MHE$VU:J3!N2O"WO-LMEFDPV7YL*SI'M![OP/?J9[\2T;!KGA(@OF:.R I3^6H]^<<)@-6)W@O M8#W2[EQABR @'(.V"6RYTV/>GRGZX4U)>:,*8QB(238^NLK E.N'#_2+\RB* M,ZJ?O2)4"G @I)>8'O.>GA>^@_&!\^'_@=E8M&?Y'G-4'9NU_(^8T%?O1<&S MQN^8YD ?HP$XL[_&B5NFVR5R?6YS=&F*3>(Q[.[$H+QE0^W1@GT/Q7"W&L2_ M%V D1J44VI3;X<"6JGL 9P6Z7-I'?B[!ND^XW;91L>F+&]5O8]>=IMEU7;/3 MDCWYIO?W*?3^>\HR?]UQWCIE>/]LYKG%^VZ%GRVL=-BG7XJH65[6X M.@QQY=IFH^.9G>:NTO/:9NF0_F^O+,_S<1*$AG.FXOH;V9A3Z]Y(:%?LW9[( M9;JQ<=^M2<35M/*L MU+1Z0L+;-*BW3]831D#!=MJ1^-P>BL>N9\(?F]G_>^2R'K)TK%KB;A-=JV.U MO+VGN5HR[,,IU9)AKR1#P[2[#;-A-[='>,<0=:)4TCKH]!@+W[37EHZU5[E+ MTG$/O4K7HX=;CI.??YXQ3,XBR(VK9# M4-J=K%.ZD]U'4>JT3-MUS>X3)%PLV(P==U ?<:([QS^/2;58M/@=)^.FU>H> M, 77\NF0Y=,3Z?+=.[V*,R,;Y@T5#JY;6"N7?H8RE\IH2W6U9ULLK-6*5%Y^ M^'>E?7$;EM? C5"5-0R0.\:JFK%(9+&V[!>4#F.[SO[N[M^W762[%K M'M<^EZL;2C7M_UD-9(#%*7=8U&.\;NKMTW/<9 G9Q OG^\ONUIL@#SBVU6AMACRPZ+6=MN5YVRD.![-X2S68'W_>!KU@(BM;UZA&W2T?O'IQ M'P@<<5Q2-MNH =W>H5>[ Y[UJ.#=LY3";HCV-1P^VS[QU <(ED[VREM"5,=? MP73\2CDOF)O>;7V"QFTBAF!T3";CMV_>:(B<;\[!2L7>4&_$X,9/W@S\B?_& ML3O-3JO[!J;KV(UVH]4]ZW;/;+?3Z;9(__VT;B>C\-5?+O#PA@3,CM;R901# MC^7H5/4N$ME\'3N8]<$:\O^R)&_Q);A>=Y9N^-Y[5/9W(I0WN"3PA@0[E&&_[BD3Y9DR M/G9/NKE/D>11"["]%&!VMVD[;M=N@BSS6MZ;6]=M=AKBYYUW[Z(4FQ%BY\"^ M@Y$,$]0"+F$QUCD[UZ08+.*LZ3@MD&+K#Z)#T%W+MHR.>W)SJE#;M'>4N@7 MUT[7:^C8TX9#L--V\\7DW_)P[^[)/^\IKF9K^;>7\L]Q&@W7;H#\:]CMMO/F MSO:%Q=4^FFN-+9EK MM4QZ,:>2_G3:./>&_6:<#"=_NJ[MM/\E%^?5HFDET?1W;DD*+YQM\/'WDL'F MG#E-I]550DF".GLHCIQV;3TM$$?-VGHZ>DGE$9FUW_0>0O\^9=E$PDAV*/PF MJ#//P'A//S@6\?.HYD*.NTA \05]FW[HU>;2W&-M;!B[KZ-;!R2?["[.W6V^ MH>9D(^2&W#9B874MORA93 AT#T?'F3(L?R[I M[RP1IC$@-E%=91JJSV!/3.X%"*@9,41-LJQK[!4<_3"^^+(!R7F:QOU -@O& M#B,)O$_ ^SF#"OO(5O=*=2RW:?\"'T=$0ICC;F6UVXNETC>(1IA%UF28$"O0A[Q"-=B/&&WD3N0 M.9W:YEH@?38+GC_2YJJES^Y(GY7,,25Y]L 6VI[DJ8V>U<7.9D'RVN@Y&+&S MP.@)I.\WQQ.<5?";.X-B^X)J!5?T/].53;Y],KF,X[2Y'/MQZ?.U]-OZ!!]O M=#DX^6;GS3@76&<^WP\"YR1X.[C@TO B$0-@S_.;1%!JT?:%&$MFU0A,1KNQ M3A;X7?:R!JDV+9U)^+V/DR2^%XEI_"'",#4^^C()))5G?" M\&_HG>D]\ 5.SPAQUQ*60FF:H4CECTQ6!)P;D@";P"#6^KW^+D!G;]@LIWY$;:,^65%E+9-#Y_OH )QL/STJ;=28VQGY""P _% M)'YA=;+*'8KK[)!AO:[ 75:U6UJ;_D 'U?Y]9[M MYMGU?M+S(Y&>??T9B@>56._:=OFV[H4PS6KF>DGFY^8ZU,0 M^1'HW7!'F:O67#O/7*[27"YHKEIU+59=:/&MPWEZS9C3((SV8U6)6==N;5\%[E[L JVL_8A=/.M&?+_%=+@PC-'E!!=%$650X!,9PR0> MS9!FGE:R.)M,IIOF&3$"@ M"AHC#7X:(SBHV[1R4_ G^ 3W&P&J3L)1##;(PK1#XD6O$9\>*#/_$-BA*=%%(/)!)+ M/:2U/KS:A]>1,%2A)]!;I[.Z>@:^C^"/-:C5(_'C MGLN)VSDR^D271W@_A/=6UG-'U7;NG#<[Z'V4%RP%!D8OFQA13*&9+U_ MP^M4.D\8^+T@Y#?1NT&8I3Q/!'MVG5=K#/9\YUL-.7M]^>N7 M\^^_?_MX_52XSULRJ:^T6",2A;PAR'WME2B.'V28&7C5+28:(!!@W\_0@Y[< M!GCU0&$EYH,4%L[8,@$,TQ.W?CA405>*5O,/3+[XSR)XBE[H9Y/;.('E#6:A MJ5_:B 9&MVSV%=:UHAN69W>?W(@&-Z9K-Y_^M<\SV89EM]M/"4^\@A6_4;QW M.]9U55>2?$6M_5O1U<=OGRXO+C]^^6X:EU\NUC)]CO"$ZQ7MYHHVATK?K:5] M\"?B[2&=%0,/=U?NY;#"N+>.#?Q>D3ZHE M]E!K'IY,K4_X94YX)63(Y[TRFY,\\\RE ?3&M\$$MJ&_PBQ/KI(@Z@=C/YR= MZNF\F]V*1G.U[WG,ON<^A"1KDV]?%G94)M^5GX'HM1 Q<1*LU=BH-@?V847U M^1Z3N3>;#[VSYM[,5-U![J_]V+!P_P/]A[ZR__!U!+ P04 M " #F:?U2N=;&$'(2 "?P0 $0 '!R9G0M,C R,3 V,S N>'-D[5WM M<^(XTO^^?X4>OMQ>U3'!8/)6F[DBR60O59F0"\S./9^VA"V#=HS%2C))GK_^ MT8L-!MNR3>#B.S,U-0-&W2WU3VIUMU[\R]]?YSY8(LHP":Y:UJ=."Z# (2X. MIE>M;^.[]GGK[Y]_^NF7_VFW_W7]_ !NB1/.4<#!#460(Q>\8#X#WUW$?@"/ MDCGX3N@/O(3M]F=%=$,6;Q1/9QQT.UUK^U=ZZ2'/Z[F6U4:]OM.VK7/4GL#3 M?MMQ;71^UG7LB_[D;]/+;M=RNZYMM9W3?J=MGT*W?7'>/Q,$_=YYI]7EX^O?0^$3H]Z78ZULF_OCZ,5-%6 M5-;'P8^-TJ\3ZL?E>R?RYPED*"Z^H!Y?%5\@ZF$'"\U\"L>+NMZ)<7T3_2/+0 Y MIW@23#T!4D8_!E"'WL8N:(7^$CBO%$@\3.'=(KX(YPCMH .*M3# MYY\ D.#@^8)0#H(4H0?91%644:[(9+-ZHED:S@?B0*[ZJ"S/XI:EJ$Z0SYG\ MUE[S^/3*W-9)^1J$K#V%<+%#+9*4NB;1D^JU2?16Z^+BXN15=K_L>F3V*%6^ M+3^VK6XUL7E=L[QL\:T=T^VC#NNA5ZT.,=T[ZY YW/)Z1!&E^LY*5B-[^)94 M0DP@6]^O(I AY].4+$\<$@:/HF>+18X\(A^(![)#G,9]YIGY,5&-34U9 Q-]=\EI XE?L$X/EE0(BPE MQX@EIQ7%8$:1=]62DTL[MIZ_^W#R2=0D+I(2L-GUY<\G@@3Y#^N6Q+2R]UVU MF # 1UHW=6[X@J*J#1'0%"".A2+0").()DDQ!Q!5H MMD>L$CI^@E0T;X8X%A7>%W";3,THRL&_"XK@YPTI?VT0JM\"&+J8*P#22*PT MR8@W%/BIRI8,,Y"X(7/1U)DH@Y?H M/A!8EISWWB?"C+HM@I;WH;XA$VBA1_RWP2'>B!/GQXSX+J+LRY\AYF][13]3 M@!G[?J=SNC/V$OJDQ+\ +?,(?=:XA&QVYY.7O5OW-6,SU*>=SMD[A[F0!)2H M!B%\#1D66GY*-*(<@EF$!H1$(&99.FC!S/$)"RD27Q07J?PDGP:I?Q3.YY"^ M"=.&IP$62H8!'S@JWX6#Z9/HJ4+M)<=425YFD.3?;9 BQLH>KEF#-6\0,S\B MMZ7M0R!8"LENI]=-#[?R2(J8)OK4I'#F&3EH0^64!.*CHR>)@&:)KA!D@;+!N%SQ(%8V!JAF.41(:%/S.!T2M%458=XT>/)6SQ M2$@=! /W"7*.Z+J$F%7)5-=F)UCW*-?<%R[L+)=@U1('4??)AP"I9PDH)A,/Q$O.W/2!;P-F,L&VK99NR"*]EQ6!'TAJ)]"/B>HE2@#6: M05HR6Y(F,T]K?2N-D> 1+8\"P04H-DW6?)79+(_8/)&=]M+!018*39S$4AJ5 MBTV."()NL1\*8U')RI5E9C9L9[9:I"R&2Z^,.2IDBR0B2=*U>.C^5ATD3W9)LU4:KNTPN]N*E5$HEVU>5J='Z=666L32$[7AE MFH&UG*/Y6RGH21]5>1.NG-P_N)!K]GO UL36C&[/MC+V8>6B&PM2ONA*U%^/ M"*^4-.0S1&]"*L\ /& XP7YUIW0GSF:<;=M*)3D-."M9(!(&$M*.2&_B\4B" MPX%M9&[&NV];J5Q (=Y"7ON(N<9\X/OD1:I+>/$W% FW_H$P5M9ERJ4VN["G M5CJ 7+$"@A?0S(#F=H2CDA];P,/LR9[UT@L-!FB:Z,SFZ;>2.2QB8C9[Y[:5 MBC>,*#70LEV'# >(,3$!3'!0Y1A>)J79HEU8Z=Q)S 8D^30<@$KQ>#Z]T8;U M.KWT,DTF&$VT7EE:_8K<,0F=636'K@0CHQ7K6;:5FFNR<8KY'@U9I)%K"G'P M!W%^5'3"2[$RH]:UK9*C:\WYB%NDDZ?1P[L!2_ P(]6SK72F.!,IP?((4:2, M>]&:8(K%O# 0OI-,*/X98EIQZ707QF8P;=M*Q4S98*[E "T(Q)*.&,=#B!)Y M.1]\1BST-^]3>/_P+.9M1KIO6^5\29FF!$H6B(1MWM?02+A_)<1]P;X/ W=[ MP)7#U,3 & 3T3JWT$D+,36624R/SB(O40I6@H)B-.38XZZ573\T8-3%(,&@Y M_JF2G:S SVP;S^UNQ2&6+'"TAQNJW_Z^+TCS^)JAO;"[J26Z0F@S1NL1XZ3N MOS".Y_+BCV\,>:'_@)<5$Y4[\C9B;7?L;FJ9KA#KE3B@Y0$E\ AX#BB#.:$< M_Y^JZ9=7N7>\VO:*=\HP=P#+[J;6[2IT@*1<$ EN9$=X(,&4(WG-^(27@W6# MPNC/VO(@US9(DKPMZ8%DT%!-5W%8,^B,'JK=ZZ471S>UWD2/-*G&9[0D_A(' M4[W(=0<=N8)?[01/!7YF2V;;W=12W!9+"% M.X=$8WCDJY'@70 ;N9E!/;.[J?Q/"M28_\JU%%[F$<9->RKU\0_D3A$3'?\[ MI!0&%3,(NS V@WMN=XM1BRI]B2!L8_W1;"< M2FDDJ)NIY"J1 MW4NMTB21:8.8+8CX-M(8W4%,?X-^B+XB*+54X<+5;%*S@;*M]*9AR0D@5!HM1@[F@=*W>ZD,:PXDC1PA#T(!I1.MNJQY#)Q:Z2VGFK!Q6JV4Q$Y2 MF&?ELUYZ$XPF;^*$K%O^*,-*.?55BX^S:*#%3+J0^,/(VIUW(5<:.>K8#L/Y^K1$WQ342\/S._6 M07$7[(_('QCY&S*?8ZYT @/Y-B3YI@<4E']YB(F!T1$4?F#Z%$N"F\H&;_#[ M[X3EEY/-%SGK[QLO>Y:O>HY>:*] DV^9_?T^<'1< GVI-1*HFZ'8@'.*)R&7 M?MZ8;-V'.0HG?R"'C\EOXKG0:PO B2@ '7[5\J OWV8KWVFM4J1[8![(O4L3 M^=);3N7K,^3[;O&EZ$68N%(!5RTWU!OE6X"%HB:8A_+;KY2$BZN6+HXYFK< M5\7U$Z;J2R;K-V2G5'1#&!]Z7^12DJC/?<")7FAX1.)QO-"0JX.2U%4: MJ7^;Z-L1Q ]H@GFEI@LDA(VB;R4:/X:O_XL@9=V.9?&98#N=B8\77]%\@FBR MT;K:NLT%1'L'U.6T+3^Q2Y?,(0Y*M$M?3J)>S2YL@KDYV67KT HU8I[1(J3. M3,Z$5%Z1/K\)Y\KT+)%.RJT+N'H YG;6G?D5*P,'C(NN?I@A.G <(=;]BESY M#ML;'^(YBY9\<]MJI*G0GJW1Z*A]08<:CL](3&Q<2AIZ:O'G.^:S&?+=@7Q9 ML+ HPJPH3$:(W@ MR0^9:D3RIN9'A%SDWA$:^7Y#[Q8OL8L"-W\T[57&@69!,9)1J3EPOH#!V_ E M0.X#]M!](%PM"9-AWLNEV'UP';1+9.\QNPU1M]/MFV>(4J1UF#!,%>WMWL9> M3=NXL8ELM9FK=#O-Y'5H:QR)"J,1[W4:!ELMR!VBY8C?8<$/.Q>*:>@[H3_D M=E^XP"+&6,]'N4TVTM34+@DOS!$S [NC9#Z>H1'TQ<2L)H^Q]JW%PR_SA4_> M$%*/GV+W3=0N'_SW<:WKO)[(O#Z(^1;IF^C'Z)5?^Z(1N>HHI#O@:.>QE!+M MRSBH+I!<8H:WKHJ^EUD$Z*]?O*FV#"U\Q-' _2-D*CT2G]3)5KN/R!UY4?S;&$@J,/\(+=G..A)RR0W4H/^D(X1G4LTD4R,R3;EV\NR M] =R3V.B.\&IM' ML/2=AK++J0R2]#@9"W6.X0')MSJRF,0P1;^3;VT]V:J)@KUE'#XZK?",\'P2 M4B9K$.7>"G*Q)HHZC.U$3!6[!K=HB7RB+AXOG)6*:6O;B?5Y'M&P4-=V%48. M%U(0)]%$4Y""KLKFHU>'[O K.;V\T-VF[ M5!UJ'LM[KI,G/[Z ZPWQ@_D4CY-V45-B36=GJ4QQI$8N*02!1DC\G6T5"#3=F175V32N^8(Z+7)QYB^EFQ_FC[$P4M MAC!E3+8.B@L/>3P3D3!:8A(*?SFDHC'5!TWH; MN-J(# V; :LSJBNLB23B>LU 6:*J>T*,Y+6-LT;.#+FA#!JR;C4=>O>NC*,\ M98TR+YXNWBNP3Q%UV5:P>L.'V1*DR]7!#,1NNKX5)7+6'TE ] WZP52_7=L/ M9=R3O'*4>+(WR[,CTKL1<=$M\A 5_3->13(G[ \NM[:C;)7;DX93EF<&#SQ5 M\E 1)U='+"KM$%2I WTB0^]RDJGX,<73Z>8@V-K;6I+^@(,C?D]\]0V16S?I M5=H-F4-;!R.PZFC*Q!9VQZC4'FKN\LN9*$F=<*+0V+%3"O.!M22]W<:+=MC& M9X1P,*90)6[@6[Y)JLCEXS=ZR#A(5(<]1?UY$+ACJJ_+T+L1"Z?C"AQJ,MM6 M6%_Y#UI,T?4;3"E2/Q38E>S"=3 D\5P<[7ZE=_ MUP!BM:-11N[R9MW"%ALHZMK(S&LJ2\^$:9(Z]-NGT4-!AG==H [U3>7;5TL[ MV8?)A%U_1ASK$\4CN%0V7_06M5-"GB<6+%B9 XZ'DOG1"RG9FQ^'0<$6YD*R M.G261%XB=F5V6%BLQ*2VP9=IAKEYQ^QT4QNKK6XO8,X,S>'GG_X?4$L#!!0 M ( .9I_5)&Q&N7)B )P] 0 5 <')F="TR,#(Q,#8S,%]C86PN>&UL MW7U9S.UTC'U)G9PIQXE/N"IOGKUU,;[LC?2Q_.G__/KJ73K"XP#CZ6(9IJD. ML!C_L%C_\M4LA>5ZS6_$]>3*=]2?8/LVJ+\"+D#R[S\O\G?_^-N3)YOEF,\F M^!;+D_KO[V]?G@UY@O,R3F.2YO=I=ORTOOST^6R:<;K 3-\L9I-QKD+^*4PJ M_G='B,L%S6+]J5E"%3%25I-ULOSBGX^_>P*KRET_+Q$^HO-2FW'GLS2-V^:5#G-YMN_G(2(D_5O M1ZL%? CA9/1N.4M_'LTFF1ZB7_YW-5Y^&6E,1GB2AB]2@Y(2P3'TH#S+01;' M94C?+EF=UH+FM99O"8NX%O+I$$_K6C[%R7*Q_?L&J?4]6V@17FZ1LR77RP3M_Q=+$Z/EY_)HR7>+S]^ZKG MFG)@.6NXZ!O)T@P.%?VSG,=U[F'R)HSSR^GS<#)>ALD.N%'1UMJ !I@4DM2R M%> 0&>@2#2<]3@J@#]%OQK8//<3CI$=CP;0C3"+?H*XRYM?+(YP3H),Y'I%. M'G_$E^15'..KV6+Q&RY?E_?A\TBD)!P3B8P](]MO(T+0W "9]."BC4I[[,.> MVP'=ATKRD5*IH\B:\>H]N9J+U?S+CD)$;J-1B=-T8P"%/$ H5H/VD3,=K:+7 MNU#G(I9]V*&^L@,>$ST.7/EF#'B+RS">8OXES*<4F2QV:/LS5D=P.Q'K_-+)ZO:$6GRU$111=+CEP()8,*QD+4 M4D&0/)84DM"ZCY;[!L:00J\[2/F"$W3G)6ZHKV8G.%]^>3,)T^6S::[/X4G- MLY'G-7*\\*+IF:%'AIPN^A8<]Q*,4\QJ>GY0A$Z*ZVI40XJO&G"@F0":4>(U MX:')3S^\(A\,W]9E?%U^7^!ZLJ,@,.1L$SAIR)861@3%HH'+J)PR/K#8QYA= M"VM(D5(#4K0303-6_',VRY_&D\DH)^21)U)3-%*-\#W0!,FX6@S6&FM3[F,) MM@AN&?<,7=9W6MAF8GTY78;IAW&<;+A5 ^Y?/J?)JN[#G"'CTA4;BV<_&GNB@%A M!'GLBHR5\U* %FB4]REA+WMP&9PAA3U:22K5Z889FFQT3& M4+33YD%V6!\V$.K*@P/%T$,%CK(S64M>0%KO0'F-$(VF^7#%L]4A%M/');I2 M$1PTGVT.PMJL,$@R5D75'$01-"TNH(1@0Y+"!].'WA>Q#%3-W4KRUVBTNZQX M.R;/IA_>X_SX9XPUG'0FF$+3H*<*5$J9W F7H B;4T:9+B+2Z6\W%:8JXOD.?Z[2]VWCG*UF0T(@+#1&L0>2T$IH?7,/02F0XR^S[E MAX? 'I(3=7=.72A3O#=)-BPD24@(X@1K1N_,^0NHM(T&$I>N/M&. J)4,WJ9 M)<:YUJ+/@W4IG"'Y8.W(Z31MSA,-MIBYN %LT1&1K&!" *LC4SD MX&-R?2*PBUB&Y&.U$_^!:]XC@[3%H8M10M&,-(U9<40@!Y*F57QRR9; &>LB M^YLR+G;"1Q]RI#NI2 M/$-RB0[DPR5%U8<*H%OJ80M&T@2R4PR,]*1S*RRG@P&>=599EX*BW$O>88!. M3V,ZM!#!.3[\_>GY97I%/]_MQ-_OT[#*X^7ZV-S%\W/OEO2UUD$M9N4T2*97 MOX6UWQG .XUS^*G PZ?7Z)S@68KAZ[&*43*8A:"'))M:3,^"A2 2!ZVXL"RC M3Z7/,89+P!R\2X>322V.P"E]](1"OV?Y>#P=4_A' WW$4Y]OI)2.OA@-N7H- MRFH.(2#]6'A)6$)"UFGG;B]\MS1+?4]S'$J9"SMX[474S%#]C"=S3./ULHQH M'JSH0!%!3*)&!$@1 :E&2VZAMD)$8_OL[^^BN*5)>EQ4N/-RM\MM'L_FR_'_ MK1&\+N?KK48ND[O$+0+':G%E">"*+2"%,RXG&4KLHQJOQW7+N/QQD:*A2)K1 MY*?58CS%Q>+Y[#B.IYNE3O^[&B_61V#?XOJLT?/9@O E*WC$["%B+ ',#J%8[SJ0?X;#XGZF\< MP^=']=N74WHX**A[7:[XD[,](S[BR07,-8$E<@%5G(,H# <3Z964BF2IC^JZ MIPG>LM3WT9/XP4G2KY:+&GMYF<5SE7ATW^Y M'OGV2)_#I 7)BB-OL&Z-)PI8F2>7@=F(Y")TVARY-=@AU1VW)F9OV34C6=7P MKTLMDE\7(>+\XSCAXMULDD?&E.2M,Z!T(=++'" P1[J?@@JGK4N*N3Z[MU=B MVHN4CO66MD4=6\50\,T1VCZ!,M."\$9!1.INXR2;E2'M\,TS+Y.)ZP-/]$605^94/?:(P6>C8^:=-L-OS$D][";!4+E[ M92G3'67:=NOAM]ET]BV@;98I,:>"BP[2^IRUEAE\1@-DDVH\P+U4?6S!];B& MM!'Q:"C73M('LZ]N/(RVL_\&QR[ W["^=NHP[60]9J56"?\\7JQW\,*T=C%9 M-[-XN5BL:B/!3?@JK.-(D,;+ 6-/-7: A$@,2Z,#2*7KI2] &A0>VFM^778\@^B MM..2OH]]:SPN&_ ^BSUNG'"CJH]+QCEKIID-8Z9(2V$84BSF2@+'C8-HI9+$ M'A5CG\SJ-:#:^AH:?4%RQV\?X5#61?D)$=?YAN2M_2E_?S,%V$M);!-*]_.I5(_O=J8U#/5D5; MD]!Q"5Z;"*HJZ1!8@>RR5BY*Z6V?(]Y]YC.D_$(O,@Z "<.PJF%Q]&(R^]2Y M7O+K,/=J02^?7".[6<\(T0!OYK./8_JTG[[\3E!>3E^,IQ1,U]B;*/-Q<^Y3 MY,[H_QX!-+XGA>8LGJWDZ"@M\ M74Z[< 3NDX_:0TY.D;97"D*V"$8%J9@KT72RLM?"&E0E928P1B),@E-,>Y^.<^&H(9D3#M3[$'EV;+/;4+, MZT3*JUIG\[H\GR,9G)'764M7 @CIR655C()GQCQHCX9KHXE'?8JFKH0TI.3Y M?>FO)N)IQY93=?JZG$UTDT87:*-T%-]0D%-;[QD)@:&&X(OB-DX56( M!E77><_&[B#IM.8*6=Z;:N\N6P>":P+JVN^58F6E@X<@*+0H4F:)G/M>A4D' MP1Y4(>;]LNX>Y-RPZO+D[%'9-J/Z5KMF)UU(RD#6NA:#V@P1DP5A&<7@6%MYM?'D=RWS^R-\%R;D J[]N?='\]GJPQ']\I?CD\GL M"^+ZUV].HX_:T)[P%BYJ9ROCJD:6B7R]%!6PR+A@BDMVOE_J%;[[03!N66KY MF*ETSS)K5[M[2$N?-S@?USW15&^-PI]Q\^]9N<0OG].Z2OYM6.(OI6!:CDRT MB$A*6+#:0#M&A)JK))<1]"GY.3=TV&/?!VS'#Y?LD.3P\2M*PRN@S?ID3B6WPN!XTU?6\C M:37%;+U%T'HHP17GI*Y-&.^3I)=@'%)FZ?&3]% 2]";I6@G&(66H'C])#R5!,Y)NIOBZ[$[[]?2P;HNQ MMBTM5D!*+H+RDIS87#3X8)*,+/NL^^RB=YC,D)JC/2+:/S2M'D*)(ZU7S5"# M5R75KI*T7@;KE5U:YI2T#JY/'>1=E?BA%5?,*QV9D%"T%Z *<2.69$EU&2UK M22*7?=I&#[;BJA-;KB_ NHT8^K30T6B4Y/0H"E'[J18>R/T7]>"!EI:41S:A M3T;[@!8Z?P4>W%D(]]581]0V YJS>A\S43/:" &3 Y.2R<4QQ56G+N(M&^O\ M%:C24% -=&^:IIVHVMW55:M/?@KKNL'C"F>C").0RA3%H1ZI(#\Q6/!&,,B%G-:DO?6V MSZ&SR_$,Z;+*>V)+ \%TLE#?5@]0N+$]14ENE-;<1+2 Y#2!JH&X"T8 HPE+ M530/JD\.9E^$0VHX\R!6JY'P'EV/+XW)V\+J('U./K@?=J6Q-[B-1I>5#T7))IVZ6.$3B81 MNUT@LGM5CZM9L$XA6NVXDWW*QV^$ME=V;/V!;D7M?YB>?9>,GR(.A@1I*$)&T@F$SY33#W: MRD&1:M4!.==YPF+^N>>6'@;11@T'DNM/(B[G=P<8_!AM;G MIB=!N@B@^=FQ,]INP_OU_9.OU\?73U_)(\NE0>T(5_!$7!X*1.,-:)X98<]. MJCZ[YK=!.:BK)QY*^;228L?^$&>5 /3B-NL^3K4EX'BR6F+^&9=A/+E33XA] M/_KP/A!WFD2CW@]_K!F,^=E'\ND^X&^KXT@.7CD=>8UF\7JU7-0VB_4DL]-. M!*<99%>[;=D4*)9("60VQI(E2HGU.45P2Z"'JK0KAKLPSEI4(ZZ8D A'"@4"J*S$K+R/'**:*3LTT+H0.!#*IH:'$T;R;M51_(]$)_KU/)N%?^- M:?E^MFW9DJ)3+&(!GH*IN?<(WH4$J)',02["\AM=R&9HAE1Q=1_<>Q@QWK.* M#)/)ZY-U8^1GT_Q'J/O<]>(_J8P1M:Q?&@*L5 )74KU(PGEK=%$V=\R%WPWT MD$J\AJ<:#Y=S,V+>SA..$I%S8HIUM?-"B!I<1 G.D]O!E9(A]3G'=$!4TWA- MZHT"F#?+P8H33+L QKB:6[$S4S\[],XGDPP[\QU MBTD;XOEM:]@P'!^V*-3-*5V_=$L)&T* ,F!2YSB@ R*0J'48%)5AAII.:V M3R+L.E0-FLY>_MG_G*\O@)$.@U$% D>:,Q<)?*G7H>:B!<5;F&RG]MG7XAJ2 MD6K&F4L:SK823;O322FMCE?KR^IW#_/2]Q,\O:=@]PS,U>4P(IALK>%04KUG ME[&JH84$+WA@3+FL4I\CV*UF,*AJEFX/T MLJ*WF5XC0[H>LK1OE#)=&"P3K*@T4III/R\ LC\%XSLA#Z_+87P'HT ([ M6O7)6UP_'YMZ+HH?E)1UBR_7VX6T08CH'*!0F25I2Q3\)O)<]>%#LGHM!'R^ M6.Z@Q6Q[5=.[U33/OUPRO^B],EY1C+ANDER;#'F''+2L=_4R$56G^T2NA36D ML*PE,]K+I%G'X8*+NGT:)B\0%V=M#XK0-\?S%R^?/MC67VXF*H+03G@@GO025 MO !7-\N9=8(K$Y3A<2]Q[S'8D#:5FPN^]6(_P*'Y,ZYN\29E16*L0)+)@2I* M0%2< QJ&'KU"Q#Z-/>Z.>4@[PST,R3U)LXT"HN!KOL+\*^8Q2>+Y)(R/%Z=] M;$8)5<$@-00ER.8%38N@K*'(+G$6M0O>NKT4SS6##*F!1W.%TVIQV_F=9Z?T MZM&]"_23+DN&P0&-3?1STH&K;6FX5!B+5LZ&3H[GM;B&U NCB^?93BI-E<*_ MPGQ<-RB^;5B4K9&).[!='&; MMYQ[BQ]QNL+M!+E//&91" O6]F6:;%'.&73PVFFKHRU]6D16+2$>#2<: M2N%A^20L%N,R MQKRS)MR5Q)(*X$TD:\V1@><$,_%$#XG1R70Z\WEKJ$/.\#8B65_Q]<__[@## M0%I4UU9?4K%:"YW Y1" 1V;I/Q>+U#?Y5;<8;\A9X /)T6O5FRL=TH*[K92D ML@Q16 K]9:;(4 D(+B? 8 S960H17)_4S.5XAIS#;:P^#A!$&QVQ[>NRMH5A MLC,]%GP2,0F2&:^W(TD)#H,%R7C.!KE%EO=2"U<.,>3T; M-T&9M>P;>%S<3 M%K\2*6>K='1(D+W'QS8(J&\+OE'P?,FX;\_\S9>9,)+E#VH1F]9W5,;@(2S61AR1D-7$L+RKL"]+P'T)EA=)P'S'U"B$X3.D@M MT=__,9O_65N/AY/Q,DS>X7(Y61]]K/>N8*'% B?KPU-; (8L R2%.7$9599I M+\5TS2!#BKR'0+AO]%HKX;0Z?$\3"Y,783S_5YBL\,HNW>]G/^$O83[%O%W1 M]5(MQNOLN$G6DROF05NV;E]%CKHM$90)WB?/N?#[-9)K@V=0U;F#8^ #R+QY M/<8.D$W/E9?3)I86[;..EZ[?Z6V4N_=/FNR*(W\;:.GJ M/7ODCR(NUDN MT@O*>93@?54.-GB(C+XD$T62UAO7:2.CTX0&U3A\" ]'3XU^5R(-TNDY?RWH M.@OY_BA,M^(8696L<(4FYFHS.XE(AI1[*"QFB:X4Q8?O ]TXS2'M2O_5'Z"V MG!OD8[6]S4@S$Y5R0 PG3X\EFD>]+=5X;U+Q-J?2YS+D]G,9TH[Z7_T!N0-[ MFCT%9\\@"U8G93/X7(\**>O ,:U 6,_"W=NHY,<>I1["N#M)JF,\ MN<43IA'XL8],OG-%G5KH)G;"C>"2:+!:LM ML2$P!MZL"Q=%*=F+8GBONP]O1G>H=GHQGM*#^FK\\:(7L6GIDK+4F=L")C*D M.6L)SB@%P<4H0O+:LS[>ZDW(AK2?UYQ'YU534S$U,VW7H-IITK+;C&5D"!E# MSR#E>L6;=V2"95!@C8_!2^^BN'(V-9@;P_!3+B4:3J3X'3*4(M M 8 H9 !77&+22&$[]8'<17%X[61 MYI_'BW6SUC=S/!ZOCFO$D7.,6&(";@4%E49JB)XBR^"-*"P)P?E]\.1:D(,R M99UXTTY*S6NSR;;6@X+K!E(5C%4Q.(-$9R/JZ91 G)8^0&;!L1 *3[Y/%_@K M VJDJ,A/0Y?_7MR6[8%(:?-'F;3AJ[*M9_=UCW9?QKMXO?= =>428:'8I@$ MZ^O=:\X(B$RXND R!\,ME@5(G/Z M#VS@LNP/N%5WCLL[-HTRQU0WE(#I4@^-.0Y!)PV82E9>*UXZ94.O -2Y7UC, MZ$W-2G*/]9XTQ\"AEQ2),6F]\-RF/DFCP_N%W5M/C@9,N66_L-M(I7=GN9T# ME3)P5634D**D6"V:!-YK^LX)[F/,UKD^)84W0AN25W*/?+FC;+I;GA>KY6J. MOXZGX^/5\?I7V[/Y*U+=\V?OGK^?G8R34^)@FW3[H5I9JP,GV6H+ !<+Q"OX ML07T\PI'WO-D/1/@G>'UU'L!S[, E%9E&U 4T>?AW1?AH?IKKW'>XG$85_%4 MUVU!\O]_&.8C#$7)D#W$'$J]9YO! M]R3>9N9TWT6I"-]_FHU*X&3MG88L5:P]0LGF:^[!R\Q$)-O!8Y] [I9 AV1J MAT.\.PKR8=A&],&1\L8I)AT%J+53DHFUTR4G;]-A82XYE[#/-<"WACJD;,+P M&'=K83X(YU[,5O.1QQA3KMDS[QDH)0UI9.DH61/L:$X-%X<,S'6J'GI.[3>/1.<(?4 MEFM0U+N[4.^=?[]1;/?^$TX^XJ^SZ?)H,>))4'#.#13'Z6FQ-9434(-AMA@1 M35"VSW;.71$/J6G8H%AXD&B'EW<9G3LTT37S0H,]6.[E_$3O._N2'.,"?01F MC:CZ2H-GO( .PO <3.'N8;WMKKKQ]VD^W4C%_,OG5!NP;$H)I8_!R3O[R M(_\3^_$'G*1I'D_>_^7'O[W[%=R/__N__N,__O/_ ?@_/[]Y^<,OTW1^AI/% M#\]F&!:8?_ACO/CPPS\RSO_Y0YE-SW[XQW3VS_&G /!?RW_T;/KQRVS\_L/B M!\$$7__K[,\%2Y&9*S]3X(Q^=/JTS]>?OSSK<__(9>?YM[[GY9_O?KH?'S7!^FQ_*?_ M\]O+M^D#G@483^:+,$G7+Z#7Y\75/[R)1O]T\4?ZZ'S\Y_GRW[^G_UT^9F?PNDI(5X^8?'E(_[EQ_GX[.,IKG[W88;E7O2K(5=0NL+Y M7_5I/W7&](& S-)Y1*#?XJ02O$>,=SV].^:K9T'&$LY/%STBOOWL7O%.S\*X M3P'?>G0/:)3+;^;3TW&NR^S;!7VMZ^ZTO%U,TS\_3$\S+=K/_W4^7GQY?"@? M9Z7B%9P9R9:8N[SNQ@B)2N/)N*Y.+^G'RW?6\0PS5OR\0'I"_O&'1*42YKEZWSTCBGE+I\K>C M\SF\#^'CZ.K9)"=\0=_.1]P65:(,D!BK6U]4$&Q,$+A0(F@74*;;C)RO&%[" M/"XY>?F*GZI^?\+3Q7SUFZ7&@?'+9?Y_W8_E0J6[C^[%))$Y,,=?\.*_+R:W M!?AF>GKZZW3V1YCE$6-!:YXD2)L***%HUR^2@^ QHO116.V;#'U+H%_+Y9KL M)[.5A"[7EAT7GVHQ](A19P1O M ]E[EF4(S&J0.6@E14;TNM$LN7OA&Y(-3=4W[57VM]G N[+AV?3L;'HQXK]'&; M*Z(K5T[R_YS/%W7AG+^;GN2\%'LX?1W&^<7D6?@X7H33)>CJ_]"N?_:1MO^E M6_4&24AS,@K>XNS3..%KG(VG^0VFZ?L+Y?T]G)[C*$49K9067$H&5# 1G*?A MJJQ++(%QQF,3OK4>V7%S]J!X<9OWLI<=\\5\?H[YE_,93<0+F!?S\SEY M,O MB,L/O3Z?I0\TR->G83(?:2&#$[& R2Y4F6J(&C-8;5A23I:BVRR?.P(^;I8. MH<7;Y%.-R+><&/>B'A44TFHNP2(GT+H@N,(=V)R\3S$PZ=JLI#O!_2:)UZ,& M;]-.[TJ[&L6X0/SU.GU:G?=WTSG(TV?^3C_2@$XFM&8OQK.E4_4V M?*)?S>L@R/&G3\?S^HCYQ40;*88L^TS<<:ZNX#23@DP,K'>::U<<+^RQP$IK MD,?)QX-2[6W*FI8KY4FZ,#0JVI%"@SIZ!85%!"6C 9]00>99N1Q\\*P,OCC> M1'B<_&NJI]M\LEWY]*Y*XGSVY88SMH0W0QH_6N4$5Z"EB*",):HC,O"*,\4T M5YZWB9@\ .JX6=.7-FX3Q74ERJO%!YS5-76&'^IYRB<21)J>X_'SQ&RX^3/-(%L8- M&I*8E(F^T#R,,@E J5A*R3OC5/NU\!YTQ\VZWO5S1X2YGP.'^QSOKS9\)@R9 M^$Z 9E*"2BR UTQ#3HQQ*YUF80\!DV_>,NNHJ3LXU?G8@A;(Z_5UE%WVQ9.A MB$(+@K&,?-C=TE?H?^.Q]%W'&09BS71O@"]$6# M8D) C*J 5JP83-(7Q?=RB-GWH5S,R7FGP&,@)6K+(%@EZ$>.Q6/A"=N$]C8_ ME.N0NO$NQ%,<.:9ED#3&R)&6%U,4.,P%?$%ME%0V^CL2B?I,VUCBZ'%&W\C> M:YZ0T$&8=YTP_W"1B_7G=#J=8_[+CXO9.5[_^7$G;#ZM 7NRU=]@ G= MU3=M)?O!B*$-EQJ3 1DSV0.&K%//A8$BR5QUGF:):)/_-B AODH(WC\?MA%Y MVURFWY:6\R@JAM[3P KSGFRE;, 93U:O4)GE3 MB":UMI=]NI"P/Z1STH*+[ M00M)T98H46D1HU2YS0+P(*QC($)_ MPF4"V"(3HFT?VSX>,G25<8/L MOC>XH%%A?AYFDYK=<(FJI$2\$_701=#:Y34'%VT$Y)I\JL"9E&V2!.[&+T;.+E8D6HN>E8%IX%F^!;S80-$&X3>.B% M'ON(/K31Z1:$Z:"0'NW/+9"J@LJ:A&!18EWV/+B:7%R$#-GZPDMF1T&9>^(3 MA\*8;?0P,%.N:-CGWYVH35T MPUDGK;2[S?[4137W1D'^\Z)X2$M1L;4VD2>@$510$5.HS?% O1 M)BFX#(P_1KQM7CB\A]0K ;[*TF\AXP;QUWL$<.D>)!9MB1R\K+Y=*M6C]QQ" M5KG6!BCT&[E-?;%_T!/])M3H7>S[/NVON^WKV32?I\6KV>4:O;3[0BS)2F] M"49;M]8(46;2= I9^AR1S,+>C)V[$.S+Q>Y/M=,>1=RS[7N)9WXRR:N-^=)D MVP14[S[UO7"&=Z.[:^JVVGL2\V <$+Q8A@:!!^\N,I^\R Z,R2PF:[G8K#KK M$'7_@#\\D.JWD6Z#P[EWF#Y,IJ?3]U\N<:W. "09\8' ..,2*!8*.%%J[\%8 MHDE"Z]"HGNIN0,,ZM#VI:_VLI0=9]V@TUH&^"9/W%\SVMG ;R?YQ5BARSBL< MU+6V3S'FT$=G^PMG7+WVJ+;UW839<[!\">*26)O Z'WWO@%@^/UZ1Q6L*[&# M_'K>EF_"(4Y&78-9R58_10L!WDGZ,44DEFH9U$;5.(>AQ@>VWGZUN(W8>M;> M;R2IL_.S2R 2:9G/7D+QW-7!&*@5^,"-,JKHQ)+N;XG]ZM7#[IX["W_:A^1Z MWB%_"Y]O ,E"\N3I]<'4K4%;#:ZV%:8U@ S ;&22/:KPYJN?H IWEMR]L[#_ MF/PO6' VP]Q;3/Z>!_85D]\$[UI,WD64I1@?DT@J,1^#5BXSK;SWZ(H]J ,.IRG<\7TS.4XQ/'I>/'E),XO@M!1T%(I3 ;OI0=53]R\LF2_DKAB8,::1GFV.\$=_IA@ M8$[>RMINKM0&)PMW@;T".;(\\:3)#=;53U+!.<+E)&1IO%+"65IM&J7U/P!K M>&8-H-I;)0!]Z:5)_<<#X"YGX65OR7]C'B7K?")S )*DT:M:;!E-JM7LRC-K MF4#6YGAV.YS?/*VZ::Y!HOC."_I%O"=Z@3JD"$G4SGZF]N/(24%QDCMMF"/\ MAV5@#'ITNN?MZA.2Q*/E*O_I08N8U&&S#QES'! MJNT$\6=<_($XN=QF_GH^SC5=\,7D O?/6*8S)(/]I"QP]F[Z<9P,,ZO$99N, MU=J"MH;V%LQ8D] X%*.+% DC8AM+M _T^VBW-017;B7[#:SH)G7Z5Q=$_#J= M_8Y_G*0T/9_4_M*O9],)?9N6%NU%7PJ,P12TDG8P)T!)%<#7I)?(/$.O;O20/=(,00VS,YME% FPXBEX-]6]L; MAEF>_^UCO;U2,*Z87V7K,"=BX 49MFM1O!&]XZ MZJ[)VXU#>E;#@,5W7V?\35<9?W$5S7X[/9\EI&&]#@NRUZX_<>/RJQZR WI$ MT5M*02O)K.4AH+'&Q=&#? T+BB,/"BC%0>C>&4X M2^!#;9R24M!:.31NT)*JWA(/+I_W*RTJ=QT%/?^<3L]KF]EZ^D3_S[4U/N.U M=S&O-V5R#RHE29:LCV"T"<%G,F1+FWZ_.X ]P-K$;;ATSQE),W4-7JIHO.-% MDU.D V'+]5Y-# 2P:*9C9LS'/.2\.JQ2Q2Y,Z4WL^SXKN[=$A]>T1!Y,[:)) M]D=TD2P1Z6I\A2FON.9\HV7HR$H5MU'M8Z6*VXAXL#*U34!]XC=] MZ&#:OP![G-I+6,LFM&MX&!?.1I1@BS&@K)'@9#(@A$Z.-"9QO<7C/0J]X^%' MH,FN(NOQ>.?B$MMI6?P1EJ>=_QUFN7Y[B8H'D8(U!81>-A0E:"'4@\Z02FW2 MY;3U&RGRWE<\Y>6V1^$-E+[]"^Z74(V?)A\2H;334 MPJ4DH=&V^UM8X&P<3N.JR%W'I%Q6(%!Q M4/78.Y!1#AX-^5 F,62;N2T;OO#(F-!,U@V6CFN8:[ABC#HG24"RR*",(JLN M, =."_*Q;:YN=I-%XSY$1T:27A70MR/\!L=G\7PVKT;^\\\?:4>^\L^]*K1C M1@E&UEI<+0B@\PE88<%Z&Z*+@K-7 MY:_3:?XZ"*^LEII[#Q@] \4];5J,TZ:52O8N"2E-H^N*'@=W=(YQWPH9GC-7 MUW@^#K)M5O0F,/?C#_>NY.U(U$%#;?R7#'_!ODYMT =K)X/24!OIC<1"<" MER$YT)'1F 5R04Z:J)(9OJW9?!_5>P\V)V\DH*M]DF(1X%1* MX*-FBBS0(NPW?$5/%Z;T)O9#R'N_NO?U>O$/ITN?1SM2R?/ N8 BE]?1, TQ60WD"7*TY'#*\M!Z/\?TI_?33S]= M/O%"SY<_+-6\5/#U^X;-M>Q)\--.4NL[E6"9NOMLB65\=9(E14Z)L0P8:CN@ M9#*$HC/D+%Q(7!2]8=[ 74]_RDKK1V1#A#[>+J;IGS\'LO]JO@(M5$L;9/G; MDS_"++\^#9-YAXC'5L_O'.C8?33K%P+;Z)C32C@L2J;DG94>6;;%9,2B1UN] MJ9OK]?9#F.&M5YW,9K6[N.;H]J:A#]V%DXRR]O\%_GX_EXL;H^_*+#&A\E$0K+A8.0 MM8Y&EP+.Q0A>F$!K3V(EMLFR:#*<@Z'L3IS9C(X#*KS!P>G.@_K]O"KB55G^ M=7YROO@PG2T;Z$=?O"U(!,-(%JE, D(J$;30B2Q3&S"U.7#M?2C?V=N;HAM4 MY?0UH$]DCM6HVJ_3V5_IWRYH1F8C)<_ ;.U)PLG"#R1X\#6\9K3"9 ]L"7YD M1-]YW+?:&Z33G9PN/X/Y[@%>YHN.>/4YBA&@;#*@BG"T700.V1GE$QE:PK2I M4-P,WU%1K8%*;A-'=27.ZXM(XLDD+X,+KZ3 2>D@\4*JLR6AQ(0 M4-6&AI(["+SFDP=&[-?!>-&FO\06((^*0JV4K=0 MWH7/EZ@O#JIOSP8CN&;9>HA84PV90G"9C 3KO'+!2JMCF]L(^L%_5.S;@TIO M$],,0LS?IY-/.*>U>KG7S]]-%^'TYM^?TN[C*D;X^^S15_F]'V8!E]$50@D_9&_U@^8C[9G(2" M6%#2QA(R!(,!3 S>]K"$/EJ.T[N+\7E>\[ MY>W*+S@-D]_#V65U3K1"PKT6U/ M/%CWTW;51X.0_ K+JCYO S1-*RB_QK.?4LG=]7./HCL(M[W*8[311%NI*RS4 MVZTAI!P@RI",\,%%U^;VZ"%4_4@Y8RM-;R/3OMM"OIQ.WK_#V=F+26T",OZ$ M%9M@7*R:XZE41" ;,2=+*U>2&GPJ#APO40=E)3-K!OH].5./O&AX"[F+$J:- M)#C$32UWIP*](6-]-DXUHKQ,"DHTDO'B2^^I5(^\IU%*U3:C6T^MBDFC$CHP M:8D4(KCL#?=1IF(M]_Z>U*I'WKCW%"M;HBQ(IG&1U:LR18.KUPG9A$YYJ5-* M;1SO@TVQ>AS!\W^=DPI?3$BSYTNC;QDX?_:C MO3@%'S&6 XTN@J_J4*6>?5CL0[9#2 MVQX=Z#)I9/[B\FK(F9>8E)*=] MS*<.-#NDG+M'Q_GWI3ZNQAE"CK:X (K' HII#4%Z#\8&]%*BMK)-5X:A1OA] M.NUE.G6@68.B2G/9W\/I.=Z<0I(,)5>2AX1<@#(F0'12 MU MC2TA!9M?H;.7 !/&$ULHG$TIJ1L0GY1EO+HY12;D()@U$'T@&VF8(VM.V M(7R1D0=CW8&5VO0X^B0M1?!]-A_F;&[)Y"<<87M<$([\S&!*!LU4;3*7 MR+4)GFPM$:Q,J-"80;M@#"^"[U/Z,*=T2R8_Q2C?^0SGCTO!:VZRS05D2:E* MP9"MPBTX)9V.T?"0GMH6O20HT9GR'01C2YE.X31'TZA46#>9!<]6)HVM830@+.A )=>)5$2$\RW4<,W M6&C4*>ZW%Y4?9*&18-P[QAEP70NYO6;@!2V?-J@@&?W%B[9U!<=1:+05#QXJ M--I&'^VK3C9!\VT5&FVEGX?+3W81;GN5A\04YNC 2'**5#4HHA(>M(E!%L-M M*Y_@T J->M3T-C(=NM (@XW:&@O1%P,*@X/($4&:B-E'YSQ?.V]YHH5&6REA MFT*C;238($/\8A>B#R]9RZ314AL%K-0;1K5'($?.0O7E/',R2MTF2^XK&-_V MAKZ[1O81/;Y7$-?#F.2UN;3)F)K:!2U&M1_KH@-9M@W(#*7I?1QK[C(V&5@I MTG@(6%/2LE,0;;&0DQ.HC&;2[2FC^^XC!=.#DW4;!#4B[5HNZJDOF@BOO M,R2%$51D"#&2F9EL_0/!0M7J0KT[X!Q@#+RYIF]=L]=534.4C_^."S) IV=( M?UR*YX1LT3P^/:\6Z5M,YS-Z 7:Y@V/+-W0N&>\RHEOWC.9D9='*:J](/2$S M):3/1CEDVNO1EN_J:)'?^>R+ZQHQKUHJGB\N[W%['F:3\>3]_/4EM.L8IPA8 M5$(&V50.2BO!2UI::^]%%A)WFK6I(.MK!)U]FVXX3L[JM3HCJOVN_KU1IH%7>#>R MF^="&^!K&EQ[#.&> F6'0HF-J-I1G_O@'2:9970(3M1S#%E]Z* M6&&2M9Z; M:-N<_.V';X^%MIXJW;91XV!!KQ@8NF(SB*@R*&\8.$?&>(@)<_:R<-\FU'H@ M0:]^M;91 &L;D3=P?9[5!+[98DR6P"\8%]>#OH0G(F.H?0:NZH7U6@N()I*) M8*,13%F;=)L[X1X!=F3__)&@JXA\X;%2\X6Z8'8AE"D1BZ9+"&W6> ?Q]8Y9>Z^ M-_R.BZNK/E*R7EH:,)/.@U**ME[& FAAZ4_&"\4;)=)M@&X/V5C],N96QEW? M*FE@$MV+\:^SZ9R&C_76+-*G4U: $I*#+][7 T@>BK*H&E5Q/(SK@*BRLRXW M)].H*Z%^S%X9)3#KD- M#I*HU\"X4(C=)@*2;QLY"FULH]Z5&R(SQ:C-S7=Y(]Y;IUW2P=N-S"1ZZ@T:T4_K%/KJM?L_Y.U3H=.N M@NW1CKX"<1GRV@3&-N>IF^NY_WCBX\>E'52PKL0.\FNI3AUIC[,(SBORSFR, MX&UD8(J.4=6V#WXCX_(PU'C/*60#+6XAMIZU]QM)ZNS\;'4NA3KH$BSH0'8+ M6:2J=LKU4((L3#')Q&9]X3;2WU>O'LZDZR3\:1^2ZS%\M002/M\ (J/7W/$$ MPF8R0H62$!U3-!R49(-B3&FCI@&;J?#FJY^@"G>67(M:[_NV_)^_7%7Q&$Y^ MHT(#/,@ZT(+@6:"!NNR#<<$8-W 8\AK<41I-K90S9-2G KP\J]P$8MN>$8^# MW%,CB;X5O"F!.FIGR(7H!M0LM-7"D=MJ+6UW@I3MK-20N%6,Q2"C'/@ K36! M'FM/<0#\V48I#7ASD7.'LRMHJS26(C"D$B&%>NV\%1*\D@$LFA@EJHBN#5?N M 71 T<-=E7CLMBS_"#%],%F2TU72GD_D<5R"U9$YG,IJC M585 9K*<4Y:$N7@;F'59M*7'@_".ERS]::7!6O+K^6RR[#)) OAU_'G9;_(2 MF16:G&R?0"=7H^!) ]GF'A@6KT+)"4.;NS#OQW1\).E)_@W,W)<8YOAA>II? MG'V<33]=5*6OZL)=O<9'*5#>5@M?IKK!.B@^TH.4BB*T26MZ -3Q<:,O#=Q[ ML-EC"N/)Z>GTCYI]5Z:S9S/,X\7+*:UR74KQ'WMDY_3$K3#?NIE=.YF3TZD( M16:E,UYJ1H:GR-Y(P4>//;SCLCV>T+/'D_=O,.'X4W6[KU[XZ]--+ M4-],$O^8C1?XJI3Y* B1M2H:BJN-'#()PWO2>/0IV>!"BJT:ZFP']-@YU5)O M#7(9-UPZE759>6D ?23'Q.<$P10#(2A>\^J4*8WRK7?8X+KDYFUA$ET M"J;%Q>U0K\I)GBYO&5F>F"@E0F"TK#BYO/ =)3B3:&2&9ZDQ%QAB8*2?Y?\[GBQM' MKLD)(2V2=4E6);GHAH228@9#AK'*03M>-BJ;Z6?'6D,W;(9>"^UNLS]U44W/ M*9J;8<5\V2K@Z@PV\R0TP2PU(9%V:HA*$7XI;2' UFD6%?;]A?C<]3Q^ZM.G8X+'=&W-LBWWM]*L(;1.C MV2QY;36=:4:3I1LS+ZQ(VI9&F[R@FR.^>L-)^M?Y>+Z2P*5KJ(+5QF<-S'MR M#4-6X)@V1!@,WG'G=6B3OOL0JJZAASN>7>^ I'ES_8N3]S-$E>8S"Z#8!P$8#.D*"[E/E#8[+=AS6G<-Y%N8? M+E-Y/H73FG SXEFG&+T F6I$.QH:F.0: M'6);W1R]P!G.%R\(.>97L_K?.LKEC= TG/'[">:1,5&3<4F;2V:,MAG'('K: M=6*VWI20;/%MSHN[X3Y">@Z@P![/_9;7/KZH0@^G5_>,ORK/IC2;)N]I8M!W M\S&]8SG?WDU_QMK^E[RVVZ,=*2F!\+I)2UTPI=VO!^S7[P M' &W]J6='MN=+(= YL,_IK-_$N9GX>-X$4[?XF)Q78/36_>?[8L.WY57ITOZHU5 M\R6__WO\_L-(&X:6%1J-JI>2HD$2D?&@)$DN2$P^M$E?Z7<<1T"\ U#P;;J: MX>BZ,AZ_C)C(TM?D+Z,)KC,B!+7IAB-6MT)]$.8+])XNVFJMOLLOM9 M#)]]J-^^F%QBS:!M\DS'FB MWR2+AZ/$;>:[!F[LL^E\<1D=)7?\.0U@\>4=#7$>TNK/\U%P+OGH%4@IR?U) MB:P7RSP4$4,BU]NI1OT1=P1\A,QLJ;+;3/.'% ^\^,C(*V^C2A&LBY;FCB#K MQ*D$*3*I'"<#VV^4H;+7&.#%1XZ0GWM2]!VA['V=RMPYI+6"\_FKQ0>A?08.Y:'P/Z3O!>57X'E3L?XES-J>A= M0J1)E+@C_[,@^9_2.3#(%4VJI*1H8TDLE]6]"Y]_P7R>EI>37=[7+81/R0E-ED0M,:_[SEQL_7?9SS"7J0):P$(QF ME\L9G),&K%2R)&6-=*T+US9#.E2Y6C.B-57-OHO1'I#>LKB!>QV]]P@"E9."F+LSHVZD]V#Z#]EZ"U(,'C2]O6RFB8TG43UH6IMVJLM G IAU6 M'X6XG_ZJO2AT Y)TU\9>:..\"=G8FMP@:GFZ3N!2;1*JLY6F<&;9<(O, '1Y MI)OJ?MBRC1)Z9,DR46)5A;!JLE?O"Y**0\F" 'CE(:1L@&E/V(J-BKF-48C_I]I^F>7!G2;/;A),0XJ>91>M"V,>)(%.=LPIV-!SC8* M>D(%.5YQ1YMW!LD4#2MQ#MZ10\H%ET7Q6+PZJ+/+)U:0TP=!]ZGRIU>0$P6C MP5@''$.J]\<((%/5@M1!%E%0Z]0F'O5-%>3L@=>=MFXN!CZH@IV>[H)4"^R[(>2C//RCN>7(,6&V3H))0)!(6 MP'D?BE5,I7)L]1*[L*!7.?9=#]-328]0,G-9]WY9*W)SX."8#>!+$(6EK+E, M&U'A* NN=F;-'K1S^ 4YL>0@#'E,1B(#Y0K6RPXLV-H*- AELW%#F6/'4Y#3 ML_DUE((/I"#'( _1R0)U+I$K;RRMWC62S9@2&9U7>C"?]XD5Y Q#O-U4]80+ M<@S/15HEP7&L1;9*@6<"03C#7?&!UO]]EX@=4T'.\,MG6TH<4$%.K'!YCI"4 MXZ P%8B19BW/P9-58THT@Z6G/<&"G)X=U]Y5]D0*)C+S7*]\2.B5YXF; MPZ],>&H%.8?"^'[I\90*2/H6]&X3/JI%N1L18(-"W*V4<9>*BLV ?B](&='A6Y=8K&+-O9"&X:\6$]; M+G?)UR!X I?)+3 "F24'-R .9EL=<$%.6[9LHX2^"W*NZQ NZTMDU%+F0/97 M4H' , E>6POHO2J,:6WEFG5S3^[*^I,/P@#N(OEI7V+;5UG.Z[Z['N?'$ M)H4X]R%>J\!Q'E$G'FT4M?(F!1N4D"IZ(9UE*=U9@7/CV0U+;Y@C$+D0+T)- M-DI*@%/9 G.&F&:L1MDV6_H 2F\DBY(GF\FE*[;>2)8A!O(#$!F+R2)R^[WT MIA-S.I;>;*.@)U1Z8S4/+CN$0%8_*%\8[=K*@PTATQ@5YVRC:W6_E]XT(^@^ M5?[T2F\<:L<"2DB&F8O4Z!A](9LE,;(SA#&-+Q7[)DIO]L#K%@0XO-*;I(OC M2B%X$QTHU!J\2P*"-\JHHM"+MNOQ493>]&P7M%+@D*4W1@KIL] @D%PN);6' MJ,E;3\:%'#$'XS:KMW@ZI3>[L*!7.1YJZ0USA5GROM'%VOQ:1_#DX8,PT2A= M"HOQ&RZ]V9DU>]#.X9?>2(F&,UW R,Q!F23!>YX@QR0TST9H\;WT9M_FUU * M/I#2&RX8%V@L!);41:3:8_1@%&8M6/*8VMZ]_'1+;X8AWFZJ>L*E-R4$X3T- M3@HM0=5;I8)!"Y%A,(63QY('B\)\ Z4WPR^?;2EQ0*4WF%U)*7%P4A+L>D5% M5%Z!L#6L9#2)?; X]A,LO>G9<>U=94^C]$8EZW.,Y*-Q7OO_64;N-PM@'*H8 M.#(<[K*[XRJ].92XWPZ*?OJE-Y&3Y+7PX'4-W*/S$$,TX"7CP4N+>K@;\[Z9 MTIM#87R_]'A*I3=%V9 *&4$^^5J'$00$+@58F8V/C!>?OY?>/'V"[ZKRIJ4W M5EL=#1(U$HE$^< @ZI((DI?9.FMS;M,)[0A7PYV$VK+TY@9K7\^FG\8U_3&< MOIB4Z>QL^=O+B.Y)2M5K(W_MQ21-:Q[8 D_R_YS/%V>W0KO5N"XXF]4F;,SS M(GT"[TRL@T-:CS.2&U>[7(MH4^.TIK;C.R)F'B A^JSBN0, M9YZ5!^B !6%_+PQT67'.O.V;-E&"7W7F;]^^_*R4II[ MEX-2#H3(@IQ6\E>=-AF0(/CB?$CK#>OOL:*O'GD0AF\764\["VI?)>7K)[>K M4[">Z\P?>TV3XO.MQK96D>ZC"@&CBBII4B'Z[!@3P2I$$YC#.RO2'WMAMT5Z M];1?JWCPY?C3[7/W:VM:NYACR1%8HC55N5"/VHF F2P>*V.N!6=-UNMM4';= MMAYXQU]G4YK=<;Z8A;0826>-H=48>,$$*A8)3OA$\+-1+L<09)NZRTT1#K\" M-F/3^K;61$D-BM@W$,@_GC2M>'"=$^*[-O$NA_P:D@W@-H<=! A@!2V MQF-3'(I%!I"5N05821WUZ1$KI'VODVLL0?P0T6Y#\&R:J+00PF$/S#N MG[_\%OYG.GMV&FABUX ,.=T,92J0HB,?7,I:K<M'< I M" MB6P-!UV4)[!6TEZ"!3"Z)%$9%QHYH0=!MD!NN/(SKN.G2HTX:+"V_3Y?97#69:]6I=,5E)[6V/GBPD9,GK+V!P&V" MD$SV:+30HLWIQ/V8CILI/>FB04CKW2QDK*-Y-XA.O9V6Q1]AAK_@)SR=?JP,O03F;2JVT J68JW( M(PL,7!0$T6*2ED6O;!L7_EY(Q\V,?C318WO!^6PQ6K;X6AKGL125]+(]?R3C MW-3ODI* @E8L'YS@:J,F+O34&U2@G]9I\-5KO[48S>XR[W&/N )QR;]-8&P3 M5=F< OW/^\>C)!U4L*[$#O+KT3!O'FX#[B3\:1^2Z]&77P()GV\ 8=E*):6 2$8!;0TFT'=,0!:V!L P M2[518M1F*KSYZB>HPITE=^\L[#&Y KCRP$2.7_'Q56&AE.!Y>(=&)JGY-5$!]'3=R)95R1R6CY; M9K8\AN^@W,+=F+/%:<:NBFD0FWXLQ6>$,1@OHP=6^YJHHIPYZHG*9V?G9^&FAMZ-ITMQO]>^M&CH*7325LH M.:5ZP1:K%CQ]L3(Z9K/TILTM]]MC_=8HU8?*&L2U[Y#$\\_I]#R/)^^OFXU9 M;534 1RKD1DAR"A-28+0Q441HA"E36AS$W1'2:3>U=(B%'Y5R/R 0"Y">YZ, M6.<#@JZ7H"K!,_&;,4(J0C%"TB%<6F20]^T:N9XDB>'Y-HV2ALX>5('X34B M@N/"@V*20#K2ODL!7?!6\1R^)T]V4N@6R9/;:*-!@.J!]"M)T\1XFB1:U *@ MO#P*L@BLWJAGL\@FM'$!GW(J7!>:]*2+!LO)(^F<.5E6I/.0<@J@+ W:%R2P MI?@<"SH1\_<4VY[9TJ-.ADB>Q(+1A*A *R*O4EI"R$K5)C;%.50YB>_)D]U9 MT4GN@R9/EN2DP)(!DU&@G"H04G+ ,&4,Z(,.;XECR 9""(E'5BPBL1BY>FC79>UII)8G>6C'2DC!:S!9D:_*EC?8B4)D MX4D7502*-J[ <1W:;463+H=V6ZCK ,Y/-H'[_="N&0&Z'MKMH+T#(!WWTFE; M+XG@,M8K03)X%>K1DXU2U=I$UN9"]X,@6Y^'=@-R;1NE#7UHAT%B+@8,K^U> MD/"Y3#L(V1RQ%(L.E?E^:-=)H=L==#'\H9US.OF0:#DUWH"BH8*SY !'\H*9R8X+U<;H M?NJ'=EW8TJ-.ACBT<\[DS..R60,-E8L(,89Z [56/#L7LFUSL/OT#NVZL**3 MW <]M!-<9FF+!B&2INVNQLHB.HA!>$-;8E"I#2&>\*%=%V;THXEF'4]R,HE6 M+ :8:S,71X-TFG,0)68=4U(F;G1F\30ZGC0.Q>PNVH:-33:!<:R-3;92P3TM M,7:17\/&)LP)A[;V>*]W"JJ(A5:-BD[EE++F*7K]=-2X46.3/K2XC=B:-C8Q MA#=H$:#8K&A="1&\XPRD"=$QQIG;K&GX4VILLI7P[VULLHWDFC8VD4HZEH4' MBX6 >-JXG0D)4A Q.V,MROZFX($T-ME9A3M+;HC&)B^GD_<+G)W]@G'Q!C]- M3S^-)^^?S3"/%[^&5*\K_](A-VF+IW?.1]IU)&LY2"89[QSR5(10,B"9NF2, M9B=*;4QM[6B+]W3S8&CP9*9]_>27U\>V26HM.:T%L78Z2B*3AZT]>(X:T=>6 M.1NUA]K:BWD05E>O[:Z'7R4YD/MH9++ELISF;3/^HL#!_I+XLOM,J&: N2KY)K \W$ M52U-$1 ,$DYII&W4 7D;E(?!G-WTNP%Q>E%.WY? W2F!G)=R#Z?/IF=GXT4- M4+R8I!F&.8ZBQ9@4*A".10);' 1E$CA$[TL&:?-5D'H$6]ML*[ "$4#J48CZSHD+QMLJ;$F#[Y$A=D%\Y7_V3$K3(L M>@LYR%JU8HG#M3FIHM5/9-JB\WI;K&V6CLV!' %/!M='C]'F*Z%\#>?5^6*^ M")/:&><"^TB&F"07AAQ"5QU,S2!P[< $EP1WEJ78YH*AQY = 8&:*.$V270+ M*_?%A"#C?/$F+/!D\1IGXVE^/LFC;&0]4"V0K99U;93@,1%4=)*I9)B4;=)I MM@!Y3-1II)K;+#)=651#$R\F-.;SNJO^'.;C^=N/9%WE5Y._A]FXKI<5,1]Q M9)A8H(6PKH;*95Y[UR9M5J'"F3HV(Z M0\3:WU!6*7K+(#NII;),RZ@W\NC:XCP"[AV:-N^(0W:/:$\G[]]='B2-O+;D M; @-0G$#%["6F5$IY<)SE-8U.MNX@>((B--9N'=HNEO(^9+%+R:9H&"N=TB] MFS[ Z9')S"I16UEPI 44@P9GM:95M';',)AE8=NL,AN_^0C4WU[B=_!CYYCS M3FA_1\R8::&[#)J^*K^,/XTS3O)\I*7@G&.M^]8*5& .8DX:6-$15?).F,U. M*WH$]:VRJB\]W4&XSLG1=TGH(NE3%NZ8\B0/JVV]IU+2]H@U4\68++/Q+@UW MB(ZFC3U")?91.!-MB0<2MDY2>Q#6\&9H=\U-6XF]07[>U\<; M2]JK&+-1EL!$(\G4MA)\B %D3D4$L[QH9H#3I>,S"SK*ND'6U->(;A0.;H*K MJ6EP'[+]F ==-?<@$3J*O<%&<2^^R+2V+&K@&CWATP&BU 6\]IP)EKWR;?:( M8>GPB*DP%!NVD7;?&;<7:]]57XE5&0R3Z$T-L05)B&36M/J1=YUDQ,!MH<5Q M+9GRGD#5G8\??J_O1_337N768)._F:BPI&M!Q!BC@!Q2;0N94SWL$V ]TR5' M41AODQ2[CN2X-OA.U?=K%<[=!!LB\JZZ21/ M)\M$BA@F_WQ5"M)V5O&]?/'SJS>K.SA\M"P4"T60#:-,(1O&DITJLJY7]^28 M7:-ZTTW@/7E.]*^$%ATXEJN67@=!+*:1-MV2C-\VDT MS.G7P-M=DBWZ'ZTZ=6T XUC[XVRE@GLZJ^PBOX;]<;@V0?+L@)S%&@@6Y'+6 MKEI%Q!)=2 1DHSL4#D.-&_7'Z4.+VXBM:7^5XD:GZ4^I/\Y6PK^W/\XVDFO:'R?7E'I/& 3MUS0<@Q""14!&G@#S1EJ^ MT76W3ZD_SLXJW%ER0_?'>3:=?,+9HO;)>XN3\73V^W2!\^MB]N6//77+V>I= MO?;.V7V4:YUTI$'G=;$1C50NI> =:3<9'8KBRNO1SF_M\U#BY56*ERNTA1CM M(9GH025=P#%:/9(G^UVGQ#-K02LM/)F_)=-,%=Q! M%+G0ONF322QGM&W2M>Y#M.]X_6X<>/CX94=Y-S^9OUFR^G91+\R[40I6DM!* M%5M-)\R/KV=X-CX_.YGDY4==!WEYY5ZZ!?I[,W^/%\ECZ$>0W87=N3 MRQ(PP0P/Z"/09AQIYTT1O.02M"&WI#8>8\8_9I]O\;ZGK?I6@NTQAGF1(T'L M>U6>U]US/'E/N^CTOS&_Q_F2HO\(LUD@_"-+ W=.20BJIEP6\DF=\A*0RRR4 M<2P9N9'J-WK=$6B^?[$VZ)1S+SW/SJ:393'6*&,*6&.!I=18 EE-X%G=Q@1+ MMEB7,;2IJ7TS-^/W'Q;//Y-//Y[C$N+U/GKY MUSD?%V\V<\,B7P657TW6778NLD&G+<08#:A,?GNH)2\BL1OWV0YA=[%@C#(YY3_N1"+&09YX#.*R7]0434DKD<\DV M>=G7&)ZVUCO*M$7'EK^2#.8OI_,YSE]-GG]>T'IS/IY_N&PL4PF(,BNIO0?O MM:NGC!ZBE DBW>PKW- ]G'\]8I@FC6_A"_SD;2<16XM"*G(=+9D1/MB. 3T*:(Q4=HV?::V M@OFM,&M7S=S!HW8AVRNT-UIZW@#.1TDX'H2Q9'D[K*W=,GAF!"29!/,&/?/[ MXM0]D+\5?O6AL3NXUG.,]Z*L0]B@B?EG+#0($73(W4ANV6074]I':@^EWUUF[ MCW>ZVT;*0[4WVP33M]OI;BN-;=+G;!=Q#T6%8"-:QAEP5MN'6VFAWNP+U@;G M>[B'H0==K=N(G07=HT%PF2S]%:*7 MXQ"7MDJ]"F(ZN>[<5YSCS-" (Y>UL%EE,HK)1F9D'H?,DA1RK1GNO5GH&[WP M2:N[F61[[V[Y-<;G_SJ_ V!@A7,C+(2L(EG"L8 3F4'1TB.3SLD2=U']G6\[ M.KUWEVGS?L<7G5LE.34^1M#.U$6(.?"1T?"C8 &%SJY14/!PNEWW;?]WE'*# M1ICW-US> ->:F:2E"@:LY[1,F4BF+A$??+#&8@K> MR"%2*@ZPSW4+-FPC[8:6P(T&)K^<(RE(KAJ%\:QID C,%P$JVCIH+$";?#22 M_L>4V]80N.]E^SY:WE4M]U@"OU_"Y]>-?=4A"9K!!YJ7JC1&7P.#!)Y MND&GH,-Z4L(..M??ALYWD6FCU?ZZY.CG+W^;C/]U3K;J/,W&'Y?R7C8#UL(; M:R485C*H+,E"=BQ2OQODC5FR":[F5N-= MR/9G-?:LS ?ITE$3S9>6F_C(6BK1. @B6U#:!O""9Q#".5ND5R*U:7,R+$,V M,"3W19 M%-#&MJR GHUII3V;+VKOE5>35>M%B60$Y2P@9%H[E2P,G! 96%'% MJ-J4/FUV+_TC+]J/?=%=';?MBWYDV<:>7,?V[H_I*NC%B[&1&T!9KPU..E2[ M)X-&+J7!7(I.'?1\]:+CU?-NLFRPT"_;O%43:"V\.5^N8#G*A$Q*B+I>&$G& M+GCN,DCF/2?'F?/<)I/Y05C'8C/V)_L&?6W6,%U.@TU -344[X2U'RNQ1_5- M6\F^P8IQ-S@G!5/&.3!1U%RH["$PX4$J)Q+#&+)N$V (.A!]5,^Y+KO69@ MHS[D5R?A89+7Y# M-5S64P_RC=_3:__QW4:WWGM*/@P;#=I-V\Z MOM8B115FG:/Q.FYXW9,M1%\2.*,]#UG1W&T7S#K4UC0[JFZ;UC3;R'V/K<1K MXVE?T";-:>M.D?9?K2*$P!B0R>:#2%(%-41/O0=!'B-C^M-*DZRK@K,9YE_' MDZ^ZE',1:'\7M46^+J"45&3M9P3T+GL;)9K>TRKE>_,4SA!(-2&0F<%F,CVV6B9LHCD/=.\NUT8'I>L1/.1V"-0E$ MR@%4J*J9U9[!EBR< MC($F@,E0#$E&VE*B;4.20R_#VTK#FY3A;2/IX6JN-D'U;9?A;:6WS8JO=A'Z M<)0PC#N9@P*4F=!Q*2"JZODPSXL/3%G>)@_KT,OP&C!A&UD/5H9G@I>)*PXN M.PDJN0!>AD+(7%0&13*-H@V'78:WE:XV*L/;1M#-0TY+BDMK&4_)D;]:^TME MY<&Y1+9LT#DR)K5/0]QT>$S&0$1TV.*2;QQ$E? M4=*FA;4%(<8(#!EM@ME$,HR.L"9G*[5L6Y.SC4SW49/C6 R9>81HZM5E!!Q< M\ &R2(S&'S)M@D=8D]-$Y[O(]-YYWBAA8M6U__GGC[0ZXG328Y+$@\_N-3%B M\U&L)4-D*W..J#!IHR3WWHMZ-8%DA6:FP#3:^"UM$B"L#\)9I\ (3[PTE42: M&Q!KM4;SB:CA#QYQ07YW;5( M+@1RF!(9XYI^J861 J5K,O!-$>Y[\=J-(^NV21-]-'!@;V*YN%)@[0AVE+F4 M48H(Q2_O A<*O- %N$LB%1()@Y"2M6E'^1"J8R1&![DWB'_MOL;'07H0]'"2O(4"F%9DZN MA\'<./#:".#)I228U"ZWN3/PT$_)&S!A&UFW*#V^#N&M:MYI1U399G)J^'*, M#D(R 801DE:\5&2CJV)O03F8T_&M=+1>7]Q)P,.^* M!$0GA+;TBS!$,TR'YIJ_I M];Q\I[&M'YVC+$[8:*7)9+9;1[/5!X\A1O0BB-$N+VQSBAYJ;:9U"6H6UT7) MEB^* =+:(FBCXJ4,D=;VLNLI^G)>K94Q7POVU;+-WV)ZDOYU/I[AVP]AAO.1 MUS*Q&#CPF"2HS'WMVT%?LB0UY<2\$!LM6]N]=]\KV&[*_VH!:RCHAOO7I(=BE0-54JYF&SERG'NA1++(_;9[V$,O/ (6M!!MB_J.TS"? MORJ7Z^FKV9OQ^P^+YY_)Y1_/<0GTZH_SR[_.^4CEDE,T$:PADUUQR2&P($%[ MJSC#($RC(H"=X#YM-@VGJ1[#);[_&F?C:2Z7MMP*Y7ARX^;R M46 .-1F+H U;KH/Q_[9W;;UMY$KZ??\+ =XO+P=(SDRP V22 V=V@7TRBF0Q M$8XC#20Y,_[W6Y0LQY$EN]O=;,G.00#'?6.A/,)R',JOQ"U MOQ')O^'J J\JP#\6^R;V,H2H8BR125,"A872,)_0, $"8X9BO>WFICSO_J^ M*A,(?L0&KUO(<+/IV/%NL=RM>,>!%JF%,]DQ45R=<68#BUXE\C2LDLGGK*'; M!ER?N[X&7K02\D,VV!8Y7$E88J6TS*ILZV(6F#?6,0JPHE R\F!;M3,ZNQRN M(4[H4-F>2P[7XPUN,1HA0Z4M%GHB*22+BA8V4TP*7'!OX;W5UZDW]'-D/QDQC,Y9RIQ95G$S)MFQF+QEG(N("4,I MJDU]P$OI%3X^'_J(O'FO< J%I$Z^, AUY$6IW>%,5H1(9XJ1M+&R3?706?8* M[Z6:1WN%]Y%K@^RN@VF+PHEL9?1,1&V]JUQN5"EV[BG>0YR! MP9)ND.-U)'^Q"ZJ?.\6[E]ZZ)?8^1^@3]L;3!J(NACF0F=#EQ#Q0/(7>*\^C MEZE12^5S3_%NP(0^LFZ8V_4]#>'65!6%UN1(SQ94(0]G8ZIJ@K,J6>H0T(4^ MD^(.WN1L&1X]!G2["!L3_2>2UZG5$4)@'I23D]*205&6*&X%T,1;0I M]SSO%G?/(N;M9O""!E3HF%K(GYS-;Q: V+M N1N<<1Z/;U/*==R+_ M$#=OH)2;5_K>2USL@NOG3N3OI;FNJ=O/$?N4B?R!PD_E@J:(%!1%I$4S7Q2P MR*.21A7#51M[<.Z)_$W8T$?:ITCD#\8+[7-DH:92Z,PUB]HHEDVQ62HI+';+ MCGQ9B?R]U-(WD;^/3$^1R!\(G2\&F'(\$#Z'6\IS(;R24)2(;K#.SR^1OXG. MGR/3*1+Y?YO3M_@'_(U#\O0/7&5P&OY3R/:R[+D#K;),,HND;4Q1HY>\:"%2 M+ ;YY8'K#7A_Z#K_7&*>W3MFIK@M23#T)@LL=7 *,A_J: W'#?AB0\C=XN*' MUQZ6+T(LG*]G;[G4?0UL_9H:,+LZQU_8#<+AU4=4^_8EO)MC6* :38RH5 MZ14D1-.M)NM5J7*@H!IXX_\S7V):?)[7V6F$ZBW.29X$R[G(H83(TL;GE)Z< M!HZSC_)X)>Y/2\AKSI=,B".>!&>N%QS';3-3*H0@^1&8VHU.^\0 MGI?-AA%D/&):^?F04.:,,UM<_C>Q.5XPOFR&-=-$D_?P!EV\^+-87=]9R M.SGZ8[EO00_]IQZ/3&$^YPF0Q9($T];2=SY;YJT(W$0312/ZG>!A7S:/SYT= M#U\(-RCXOA/?]@P152[1>LV^R>A-DXJRZ3'4,62R<\'SD0HLM0'*OL# M@$9KE7T,T]0'Z8.U_*!7]BC2;K!'%!%VQ-#],?0W>: _6Q--F)( /4 M,#55(@0-MD@F8T"FE>(LH#2,+3[?GA **]SISAJZZ,,X+YDL,C!QZCW4B.1]<46.EXJ6*<@Y%BV%D&TJ M-'^ \=*=BN?+M,%V_QV87;OH#G":N@Y[@$[C+0Q0T3%E#Y!O@Y5_'Y:%6(Q! MR;P&3W%5 0:H%1/10N%.)8UM)M=-HNXG+'\[;?<1Z]@)=83E_Q"6*\F%6']9 M+JX_?Z%O=VE?KN14,G>,5T=&\U GQ"5D2J+QPJB4]XOMCV\)'+_-](9ZD 86 M3<0W=F;%863A%EE647)MR4VP-1U4<4G.B,L, 9,6PI)UZC82]M';O#K%/D=\ MD\1JFS5)\DRH(GF8&.OF>DW2I.=GRO)<0L;L8IO:B,-X7KH'-H*4&QR4/T1U M2_4NN";>SCFOK9S^VGN2$ -$/\FRL"L,DS8DZQV#6A-&JR Y*TE(!BFJH#G8 M$%L-WIV2$KVW;MHQHH_$6U3*$*K5>I;^6<^KEC=WC1L**JT*BZ@MTSX$YB$+ M!E;YX'0@(;09>G40SCELSSQ'6_N'AH-%?=3S&S%W_EZGP ^+>BFXVAYF#DFE M?_JB@S/K>^+>2[3W 2 Z>JTC!RVC\0C:1%D\]]RD)"Z?OOS0?(.[Z[^#V?)_ MX>H:W]^=4$HGN(&LR8NLQY0ZBDJ[Q$2(PB5;W=-6M:R/P!JZ]OPHR!^:5+Z) MJ_42TOK221&TK>6J LDM\T@>F0B*<162B]D)Y]H<0G8 =XKRGK%8LK\XC:V+ M)L/:=I!^!'M9EYF4(+(0ZJ*,(A.N1. DA7+>\A1K>$[^%*Y@G_/0%'M3FUC4MMJX MFGV>;W[WME#>>V[)^%*H#G7TC8K,BTC6.3M>%$"R*C5A5;MGFJYG::MEZDST M?2[9.]^?\7O1Y\5L]>]MN)(+9F\X2\Z2G(WF]5D<\QB=Q"R=U&VZ&CZ&ZE2M M,,Z%.$?7U8$*;-)$X9 <=AL9'; U[J]Q'-VI>FR,I)$]VWC@%1_K(OX63MLUF_O7O] 7FGY$^ M_@7+?+O_ 2H"+ZZFN*A,W@ G5[+4&D7/G=5.6:O:U&@]ANJ4D=U0_>U[3&,) MOT%$]]"B;M\#4#J())FH94(Z.,F@9$/V-049,!@';78[#N/YC\LRMM(:Y!T] M1+6SCQUP-754CB$[C9,RAO:>),0 T3

^3Y-$Q%>N$$Y.1UD&OF8BH MD9!FLKFO@!)/N"13,J*/Q!LPX<-BGF\QXCU!A]N=4>[ M=ZX%QIDL@PE.@!9"0@;K8A!0^WQ*6GX?O?)(>[-O5BM>T@_C);U>U'0G0I5 C!N<0,#XGI2,\6 ML$1FC=+>"YM];',HTAGB]*O=Z1CYH(ER$SV.WT_QZY\PO_GXUQQ)4J7N65PO M:_AQZ:0,.5#,*%1M]UPD+>>V%NM+CVB4)&YTRPH]>HN?D1TC"KUY4]T[:5VJ M IIS*(SG0O:]&'I2X6N>*TJR[J#03]%H^P[0S\B<,774(#H?0T#;G0N03OM2 M6YBB,4R+E)C7GK/""^=&YF)PYT/*TVC_7,YH#YOZ;1UPYDZI M8)E.-><\*\&\PSISJZ!6RD53VNQ]'\=T\LW.:3G2R2WKK:L&QO<":YN81 'U M88R'?WH;?'?!WG0/= CZT^R3CL6$Q8G5>&Y4U,(Y;PVP%+.K^6)D44*,3!AG M;0<5./W+(V-5IWS( W M@DN4,K0IXSP#ACWA5IT=P?KHJB6Q?IO_>;U>;20@=H>V(9H&,:/01UPMW=\=5YC#@#=='2I[H'3>YF?XK,>0B)*5MW!).J M>X,4F !7PJC 17%MVG@] NIGH\ES=#'-'%8T,J(AY>64<@T&*+XHF!@(*UU) M,:9DFK#C?.:PGH=+/5 W4TYO[8+KYY[>VDMS7>=U/D?L4TYOK36K,H!CCM<# M\%@+)(35#'4(VBA3C&U5Z'O>TUN;L*&/M*>W[OKD%30V9ZPC!X6IT\LUV3^> M6 $*S&*P5ML\6.?G-[&WB^)X<(5Q]@N=Q4M Q(RCURI<'IN%T0 M[B7B1B^3X<%A=E(K;KPB?:(RY*5'[\!>'KGF,$OZ'LGAQ,VE?\%56L[^O'W4 MVZR.& 0O](5QE073W!L6P64B5P:/QIF8V@3X3P ;ZD%L+W\[?6S^>7.?/W#Y M]6/9U4==\L@S !$^*J/IE5(4(Q5ZI0#H7[0LR32:_/4TMND7GC%YLN]?C*R+ M!GL;/V+[]>\_R1'#2S*$L8XK9Q!*J+/+%/.6XBV5+$1GM ?9AB 'X;PN3@R7 M>(.PX_ #;^-N(6+V+B!S!()I15^"E8Z^EE77O-M0LI8JNLR[L(6N>H\I]&F? M)3_<]E2[6Z/I<#%4EB,N"G<@=KE7'6#TV9'JKMI39,$-4,&^$@?(KZ$Z 2(8 M Y8)"'7NFX+:92,P7UPP2:MH;:>:A?-0XY$-H_&UV$=L(VOO=Y+4U^NONZ0E M)[1"2$Q"G2:LM:"'D:96EPJ*D4$)T2GEJY/^?KCU=([8(.$OQI#F2W+JU+OC_/@7:YT;W=D3"FP,X^0PW2I./;LB2 M6I+MZ]C1D8&QBG96L@[)U%;YZ1L R4Q692838((L^ORP=U6)Y%KK _EA 5C# MO_VO'_<;\)V755YL__TW_N^\WP"^I07+M[?__IL_?7L'T]_\K__X'__CW_XO M"/_/JR\?P)N"[N[YM@:O2XYKSL"O>7T'_L)X]7<@RN(>_*4H_YY_QQ#^A[[I M=?'P6.:W=S4(O,!__J_E[P47(F2^#WD848C\E$."XPA2AGB:!!1E$5G=_CX( M?!8PY$,:1QY$,68P2Z-$WA"%J1=ZB2]B_=!-OOW[[]7_$5QQ((W;5OK7?__- M75T__/[GGW_]]=??_2#EYG=%>?MSX'GAS]W5OVDO_W%T_:^AOMK/LNQG_:_[ M2ZO\U(7RL?[/_^>/'[[2.WZ/8;ZM:KRE2D"5_[[2?_Q04%QKS"_J!H7Z# MW650_0GZ 0S]W_VHV&_^XW\ T,!1%AO^A0N@_ONG+^_/BLQ^5E?\O.6W:F0_ M\S(OV-<:E_4'3/A&:J^?5C\^\'__397?/VQX][>[DHO3C]V4Y9.G*BTSI:4? M*RW_Y9RPGZ]0WY&^];&N#I33YGYTI>,0IA^=J?M-\@.?7N&>F*M5;EZHMULV MU[N[%W6UZM-K[.JU*&J\F>&U.(CIJ;Q1?_@@?VK%J <-D*F6TU)W3U7^H^9; MQANV?/)HD+-__XW\:;VKX"W&#^O_Y.Q6SHIO>)7?;C5WORGN<;Y=!S$):.0E MDGBC2,Y(<0QQR%)I#29)2$B L+>N]^_VFF_AG[YV:FA99H)^8V%I?>:++7E5 M[$IZF.ON-ZW_H5_W)1V,]' WY3=I;@DEX8C?:*GVDA/::'&CX9&.5AVIE< M%W;O2@.U5.(WH"@9+Z5/?,*@HS?X:UW0OW_A#_)]N9.^V.>RN"WQ_04.6H-&;7=48PF34^8Q ME3TK$5D"\IR7;&\?25.[!^F9J?4[WKS&U=V[3?'K^ZTHRGM-A3>DJDM,ZS6/ M:,@"P>4BFP<0)7)5GA(60BH0BOPT##*66M&4F=S%T51/;? FK^BFJ'92P.\M M"/ MHZC7Q?8[+^N<;/@;3NH_\GO"RS7W"2.$$TAX2J$B(4C2.(0)(J'/>"(RW[/[[?2N[1YQ+5I_J.E]_N\/;3@WI$]6=>U9R]WS:[=.LD"<,L0!GT1"@@ M2@,&<<@%#.) D(!YB-!@W=\FNSP?SZ2ZT>=W<2?1Y5>HK:C =ZTF^"G?@DJO MZWYKZ1[--?:&_M62QG,F!TW9 ]4A$@-]HT'/:D >0?^ZUG*@35^!QGC0LQYH M\T$M[0?EG MO-GQ/W*LEI=:XOZ/_YGS4C[R[K'=$D>AYP0<;3V08K@=\6&O;]_*(OOC:QV%2I)RHL2PB!B5/Y? M',0PI4) CW,OC4(1!-2*Q 9D+8VR]JJ"O*>K'4<-06O&2(X FYA_#ECUU9Q@ ML6\ AU.>&9(W*ZL8&/Z<0TQN&<<8'WG]?DN+>_ZAJ*IU1.1R-L8(1BB1[@TF M1#HZ-(9^@C.<9DF8(G]=[V-#+K[R3YYNQ0IGPEQ@'Y&/"A_045AT"@&?E*J_1;C9JIS?#B>:#/=L'R[XX .?!7J)SUR_<]CMV5ZIYN#!_FPWUT_ M;;@ M9E=U)/TE.'%H:/!]#83%D-$O$S%@&)( Q9$E*+T=[?%]Y_E$QK? M5/Z@^45SRZ7GSD(?AL9U#&%Z^;@]C4\/O)0!. M_H*5QI;;HL-8FRU9G2$X,4,<[3;\DWBUJ_(MKZH;^E^[O,KUT?2KQ]YOW_B/^I4TYN_K M,$AXZ!,$$P_+U2_V",02#1@D4>:3E&01IU81W2.46!H!W6PV;1:VRIS*I8 T)F=Z+(NM95C3F&$R(ZFIP9]ZZ=NJKU#O# !]"U8JV*CW!_#+ M-[TQIXP!VAJ78>)7@.DV"&B,(O,&]%P!U5%PSC7/NI8X/Q;JN7C3+/RJ3^+3 MKE8U&IA.#2SS[WI9^+EHM=%OW^$CQ4PR:1@+R)F?021]-Y@E/H.$!ISB)*!Q MR,9QZ55Z+8U>^Y_YMC6LW='2^RC%P3; ]L:!A\ZZL71[W>#:,O!L0S8C*7K1Z9HL!OV$P<[03NB6C[.MU>B,F= 'J>W-T\?AS?GYA8/I?%.Y6P M]!:76ZE!]9F770AH3M=$I QC3"%%,57) 1E,PQ!!G*& 8%]X/B(VQ&ZKP-(8 M7"O5GA8#N:)I-L'!3W_Z^N;PJV6TO_6@F!'RE%!/S+RG7."5.@X"6GW0Z:]" MYIO3GQ70-KCCU['H.252:R5F9!G^4(\;+D3)^!-.<:/0I> M9PD5)/)]2"E-%.4%D." 0B]F/(I9&OL,V5#>!7E+8[B]NLVIWFI_S'=0V8[> M+N%MQF8.49R8O X ?FT ;$M[?#( T)JF#&%QRDJ79,Y*0H8 /.<>I>L"%F6=_Z,))HB"4(4C!C )5#G'+ TA MCD(.<1HSY%$_0$EBEX5IKX311S1O/N5!4=#7U#*!Q7XXS$AI(HAG2F71RD.M M/3BHWYR45"M@C;U]=LMH^-RFN-BK,6^>RVB8CI)=QC_)C@BKLEY_43F%;0I& MP'#H,2*7D42N(!%%#&8)DC_Y&:%)2A 71ON#SYZ[--_IJXK%JNJTF,&^=MS5GC^S%D^]3.&=-_ON7^^ M;A/H=7%/\J;B7V_I]85K$GA=5'6UYD%"(IX*B/T8R^_6IQ![E,,PI!Y-4>#) M[W?,]L]ET4O[M/MG;U0I.&Z/QP!SN]T=MTC.M:_3TWKUY%BS51R\'H1X]&Z. M.5J3[.,8B'^1'1QS6,[MW5@\86SHZ UCI=HE:O[S08KUUXAB% ?4ARS#OBI] M[TM^2BADGH]90M(,4\O T1-2ED9%;2ADJ^*J^P$H9<&GK6$6TS"PPR3D#*Z) M^68T4B/"1@>0N")H]-139PX9'3#L.&!TZ&)W'WZP]KA/?!)B*&*5"AO*I04. MD?13$@\EE"(5*7KMAQ_\4WWXWWXMKO_P@RL^?"NX7O+#'T+*R8]0<*A78J_YL=+'1#F5DQ7G#,4BXS CB5REA$$"TY@* M"2OC41BC@,=6D9S&DI=&$.^WTNV2JVVZU[,-VE39BJS8;'!9C3ZF-A\/LQ7, M)"A/S"NZLN9!Z17HJ=W]HF'7FKM;OUACY73Y8BY]UM6+-2C/%R_V#QB1G/U' MU:YE1^_:S3S?QP'BO@^S5 B(HCB&61!D,/(S(3C%U LCXYSKI\]>&AMUVEDD MYCX#:YA(KH1@8JKH%+MP43?9[?,E[][ M6M%W12EX7JO"_W_A*I.'LQM)F/B6_T$^O'Z#:[XOH;;.HB0E M@C 89LR'"*<)S!")H/3:, ["U!-!;!4;O@BSED:V;>5AT9C0%JBXUN5;!M0O M7J5XJO=BZO.WV6H8]P!:@0XBT&($-$A H00.Y3/_&M=51?WO-QWWPE#2CT_ MC&$/9I M-6Y:8';5.A4^R**008Q%#E&$*,Q9Y4&3< MBY"@62#V+4R^643N7Z.4T:=HUE3::71ZZ^ 50NT2MT8]3>I7BXA#UK^\D+2' M_)9Q_U<-J1DM3C]",^4,M*.BD#]8 IZ8 O:V2(>[LP8;U_CAUSUNRON[XNM3I]8HP1)3S$C M,,8$0Q1A!-,@D20T5P@&1')<]+P*V)XGCYOYNB=D\8UI=6D$WV4:NY*53%^G2 L5V=!"+T8<;DXBPDD+!(P9ID?!'',T]BJ!<-) M*4O[?)M=\FVQA:V"X\HWG@34S &X&J:)O^8&H2[9\*"BPQJ-0PBXKH!J0$)@E4<9$ ME"!AU[/%F69+(YE^@2J3P[YJ\+2O+5=EV1S0W; ;GO*^Q&!.?5 [[SA>46O, M$>8351N[5KL7JC?F"-3S%<=<"1@;Q]W5-*L^%YND:5FNNOF.\XUBK7=%J0,G MU@3[E&9)"IDOJ#H^DL\8<7%%T:17U\WN@'=QKK8ZJ\ MJG98OF2]5C^Y_'7;5*R53[)OD37YJV#H8BY@@*?V.*\/#3R\'FU]LYLGKX>V M> %!?H9CLHRPO4O*_G,$XAE"[BRTSE3>N'GI-:[NU/]4 -]WO%'>\A=>U65. M564#^0\W6_;T#[TK/\O9LF#OM[1432_>\.:_\O?-3I69>_N#WBGKON":OU7I M/_6:!6%*XSB& 0\#B$B.)I3)FR NK_0<^B%3@8V_RC&O?G?WMR M0P,"Z% /W4X_'8%]E" #@N@P -&NZFN)<91:<3W\PFS#H=OLSP/)\D7TB+ MD9%#JA)0R=E V<$/^9:_K_E]M4[#($Z]*( 9]SR(&$L@R; 'PR@E*!8Q$I%5 M"Q$;X4M;>G6Z@^$:G> 790'0)EANVUL-C=DL-!7@$\\A3K&VCT,: 9K;B"0; M!>:-31H!S5&4TIAGC V3_-NNJO5N^K?B3'247J&0YTN<+[PIF,:_\O)[3GE# MTU\X+6ZW^BE-%F22B91&S(.)2$+5KPY!'&(*>4 S29PLI*G59OG4"B^-5)OV MXK2_VU&VU0;K0OZX=P^;;M;?Y1^4TZ=\QY+7>5N\M,+?=><)O<.E(NC+G.Q& M-&>:_'4Q).T%O013$_WG]Z]7IW>T#GL,J\,:H(G%KVK0L\EE .H\P#L.7YU8 MZ9F#7^<9@N/0V9GDCIO(_E 4[-=\L_G<9@#=4*H:5:F4@H/B:R_RI6,>9C"F M7*@ZW@G$:8*A3P/A4?E@.5G9S$9&4I:#504]G=UQL!9%30C63/"LK6H'QG-KL;A['3Q^*[>TW M7MZKZEU_Q/6NS.M'E1V_3CAAG,4)#!*>0(0"!C/F<]7?.6$$L9!X5CL(YP0M MC84ZW0"3RMD1S5DLS;C%!4(3TXE2$T)NV9MF[O*)X\U>.RW?R+]5:Q"S+1!# ,,UBR00D@!E- MU:]>&G.:LB#S37.%SLA8&@ET:H)&3Z 4!5I3\Z2API4@VOL*9M"X=1DNR)S7Z/BBZ DI5RU9F%\$U(Q,7 MD$WM7XQ#:U0E\"$HG!?^/BEL]CK?0R:?*NL]>/W([.;R%F_;MHBJ]DJQR5D3 MHKAEG^6KQ-O:R9]$6X,%;U0'O";!QK+;8]O_\'9>Z;2IT2.>UV9F_@E MR7%=A;><5_+?=O?'D4S[BL+=*F56;5?&K]U]G%5GVS_R8XIZS+O2V!&GXL=VHG9^'1+VH/IH&][%PNZCQE5 MOFO/?M "L#HF]56_<'Z'PZ0-;JYDA/,*+2TYX2)T(Y(5+C]SY.%'+@0ON33]%:]_Y7S;5OW_PRYG MJLC#^VV3$/:*BZ+D7'+X22PI.):# MC(/,BQ(:$2]<2\5)87Q4XD MF\^_K]R$"XG[!]4*0R[];[Z^!K72%DAU 6;% M@_WFB9.A,SR&F7DXICZRV9L#2&,/Z)J6=!:IS/'&)GF),DI[_%B9!;[M!^YB MAT?[4QZ'2+L]$7*AV+RG1PZA/#IIX;D1)>E$FPNY"28T@1F6/Z:Q;X?!T$F2&@5+7 5WG.F0LP-M-F4 MY0*^B:>A3L7>N:=$2FOIO*7+61RFZ-9R+.PE&K&<-?E,CY7SUX\C:)U/J!LK M=\T1FC)%=9,YJG9K1D@L"AD/4 @3@7R(DBB%&<(4 M,IZ1+$%8\,0JQ/%*?9;&.VWQ,5V-KJL]1O?:MVVNNK[NH.+;O%!UV6MYS^CZ M=-<.J1EUS3A0$S-V9ES/&)6%_2;?['0!P=;IEL/W^LE@ZC"K@Y'N M"-(1VDYY]%J=9J5;1P ^9V57CQVY$;VM<]:^DX>'OOVA*N9PUO1$O'_8=9$G M;W&Y5=4!/O-2JWESK[+?U@S%#,>$P8QGTB=$D0>Q\ .8^''$&16A9Y:.XE2K MI1&Y,@IV5DFBOOB)3SA@AIO2=G"1,XMB%G._%+8^%>+0GU=3,N>*D.K,I&<[H&]ZK=U[;:?#_H[+"\Y"C>WY2'M5)BWO.,H>([*,XY[ MRG6QA#>'.B,W/_)J'3&4QA3YD'L"0\1P"''L<^AQCPL?!32D5HQV1L[2J&L? MR=73$_RB-+5,5CJ'JQD_.4!K8B(: ]3H@+0S,$P2.O99TQ^%PXUKG+ M9VZBH:K$UH_OMU5=[II=T"ZDZY,^DZYT*?7J_;8I.?4L#D'_HZKE\ [G95-^ MCJ19F$4!E=23,(@$0S!#-(:$LA!'*0MCSF?INN':LJ71GC:R K=*4>FHJ4U- M5FPVN*S @UR2Z0W.N?IO.'^+S"AW,?HNB.0==/AHT $]>/HQS"U"JZ;31Z4B M)1J43D2OZ4MTQ1V@L (:K 4T!YEJ_)?13<2Y=?\<[4>F&E1G_4HF4W!\X8.> M,OM,93\E69#Z*0QCG\@9',NY'*)%[$H)]$$6(9I8Q:'6,- M"5L>*VQU>]Y&6Y,WWAY?,WYPA=K$)/$,L$[32;C"!!*WU92&!,Y;2LG ]*,Z M2B;WC YV*N[Y-_SC9E??%:K"HRJ_HG?/4"JR6# &HR3"$*G"C"1!,4R(E_@$ MB83QR#*.Z8RHI7%'HRF0JH*]KEU]H!';DP,8&P<6.4!N^IBAD:"-"?VY@(?K MJ)YSXN8.V+E@]HE8G$MW3+1M>;9!>=.E7$I556#D"]0K+1;P,*(A2B +5=TV M1#.(0R+Y)\ 9Y9BDUATF8@"AJCC",, MO=23;!TBE;_/4T@SQM,H1HEE^[\S@Y.+U)<38 (Q2IF$ M,_%4+P0*N>"A2+,HBWUNEXOK -!YTFM;]2P#1\\!:3;W. !GXNGC^$6;(&WU M @Q.9X)SLF8E\PL&/^?C2Y>/H]2!>@'O=O5.AU7N*YJ]_:'F ;[?=&(X]51I M0BC)ED*Y#$]AEA("8^&S5,5 XL#JG/X:999&SF^K.K_7#0*?U.QKM1Z]"7C5 M>)GQT5RC,#%I#;=D78&/O%Z=')O5DS8/^YXO4VP^NH#:*3%>I="L[.D"NN<4 MZ^29(P//G^RHMFO7F 6Q'XD LBA)($H%AS@C*>0)YI&7A8&/K$HPGA*R--X\ MVO,?M95P$DXS^KL6I(EIS1H?^V#O 0#>7(8EC,289%Z,D%6JWY/'+^U#OU"OV 0PLP]Z M/ Q3[\JUS>$G<"Q.V^PV?>VIB'GST$Z:=Y10=OJJ<=]JFX#Q7N4WXY'5@<)UZBR-"UIK5.E;;0_H&=1&AH*#25V"_\$H\(LVR]))N')( MS=AGOH&:F*TF'R-KDG,#K5-2O%*E64G4#7S/2=?14Z]K/WZS/5K ?2ZD(H_? M^(_ZE03A[VL_XG(9Y3.(21#*M15/8>8G C*"XC2@-(N%54B)N>BED6^GN2Y/ M:-Y0XMH!,*//:6"=F"J'$5V!1G/P2_M?90+0-C@D1WO@)FE.;B#^13J4F\-R MKDVYQ1/&QM:7^7=-E?U8W2W[3\YN55-T*O])ETAXDU=T4U2[DA^^KA1':9($ M"4<2BDOQE$D/+,SP1-@XQ;-AX<\80 M"H(89DFBVLB+ *:$># .$Y:)E'K2[5QB#O/2R/I$BO*HNHNS#;P9SR]Q.">> M$UXNJ_B?+UOX9>(?72F_K)A(QT/R4JF\TVV-G%P_\(0$F B(LB2#B'@,$AI3 MF$51('@0I]BS6C_8B5_:)#33%LGX9<-T\+[H5LGT*X-QP,VU5?+BWO\X>"RV M3-QY^ ^EJ->JB.P6$'U MA-_\-@=H3R2^T)OVN^M)VQ22AI[5U9ISO3CT-.->O'\6;C6UHF-1X^M'-@$J MVSJM7VM)ODWI+$&")$M#Z>X% 8(H#2.8^3&&@A#L12'RL+"*5C@A8VDLN5<1 M5$I'\-,#+N6++#4%_]/[G>?YAXIH_PK2E>=YZG\ -]FL_^#L7\&V:+C6UV_.&4QW*#T)?_]6SW-HX-8)F M;N.5XS(Q%Q^&1*NW:DI_KG< M"\-[1ZP,ORA?Z9-X^^K]MS[2A-;WX_Z5DC!7+Z+=9O:\:XHO]UQR83? M\V)7O9.OZ&OY(7*J.Q0T.4+_[PZ7BA/6<40]SA,!!?-]*!TD'Z8TB2#.J$^# ME%#*C(Y[9M!U:7S7F FTT18KK(D'U&!%NYQAFIA3M:&Z84LS5 _2UM9-[J_P M5!.NO+47\#;14?54J^\X>&AMEG_8Z2YKG=5 --EV_]7:O9Q7P&*=OIQ78::E M_OZ5X%T/G[;'B0VBG*>4,>EN2.Z:2"N=$O)VU9'BSEIHH$T<$=>?G@F=D/VO4=Z%JY MST;0,[*7I[*W$QP,78&#J2OPA\6,LX7/\?+C/9.O\8+C;N<=3#LB@U[!1*+G M\P:FQ>Z)%S"QJ)&US?)[*>"3T E1@I>?A'KPI[(M]J-+M!*"_9BB&)(4J=F< M4;%,;S! MCY6_#E.:12A-H!_$/D0T)M(KH2EDW,LB09(@3I+Q'7XL-%D:6?34!'6C)V#X M486/J!()NL>>U-LRQF/\0)GY++/ /S$)/>LM)%GH8,8*[ T!_1%J30'*EJD: M$(U <\(613;:O& 3HQ&@#;P- K4^@%UA>42[#EPANNM*^"8>G&ED="Z35$R M^8SA;E=,SX7,NSPZ8^+16NC<=6.K?=4XWW+VMCW=["JC^T(D)/$@]\- ?L@L M@21B*H\ )5D6QWX<6U7H.RUF:9]SIR7HU+0MLW422[-O^WJ$IHZ-> [.!-_Y M, B."UB=%#5S8:HA[6)=I/?^DC **$Y3Z!'5E)Q0!C$G N+ C\(( MXQ3[5C'QQR*6]MT_\Z='[:J> '+,@F1A>Z:6R%RY?IAL,_2$F!?T^(>V.@>N M=/&!'YK&4\&YQ_T8AE',5*?! .(TX# @)(E1$OI)&(__RDY_C4_]8J*-1 MIE[K?*_M-5_Z =$QG_LHG.;>73ATH^^E*4_% =.VB3\GZP79X&(+]4N7CZS# M7]S?YW57D.AUH8]]^9:>*>H5D8#ZC N8L""%*$@P3!7$OHBBF(29EY@=AHP3 MOS06Z6FO SV?Z&]9P-]N',Q(9CIT)^:>06"G+Y(P#C>WO0+L5)BWB\ H>([Z M"XQ[RCB:TZ5FONZVK'S\D&.B6AI(.:]W92GEKWT[#?\D;B1=L7RCCU*^X)G2-AML;A5;VE$U5FGPK7Z]H&#@:"S$*B7"?1LU-E/+C>W$9/H2PVI?!W$2]-U6.W2KXKPU#2>!]ZARX3121F0_ MG3VI;RHAUD6; JZE5>LTBU@09A1F!(<0829@&HL 1DG$$S^+PI!DQEE-=K*7 M-@DT^E;ZTW_H\B5QHW%7C<:Z9NZ8,1EF[8F1GGOKKZ=[6W56P=ZJWW"N31ZS M)=06.4+303Y3[H];Z.W2><:!-YBF8_G(^=)OQMGZ)*UFY"/&K3SW=)EW MM)PN:692?=:ESKS#\7P)-+/T$4NCS_A1PKGYPC>X5B7FJ[I:AW(>\L,DA#1& MD5S_J"BD) M5F?8HHADE&39?_YP0L+3YHU41E(V.@"HE+?SK4Q@:K%>N1&9B M$NY :=4#KQV 8K&RN!*T?N+-#UTW,K0" M/^32[]-U=5A>[^0X2Q)5YQ#LU:[^6-1_Y?5GG+,U]06/T@C#"">!ZEV70D(S M'S(>4$^D86)8J-U6\-)HKSNN>01YJZXN?+7WFPLA7>?B0:ZR'G54 )?+JP?[ MP"WC<3$,LI@ [:G#*QJ505]GT"D-R*X&4FWPR&N@%'<85V$)E=N("E/A\\92 M6$)R%$5A>_]UVP^]"KW2;WRGO,6>T]B+$Q,X8FQ1K-/G4^BQ6+IK MC(@TM:K<82E_:#TW0@'HG@)"MF4QU>9.EK"="Y-:SM8T8L1C](09_$:TFF>?T. M4^V+-(8*MV_!;QS2+LMCW(&>JD01*&4PI8S @$2&12$D6&"7,C9*^ M--8[Z*HJG+;**M].:VNQ=+,>!H/%[I3@3DQX2G4U@33*@TY[M;/X4H!;+*2G M!'ZNOC_W:E-,#0$>1!RHP[H[#F@S4**UUE5QWK%(#J[6K1\ZWU)^K+U/UOFC M'S);4_L;(B_$U#1H]@H)"^*T\0W4.V->MGWZ8*0S'K<.,[YPP1]/2:[!ZYH*^$//,P G\@E&@S9\6 M^#)S_RAP1B4%NIK?^5:%/4@Y.F7H=<48QUBRA)*.$Q" MCT$4808SK!I?^7'@I7Z0)9E5F00+V4N;\74+$4CDTH@];5S3;U9S, 94^+O. MSGB03U$M:^HR)[L1V]XVPV7H&DPS"%/["(W6FOV:1,2GBH-6\TI'2("?OG 5 M,(\W>L=(_N5\3+R]ZV /H%L?PD+^O,Z$/3!'7L6(1UR1&_VQV+8IP+VD27U8 MTCO4XY0G7A++D< <(B82N= 1&4R33 2""$P8LTZ3-A"\- 9LOKIML85NLJ9- ML#=CM"D0G9C.&C /.O?SJ2<]KK/%RGV2M8GP^?.M+2 YF7IM<__(>K/XQV== M7/I-<8_S[3J)!0T\3B#W_5BZ9(D'TU3^FJ$L( 1Q)@*C\- SSU\:_4CU0*,? M^*71T+;SQS/\S+CE"E0FIA ;0.QKSIXVVVW)V6]K HX*S9RX;VVA# MMQW$:O>6O\$U[@J%Q&F6((I#2,(@@BCD&20TD8A1YE-?Q&%"C [0+PE:VD?= MZ IZR@*E[<6"(G;H#G_I+C&;^),?"]>(%AS#6%S1A^/,@V=NQC%LWG%'C@O7 MCSUJR>_Y%USSME:RCSCVA.=!DI$ (AH)2!(YK9,P2C#!6>C'5BN-9\]?VL>O MU0.EU,_VD.0I;*8G(J/!F/SX0^&@5)N@J/09LQT?:CR5,?,)QDD#CX\K3E\V M[LO]<"*7P+:4B"Q5F)6GQL'SG,9&/L59]87]V=33+-A]#E/GI MG^"(IM##6:K:!P80QX)"(A(:L,2+!+/JA3->E:6QW]NJSN]UEJ)0E:6_Z\K2 M\JNE>W/4C[WT^&Z7U9(;KQ@\,YZ<9T@FYLS3-0X.=CPM5;#:;],^3E#T\GI MIRY#8*K.2Y<6L(3-H%R [1/'$>[SBFNO<)73=>![@B*10"\4JEF!I_J*"0P3 M%/$0^43$*+3ATI-2ED:36BFPY3JLO)#KHP=>-N7-FMZ*Q6:#R^KP5\M&BZ>1 M-B.^J_&;>I?HJ#+D"F@=W5'5( 1.6>BTI%D)9M#8Y]PQ?/&(9*RV),F^\X'T M_DYST;?B%5?250KL4:K86D1^FA!&(?-)!)%'/9@FD:23C(J(TRQ-(Z/45(R%QFYBNNN&K=>H12J*=?]0LTLCF'[V9DLL&/KX5P#IS7.64X8,1@.E_4^4Q MBEHJJ.Y^P(]-D.QN*X%HLM#.K:MP64H%>)>ZMMFQ9B.JNM-!9DTI55=):V[' M;3"5S9&H^1+-8R>NPDGF:^^]4H33R9'0#2 M"J[ VPL(V0> #2'@-MKKI*1Y0[N&C#V*XQJ\>.1!D602SI\^>;]I\+F=K=[L M^%^E2ZGZE?,UCM(XD-\^C!&-(0I4_7-I.22I'R6AA[T(6W7'L-9@:9PAWRYD M>2QD#;KAR="44$Y].*1U7X$C@NGM:-8%(%P7OUH!90/01C@\(1J+G]M#(FLM MYCTG&@O2T5'1Z >-;:;^G6]WO&DCL=6I2G_)Z[O7NZHN[GEY".J.H]A/4^Q! MS%3_'XP3F"K"(VG&XS3U. HCN_;J9H*71FRMWK9MU@U1-J.T*;";F,E:E;NF M.(W2X%>I->C4GJA!HBU8CENV&PJ?N8F['23';=TM[Q^92ZP/S#\45?4NW^(M MS575YZZNPN=BD]/'?K?7C"8)4F7[*(4H]#G$'B)R3"AB& 51$MD5)K40OC2. MNMELBE^ESDU^8QM9HDRQ[O1J,P)FW#45KA/S5P_$%=AK_J3/?*/\- E 8U!S MF\QMH\"\N=PCH#E*Y1[SC*LW>\VNH3,6R$XK76E M^KPYM>Z*B9"$("^2W!9&ZE2(^![,$A%+YDM)3#GU$;4Z6KY>I:418&M1K[W% MP:@N_>9@%FCL @?#KB@&XV!\K9S F49M'O=PX@$;ZSLZP'@*K_(:M5["WW0 MXQE/U,63Q]&YG"_R6J[0OW/V?EO+5UHUU;J1GE9=W=P799W_0ZO3[DO>",E^ M:NG^3MZP]@,6^+$?0I]X"**$^#!+8P&CR"..9QV MZI1@K]%G5F9U -QS2G7QR)$=R]O0*]72Y%"KY^9PXO_J\7!)NQ=Z\RLN=14S ME>VWK[FHD_N_W>%MT]ZP^J@:'E;RA?ZX:W+V$HJ]+$RA1Y(4HHA@B"E-8,(C M7_B"BRSVUP]Z"OE:X[(VX]_9]+M:TX&V?04:ZY^476Z*\M02@+;G<+4">PSDCQH%=Z[*[ /GU+&93_M9W:#9 M!^6YTS2_ O:U3-ZT,:'?Y*WKS,?"BWT&D<\3B+PT@5E$!,Q")@@E41J:UR[I M/WAI"\E.-Z"4,Z],\@2K84:_!H&)"=?,>*LZ(Z(@R80/N2?_#P5>"''$/8@3$GC80R$)A=79I;'HI7VN@R63 M+<\NS?$W/+F6UK!8%*!V>V:IZRA) M)Z3=\WG#2;U&*(B8'U/(,!;2BPA#F/G(AS$66>:1-,Z8Y*RBQALSSCHAPXJ< M]I(FW)16,D#>*KJO(5UR6MQN\W_P\]U'C5$U8Z(KL9J8N=$L#R"M_>EOQ6;U]\$NWQ^K/ZWB'):"3B&/I^ MQB *:0S3@%$8A81&,28!#1(;$C"2NC12>*JTVJ(NQT2&FR%NQA;.<9QZ>^(( MPBY*?,I:ZE8HN6V-9R1YWB9X-F CD28I)Y5[YQYU5\:1VK3+-VEF0=\,:=U(X?QO^^1G9H/ MFA<(_*+ 2TZ#J>"EQG6?[8#O;X)_]U.]4X,SPL<[9W28FRO@G8A\(4_J%BM M[>W7&M>[:LU1$A+"/>@+=>B'4093Q&(8<\JS.(H8PT8+]TN"EC8%-;IVZU*P MUQ8TZMKV*CB#[N430E>83A6<>?#,O0J&S3ON57#A>CLZ MJ,IZ_3SVO8F(_R1N6*'IYX;];5?ITX.ND8'(6!9$'A1,G4)2*KU@/^0PS'B< M<<9]'!CYOF.$+XTV>KDF7!NPZB+0=$VYQHB5_*DSPXQ(1HW+,+E,C?;4YY// MDWI67;J/!/IF#_3! H?=%JZ!;LB)D\_M.7#RM^?.VRC!L_#7-9!TG';5,T;N M6W+!)7VR;_A'KY';FE.2"!92F :"0H2H![%@%'HBX&F4$2&(55S%:3%+XZY. MRZX&;XU_V"["S^!IN UY-4I3[SMV *EF;#T5Y_YX_K-#/?%. MH(L!7/YFW]'6W<'0!6S;71J#9>S,G=7RGV/S[1+(SO;7+@H:4;>]J[#VKBB_ M%J*68O@;_IUOB@?U9]62OEJ'),4>YC',6.C).8$E,/4)AC[B*>8)P9R'ZZTZ M%>,7\L!,11IQ1-9P1%_PA,LV_)#7>-/F@JKO78?%;?%F\PA8H[Y*[&H- E29 M85&CVV0+&K MQ:;X%>"J*FBNNSGI G2JX'@?98G^?<%RT=4?44Y,-QH/97%;XOM*780/Y2:: M,>N^ ;"KN(ZVEF;@#5(P M-CMI&92R-+?_AM)BIZBKW&N[4GV ;&LGG0)44!(FC*B&=*&0_\<9Q"$+H, 1 M%C3 1"IG$VE^/:!SQ9J[0,]L67,U)A-/C3W]]"[-!)&F@Q X+M]T2M+,%9D& MC#TNLC1T\=CP\N)[7LG)3]+SFV)':K';="2R3N.8\0R%, NP#Q$/,H@Y%=## M H6)\'"(K:*PAH0MC4E?R]7,K5PXUT47;ZZ)M DPI<5W7EIGP@UB;<8/KA"< MF";VT]"7WC34*]W9!:J#GU2L8BF=L_/;3B-"U2]CY#AB?4#@S('KETT_CE\W MN&?L<1"I#W$WKW%9/N;;VYM[]>QUAC-&>))"C*63AJCP(,FPY!J!.49)%)+, MJNK:D+"EDFH#IJ>_?1=[0#O5+7:?3;$WV,B? -&) MR:,/9N-+[)4&>ZTO![.-1]5B7W\"=&?:VS="V='VNB5*@UOLIL^:;YO=TKHG M6^VV]X[<,I(C_U&^"S<_\FH=A3'&*H&!D"2#B 0>Q*%3MV^\ XXI]$DPNUCM)8$!8ED,>A*J*;J;,Q3&'",4T0 M0@D*L%GHA)&\Y<5-?&XU;%ICEQQ7N_*QJ7]K^54/XFSXF5^-W0O$11PT51 V MNCHD A-(W#+#H,1YJ<+$^"/N,+II9!_>8GO[C9?WNC16&M!(A')=%GE( ]IN% *L=PJO0,Z,1\?B,>M>ML.& MP"?,==OKMR]@WC:^)TP[ZM![ZIJ1S8-P7OX9;U3_HH==77U0X4E^MR'E$R]% M20(C%B00I2*":2S]I3@.8AHQAJC@5LV!SLM:'/LIW8!OV?EG $NSS]@10A-_ MU4I+H-54S=*4HBO0 N8P-=("$[>-=P;DS=M8Y[+A1XUS#&X9QQ,JZ@97=_K$ MG''VZO%/E6K.\UZ7CU G8K3.O^L$JAM2Z7:\:X33)%3N418TB4MRSL^0@#[E MA 1IN=\=\63KFA>L>_@V%3*6( SI,6:Y@ MFIB41B TK@W&&0BN:XGQ_*'SM\7DSUT^_:/AQ'?7+MXR(0OFBCL$_ MB?=;M9W'V997U;?B[:OWW][I.K>U!> M)1HTZH,'J7_;BY'V+)@2<(L@E2F!GRE:9>0 @)^>?@&_=94P.A;2P= 6ZX?. M%^,RUMXGP2ZC'S*RILUQ[FJ[JXFSC$99&JOF.ZH/+?,AH2R%&:=QP#TF4F*5 MR'!6TM+F@S=']04L:\>DI.L#]\$0JW)57.2INW-,HE MHX]*G%R\8>3YT?E6[1_R+7]?\_MJ+<(LC$,_A6$4!RJKP8,9BSSI3_HD0)AE MC-D=)!D(71IC-#I#K30X: T:M<$O2G&@-;<,KC,: X3GT.Y0!2^^,H M"XSWO_WOZ2!G_PK MX,,Q;N/@-^,DEZ!.S$ M+=?\YK;DNF10M32J:%15462X:=:[5[?MPV>Y)AJ"V=#M< />U!['>-SLO8_+ MB+AU/ ;DS>MS7#;\R-TPN&6:1C1% M*!7<93T:E?E M*BRGM_J3@E[A*J\^B<_R5>PBO?9-ZM<\15P(/X*^%TD_" <"9I%/(8U#PKT( M42\BZ^^\)(4I1=DK8?.)]569[DO3VJIXM;Z^=C0U8BS,2&M:?">FL$[Y)YM& MBL=.(@Y^438 ;81#0AN/H%-Z&Z'&K&0W'J;GU'?%D\;$G//[O*ZQM/&3^*9: M0/XEK^_N^(;=2,^OK#\)2;BZ==)77M<;OP31=WT<9IUO,*.L 5HO, M4E=RQ[JDNVY\!ZJ]E4V-]\[.-A"X3::S"<)V./##7/R2PSDQ0_^W&TF;2/N7 M&='9VD')&9:WXY2KCC4;W0JJ+N2/LP^Z9<"^^Y$9CN5W*&_&,'_W*#W- )C@ M^>-6.M_R>_D0J87*P12J&:(JG_RI_,K+[SGE;XI[G&_764A1) 2!0< Y1$@N M*)TA*OUZL4*)Z<+%C/)LZY1K,!XOBRQNWDD4;6E+AON4T5R;NA_ M[?)2-7VMZC_R^JY@:^ZE$0]I!CE' J(,>S"-@A1R$7AQDN*$>XE==5 3L4;? MTE**A.I- K)[)%C^?&BNK0IC:G?%DK=,1L60MEPA/1-K=:AJ?5==0:U.YQ50 M6H-&;8><90&26\HR$3PO8UE <418-O>.;>W9>6NJQ,W-5O]';55_QQL5CWCZ MKUWIOC3.$(LQ)#Z/(0H8@JE@'L1"\$APE$78JE+I-D?>NJ. M=+VN&B@S:IL+_HDI[PKD1_32O!XRQRTWKU!HYLZW!=E MW;; ;OLR_I7C\IU\X]=>FOB1YS%( @]#%"8$$IXQ*/D31RF*O(Q;M7<8I\;2 MR%.^W)&S_-0A^,V(<7I0)Z;$P1S6E6X6JK?R^M:L@#($*$MFR6LU0'*N3-0DH$XE+8[OC=F1-)JR+7F2G(3# M^F+-QYZ#.TWGL4%\;-J.G7[0B_4<&[1KJ.'8\(UV!%V5]?J/UYE_<0L MV>KE,.GWK+5#OIJ\J>>GR=^>^VC'3YWE6SUK3/=-GK]@A'-TIJ'0LT]^S0E/ MA!\'$!/?AXBF%&+!?.DMR84C96$0X<#8/3*3N;3O]4E?K/))7RSYXH323SK, M3]NB-CT=L!D% X_)/;83L\% N['G,[Y[0"V\)O? SN0WN0#8SH&R@VK0A3)\ MU'Q.E)UM3]PHRUNOB\:7[AG)M_K5D@)4\(L4+7^J>;LI2O25/PX?6= M^O']]D:W\-(ZG;IEWVK67R/NQZ%( JAZOT+$(@2)%V.(?,1\&B4",:,8U9GU M7MJD-R.A;T2LR3"#+FI=#LWN=VTJ)G&Z4PU_MBMNF] MP'=@8G]HGZS2,UD%2.R'_8D)H&^VO$P;KA.$M>GM)'_RUE[S=O=9+C.-UR2I M,5/K_B+Y-#,-R+DDG+G$7U.JZM.#?N[V5A>SV3^\<]O>[/1IQ+=?BW7FQ]+) M(0(2BJ3+@Z@/4T$H#"E.(B^@/$YC^_)5QO*7YL2HY>^8HE7F@)M-%A/".#'I M=\6M]KIW9:[VZJ^4*T X^(QSUAZ*2A-RL$IY) W_Z@FE*_X)I_VJK(DV?1)T^#&)H,_5>B]. MYSP#X(\/G?WAJ,LS6%3S@2 M3FE^"CUGG0HF!/KY=#&EJ'%3BMJC?+^5S]9[U[W-R^;'2G4F5-ZYOR8B]H*4 MA)#'+(8HXP1BQE*8LB@(*&*11ZRV"(TE+XW^OS9I(W2OIF9_.X(WA]V,MB*.3O<6#39F-&W:U(L/M\FZL2@'7^G;?Q]G(&2_S #Q%,")4SF-KBR51*991X M(4D#CEAJY;2;B5V=,\U$S]M&TPJ.HYZ:=G>/W5H0O"PY>Y=O5;D?E5Y>?>3U MVHLXCY-00#^(8\E) 8,XQ!2&."8XX'XFJ-=5JOAFLY]P4IS1=_.T0L6W&2CI M3_(?=7H49SH_!^15M=/%LZA2W'8WX332IGL'XX&;@ T@KJ$L5N]P3&,3 M\0[ :5DSK_<'#3Y>W0]?/HXA/M5WO%29)R6_DX0CF>?@.LFGZP)AG]574FQO MZKK,R:Y61=>_%9]Q*7VH?:7N) PH132"G*0<(I902'":P"")(A91RE!L52'= MD5Y+ MVZ8FV:JK0H;W&MNVLA@$VXQ;W4$X,64>T&MKC[6'<3>7T1O1L\($%,?=*@9% MSMRGPL3\XPX51G>-(Y8_;4M.B]NM>I1DLE=R^2KRNEHS$E&6R'4D0R24C,(8 M)![+)*-X),8DB[T4VS#*&3E+HY*^FNHL!9!643L&.8>J&74XP&IBSG@"DU01 MO+H$DS557 #!*4>@S@6@2Q6G@6]5L/B=H:81P.$D#>TU'E@8\BZW-H>AUB,US@FD) MULCCQO-(3' V>$+8"QSDG3?Y]*G;P/7V14A>[^YWFV8O6X?9E7K!/XH85 M3>N8'WFUQB3RA4\PC+&*:,-A!DF89A!GA+) KD8B:E0GSU3@TNCBH#-HE%Z! M1FWP28!.BHWI M_3(K5O?9D0[C^?I;B5F^O?WZ>$^*S3K"(2-("$BB0#HA!*D^P1C#((TP#GP> M1J&1$W+TY*712*L<:+0S(XICN(89X2H0)O[T#>TW_KC/VGKB*ZXX_=UM\?UG M>4_S$KO]SC)\WRB9XUH/L6SU\P,AA&[36H\T'.WNQ*^=3FPSY4-Z]R M';RS3M(XB!,BJ8UC^4TB51E7'4+S@"=)X$4I0U9;CZ:"E_;)[L]251<$W1HA MWZJ ]K_MME1/5*IQ$\ '"]0!T6:G7_.VE4*[?=ST?A*[>E=R?;3$M]6(LA;& M(VBV_)AB7"9F$:TR:'0&C=*M!_&TP4*KN)ICFO7N_*)T>J-&61YT4$!C&F$$4"0QQQ GFLCL,S(=+,JHO">5%+ MH[96/; Y:&QYK#T JQG[N %K8K[I*;D"'6A3G"%?1L-MUOEY>W9]I&S$&WT@+])/ZFD1II5N8JD*..F4> YO;4UT:!><^ 1T!S="(\YAGCDYG? MY!7=%)5C>HMSJ)2C->,@!0!-3C@XI/J@(?E%* JVE0]_G @[.$XM/R9H]C7C MX%-)PT.7CZ2!_1-5K;'#EL27IEFU#E[6D2FOY+S.]ORT?\=#STL%0CYD+ L@ MHI1#'/L8/,,][6L@F9J< M&C2T<@X;@5PTW7&:YW,I,V=TGC'R.'GSW(7CON8;2E5=5K5-76QRFO/*E 2=EI-L=UX&P^E+.R!NUK?WLMG/7V.#.\;N I3Y=QWE<:A']"6O M_JX#CSR,,HJP!ST>$(B0R&#J4021O-AA@X_R7"]93B#L6J?A @. KN-P4L"E^9 M/KJ"^TG&,$Q5+KSD$J;.&SB,$AKYJ>>1%#,; M6GDN8&DTTNC7!I+^]("[?EC_T_N=Y_E \E=?\KY<@_Z\@\E91 M$JS"%'7I\WD3.*DJD87!RDN\59R$W3_V6 I@_07^[]V6@]!;J5Z?OGY>D,4K M%(7GGH=67H;./^\-IWHK!H2^?J;W6SLZ/'HGS.COFI&>F.[:06[3]-L(UB8F MTAW)G;/?*:D="9F5Q,Z9^)RTSEXW^@P5W]Z6*L0J+[:?Q!?^G6]WTM7:\O>SJ"<>GOE.A3'G&<:0>/ZP')8Z-PGDD80G#AR-+MOK%>T MU9N_?\GKN]<[Z1O<\_(5KG+IAGTN'+V"#EV,,Q$CVSWV,#Q[$W9'7WR'9L]P^;XI'SK[S\GE-^B+?H1V1\+'3- M;\YN?L4EJ_2&:O_?5:C&QZ+^*Z^_[$ND-.E"NK&X_I.ZSE_'.$NQ%R90T(BI MELPA3+T809QP(K(TR'!FM4R<5_VE4>B3JD#]Q$5=@'<%?N7Y[9VT&^+OO,2W M7"U+53J_:LQ<'NP"/^5;\,AQ65FN^&9^>KFOQ,2L?R&Z3K>E:(P&VNJ5 MKD*L E[DX-?@8.B^[(-Z3WK&.NP+]R)CY+9EW+PFS-M-[D6&YZC1W,MH,6X> M[1)">JFQG\M"RKC'[[="_4<7Y^B"DI!(F)P(?8C5.@!%S(>9[R4P%CA*O-@/ MXL2WF0?MQ"]M'MLWF.^I+TFH+("V /1,,(EW!\^Y3O>63QD93WV2GGO^QZO'HV!NS=E-;Z%#$$RE"T!_N\/; M3[J@4;6G^+^T[NQ-X\W^03ZZ?H-K_@[G97/B0%&(XTPN+^(H"" *_0!F0G@0 M\92+-* D"8-UXP1_K7%9FY'K$DRSX8[G!DY'(\VD^_0LJ0:$W^;;K?JE$-V2 M0RTQ6+'9R$7&X7#,;-_7KQ+?OO^&*9>1Q+4'5!?DQ_S=L'Y$E:&7D$)]?& MS2*X[>K80P8T32UJB0UHP>DMGE>@ PBT" $-$5 8 0528L_?- M0O:7M.Z(]^)U8T/ JXKSI^'EO:(#&'$OY#R&84QH;9SW(*!FCKL[F"8FS4;1%7B6(U)-5)W!#!?'$=Z#(F>.[S8Q M_SBZV^BNT;G438UQSDQZL:U9D#!*10@3G$80\22 &?8PY!G'(DL\+MG&AE L MY2^-87KJ@^)2MTH[(K(=&3-FFA#OB:FJ#[55(TJGJ?)CP'.=/V^EP]Q)]6, M.I%I/^HQ8[L_%I1S5KV3YJCZ7OJQ7<%Q79AFG9&49(Q)FL-<)=/*D4DI$C 1 M+(W2. @XMNK7=EGDTHBNTQBH0=<-P/<51:]I!&Z O1FON45T8BI["N8;#6;+ M5T^;AKOL#6F*C^/^D!?%SMPCTA2&XSZ1QG>Z6\GM$X6[@EA?N%JQRX=^$N_R MBN+-7SDNU[Y'&/.P#Y-$U__#$9=K!.O@ U M5.?%%Z=VL)DL7"V?>%U\GO0;2;[5&ZJG2@-'A/A".70L3#E$<9K E& !"0]9 MAK&7L=0J/MU,[-(H,[P[G&L](57=9G3NFTUWAXPR4O3,$@19#R6)!3%#&9$=0;/! U0 M$F+$K):6)Z4LC7,.2K9%%:H=^1NGM?(4U.&QM:]V&ELSPKD:L8GYI0=6TW/+ M?;W200B<C",9(3D\=8 M$*TIQ (6IX1B(G=6>K$ XCG9V-PZ\KAO6^$1ASBC =^G/BQ%T2.N_1FR$$1V=MIO?9MQ=_TT:T M?>XR"%3TYSJ6G()C%,$LXP@BE/DPBU7[!>3YU(]3Q .CD*2S$I9&*9V27:*U M5%.'CYLW'C\-Y#!K.(%G8IJP1L:J)?F@]:-:DY]^XFPMR@<-ZKNHGT?O#S6W)=?"XO_8#EA <,^B+,( H2'U(<$0A"L/,)X)G7F3E1]B)7QP% MJ&R10O0;E%^=T#R$OMU.JWM,Y]IQ?9+0W('<^R/8JS]I-K,!:E-G,P^I\-+9 MS ;P&&0SFSQE1"+)%UYQ>QDG26C$76>>OS1RZC0$-?[1ELFV228Y > P_3B 9?H=UP81J5U;^_I*1"S2 M2*Y#9J8LDF:'0K%MV6'5OCGR+?H[W\KO#_ ?#USO6C?'_\W?\RVH[[@.W<3; MQ_^G:D-C];M7\GI7;G4A(G4-?GC8Y!233?.OJF;5[QQEF9S'>##)Y,1M\^68 MG-?Y28K)P&7.'+^JJRSQD=>'<,QU$#,A$4MA@$(/HB2(H'QB!(F(,,LRP01. MKO3Y3DM>&J.J6+XQ(=_F4(]V\*X'\$5\NT.Q&H7MDU#O23V[8;BF=NK.2']I M?VX8% -7[L(#['BJ*NOUZR9=2DE^A3$"?R>NBA$$-$(PQ3DF30SRCQ_1CYJ6=4FG>T!DOCK8,1@&LK5EWA M#;5V;2U9R9\:6P!IC#$CN?'C-$QVLZ _,>GU@'_; O]Y#_S-'OC.#-#:X3 2 MX&H4A[A0/KS'@_*WYQPX7OHL7'@U.!TG7O\@^UWXM]LZKQ^_\-M(FX4^GA.P-*8K=$1')34)U'F._ G M0;R\ 7\M-!/3CB4J5KOO0Z:/VGP_^<#9]MZ'S.EOO0]>-VX!]JWDN-J5CSH M21=EJ=89YCP2$85)Y*EC>H]"0GP"8S])(\)B++C54NN$C*5]PIV*3<3@JFUM M9+? .@6EV5+J2H F_I#WV+3=B[X.8V.],AJPWND:Z)2<65<[ X8^7]<,73JR ME:O.==V5)=_679Y$SJMO:@OL$$6?$4&3).0P\9& " <8DC -H?!BU5&$(2:L M H:-I"Z-#)H$<-IH#38'M2U;OQHA;L80SG&M,Y@D;<$* M);=M8XTDS]M$U@:,HY:R5C=/D)/ZIRW+*ZK. 3A[^X.J+9ZVZVR6,)2H=-10 M=9V-$@*S-*20!0+Y7$1)''GKK>K+Q UKIH[2P^A;RYIOK:_-=)^<,@/D]P^; M7*[A=8TM7IT_F78X(F8,-AW*RTE%[9L!&CLFZ&1[!8[SY9Z>U60Y::>7P++* M.+WXL!'1 SWB;60_L\(GGVC2XU*WF[:!)7OWK^^Z2H( M?)3F-&[PVL-)Y..(0!%AY7G& ='OLJH,X_<,I.Y--;MM :\51LH MO<%#J[@%=1AB;L"_[I&'S#/VYV]5U12E^\:8V,D&+G$ J5_X-4 M*Y^4)BGT$4;<)W&$L5&]]F$Q2R/H-GA)A9;N]1S5]O@,JF9K_>NQFIB"Q\!D MO5(?1L'I4OR,J%G7VL/F/E],7[AZ'!7\:2M=Q,W_3]V;]C:N8^O"?X7 !6[O M!LR^&JCIWD^IZ72]J%T55&7WP<'^8'!,U.U8.9*H U8P0W<(W,"END]J1<=(<8[GCA M,A9.N:%GN$GYX;+:KSG"X(X!N[W;LA!R ZEK(;SNQ\$X06F60)*&*93& X>9 M+TDB]@7'"(*6OQ4"D"Y:_TF5QZTJ MQ<8UIP_K8E7E/RA;Z_*D3]$Y?;_!X=$.XJL>G7:&%$%C]\7:UU]YC_S^N']II+O R\__J*KC6K3>*.F MO>),-2$0F(01IP@FJD8Z2E@(4T$99%@$H:"<>\(J[7N #'.C[E8%R\B4(>"; MV7DC0SHRR[?2-Y73._G!3ZD Z#18@*T.H%/";1^(*R!T7$S/7HZ)2^T-!NJX M$-_P1PWCOVV?PG^?%%?S,:+)5)*J"0Z1E))>0QG,,VD@2I0 M'!*14.QG5BVVS(:=&\OM6J&"K;#Z<__UYA^#O%N&Z)MQGGM,1Z:Y:^"TIC,[ M=)PRF.'0DY*6'1RO>JP6I9YW*S_;6H>?5WSNYYI<.0;TMI_=V5 M^?V]W*QP[&5[@5\@9;ZA'P')F2]B0&6F30R+QHJQ)KL4$K]PB@6NR]1P!WHHUX Z+< M6*L"&%SG$OVE4CWE'N5^NRF5_?,AIP_@9[%9,556H^3_OW739TVW<;?4[F 7;WOO,)/VO7Z1]DND9S3@B<<3F"0D@L@/?8ACSF'$8R\- M&"$B#6RLUZ,1YO9%: 1L.,O.(CT&S\SXO J2T4E]A\8(=>7/JN[4B#P>95)[ M\:R2KTW#\Q<.6\W_P&6NCER^2TK7FR&/HRCVLQ3ZF#"(,A[ +&8!C#,O]6(L M(AQ8>=]>#S"WM=S)!Y2 @W:91Q":+>EK@!EY15MA8KV@SRGN=#T?#3+ILK 1IY:>_RFD8J@-6COMM4S!/C M3)MX>5[1HS3+GDL'E1O-'\FFK!1S?/SUQ-?5]G Y#-.49SR",<50Z875$@_:*%)L:%@(^23. MZ"SYI[)0[KSWAQUQT^FHTE(_SI;;\ZNQFVRG?ER! MQ'FR@ADJXVS@3P_Y-GOY7O7/;NO[[QH8.9:O\UH^])FSSW*#L[Y7QWHJ,*U6 M)4?*.O^WWO2T5JYJ>'_WLY#,'H1Q'$OS,V$"(C\.(*9>!+TH#JE'<"B053OZ M05+,C?#E"QA:!HX- M^,@$:'=&1>:N2'6@&PTT"'R=8+[5K0'3OVE5D I0>0 MBCB,.+L&1[[1JPCL+3KGK8 (=G4Z9.U5DJ\ZVS*?!$$ 41AVD< M1A"A,(38QSY,_80B0D(46718.C7"W&BLM:(Z(2U<=B?Q,W!L7HO*V!924WVR MDV^(,_,D,A9NS&L1FLB!^>K560"^S6Y0(5Q_J/7,P \IAH11>17>XS5FV)4G ML@^E7A_DR1NG\S[VR7W@=^R]<)C]IX*WY/Q\X%5^O]:OAXXM('X6\$3Y%V-/ M;B8C) F/)1%,.$XQ#6A$,J-BBI5\1J78:@Y[IF MCY4,4Q?S&0+0B2H_@QXS\"Q6I=R\D\,PU0%4;C$;.]WS,*=,A# E.(,HHQG, MJ(\@18F/<>Q''K'*H3P]S-SH[6NQAA17#VUB!]T351OR):_SLHE;J/"S_#A5 MX$D^0&5M2%N5; :$QIW!W_#4]6I41^8M+2 D2L*NE""X*4MY"6]*6ZB*=@KP MUKWA\+BU%QJWAZNGAYKV*+57W:.#T_ZKKP]^_U \XGR]I!2EJ4\Y%+[@$/$L MA#BA$8S]0) XHV$46140.QYB;@SR*MB[$?**$/@62#,ZN Z>D:G $IFK N$/ ME1\M%+X=YLV"X0_5[ N'?W7EL 5^PYAN%HM7MSAGG]?O\5->XU7KY\.!-! ( M13!EPI<6 XDA\?Q,;IQ8QI/,R_S,*@RB=[2Y+?N=L$!)"Z5MWLIKM_3[(39C M 6? C4P(YS$;(>_-"!2G1-$_XJ2<8:3\:_HPNVD8DWS@3R6G>6/JHB0($.$8 MIB+Q(!(X@B3) NAG/,Q2+XA09E1 \-3#Y\83^[+9,<,!9&9$,!2(D=>]$0;6 M"_R4LD[7\\$ DR[?4ZJ]7JTGKQGXF5^MBI^JT?&GHGQ?Q M-OSFNT1P[._^>?# GZ.T.#1&QZT!<''4:8T 4Q".# 'C&P>V-"S6]W+1/G[@ MI+Z3CVBWO'$0I0F/542*GT+$8PH)Q7)[$:>Q\(@?\]!J/W%ZF+DQBY(2*C&! MDG,!E*0#W0AG<#4CE.O1&IE%A@%EWSFP%P>WK0%/#S5M[[]>=8^:^_5?[:"Y M>KOQ]0*&&,\X)+&JB8/C#*8D"&":!BG&@K(HMN*"$V/,C0@.&XA?T53=RG=P M)3 CK_E#3$;P$O2H/UY7];?P"/0HVMM5W='NO^EPM'_VL(OW7^&JRD7.V5X# MKA0Q$6,B+0 _4D6L P%3Y"4PS1B/2.B)%/EV+@)+">;&#MMN70='E%TNT(NM M:\%V/DS]#R.B/+J3H@5X7_B#I*&M_&Y;HUT-GF.GAZT4$WM&!H)T[#X9^J!K M,^!/'\5^YU5=YBKS0].N"BFN;E2TQPVM\V=._#;2 [=B#\VA=S.+9K3ZAG,S,NE>C!;9 MF[?&!%3*+4"GV"BMA$>&?:0T?S3!V,="[GDQ@3B5OX8BC9* I(3;1>"='6ENY-P)VI2< MDX/H\LM4RVK'S^?!-6-:)Y"-S)F':&DI%5SO^^&R9K^+4#CEL?.C3U#WG$Z;:)&U\\BI1]%'E27TJRL]5M5%.^F_B"Z_5,MV^ZQ$1 M89JE$20!YA!1DL*,I CZ2.Z=8Y^04!#CU,XKA9D;UVQ%!UC+KI;.JA%Y1SKZ MG"IO5;)(A[QVXOI):NKI&-N?W_)\>Q[8*2.-N^T4-?KHV>@T4G=\V;!'BV=_G9Q>29NU)+VFT4&[M%HD7"7'.D*Y-X_VVC&F2[EU MA,9!=JZK9P[U'9?YLWROGU53!AV=U@RYS+!@&8T19(F((>(AAAEE!/IA)+PX M$8DGK$H%GAMH;E^PG9RJ44@33MDL1\M0E+/(FCI[K\=K=)]N)Z)RV;98-5*Z M]-OVX^#8/7MFL(F]L/TJ'SM;+UP_P$B^H;3<@@N5%#*RIX;&0%5 O;E5 M&6AQ8'&97#^PLJFJM/*U6!>')?6WQ(FQYPMI1*59S"1Q1I(S,Y]#GT8\P*GO M!XF_7/-[58'[SJ+ :>^H1B]WUKS<1V./]X)_Y75;>KQ]IU7S0B6V8;M"0\C- MC"T'"$Y95&I?TFVGC%98E\TRC%!Q6W:S?\AIRVX:J7]4=M/L+E?55O1PNU*? MN^*U2[E!\W FMVTHCCR(HLR#&4=(;N $95X8,9I:%=NT&'MNAENS:@97]K5! MW8QO1L)R9/(Y4S2E07>O(+ !S@Z*I5Q$;.1"*>?'?^,B*1>!N5P@Y?(C!G;G MW*8[W)!*=[@W[3!Y=..,UL5>R@WXLY//98_)L\J[;3)Y/,RT72;/JGG49O+\ ME0.C!IK@F.JNN*&ZV?#9_@?+B&5Q&%(,>4@CB$)$(R6P986 ^$6;$X1CQ#/9/N,()L??-[CI01%F MTS1@D*&,J.9/"&*"5(6 Q&=Q[&4\2BT[?9P>R68E_<]J\7$&68)9D 8!@1AS M+O=;7@QQAC'$:<*#,.$X]!*K+J;7XSI%)].[PKH>RSD$+=PTU^$RB7]F3\0Q MNJ'TH^#>'W-BK.D=,><5/NF!Z;E\P&E8E\[P\?%I5;SP\M/G]S<=GW>OJN4D0!!#1$,&4) AF&8G3F/H(8Z/:;*8#SLW)LLWPX:W,0 D-GEJI+0Y\ M3- V."9SC.'(S+&%[^,!?)W EWED&(X6!VB.\9SH(.UJ7.U.U"Q ZCU9,WG. M="=L%EH=G+39W#?,V'VWJ51<"1Y4]7>FRG2B0E*51H5UX"K/M<"/&F! M+:N^6$R!&=^,!.S(]//E7#SY%NSO+=B-]$"*[[!LC#UF;FO)6(P_;8$9>V". MJLX,>(0=G55EO?P=_\H?-X]M]90L#$6FG4^((TE6?@0Q9I*[4AKP*$Q01B,3 MLCIZ\MRHJ!7.C'..<>IGE*NT'YDO6KD<%I4YJVW?2IR]DSH]B=KL!SVT\_'4B31LU[P2^H]AZ-T\=:O[O HOBP$\\PN5+F0H"D8@" M*,WZ$#*/>20,PT0$S.:,86BXUE3G"L-/:>S#L>89;C5*'-78<5)O%@=E$.?D M+H[ICW7):7&_SO_-V1W^]8ZON;+@"=RW<8QY(*J MSN>^.AR4ZS@06133*,Z\U,C>'2K W,SB??F!E!=T&BRZ>&;UQZT6H%7#C@BL M9\F,+<;$?F1*<0V[-?T,QT8U M>&P&G1OU:;&!X%RY(Y78NN:DDKMI>R<%MSDL-87>X,!T!$!'YC,M,7Q2(H-6 M9M )#3JIAW1>-T75XOAT!'0G.D+= ODSKQ\ W52U9)!2A?[_?,CIPUZI%_D" M5SG38>/%&N05$/IE5Z&*^?JYD+K+7RB5O**;NQ>Z<@6^+[F3KY[Y[U*(AVJ)N!?Q"!-((T25[]J3FW 40(R]E/(P\X,PL#'CKQ-G;E\V M^8H&=A;ZE=-A9J]/!_+H7SNE"-2:@)TJ0.NRT)GUNI3GOE8+\%\ .C7IKQ1I4@/?#7ROS7U'3QW8XDK5\U0=*VY^Y=4RPSY-HRB#0F 5:)X$ M*N$]A?)_7B)X+&)A55W^X.ES(STM7-LM1I M4RJ[[2YU,,*TG:1.*7?4->KD1<.6ZU=>O\?5PVU9/$MKG;U[^:-2K"$I!*^I MM)W;RKS*-]"=_V4^82S",4SB6%H^C,1RYYZDD/AA*E>[GX:94%O M104[6>W6_H!I,".(<<$=F45481 E/>C$!^0%_*8TD/NYOX)3L(]R'#L<1*>\ M-$",2Z*)PT\7N72/.*[-'>5^[YM4O$[KC?E<4N!D$G&$VD*!<41 M1#3"*M4KAA[!H1=G<9PRJ[*( V28'1%NI)01P!8QNSYX' MR#'M&?5PH([.LJ]XU, 6.ZI[PT.QDG=4*E6Y?EDFTAADW.,0);$BPX# S ]2 MR"(O83'"G 2134S*\1#S#$VI]N3\W_\K#?SD_^F"!];];HXAC2EG 18I]%0J M(4IP!DD0J"ZM<9:FF? %#I9-'/N/&I?U%,"^'FX\>-_AE7E-^!X4 QKZ&>44 M!B&/U6Y%M;9D'DR2Q(L\/XAC@EL4/ZX-RW2XP+ ;;/X(FGU K\-DY._COG!_ M 8UXX*:NRYQL:OTUK MPB]TF9Y]'Q&UCHN-AINTM=%;-H_9 YZ]T50/OAE)= MG_MFS;X6-:^^<\KS9S7#*BD[))@R&/&02#H53#*I) (6I(2E$MPHL:S68S.\ MT6*8M%Y/)RLHMT)>6PNO!WTS$G&.Z)M6P]LBK ZKM?3@^V6L'=3#NPS:R 7Q M>@1XXXIXEZ&Y7!+/X!D#,YB;+_:/!\[K-JI\%W1NG3"45CZB+(U\8M6H]M=_OKB"W#BV[8?_<5+5R4]\=!$PL M>P9E(U(&G$:N,+NG<>&EK%,NM-6[*'#*P#53" M6F:+,-Q1)[F?XF8U=6,;82=*RRS GJ9@3U65*J*5!3MMP4[=!=@IO !W!S%J MLYEZB[#MN;P"$\5ZO_VK8!=0/<7T]$9ACRK =*';4^!X$.\]R8!#>XBW9(LBR/AA0'$L2I>DG@4DD DD(0I33,:,YQ9!8"?'VIN7_:MI XV'3T F^T[ MW, V\E=UA]C![L/YYN,R&(Y[B9\=;N)FXI?4/NXF?O&.@4?C;=;2-[$-5MJY M!YM>KE*E3T6Y:US *WTXO_21P#Y#&4P")'<:!,4PI41N/+R8>%A01+E5U;;A MHLR-<':!?CL%NN[5RF.HFB,?=-[06EB&7U\QGK<'&F/:6]&K:CT]SKGSB,8O^C*-C/?+6Z61^EM^RE">]UQT9)E64(2CT"? M"0$1$QG$2 ?$>D1@E'HXM*J<=7G(N6V$MMW E)G]LRC_I0QQBI]R%8HL_]1T M4;[G:UZJ1N%%^53HNM=2N:>BLDU*,Y@20Q^-4Z#']M7L8[P35Q>\WCM!=M]F M[3(ZH[17ZQGV3=JJ78;A7#LU@SN'>H'/M&?[H^)BL_J2"[X,4T_PA"(89AF% M2/F$"8XC&)*$!QGQ F96S\IBS+FQ4R,96$G1;)W E_$U]08[16UTM_!!(\?# M/HX+T.+YI0_/ 2YB8X0<^XHOCSNQT]@8B&/OL?FMKC*LM@Z--&!1P(@'):6H MM""5:<7"&'(>)1D)4C],K=).SP\U-W[9E_0PU^K_7IOD8NDN72V!3YO-O5#H=) O\KWY4/Q*/=R2YZRC 4X M@=CGTF )5#WQ*&:0)R+EL8>\-+4Z;NH;;&Y,LE?A=BOM BAYP9^-Q):'1[U( MFW&**_Q&9I5KH!N2VG(1$]>I+.<'G#IUY:+J)U)5+M\ST"!11^3O5-W,_=8' MV\]FDL61Y!(,_4@UE"8T@"1.. R3@#$O"0/F"RNCI'>XN=&))G"HQ07[\II\ M5H>@;6BD.,-P;$.EO\.*9!>Y9%09H+9BW3C6BA%:;BV6_B&GM5J,U#^R7,SN M&MB\_G1%"_4RM!UK$^QE221I!F5R/X0RE?$3A3X4LQ-N,-;J:PC"*6L-1+(4M4CJ.7)C#U> ##4*C>K&D@$F[#9N<&FAUQW=^7 M3;@0>"KS-1-:,B%WB-S#I*1+"3<:&Z/G-PTX^5?=_+"T"X M[6AY;K!I>U5>4/FH"^6EZP>6'CG.P?J^[1GUF MO$9*Q[[R>DDC&GC(#Z OMV-RB\8()#13$80X\+C@&?*M>E6.)*<5,TU67' ; M>Z+;&ME1TE@3:L9H,YBFD0GQ=';L3DFPKV47C]WIN0"=I@M]Z+^G+&BUE7M0 M[I!91YX0MW5Q1I)UVD(ZXP)^5'EGY.&&?54^/CZMBA?.?_#R.5=U@4ZY"W<= M"3])%/?_I?7W+DG(HL@GTCXEPH?(S^1'1/ (ABE+:9QZ# 56IPMNQ)J=-5M5 M!PZPII]VUQ-*UFGY+I)^NMCSM:D1?[ M;5G=?0G+]^K:)22X_<%X\LTI81Z7@R] MA 40<19!'$41)"'UO'SPW)GVO(Z6D<$!)9\:-1V#UL]LU$(S, M3X;:&Q//.55/4$?%Z=_NB^?_(V]I6$/^H,E"T\31@R99Z.?$[Y;JV7^_(M!" M-[]5ZI#URO;D3.V^[HJ/[S[??;BY76TJ'12T M_S'^RCGC[%-1MD;?-_$A5^V-UJQ:^C0(D1?Y,!$^A3ZT+%M,J2S;SOI+6K,N9S,?IYYRRD:F:6^ M=ZVT\SV]5)1YHQEXDJHU-:-TH_MMF-P\I]&B,N ;3>=$A0"'3NMOAZOUKY?F MV55G]1%FH[?NG\OQIBOS-P)*!U7]QGC^,)/Z.Z]QON;L(R[7TJRL;JA<-INF M.KG<-=.\7I(D\OTD0I"',58>Q@QB(?>X)(SD+S&. FI5._SRD'/[LG82 ]Z* M;&=F&V!L9GZ[16[L#UX'6BF MO\6=[CJ)WO'R4>6CKYOP_3 (/1'''%+?5V'+"$&,D0?3,*19P$E(4JMPF\M# MSH]L5$K*+FY9COE8Z>W^BZ2?RG*+;P"Y&?>X!7)D[CG;\U-)W%2K:&0>M[OG M:7Q&;^;Y:M@W[]UY&@:35IUG[AP:XE?FS_+9S[SZA//R'WBUX5\DWWVN^6.U M%-SS11:JCI(HAHC$&4P%":"?L5!PGR7'["5.==_+'>J%-(+%\7^9LJM9/K*.9/G-]R^K(RY T<@2%C'E92C,NV<J,K='72 L&Y.N-HY57U\#9: M,57>2VMF:1,-GC-#4VF*F1C;@E+4I0REIEYQI\8"-(J 3I,%V.D"I#)@IXU# MV^I:0-V:7(.EF=82NQ:T(P/MZ@<.K?%ON0\"R$) I3FJ"$9-2J\D;?8',C MSVWFSYZP5WB1>G$V8SM7Z(U,:<.!&YSNU(?(*#E+)P=\D\2C/M7/90_UWC,@ M1.[HD+]M"GY7?.?2+LQIW7;@^H?\51+;S9I]YW5>:G/R!WY6)W2*R[1W7)6M ME(^H&MY;8C^+<(!]&/$X@PC%*<1!RB'+XB!"(LIX:AXR-Z*@!.F6C MK KI*;?JMI;@U'K#)Z4$4CWM;8W"4=_5?I9=$XOP"1&Y4&) MNE9/<%> G::M0=GJ"J2R8*6Z4RFW2* ;R;3/U% WUN_!G;A M?!/,36]XWYCC3Q?N-P&*!^%_4XPWO R.?.JS_-;*9[Y[^6.=__>&?^ 5+?,G M7;]0%9%*<1P$*=;M-R.(,B'-"YH0&%"?TAA[/*&>;4V62T#1-?(0A"GP&D9ZPT:.9Q5^'0/A_.7VY?PN)'/83I@987OESAF**8H@$D2IQ"%!3$A!&(\_(;7KTY+E]V;;" 26=>1&/0[CZU_95((R\F@WUMRKC<5+7 M074\#I\T62&/DPKL5_(X?<& HX\NP>B6E]IK<;-F=R7'JE^W=GO<\5_UNY7J MH4J".&6"$Y@0CT.$.8:8)7)9,C]D!"4HBU/C@PSC8>>V7+]R55]6?X!4J0\M MO(4?V1QN@\. 44 <>;EO,Q!O._3TD4TK]TOKROU3B0ZT[(:N&TMT+7SNHZ \ MD0?][H$#55-1HLSR2M6K437V5&)[ESZ[*UBCYZ'NYD&?JBU4.;[5ALD+%X!L M:K N:K#*'_/F%&X!<)LX3XNJWCUI =B>TT@%:^GGEWRO4&QQ7^+'17L M_=/ M;/NW![YBK:CT = 5KG3@UZ&$KG+QK2>YUQ5O_K3I'.O6&AZXR>WO=A;-(S=) MGXKR$;\6X4.^VLCW<$EI@-, 1Y#@():68H0@#I@/_8#S0"X++Z%6::KV(LSM M&]6*U=72W*WPW_[X\6%PA:H!4V.VXQP7\)&_9Z>"A1;*\P*T N#X>[< K1:C MAA$9(CAV<-$E,=XZY,@0)H- )-,G#>/%OHX;:_;^055EK3ZO]Z_1C2)6O-H9 M/8AX*4W"#/IAF+2A2#$5*B02,Y;&L>=;19F[$&INW/F=4UWH]EQ?(#O.=#)M M9BPZ]62,[1;H:1^D#-5&(?F).YRJ5B6S#80US[K$V"GS.A%L4BYV">5K=G;Z M[(%V+*[RZINXE4NBV^7)H7_D]^M")0R"(H2!I"A/T($A)R2)#G MAS&)O919>0TLQIX;I3:B0RT[V G?-0,B+T#+#[0"@^+I;";&C$M'@GMDZG2* MM#51#L#,*2_:C#\I#0X YC7K#7G$-=$==_A7VS2C;:FQ]-(T1BE'JALFET:C M:HZ99#Z,LC@-J>\G,;8JFG5FG+F1ES3OGW,=J*J."G;=@VSMOW.PFM&1 [!& MII[VS%*UZFEE!+^U4CJL^WD!AQ&B9H['>H.HF;,*GXZ:.7_YP)[@C455*=]5 M_JRZIWWE]?NFM]8R3CA/$ \AQ8)!1-( DH@*&'LAC_R$A7)[:1>6VS>ZXL_=04S%$I M4\6ZZ_B]1)GO"Q0AF&$?0T1C! D/,QC&*&-I(FT3&MH5L.D9;6XV2%O^:2?D MH$U2/\!FY.(,MI'9Q1JQX76S^I 8IU[6R1'?IDY6G_)GZV/UWC30,]/5^ORP MC4*J+./2^QXQHS=[K^;LGJ"CA*B;(.)V ]\WX+0[=@/5C[;H)O<,-,#7=<[4 M.;_<___@=%/J]L0??ZG8.;QAOZ3;P.$7CWEUMZ MY(D IIBF,(R2$%$O\'B&;;ZL(\HZM^_ROJ1@)^J@K_.84VRX<9C'Q(V][Q@V M9_8;B_'1=+LO&5'>:;X<"")!?AR& J8"JS3J+(4I MP@CZ+$)!D,DO08*6=5'CE2'5[S_=BIRW8XRWT._4&+L.\%I42TH^ ,^01(=" M,C;M:;G&<*"<4M@M,QV,,"V7G%+N:/6?O&A JE137Z%6)SL_^#HORJ]%S:L/ M&RZ!B=I4PRX1E[Q>]*"1MP&-R %!AK&B[GZPY"T2'URC.A$24\7D764,V2! M3F^VD,ESILL3LM#J($/(YCYW+>N^Y)CH[@=M-TXUX)*SA*5Q2"&.!('(5S^A M)(-,L)0*W\N\F-C84:8#S]/$$IM:)?TU'>S:?K:6EI8Q\F9&V!AXCLS69[O8 M;>5>J+*DA(-;G#O,[+&%:O2&=B<'?_.V=GV0F#2WZ[U_D*GX^(37+]]^KCG[ MD@O^>5UM2G5DNL0XC (>)##-<"JY"7L08Q'+C1Z-HY2F0>H1"P/QS#!S,PO? M?_ORN=GC61DSYT T,@8=0#.Z":AE!%I(H*0$6S&=X&1EZCG :S(#;P!NMK;= M!3@N6'3G[I[2CKN@P2OK[=+5 XN8YA6^OR_Y?>M;^\Z?^7K#[U1HPI(+'.,H MC*%'4 1"S)(_!3)7WVE0?9+]5\4Y8J ME4]]<=Z]["YI;;B;G[AD32R#9+.ZU%^FZEO]P,N[![S^IJN35)^*4G!5S^3S MNFE7LZ0HH)GJ/AS1F$'$TQ02+PUAS)+8\VGF>1%=KI66DBK-HG*FD]YHH6;- M0MW7843/]D^=NBLZ2:]HQ37A2V!&F7.;V(FZ,RB5(,&Z]^A^Y4CY(V_]_$ADE)(8PY 0*K]C80)3)$UL@;G( M/!ZA,!0VUO79D>9F6BOI@!+/[O-R'DFSCX$3?$:F[CT90='!-$)1Z(M8.&7" M\Z--REL7E7[-,I=O&.!Z5)T =ORS=RJC_N'K1CW^FV@:E-SQ\C%?*QMPZ24A MIP&51J\?I'^+84Z$GAF[)02+,C45^X)7NNO[ V3T?VBUL MV&08N#='AWCL7;SJ,K)38 'V#VW5/RY HX4N]-$4A-PI,OH,6#A.1Y^)B9RJ M(\V(G=OU*C![7;+#GCR=N_8JS0]3_F*-P]?)H&@410D M,(KE9P3Y0GY&1!3")$C]A&(24&I4ONC4P^?VE6CD TK =GF85W _ JZ?]Z^% M8V1&MT#"JI;[.94'E7,_>MAD%=W/J;%?U/WL-2Z=ILT^]&8M-Z"JTF'^W'3A MUK5X7I:A1SB-53$<3_AMMGCF>Y )'. PPZGO&Q5YOT*&N2UQ7=\8OCMR=[EP M7O9/QC5.2&<03^A,W#H)]_R(?S82@U%*AUT!W02NO'XY9N"2,P+*S+5F]J@K MDT^;2' Y2!?ND_/J]Z:(.?NV_JX2.\JFQ>?78EUVO^J"9E^VK>[]*(VS+*$P M)%$,4220M&Y"'^*4I(+P$$6159T=I]+-C3MWV;"+KLB5*A2XIR'H5 2ZNV^K ME;YJ7TW05!W\4VD*M*JV)5/OHE/W19-Z7?+2@8FCYK1:M_UV2L$V H,.HE' M*6U@ ]$X13SZ!GZ;6AX&4)PMZ6%R[[A)&3>J=-1_<5Q^DK;=,B0X"$,4PA1C M:43QV(-9D"$8ARQE<9(1SHS2Y*Z28F[&TMT#+[DNL35.=L;A%)AQU>C CDQ> M=GD;784SI0A0FDR?R'$2R#?)ZCB49)8I'B?!&IKO;A98HY2M(DA8D?A! )A& 6IQDDS(NBQ/-8&E/C<]:>@>;& M;:IMXL]&5D ;84&UE=;B/*\/7(-S4T>0CX4UPS!W^M27LKT4M]WO% M_3K_-VTFZBACZ@U%N?(LK76_JJ]\Z -/KR[";GDRY1+,R4Z=]G%<@#9 M8-1 6N\QCDGNCCZVYP!F8)R]GS'^ %VI%65]?*V+-B&UM_*'[Q\SBG7!5\S*(:9Q E(0(9AE/8!9R$?M9Z'DH,>&F

E]3OXPAY[QX_R-]><\/9AT]" 9=4ZU;ZQ>N&62'RD4^\ MK%]4C%!]L]99=T^*/>[D\SX4CSA?+UF<"8+2%&9!&$-$,PZQ[WLP$=(R22,6 M1\(J_RVR_$8JH?5+OA5[ 93@X,]&=,MH&I,),+-$',,Z]G%2L;YO MV_?='33ONXRCM M;=K*E_<%XTN]2!H8*(PX3 ,DH(>X'W$1$22,MD&&X\V-@MJL@ .9 M%T!+K5SPK>1 B6Z;.-&/>S_[C(#FR,SC L@!>1=&\%R1BM'__(FS,XR4/4[8 M,+MM8('XKM?:IZ+\4&Q(+3:KXR9?WXO52A2E*D"PI%S2"Z8$$N:'$,62<+ G M?Y74DU&A2I]Z5HV-K268&P6=[&1WMH<=^%.IHGS%2A?;)B'6LV5F)(TZ!R,3 MUSCPV]?!'PJAVUKYUE),6T]_*$A'-?<'/VBH%?;C$:]6[S95ON95M1>,\=M8=-)Q@.&GW#+O7;TC?C(N8&/3,./^,J?ME7-3F M1*^,R_<,]8ZW$0(Z<_T6E]]*O2ME^JRMZVJV#!@-O30*8))Z'"*4>C C:0A) MF(:8Q4$:)4:'8';#SHUMMU*#2HF] $^X!,_ZE%F5?&+21,5E!9YXV91_LJQ9 M:C@7IKYRUPB/?KK6@?NC 5?*K+Q5C=3M8;Z4NZDGY-)U;@.48^^YT= 3.]!M MX#CVH5O=/8RSOO*?[?XP7]_?EL5:_DB;>.V;-7O_H.I!5)_7^]?D:YH_K:S[ M2#L8:48K;">F6E1KIFLM__'$E%M8'?U17L$9^HO$D_#0A$,?%AYL4!) Q'-,H8 M]6.CPH+7"#$W\MCJ8'J^\F5P!9TA4V9&/V-/Q,CL-,HQW3F=O& /W$YBG8?7RNP<3 N/NW-0)_*[[](%H]Y^7]Z6N54L9'^UQ?YQ+_]S9$# MWPKB7C>^V9.F<^9;:7;@TK>[<]Q:2U_YK_KN)U\]\]^+=?U0+9/0%](VSN2V M&LEM-:WK/K4I@\3/&$RBB":;<]C*&,40_E1Q!#%&8(DB3P8)T+0)(BX2*/E,R])\3]GOO?%??,9 MG\4LFWV/WW[F1OY:-UTW#S0$C8K@-Z7D7Q?;LBF=HF!/4WW&N*31!CC;5+ZG:I)TT)4@\/R@C02D MB1>&(D$P1%BU.F)(;JR2 !(194C^)%)J%$-E,MC<9D7FPHH&76Q,!T-"+!N M7BY-U*)6FU;^BW+. )8_JZ*2\K+H;QYXS%UKVD/JW2U?Y4UR>+YF^7/. M-GA5N?*^&4Y3K]_MTC.F\[@9:G/@:S.]9V#*Y6-1UOF_F[8T0C7-^Y!7.@[F M5A4HW#PNL:3XU),;P(P0'R*4Q1"S(($LBUB*PYBEQ*I)UL41YT;]^P*K5+G)>U=7GJMIP MIKIFR1_46<\R]%'L)PF#22:XZKV9PBQF*H6*![[@6>(E5B$R#F6;&XGI<&:0 M:S&U3? DG_R *]WUF;1ZV]::=3F79L3W1C,T,D5V6H$]M71+XIUB8$^S!6@C M!+?*@48[[:#H]'-'J". [I1Z7F M%U>UC!,_1BCEREI3!2N(@#B*0IAFU(NR-$QY:)7X8#SRW.A 4ZL*FMWZ8/(U MD#/]S\VZ.7'XF=O%,C?3?'9,R60$S$?G& 5Q:RLU4H-&[$63 ME%DMP+[H+MG'$BW'I&0Z^L1<90G*,879/F 8LWU>TZ9>,UY).^JQ6+F4=G9-;WNY4E9*@TQ+LU'3'L,X0=\J\UTLU*2,[ _$U M4[M[\,#F6H5\O^NB%$!'!8"8$AA[V&?7#D/D^LVI_ M=6J4N3%M)Z2.E,>;^J$H)>J63:9.PFE&C5>#-#+=;?%1*1XW'3Z73ZOM>RCU M >&VR]')D:;M0]2G[%&GH-Z+79X[J!-Q22\'+K&;LE05 33M?%<_?1/?-K4* MS:ET$9"_Y_,(OQ<;R2-7QO%YS##'%;+W5240W?8>'$OO:+8#6 M3QE]G8:+INC1 B@MQSZ/N!;]"8XD!HLX@U.):^$U.YBX>I1Q<\UTPVRYV)89 M]@2/DP#2- L@2A+5Z,!C, PY#1%+/,)&R3'K!)@;PPU>F^21+858I;)8Z\A&IHT=O25:%ZSUE6D3M] M\XR6SC:FK)%PE$IO_2 X[DI[>SD55LK+;!E%-<%F,THPAUX(U.%$A1*W. .MT[6$7P\9K X)8\+0TY*(F;J MOR83P[L&UV++:ZZ[VGU>UVU;.]W5KCDQ+#F[J6YQ67\3)[8H=SI6,1 T3$@0 M2G,_\2"*J &I7:[H$[I9K^@17HU%(9*THQ MY34XY7L ?VKM[(NW73W'9K0W\<*R!.E MX9P]>FA?I!O&Y'JH=&C;M_*V+)Y5HN92,)QBQ*C*5/4APE$ 4\9#Z).4H-@/ M_- W2ER]--#<2+B1%;3"[C50[ 2V[9IT!M]^KG2)VL@$.!RP 3V5^M&XHKG2 MF0=/W&6I7[WC=DL7KA^XA<2_FI@PW<"=$(*B4.X8?5]::RA%DA%(QB'%'@O" M+,JBR*A.Y,FGSVWQJ^/K1KI+/=X-D#/[M9,7#=RCV<.134?XG5F?#JLOJ2I4UOBN:7F.U MVGI\+6I>+5'FAU0$,86U:''H!;?Y%HFP=.6"MZ@)Z'):.'/&#@ID_>]DW< ML.))O72MR1.2@!#?CV'(H@PB[!-(4"JM29YF) L2XJ6>U=[OQ"!SXWPEHV+[ M3LJ!O99.XFFX([P2I9&INJ^AG/NF2WU@N-TRGAIHVIUCCZI'&\B^:X M)*&\J%)9]GG<--+96/OY[XNN(J2.KC+[K:,/G! MV:^SM?191F*BMJ4>32%B,9?[54E--$;2-.&I)"JK0E:F \^-D-X7FR?=Z*41 MWS:WUQ!M,^H9 \.1^:<3&;0R+W2QO078R@WV!7>9>VL'E>,46\/!)\ZDM8/D M.&'6\OX!CK3W155_$Q_52/*I0"*Y149BE^9#S8Z5*Q[KP5FS%3P5XT()O&SIT'C4+7XX9_@:. M,N>HCLQ3;PNHA5?,.; 3N"9QG,=0F =JGKAW&"?)!TG::]>:-"$#^1()RF&<^9)](H8A]D($ M?8$Q"Q./Q,@J=./P\7,S%_]HCEBW\ME1RBOHS,AC." CT\1K+!;@MECE] 7\ MV?[_'?]5@W?RU?Z70^_8:3B<4L*K(29=_*?5>[W,SUPUL+8GE<;C9J6>B,NU MM&6J6U[J&D[O<)73FS73M;\XTW'<:E+UG"Y#P@0)F ?]F*KF$8A#[!,/IB+E MS(M(YMDUCQ@HQ]PH0@NKW>VL$5?;Y&U_XR=>-L7M+ M\#IPB,X:9 /B1J:C3 M0/-1JX.*"FV*V2W ;DY:3=HTEG$HZDH\W98''2C+M,5"KP/LJ'3HE8\;FJ'R MXX&O5 F\)[Q^62(OQ'X8)= G40R1D#Q)?*;*(@>$BC DG!FQX^G'SXWTVN0* M+2)H9;1-0#F KY^YK@=E9$*RPF- ?LDIM:_(*CEXW,2Y)*=4.X +NI:*4'2GRW)5&L47->*<5<@LD+J%B#IYL=WCNT9]P:^<&^"OV@+WM=5UV QK=UT[9;_I/J M.4'+#6?+).2>2!F&-%%G;BCS89:% E*>")]&21K:%8@9(,/6\"&AV M5@+<7)@ >\_\< C=NN\'R#&MCW\X4$<' 5<\RM[-]46^ ZO;AV+-OVZ:,GV> MCV.<>9(!(P\BCJ25F/$8!QEV3112F\GEAS&) M/,%@$J(0HI3)I>IC 9$79"'*L(\SHVY\EP::VV)]_RK5N8V/LXHW/(]J_^IU MB=7(*_EUYBQHY+Q<6\$.+ZNH3">X31:+.1 _V_#+BZ!<"+H\?_^4H987M7@5 M8'GY^@%T>3Y$JBMEMQ??)WB413C%D,5JLQ?',20X"6#""8N3T*,X06:QE=9C MV[SN;Q9@*;AU?*7])!C0[5C CLR_%R(MMT4Y34(NKP39@J/' GLBTOYC[^4M M!!#-'*ST'.2[.+5Z4>==N )/;;U4#.[+8O.D M?]0W*_<'^,OM^K_6OZ\_W*W_+O_OQU]4&0NYBA:ZG 7_A1^?U''.7V[]_XI^ M]\,/?P$E?Y+JZHH7B6^B&7 ME_*U/I;[FZ.OSY#I[OT<63UPNN_3$#T//EB#'C#,<=G47EW*77::)$$,113X M\O.$(XC#A,(4^7Z*A$A]),W[HL8K,U]D\U@K8W[[\!%/G=48[9*R\Q>V,)FY M .V5'_GK<-.OL;6#[E!!ISZW]M&3NM$.U7GM&7OUKP,,Q1^%J'_BDFN_&5Y] ME5)MRE+R\C)(_8B%OH!4> %$U(M@%JPY-8K\,R,D^&0C,QV%FC85\(YJ;3; MHC>'0TQ;W^:D>D>E;$Y?-6SAM@W:ZX+^J^W2WC3!_C=GRR",N,@PA8F7,H@" MP2#.Y']0'&8!PQ%+$ZNB63UCS6U)-Z*"2LFZ:!)TJJY_^K]M@Q3Z,#9;[(Z0 M&_WP0(/VHP&M$13<7 ;-F@8,X'#*"7WC34H0!HJ_9@N36X91QW_R_/ZAYNSF MF9?XOCVW_"::43Y7U88SG5ZSS(27L2P-Y':(Q!#Y80))%B*8!8103@1)B16/ MF X\-U+IY(:X$;SCE4( NL$;,6&<,G$>FH$YDT,K< MAB,HB%L^:N1N,P#=49(M5D[YR7CP2I&SZ^.&Z8GP=A&;T M<@4P([/(-D2RZ;V]JZCW'C_E-5[IJ,KNHOT>WC>TSI_S.G=1O& M>)/J>:\4/% I>_O5[<_2-,LL2-E.P6NMG%]LO]MBS8AM;5S9K]X.5S3GG5OJ"> MAVE $8$1]AE$*B\?BP1#BD*!_5"DB5FT$,1%:5>>V&7QN M5-'*"[3 NFI%L>;&55H'P6^V=1@+U)%)95]L< CNGN3@SW&*$ W S&W"JHT MTR:K#H#F*%%UR#,&!*%\+6I)C$T3SKOBO1IG]:V\X^6C:J[-WQ?KNL2T7E+& M14C\&*;<]R'*F =3#T>0>!%CE$>(F15CLQET;OS5B*UJK*ENL'4!J)9<16G6 MG>RJ-HD6WB(2PW0.^LEL+&1')K&W!M4BV&4$<*=J<=>@6PA0YX]OWG0L>5<]L;MF#YKNB@>2^T.8GIL[W51)*MS MQGV7 ^@F[DR.3]6ZN.=+7Z0XH#2 *57UQS,2PLP/$8RBS(LSS_=8:A7]8S[T MW#Y 6T=RJ19DI:5=*.ILY;VF%E;O%)B9T>, ._+WYZ@*UA9D)?@"-**#V\L@ M7UD"RP2O$>M?]0[_AL6O3&#IKWQE](1KRUZUW2 KW8/T2X'7RNWP23+FFN;K M^^^<\OSYL':NAY"@:QPN@==$6V%8;L%-GH@K'@]$=J3B6 MO3QO5"=K,'#G2V8-?^10&[&4#U15/CNC4_56;,\%(IK%4>QGD*0QE5:AM \) MPY)-4R_QD)>$@5U,>-]@<^/'G:R@$W9@K'@OQ*96GQO@1K?S!F VP*2[#(9C M(ZYGP(G-MLNJ'QMJ!O<,+;W'3SK)PS-JVGH\3_S^N']IJJ+1UZJ:%4YV&V9*_.K,XM"DD8^EWM) MCZJ.?4D",QHAR,(D0033P,-6[;),!YX;DVV_\3^EX*"3O(G3UBNNE7Z@W60\ M'V9L-@;*(W.9.X 'Y.O8H>4X><=P\(DS>>P@.4[KL;Q_&(UU19??%X]$G2;D MQ5J-+!_?5*B7=*ECGXOUEQR3?)77+TN/,X(H3Z% L6H#%E&89AZ2QEK&4"C? M4XJL*L4/D&%NY/8)YR5XQJL-;Y)].NEU8XRM^':,-F1JS,AM9,!'YKEM3?@] M\76KC [S PT68*N#.[Z[ D"GU#=$CDE9\ J@7A/B-8\:>);0-A#C3!W$\W6E MGWZC^CS?ZT"@=R^[2V[QB_K3S4]0*I($XDQ1#@+)56F M&*81#U*+->V!A3,8C\XMW#UY&*%_Y\_% MZEE^,=Z7G.7U)TSU9Z*M61QY-*8ACZ&/_ PB@:19&R0,SE(8>R*&2/X(<1PC M&(722HP)1RRPL@4'23$WWFF44,&KY]Q76A4=]+!5!OS9J6/K)!PT<88>P[&G M8VSWX5@S8>]-O 9)MZ[%09),ZV>\!JPCI^-5#[//W'V_>=RL]&GS1R$XK9L8 MYV_BAA5/RC9L7?;8]SF+(@03+E0G$YQ"G)(8)G'B"_EB,Q10TS1>LR%G1Y-; MJ4$C]@*T&03?!.A$'Y#E:S@!_0PX#JQCT]U91 L;1*TR@NU NCH]V'"XR7*% M[=3?3QRVO'.85?>5UZI6SFU9/.>,LW2 Z@I#K>S*\U-LZ^7@R_5R MKIT+,^ML'(1'YB@%KB[?=+L'[F]*LH?EM9$U MX G#"$T=2OY#G4DVE?'W;+=9?5M_YZI$M!IXS;X6JKUD\ZL^;6YZ M3O/0XSQF& JLMJZAP!#3,()I( 1A*(U9P&RVKLXDFYN=IL^!M68+L)5>;YGV MY1_6*=S==)I1YIM,TLB,ZFA^K,G4.99.N=:==)-2L7-07S.U^P$&$OFF7.>U M'$QG=_Q2/W6-%J/,HVFDXJ-Q2" 2(H,I#Z5A2C(2!XGO!9%5Z=WS0\V.:CM) M]?(5K:R6E'H>6$..= +7V*1W@%0GY@BG%)?1<$M;YX>;EHG1AC;MRPGT7YI5C?0U4T M [Q*+*^&F6&G(#8CBRN!&SNLPPUF5^;PV/ODOMB$&U'O^X MKO/ZY0[_^LSDTW*14QUXT3:F3P)*4E4$.PX)A8C+O9W\/819D"0Q]HGP J/\ MA(LCS8TD&F&!E!8XFT M&5@:P Q+CH@B&L1>0"*/&SE\>D>9&R$<%H)6$MI4R3Z+Y>7#,R<(C;SV;<"Q MJY%]2?GK:V2?'6&Z&MF7E#RHD7WQXBO]P=4NR[O:+V7YI6B(Y=W+Z33P=R]_ MY^Q>I1[Q*K]O8O ; YAB=22&B2H&YD'DQ1CB0'"82.-!;C:0'Z!PD(/8N:AS M(YV=1[(">[HN7I6/[?1=J".@4Y43E-)7^I7=OQ:6CN8WG>S)/,\3S/-P__1H M4S".P]J]N&_CP1X-]K,N[?%&'*'9W+==P[2FOUDBL*!R>PJ#Q%>EVKP,ICA1 MOR89C3V/LC!PUG'N]>AS^X2TC<\V35R :C7WM-%A 41)"]:25O*U_*NNZ=OT MI ._R0N;[G1_==B"[FB>,H&#F(<8>H)QB&B40)(B#](P5O8!2V+5;\<\4&:\ M>9H@5F; /(TY-V8?Y]$0'_E[>[E1X)[PTW8+/(?:="T#CR283]_ <^!8-0\\ M^Y!AWZ:NCLPM+_7S/^0K55YF&6$>17)S TE&?(A2$L LR.2O21BIG4_F(Z,2 M_!?&F=OWIA7K_(>%%:L5+JO=7RV_,>?P-F,L!RB.[4?MZDQ)$1LV6H!62G<4 M= $&IV1S;JQ):>6"PJ\)Y-+E UIW2#M9LE&=2VOX!U_G1:GKOA&_)/3^J[XA_R[_"HL_3@5B"J:3D*Y<64!@@0''/J"H,!+0YHD1@X&9Q+- MC<=WXK9-[:M&8-6LYKD1V8*6G,R9P1=@ZID8^1.QIPYH].DVM_L:J2G9FRZM M%/BQFZY_O,UT67QFIIZVB;Y#-XSE:@0Y>XTO3FVG5AO6^(=T>R>\HCKS34EZZJ9 MD\L)Z_TB.AEHND^F2UP.OJE.'^S0@]_NJH[<,C?LGYNJUA5^NC(+<69VP?WXW8=;Y=VI3(-=#+"_W7@*+:8 MJBMP"-G-,#'CNT MS-E34SRM^B94)+?J%/A%U<[\)IIB2$N/!%Z$4P0Y#F.(B,@@3B,?^VUEP%I)6U4J4)50U?+;!M];-+ MP)L1IQLL?R36Q;4;TO*IT_J9IEZXY52]^/B+3J8N@EGK3Q,J[:[@4, M4A8%.,XB+R3)4M(G*4S9QW1HF\6S+\"(^\ ]R;6!IY)N6"NO3MK+JVJCH\2H MTL:.E8RGQ(R9SRD/HA0&,6=R$TL" MB#/*( L\JC(O$<96F=E7RC.W[6RC0*56I.Z=W+JPUOH<1OY1&L+*.%8MQL%O MN.IZ*EM&$EP[B6:4..'4C,R41[V7]Y19@*TZ>\V7=4"5]B9JE4"KTUCYH8/! M'3&7U%ZF-\P['0Q@?X[J\,<.8^?/.N[H#O_BU2W.V5=>+U,:43_Q4BBM2FE1 M>C2%.,0>C#,_CL/0SY@@=A;E\2#SLQUU?; G*9WJ"=B%8]5*9#NF/ &H&?E= M!]+XCCN%AY8.*/$60 KHCIS.*^^4;TX,,RF%G%?S-2OT7#G@*%\^I]F5-NE$ M)&(QHH& *4)L4; ;G MXL/!&'D!N\3!XL!Y.!Y3'1V#5:X/[;3A+$%J_)5[)\A%M-N:Y<'?.>AJGWP/;5+=,=O9Z6]> 0]>TN%_G_^:L2^17X[3% MQ>A_;W(Y^&&1,?EO\FUBS27+)" A95X :9#Z$#$D((DIAF$6UG%=WXKMV*LULJ[>=H)&I_70?OYU^8%_!IOE !;83 MNM^&(%?'KXV6;9<"AQZ\\>9@[%: UXKYUIT"'<%LT$C0U4A#6TD_/I7\@:^K M_)DW!K2TF[\)^3E:$I^E@9]&$+-4FKPIRV 6T@3&2<12%)(D3E.;!,J>L:RX M>X)TR0-1VYVM;4_H\\":$; CN$9FTD.DVCWO;U^*JOJKWN\J&U%*O#B*4;G% MI7S=7?:!O@B7X];/Y\>;N-OS1<6/&SQ?OF6H;ZRS=AIZDH_]^$OM"N1VX3^* M@OW,5ZLERG@4?G/]M)W9J&"Y77 M:.L[,P#<)UE,LH# %"6!2A95-=0S#$6 !?*RB#'NV3"Y:[BGZA;Q'I?EBVY: M\-A_UCH<:E/'I5L 1W=E;E_4F_9%57#^MI49=$*?/R,;X-\TQ\BQQ]-@X(E] MH.90''M%+>X=:D0>M^S:]84G491&L8]@E'H>1)RH@N%40,$B@A4#B=2JMVGO M:'-S GS@@I=JSUCR9[[><$":>C>VQF0?P*;FI"/81C?]F68T3A-/ '3(")-E2:,1 Q)*(T=+**0\[WZ':0@>5@\U^07\6/Y' MT R2F 4P$7$=".]2M\%.V0^U!;(IVJ*>>,[U!Y8#-NA]CUA&+7=E;ICWXL. M1=8UD)<>2T,O%AY,*(LARD("B2=WJ8(1$7E^(AF.=7FP9B1V/(C1 CK,>1U[ MI]G*V%0!60!AMU"UL?S_!^1E01 L MPB@[O.P#I_H3!$)?7^I9)FN.F\[D[YY\0P MD_+,>35?\TG/E<,3P6Z+54Y?[OBO^IV4ZE_+E%%.*6$PB\,$HMCW8)HE#%+$ MF!](4\C/K/SI)\:8V^[HL">6;3ZW$FSU8ZH^BI#*1SESIS?[?A7_Q#\8CS]3*+:$SC2!V?>4(N M_ Q!XH<&PV<]H5V,H,_&ZDM6]!TR 8>&[/W#@@STEN?BCGK/HDY;U[X#_PJDN9 MO'LHB\W]@_SCQ\>G5?'">9-)V3F-Y2NU3-.8$X]%,!22CA#S$4P]GD :\T!R M%?9%;%Y2^BI1YD96G3) O0@Z':;"38?;I@!BW:BD_Z53JLMF;M4"2B^+G*/K MIK*?YJ:=H)'Y[W_Q+;K1I@N#\X)$@=I>&5/2U7V957( MC3^O=GO,@(4B]@6'61"'\LN(E7]/8!CSC,112IA'K:SUWM'F]O';=1P$OVN7 MB*Y@:7NDV8NOX;FF*]3&/MS< ;8G*?ASE V]$2CC-$T\.>+;]#WL4_YLZ\+> MFP:6K:--S:A;_*)R8]YO2I48LQ0)X0GWU.FFD):U2*5ES7D*>29XF"9,)(%5 M -OI8>9&')V4X*D1T[+H!&YH@M-JV$"]#*Z+!D7"\&;@O$G1YJ MVG)PO>H>%7_KOWK(WKNMA_FI*#^OY?+B5?UMO5?.2'D9EXP*E*4LAAC'&"(2 M<4B$\"!)$"&(I!Z*C4*BC$><&R>T,BO[/6]EMMEXF6!LLO=UC-S86]RN,JXJ MS=0)K IS[#<@,C]-L7A=+;:JCB&=:$=Z/;26^T<+F/JWB28/FG W:*'7X:;/ MYD9G%51TE$BE6Z9\7LNI?]1__;S.5=>3]MN0K^]U.NW3BM=\5UQ]EX-5+45, MXS0*8IB(2-)Y&(4PBW$(<2JH$#CS8H&N+*3B1M*Y?08^<*J.UW7R>-Z62M#A M5Z[KJSB::+MCHS>=OJF.FPZJK>RI"?;T7(!64[!3%>QT78"=MNK2K;ZC5EUQ M.R5C%U]Q).U;UV!Q"[I!*1;' PY-C9#C\2_*O_TZ=7>_^K3*S5A7_+\X+E71 M4[[T/4YHQ!FD2<0@"JAJ9I2IK#=" X(\+PDL,R<&R3&WKX9<-<@VDV+8!!@Z M),>'=6Q7I=8 :A7 Z\H >PEI^^HL@-)$%W%V&']X)9:.,SF&R3)QHL=5@!WG M@5SWN,'^TLVC:DS(V;?Z@97J^5L6'MA_6,7;,_6M B2H.2/DVVUK.?K4GEPW M4$XX=QT?,(5Y]TGH\"[U=-ULI&%TI4ET$1&&HKB@$'/=()ID2'W*)&1IR@G+ M)*;,JD&T1YGFQGCZVPMJ(ZEU>V&?4Q3"&+P:^%D:ACNMM'^_UK#_=:$MWNZ0]:UU1W+^-%Q)DH M.:1$&YI89+!,BQ)&11K'K)22)\2%D*^096Y$W'6H-4WD-!GH,Q/Q0]1LV9B( MO.^=W."GY;I+Z7-,W;MFXNQH>J+I"$S/AXV$6S5LVP?K3II*.]"I9^I?]PIZ M[6=R+BEV2YONDM^KO;R.I>G/@]SB7B<-K3?3@OUTX(#G5FVMQO%+TR#*""GB MR0H,BUA(B"02"N4TA51(]9N(I2*C'KN"[/ RW>_ M9+?O?ROI#?A@00!C2JE?1,1W+?7S TY=3/VBZB>JJ5^^9^RFI#U[O+]?+=O: M;!_-F_FR]54I&ZTUT;ZHI;=+#/RQ;!8BYBG*$@9Y&N40);R 9:062U[P+$NC M1/%ZYK8?&2/&W%;075S!7@W0Z@'VBO0V[UX5\*=6QC&K>.3$V>Y'0D]'\*U( MD)D8L>6X!DC/NXU1HDR\T;@&KN,]QE5/\U9EX;7ZM'GH PEU:W;!/]1O.X>% MR?IXT33+KVO!%TBDO"!Y#)%@NI9Y$4.*4PF+C&2(\CR3V:C@O7'BS(U@#[KN+0ZK*/2VZU 3I4N=.GJP,%>I6"EGD8 6WH M&A N(CUW@8@1\%E4CQCSU+'NG&;S0>J"PMI']%G4WY9,-)^K%5^D-$>H3"/( M!.(093F!E*<%9(KT.4=QGB>%FS/GW%#SX\G&.%6[GA -^(EU/VDZJ6^ T#TZ M3'"&^C$7][5@R]90TMY7^N@(K;FMOBO:%?>TIANQ>@!*^NJ[\T[Z[$S9[J-] MX!]\%]WL"MNWCNQ>4* E];F'OH2&YQWTV>$FWC]?4OMX]WSQCA&9=:>*G=>5 MB>G]0RR_WFX$?_%-U/2K.-JR_TJ;)5MDVI;+8PXQB]46&A,*2TXEE!'B>4$R M*9!5^JT7:>9&8-VY45=Q&.APZ*V)TR^UM+J)6=)2^Z.VAXTQR$][X>;OF]<-!4^'W M"HVN7 **1)HGF$-)DP2J?Q%8BC*'#)5YBF44<^)DF%\:<&ZK6QLAO:[6L!,0 MK/9BNQG5%[&V,ZU](AAX!6K!:V4];))^ _;B^K.R;8'Q:FM?''12B]L6@J=V MM_5]TUK?)O9(\$5$HBPB!851%F<0\8S#DF3*""MO#.QP?O9#&N%CYBCV=OAG4[33M,TMOB(Z?J7L<:[UV\&]O@3E$-9Y/TP M_Q(V^1-,?%GE3Q\[.O)1<;A:DRNY^:Y&>!('WV71T213QS% <.>7^6(TZN]6O$]8Y5LP"8%MGMV?8@ON]6WE!+_#-489.@%1% M)Y1\1Y19C#QU:)D]&"=BS!QNOJH0I2*TSYK8:,V;W^\YW8@DBE%$NO MY&D&I2@X1(1G$),=!KUC8J.=!-ARCUVFEZ:#V$X$^M(3 J.A*S MMRFW-$V?82)#6Z]3SJ&[E>L9<+^&L"_AIK65/4-Z9$[[?OZ(@[HO](F,:[QI&_5VA>VLZ43NE?<'(ZJ MO.$WT2G453BZG2]903-X=#3\A.E.A:PT>73@8W?'. O[8UW=BWKSH+N,;5ZL MN4ZXN-=?G7W_JHS%&"-^P$S;"WMCVA1N#( [@<&?7TPAGR"MP^QA\FI!6@P[ MJ6UH#\-3J\_ASI''R+2Y?;.JONM(+O7Q[?J;:+3/5HWU9KFF:Z8_,V5T&G-S MW\_L1=EL:LHVBSQ)8AE1J7;Q"8:HR"BDB"&84)&R)(T2D;L5V;E2H+G1EM(# M:IW 3A/0B?_P-\<#Z6NGRO*L>L()"'V,K7'7NK3AI(]G0;/@3B&PU^B@HR+X MLU?*YRFW)WS]'H!?*]2T9^.>(#PZ-O?UW)%>RXD>T8G&+M_HD;8*L^4$M^&O3Z]P< M""E^ZG[=+)A,>419 @NL=Y,92V&)TAC&,2EHD?"$L/3*PB0V("F$4M$:?' M>?:FO1>;19+I2&B10DI3!!'+"K5=S6(H4<(*2G!2(J:"ZM?/Q\)XKLLI/YS@7C.4HYQF, MDS+IVM70C,*"Q)(J?L9%SISSR?^_S"0_C2_)2UZ6B,$DB16^)2D@CF4"25(* MP@ME_1/DPL^>\)V G;_H,;SA:,?"?M )S,'M%V^:]/N)$^_GDG+OGFSO,\V^ M?_!G=BOX=B4^2-WT_.VZV=0F1*'9GW_2+,J+E*4PTOT2$(X9)(@3R)."893( M3#"GA)W+0\Z-AGN)=43>JEI_A6K0.\"5]&"Y%]^-1RR M^,3OW &YI5#)-_M MD-2"@P/)@YY V^/EE7LLAIV4@^QA>,I%#G=>QTF5'.CJ]6:[T>/RH0"T:HPCN:\S*4;(4X]0Q-2YV"G1&6KM=H]:I0(.OTFX5:?T =A82\" M/@M?^X3V'+-['6/<&O"E%K39U@\'75%Z%_$"17E:E,H@%4F"(-(S34LSR?]$GJ1?7'E19X>*6^ MH?$F93(+Q9\2D\TMXWCFL0G[;I>F)A2*991(F!=,<4R24DAC]<\BY:24J?F:ILHYQLN>NWU&W]Y3>:4!(ELO(>'U^WMVL$F_P)=4?OH-OGB]MSBP MYF-=O='EZ#ZU;4,6G$C*TEBO<06#*,4)I$F)89Z)M!"T3(7D5\9\/1US;NM= M)];U85U'X-I1A6?( K/&Z7 M)2\P H-.XJ#A6N?@"1V:=33NPZM^JZNF65 BBR0A$A+&N3*EF?JD62BN*>E5MRXWE@G;S8NOR_6Z[>EBVJ([EOBQPSUB0I0LX9#EJ="XQY 4N8 I MBPJ>)(+D,G9M.Q\*]>D:T-,-^*_M6H T"@*Z'<7[AS$PU??"@;UT-V"GA?%; MOZP%7V[ .Z^D[P:4WUI&=D-/6ZG("8ZC.D1N=U_1#N1E=5KDV1=?W3OA[>KM#H6]W!XGXE-N(%_^>VV;1>HET8U0*E*4W,8*CJ+ M"1_1B>19)W[J!B7/\@48U[LDV+Q8M33Q/_KTG4Z"(7BR 4JXT=Q,!RZ6BU?= M:_5_MFK[)>K5PR=Q7]4ZY4'0*&$<9EF40Q0A#$DI[ M"_7!\)3AJ*%G3D(P%DKU[&!SZ=AJ_ZWI^4JT?[]=FT2)#VKW3TV9%A.QMD ) MSM.<(\A8ED"$*(68"@332":10!A32MT"QNP&GE_L6)O70XUTKI7YK:"V#I1,0B$YN<*\%-R&LO%JM='W;76=2 MQVC6<;-DQVW!L0],=49^'3S$B3PC,TJ34[>01 M+'$J(6)IFL5"IBEV*G1W=J2Y$: 65+]DW1%(+VN7P>,8CWL>7SM:\X):8.H: M"Y@S-5T$PRO]G!]M4HJYJ/13&KE\PXBSH(]UQ83@C>YO\9FV6:CU\IMI=M28 M>GJ"?ZE>5NMOHM[HK*7WU48TBR)&%,M(PIA(11V1Q)"25)E97(HTB@2),FS= MBF*<#'.CEUZ+MO%,0]O40O7_6\&_BJ8MKBFX/M917\P4L+T^8*T53\/G;AH.E "?]A-QH =X/\T<.)RDA)^+B8Y) LV)V_G'=6@. M'FZ,?/1T)Q?7Z?[H6.+*1XVS9COKN.^Y3DB1K!^;6P&63;,U43WJ33I<2AJQ7E:URXIR&N1,)"SE M-(>)8 KIA,208/6'I"G)HB22&1(+-6I9!8?Y<)3@0%^#F9WI/QJ'P"MG[Z#P M7\OZI,9>;?K'(TQJQY]4[JGM?OHB]P/8MI[KR^KNKEH?9.]^V&X:W0-ZN?ZZ MB&6,J5U]C*&RQ@LHD7IEN91165AU7K8;;FYTV4H,6I$?9YV# ['M M#VDM$+]\7NL7Q\ \<"V$3@>Y]LB,.M.U>/QDQ[OVJAZ>]#K<-6;[__E=MW85 M,M>')@ARP;0SD A(X@3!O!28E1P1RJW*TCU^[-SH00GFLL7;H6.SC M#ON(I]J.;PQW%T]X5[OJ82/MV]'OQV?5<3T M?L30T:^T$5RWQQ7KYK"&T4)Q25F2DD.R+(HR2I!;-7B[ M8>?&.H:W8:FE!>Q W'$UX"RAM]N,^ W6(Q].39+?9PG,IN<;A[9-3(WA^B*YKLNWGO>WT5/$<(4I%' M$.%$?:%*(F'!(H(SIG9)I5.EA@OCS8V.7GIQ%UT"V8Y_/$(7F'@.43/5BO:R MAFC_98>+W[B,"V-.&X%A!\!1K(7E;2/V2F_7ZN44S<:$UXN.J=Y7ZZJ/>'LO M].]66[TI.RSH6)G*OKJ;H0[05YNV5T**NA;\;>?#;;M4I7D1B8@06$@N("*" M02PYU1VH\X)$&6<)=TV>"RRSU>LY?0J=4@HL.\W=;*Q))MIB,SF'>9LJ%+B; MIU95\%.G[,^F1<).7].H1F=0=3H_+L9K3A,5)?=ZFR(7O>:@5_U"][/IOP@. MN^L9?2$FVK//YXOAYB&8:*8&_0ZA99C.FS$1FH]\)%.-.;*<_\F-T\$6^->' M_27=#OG%=UJ;JC*;AX,& R9>_\LM77^X-V6LWE>F'[/@?P@=@RKX"V5*T:_B M-WUT]4HMWF_HLOYONMJ*3]5J]::J]5,7$F7*.*$$QB33H6#J4UG($E(:,\DH M0;$@3AT!YJ7?W#9OO>RP$QX8Z8$6'VCY@5' L:O O""W;4PP+ZEG9%,=^L@. ML3ETE('R 9STI6E=;D"+T:,N,FUVUD;!!#JJS X!&JQ/_CITZ>^G]6L5/)_^'B4VT'+K4H;J]5FNEGUQ):&&]-DTU1TO MOV7V[8>?MO"^,RQ'I?C=G^"GU_7+MI7KKLT$BE(A:"0AQTA ) E79(4)+!13 M)1@73&1.02@7QIL;0[7[MA,=K_]V7:OFIS#;T9-'\ )STHFFS9VP03:QEL $ M[>#\=,QG;>-\!H!+O9S/W3;BQ/=S)3??=1.1-?]/M9_2'_MH62PDXV4!A6(6 MJ"/K=7MW#%$W:8N3%)+Z@Y1;GM1'4X3SN/I\61J!>40CO> M#@'JI1P3@7L>*8A*D_!R#;[?+MFM M28/3CA:Z?@#+1F?!-4OU9NL<.?4;^M6$ ^IGF!OU6: )"EC3U>H!H73T>&%R=J\+#O_-W3'=-=U.#1 =OEJT<&)1^IFJ?UU_:P7>(,Y0Q%,)=Y#%&)ZY MKN';0?5=[8GXNE[^C^!ON5I:EG))=UV<^_:IBM$.3-$7;FN4NSJ9=,<:C^A1K_\0\.KER0+".4)A22"#.(2$25&5L@2"D5 ME&4IC^V2=;U(,S=C5XMG.(3I#V(OJ&-^RW4S5*9)%L<99*P0$,4YAF4L%;M@U.H% _?Y:IL[/$)IN,P/:6ENP&F)DX$%!; M7+WL8#=-3W_VVH(@W=/7? #K-[GM*HFF37WS =Y18IR7A[H9.R8,OGY8_/YY MD9-SX?;W4[Y1:,ZU3:0_P M&>:K<5H')IW?W[_]\OH5^/SEQ9?7GZ^GCF,=!X*YNHO;U[_[QSZHZ^!1D[RX MQZ+W;]^)WXQ-:=\5 /I(ZP^U^9IQ$_'Y4=0FJG3!99G&19E#7!"U*TBD^I1B M#@L4)X))*K/<*<[!8LRYO81=T:JF+5IU3VOPS42=>^ER8#$%EF:'7V!#&Q>/ M"H$I@75W@E;D+J9?"=WF$OC,?[>&R',._.5Q)\Z#MP;B.!?>_M:1N6CZB?IT M^(-L@[R4$:'/36MQ*];-+O3+,43(\:DS>E5VDINR^8QM'RC/I:=$(?3AOYPL8E#F+@]S#ZY$C3GD(/ M*7MT_#QX\;BW_LU2;R/?*3+A;W4*^=?E[F3BM[IJFD4JXQ+K8.:P M9*6 4813AC/)\TRX$,"E >?&!48H\)+6]4-7[6'K[-J_"+(=._B$+C!1M*)" M(RO8"PMZ C'R^N,,6V2\TL?%02=E$EL(GI**]7TC^X+I5HV-XS+X^*89?:U; MP8(L>Z=U]MN(ZO$0TW:?.JG>4-=6$URG+^K:IXHPSGSZ+^MF2B^5RM M^.[K6!2(\2B-(&G(N2UO6F*]>:S%-['> MJN_V3ZS[2=-)?P/$#[;:FDVE">54^P_69L>9\QUZ$!1W YK;ZOM:W7M/=6KB MZ@$HZ:OOSIZOBS-GZ_CR.1_!_5XM\$9< VTO,- 2!V$=>X \>[TN#CNQT\L6 MAF.?E_6=W@WT]V*_ORR%SB[$#!8T%KHJ4@(Q*F-8E*E09GI6)H)Y,M,/AIT; MFUTR.W6A1HO7Z)J)N-J4'PGO,QOTELCZM.Q/ #65?7\X]%RL_!-P.-CZI^X> MW2Y(K-6#5F_77/SXW^)A02.,A$P$C!E+("H%AR3E!BCSTYZO6,:-DZZ_N% M:P&,&C[/0L>#Z/<\=(0-]&)6:UZM39W>DJ[_^B"E3L[6 MY67>O?WUPZ5K .,8BPA%.2KN80Z=1YT9WK=!M MYKN66KV?1FQ3J@K\9"1W= ?9H6_I6O:-:6B/1P_]76_/[5>W.Z(>*&N);A .2SBDD"D6UB7F&)( M$:<%Q8R0U(F03@\S-P;:E=OO?=IN;',&2SMZN1ZAP'RR Z>37O]@M[KL[WLU^0O!\C+%G$"9:4N$% QB MG1P814F1H%AD"%EY@\\-,+=7OI<1]$("+:6]N^4DB)>]+=="$WJ+Y(:*DZME M2/51GI:3#YS,T3*DSJ&?9?"Z<6OWVZY&5,<(W1'2VT^?^])O$8J3(DIAGL0I M1%',(,E% 9DL.(M*&N$X[%[=?L/I#4?"3$MEQ(W$):KLUWB. M@0E@&+L NP9+:+S: )?&G-08L 3@J55@>]OXV@\Z=/QQCN6N@K_N'[2JFFTM M%DDDXJ*(8QB7:J^ )$]A&;,29BQ&<9JG6&"G4V3KD>?&.AYK.M@A;T<]0? , M3$([*(_3Q0_:M.Q%]YL4[H26]P1PN]$G3_9V N548K?; \:Q5L>%;Y0&NH:W M/IG^8[FY?;EM-M6=J#]6JR5[V)]Y"(&1E#*"<1Y'$+$T@B4J,2RR B,:IQQS MIV14M^'GQE_]@J_G'_3R@^]* =!KX,9DCK-A1V?A, [,:1;P@C];\<,<.XU# MSBN_.8HP*])HZ?U6&WX?Y*OE:MMWKV\^;#>-;O.X7']= M2(*BA$L.I=X;HD(6D":%A"3)!4Z1S*7;MM!Q_+D17BL@V.K640S MG,1Q6>+%IMK0U?//UDZ*FML8\9T:[BI6X26#?+:OUR6;/MG7XF$U^^5YT[ M+49J@4H+#!/=GQ>E60Q)CABD<984.&9I1JV:=MD,-K?U:"\N.)07*($=VC)< M0GB8M'SC%MI1,_98J&MBMG>H[+?7*66Q+!*L[$=E]R,NB;+[DQP6).9Q%!<1BYT" M.X8&FQNS[AOVN49V#$)J>_;C!ZC@!S^[IH9[0<&?05P1-I!X/O 9&'#BTY[+ MJA\?]5C<,S)@?VP[://')WW*T2PW_>E3V^I"8R*-^U?8#_K_4'[Q^%"U.[I!B&GPF]"0A!)ITU9 M" GV45)#T,&\^J2/G A*IB7;94 G9208BC*(XY2K;7^"("6Z\9F4+(L1DIP[ M-3X;)<7<%@0CG&,EN7'P7^7(] ?JO-R91HT@">I7 3F%=_.")'/P<=J!9>GI MM'S8Z$2PKXHN[G17OB_J$2]^+)M%G%&6%SF&&$ND\[Z(^I074.8,IQDA)4N< MHJ9.#3(W/M,R0BVD:5!X [2:.HLK+.JGDBZ.G^M>Y)%EZ;Q1FW9Z>H?:OOV>LU?T8U8Q 3'69I06.0I M@XBKS3%%!$-!BT(4!989LH/&=R6@X^<6ZG&R3'V9Z.]X]CK"\U73=M7NF+S<=* MO8AOUU^6=UV3^P62E)>"<1BQ3(=&1Q02$44P05$B:<)801,7GAH>;F[L9 14 M[Q/0(KIQT05<[1C('UJ!>>= 4-U*L<5MV>(6(%?,#A>O)'-AR$FIQ4[]IX1B M>=?(#B"K5?5=QS"\J>I7U;;[>G&0<=G[;ECC*,&U#DW$ ';4Z&?F8:RL=OEAOEB8&??E- M=+G^2]&\U@70N>!M)HB.53>'U5W+?Z7&B(HZ^)R-0C4=O8CY3 M"4C?,)^O$.E]I'$KS(?-K:C?J0W_*\0>](A3JT7$2=Q#+G0NW19QA 7 MF,((TX0B0E-6Q"XKQN4AY[8"&(G!NEK#3E"PVHOO&#MA ;@=4?N%,3#QM@@> M2'L#]O(&"7^PA\SS@,24$TV_T77VMAGMXY9C-, MRHQD*<2)U+GQ)(5E4G*(DBB7C!3JZY/;)QZ>&F)N2V?G]J"]E"YY,*@OEEQ>_W !A3H]U.8!-I0\Y_VN[>@!I? .2*$Y_\96T.#0; MPZF*)^^<,$%Q2/+':8F#5X[@V(]U)473F.E\(T33&RL/BR1/BBS%$F+M^T+IL%-/JHR?Q0S&[]K8IK_P %=XIJV%)/M7[,LO7X40%2I*L5*9TB13% MBS2&))41Q!G6]?9H)M)\\4W49>6K ?R8C>6A .%>5ZNFYB'Z2SZ>D@CG229E M!E.LV^DEE,)2EU4A,4_5NIN@E"%/K3Y'3\C$C;7Z1D^AH;=SEX0 -/"R[>VK M[;/!YTFPIFKQ^7CPN33Y/ F)0YO/T_>/6T/>5\JB:)9?USJNI@\U3)A".D8P MS:)"?W6M5G(*7CO^N1*TP%3S7J'SZA$Z_ZG0T;;E/E(V0+CA "A>*>74.).R MQX"B3XEBZ-*1I>:-\^&-VC5H(]7D\D4E2Q.:1C O$ITJ$460$)% 5K RQYS1 M(G8R5XZ'F!LC=(['7L11:9$G@+1[^:^#9QJ7K"TR[A7?SRKOM[3[\3#3UG _ MJ^91L?;S5WK?./Z=_K.J7ZYHT^BN.*\J[2=89 4C&*WKC# M[G.?,P3>5-N=DS+,9=787;?8#DCYG??93_\M-LQ9UB.=FGN3QA=U%3 M/<9+>K]4Q+!SA.(RY;G,F.YBD$"41UB9=1F%N2[PQ1+*2.):@-9RZ+E9="]- M'\A&TUC5BPQHZX_6!W.KPV!,W=9 GY"QMEJ;/G1SC&MUF",[H@N#?&"BZX4& M/_5B_ZPG8"EDG38U])YKF;^! /\ /%'1, MC/4U@78<.>FD3)9*NYN'0YUNP$XKLWP=ZG4#>LW4)ZU;&]"W4\]CFJUGP/WF MW_H2;MK$7,^0'F7L^G[^V&R'BOWUMFFV2HQMK5:.MA*N:4WY^NY^53T(8:[Y MJ-ZD6[7(: $699EF2.08LI04$-$\@Y@KZS8GLBQD0K*<%D[9NF.DF)MEJZ:( M"<&[6+3-K0 -70D=408:+;OZ45UMO]Z:7_5: :,6Z/4R/.&8DCMJ!NV(//B\ M!&;M%MQ6 =!JT)48OVG[Z-Z,FX@1Z2]7 .DY+V:,)!,GS%P!UG$FS34/\^KE MW%GG>P_$;O,ILE)7QB0P*Z,,(I*4D&!%JTS*".$DP9@ZG?NXBS W.MUO3BV\ M;[ZFX2IGIR=PG]?I>0KV(&Z!\2!.X0<=$F,._E +F"S]HC9/&I$%\X7^: _3 MWRW7XNU&W#4+)G$1R2*%+*$2(D%+J/MRP5+@DD<9H26VXK@SSY\;@>EN4ET MQY]:2&"D=,FF.X'A,$%Y0"8P^P0!Q2'=Y3IP)LIS,< LM7"@UGO#1H?XR>6: MKM4N<04ZYFCZS!1S)DC!1A=\,-M"2^BGJJVE*1"S M7,NJOFLKR= N]U!=;7(6N3GR!7#62LG;ILN7>6\S(_R5 8NF[B7F78D;![VH:2-*;#PY9:JA<$< MN/RW:#9ZG6CMYB=-)'Y3S]_H&M)OZ+(V-O4BIB5GJ=#!2T6BJQQBB M60)1G MO$CB@I6I4W>'V6@VM_7%*-F ;T8+TRB-5ZL5K0^*>TW5-,W[E\C2/3$7>6>T MP'IHSM:BWH"V4,Y& 00ZA&Y BY%>#7J7RE&3(8.4*>(/-%:MSV4&W=U" MS?\\.L)YU^Y?HXMS/M(RVZSA +EL9YC L"8V8Z-! )J10% M%!$A:9)G5*+")>;N>(BYQ=:UV4@GZJBG/R/O)3G+UH9#9452NC9OWZ!S-1 MH.J?VB[JOE\E08+)(H,4Y[$R/E@,"2$YC'">1QG+$>9.CH.AP>9&5YVLNGBW M$5;[[XP+WM$.&038SB+Q!5M@0GJ$5LG=\P\;ZH9'4MI*<&= M$1-(+:<;.YT!TXZ'KHIQ M#/!;5?'OR]6J,YM:SP][,)WK5F83_)O:@^D&78M8;8\H1@+R/-=AUX5.GXDX ME#QA11$G-&*I"RO8#STWIG@MI6 F-U!V^P#6"0\V>^D!Y?_<-AOC:W=C$H=) ML6.7,% '9IQ>Z!O0[[9ZN<&!X$!+#G[2LI\_;W8F(G? O)*3P_"3$I8[+$]) M;,03QA';K]M&V5%-\[*Z*Y=K\^1/@E5?U\O_$?PM5R_E4IJ6OFVUB1X^MWV3G =N-AEO7RC*_T^+WB&11Z)# I.J3*1"@&QU,92*0E-"I$G MTFE[%U;8SMNG<_,A7;H=XJ" TUOP%Y7<*AL M7^2U5]?D'AXH##J-;]IH\#XSL=/:'Y%/,SM>R3^PR),N&-/ _W21F6C4:]N7 M#A0_VHG4?*3UYH,\H=&^AR5.$ID3'$.*8J16(+5Q)Y(+6$2,2881P=RJ@4XP M">>V_!QVO)1ML;&5*3:VW!<;ZXN"=&J.;53J:X[MUJ)GG;G R\_AI U7B#M8 M=!J@==2WG%J])FI3ZGDN G4I]27E,S4I]0SR^1ZEO@=R6T6X6"Y>J_5K\_"" M<_5Z-1^K9D-7_W=Y_[+B8I$SE*0)2W13'[44\!A#HC.=4)IG-(U9EI16Y7N' MAYD;G[>2@D[4&] *"Y2T0(MKQ]T7D!TF8']X!6;1L5!9TY\=$BEQRXS\$K9LDBN.NJH/ZF'7G#921 MC!8EACDIB*[A6T!,10)IQC$2'$E1LWE*V]N1GQ)71.3+R, MSZ4%F3IYF+%G>,X-2]??>ZV2SO=!;J[XV0VY4V])H/\M!K\-3L M,YN(_5:MS!')):(PRY,"HB*)U':\+&%68ESD(N*2"6L"]B?7W-AZIX].$%8* M@95IQZ*V:D>[< <6\CB/%E3_/+,SX49[/TFM7N!=/TF/G+TGFGO9[ZR#3J+# MNO,\DSE5QV!:;E>T[I/PM[697ITT+P[?0S[P%OI*K/>/\^!BYW&XZ59&_Q@] M6D8#/'Z<,_R5*#?[E,3?U3?8%!T4_)7ZGNH6J1]K<;?N:VQ;]?+C:[9 M<=]5%ZN;?S,,H#4Q9V[+3@' M 9N3NYKY\[.I3WAC 1>5[5X!VGM-^! &=!K M W[J]/G9S$][3S])1JD;H-3RYZ;VA*]7I_2U,DWJ@O8$X%.'LZ_'^DMU>+>K M>(0DCS@5".:Z4QQ"5.UP."E@DA1,1 FFF;3:X5B--C=.?70A,R9^0'O0*Z"LZF50%PI8/#5MMM6BQ<(L' #GTP MML?YXQ#.G?3@54B<';P6P?">R#'A%70Q+&$B'.U/LB"PT)$>9SE.9&4CM_MS[\^+U[L%/GP7;ULHHC9/RRW*S$@L< M9R2F10Z35!"(*":PU!4_"TERS(N"E\%M_+2:A(Q@,[>I#-Z84H3DJ M6"0Q%C'C$8Q9CM6J+2C$.&>PE#1-2,9H43BVZSE\_-Q>T9UTW1&HX_+\!#N[ M17D\(J&/DJW!&-'3YI3.GIO5/!IBXBXTI]0[;B]S\JIQKZVI!]J>\?55)&.1 M1[A(F ('Q1 API3!31 L>1KEZF<$I['+JWL\Q-Q>W[;4<%^1TR7\9 !&N[?X M.G "O\DM+JUT :IQGM?=ZQM]8IA)W^KS:CY]LP>N'-L5ZOL+9@Z.=!>JNEJK MC\QP1_.Q6BW90_OG/G*F0!$O28(A1DAJ%VP*:;& M#)\$,U7*=SJ QTJX=H=RG X[#@D)$&@?1<3NHD<\9QWZ[7GNB_K9DXG01]??5NFUGT?:V,,6Y#W^OS];? M5YM_B,T^FWA1,%3*E"4012R%*!$))%Q2B%B)BS1-8^J6?!M,TKGQ:5O[?+NN M]P4$V&''"!V1!&K1-CW>5&!=K6'7;:0YZ!Y!#0)NY!ONVV#'TK.8X]!;OU,= M/O9="F[ 3K^^\8=62!_\@ >Q.2@K<:.[6F]]&IO!X?>Z'H23=M*%(SCH3U>8 M\ .Z+45-O5E\TE__%S^6S8(3M;>6D811DB*(,$U@2:((1AC))$XB*J15.?Q' M3YT;Q6OWQ++9+)DB^K\+JJ/.6V>0%M;2,?88MF%^'0W&!&ZP$3A8$]M)O8=( M2-UP0$#J7T_)Y_$3)R&*DTKT+_7I7X:-.= G+ M-$6W[ M?5;;4:>YCY\TV5'N204.SW%/7W!=8> %PY3PC$6P% 1#E*0%)'F!%"*HC,N, M)!@Y%0/O'SPW8[67:URIWH6,B[040B>A"64II(F N$Q3*"F3*4\$2S*Q:"-X ME3E8;\*!]720<)#]2E<@CLVE(!@+R'H1-01 D'!$B"Z=OG;!@PJ#LCXL?#%]Z;57?GH3W1_=90E)9D!SF M&5*F(4$8EH@RF")"HAP3FF1N 9#GQYH;AXXSJH? M+-P/$$4FCX/*NWT;MVM6W0G= M_.)+I>N.*VKZMN2"__KP>Z.KS7Y0NQ*J R9>,+5$M%7*>V\/D9+EZFL&HUQ$ M$,4E@U2Q-(Q0(>)$IHG,G;KSA!!R;NQTH*..,*A[+<%:;,#2Z&DB#]2_F.E8 MT:D*R@=0M6I62@0W<@LR^W:L^-QS&IA.GTSG3D'M)@>MBEVC(/UKTW?BX\&, M_J1U5=/^,]BI"_;Z>G5'3C$A7HD\B*"3K@ AH7ZZ= 0=:]R:T[6QT'\=M+(P M9^IE3%D:)VJ]P(Q#)#F%!&<(%I+R"/$R9TGDLG*<'VIN_+]K/6,^' CK%*%@ M ;$=/?L!+O39S%C,G,GQ,AQ>*6Y@N$F)ZK+:3^G&XHZ1I%'=W6_5BZB?>J_I MK"OFG"1Y$9KZKL^N7I3U6VU*&/5/"Z^FT5IGI2BA )%)40B%K",9:GVI!DK M65YDD5L?Z7%BS(U&=C*;2C>L+82V4F(+QS#VD;-BN5<,CG7HW6"G -AK< ,> M8]\5H=-J!'6[78>EWXW<.%&FW:I=!=?19NRZIP5L\M>F^'/%A%F<1K#,UQ%G*Y6:A]((HQ MQS#!2/?%%HK7<$QA7,8D*6F!98D7WT1=5O:Q\H,CNKQ9A^.&>\%Z@7O*(7&!.VD'6>>EU:ZI.6/!3)^[//B/=K8#Q'-T^/.;$$>U6 !Q' ML=O==HY:#F?PG?KT'_^K_XGZ0Z>*_L?_^G]02P,$% @ YFG]4KIXNOB( MF X@\' !4 !P)+NR+C^U[5*JJOCI37=)(JN[K^<*#)2#1IDB99*HD__H)D+FO7%[P159? MMUN=RDP1L3P(1 0"$?_R/[]^FGWW!9>KZ6+^KW_B?V9_^@[G:9&G\P__^J?? MWO\,[D__\]_^Z9_^Y?\"^-\_O/WENQ\7Z>P3SM??O5QB6&/^[O?I^N-W?\^X M^L_ORG+QZ;N_+Y;_.?T2 /YM\X]>+CY_6TX_?%Q_)YC@MW^Z_.>"I*GEKZZF]_TB?2S__G__]9=WZ2-^"C"=K]9A MGNH"J^D_KS;?_&61PGHC\R?I^N[!WZA_@XM?@_HMX (D__/75?[3O_W3=]]M MQ;%QR66?_W3YV590]4J,Y+5)?_'U3_^_FKUSTM\_AR5]$*2/TUF^^-?5 MB@RAJ_5B ,EMU4+D_ND[XKK@"<?Z1CN$)\]88*Q",]YP8(-H#:@.Q!%^,CSDR/P@@;BR[$QQD_W X M7):=@.'],LQ7TRKX3>M^I.*#"]H^ (27:!A%<4SB_)A&T$_X[DCR\79_/U\MO+1<9) M*D1S-!DD*Q1_"ZW!*5:@E&29\39J)P8 QJ-$[(03VSM.AI-S%[!Y'[Z^RB2^ M*07F&Y;.+:$B3A3!'E@I= [*1$(22@!#H20R'4L^+O1X=/F=H.)ZA\H0LNT" M)"]R)A6LSO_GE^D<^81[XV+B#$Q $HU+Y#[[J* 8F\AUC@7S$!;EGJ5W H?O M'1S'RK138(B)"JYX@COE^\7O\TDH)JL@) CMD(12%#A)AR0S)>G$G.&)#X>+JX5W0T7'6R-4F",>0,A3!)?&A)7B,%K(VB@>+J-V P+BU^F[H MZ#C7.9AH>X+(F\5J'6;_W_3SQJGF="@Z8RPH=(&<:F/ <6\AL:'6< M@W%]M=T T'&F\V#1C:SR>G,^>_-Q,;_(S3'O90(1U;_.TQG2X(N%_']=#W#B8O9*NL+A. ]*.,R!"?K M[6XV.3E,61UW]75[Q=W4WW%>\R@1CJS^]\M0:Y/>??L4%[.)*]'XR#A83G^H M(@($R\BKB4*+9$SVZ3C=WUAN-\5WG*@\7'B=;/J?OJ:/8?X!MYEXD;43J$%J M/*%Z$ 0_9:JZ*2.L[NW[?J;ACH. -YM"B[" =>GBVKN+9WLQ72I(.S M%46^)?.( 402%/ERZXB/%$'K%+E/V0@<(F*\?_7=H-%]_G$ T78!D5=S^C02 MQ_0+_AC6X9RMB7(Z&YX]45\C')L5!)Z)&>:%#9B*D4- Y/[5=ZN?ZCX1.8!H MNX!(O>!?O@QK_+!8?IMPC+P(4UW?7*_HHH1@%(/D.3G#CFFB8: JB?0JSV0]GJ^D<5ZM)48&\7F: V:C(&Z[!4 D2'"\QB,"5MD-8 MB!N+[H:#[K.-APNR"QS\] F7'^C(^\MR\?OZX\O%I\]A_FV2DDG*1 03+8E$ M,0_TCXD7R\AO*JYP/T26\=[%=\-%]VG&XP7;!3[>?<39[(+Z' *3140PI02B MGDR==X3S0*I-5M%/DQ["3%Q;O[GAI93PRYP59Z!B+7VN', K@B-$0GK)32<1^.2T@\3<-N(.DX.SFPF/L M#4EN&6:OYAF__C_X;4*!5,Z\UIC;1 &WYXJL7HRUH(,%'^C0]'D(G-Q<=C=H M=)RY/%Z88]]7;4.EGZ>K%&;_CF%Y\>A :2&$P@0A(2$:C82H8P&NDA$EH$-W MY"NT!U;>#1,=)S4'$6DG[SBNF/B9OK.:B)*L]R23*,HF,2\@*,=!EUR$*&B/ MKT3I2T3F96D@U7@8WV*DK&0O5-(EJ]$E5A!)H=Y MW'-GZ=UPT7&*+%:D7"O]E)2B4<>0&^JOH+)X LO4+(Q M*BN/SCQVH!S.ZTTZQNDRT P5%U9G *&/>.#2,RZ CM'OO5 Y1M@=(.9E6'VL__WIO\ZF7\*,.%F] M16)EFLC*UQ^\F.>;W[CVFQ,C*T_&@U9T*"L>*:A'1LQ*K3F)SBIEFR#K*+)[ M0.!1L%F,I<,. /L6$Q+M<8:K7W%]<:OM*1;PG"3'90Y0A04Q)EW )PW2_POV10MKKLB&;2;(PTD)R ML=3^ A8<1PDY,&:\23&YQ\+YPU%SEY9Q>KFT@\R1TNX +S>)CSXJI7W:5EDI M%6M+&K0@70X^6X*>?YA2J+<5!MG%G[ZFV5FMZ+GDB6', MS(5,VJPO$5$IBOR147[0ZLII>N@3:^8@QJ?H$KG5 =47..#WQ6IQ21PN[ Y.T MI7\BOX(K=]4W'Z<3$CH:^J"[_^=BD:C8HYI2T@6F*.S!\$K\GUD/Y+J-3W0_/=U ZBAMWSX,CQ=]!P#:N'EW)33AQ 1W J$4BCCIC"\0 MF)) _E_0]?&G\0VO*>X2-.[1UPA"0PB_B\CL'AZ8BR5H+B K].0IDJ5VC'F0 MN?8=4=:4\-B#AR%/MG$SAXVP_#+%_,/[W'YZ4>,%%A*1!:L@>P\01Z% M)K.I%7A1!!>1>?MH\]@CX'*-BFZ,3$/7YU"A]W!6W4B<7XCKV[7T1.#HD9=8 MTQ.AW@O2#BBR#I23.F1%7SXZ)F>HFXM[2.O&!K6#UK#JZ0%OMX[G:YPXG5U) M3)&< EGN@!FBYXZ^LB8(E[AY=$#7<.[1G@AK=O]Q&H0-HY .H'6-B0EF*R1# M 2+JNBMR %\T@F&Z,W%NAN6_A9F9S@)B6'6 M%)9@J@\D3:*-(5D$EHVT)40C'ATN=U1AZVUBQGXS-(R>[]:V'B7T#G!SK7W' MEGZM6:Q[!IBKLVU""! WUT-"Y"(X14JGXS6V)BF1!$06D'DM?"I!4!QJ-!CA4!H*5%EL=$G[ M)&WC!F^-(#6P2GH 64IGG\YF]9'Q)E*H+:B6^!'GJ^D7K./;/N$OBU4MAGE= MWH>O$R*XH&>**[#=([YI["<3^*^N:P.AIVL:-_!K!:F"5=&";[@IJ0KM!8'8.R'4DZYKHCZ X&=N$ M12$J+*E-'"#P)(%=YFWB-+IG?IRN ML7.L)X7:44KI%&*O5JLSXH1"8(PJ(VF_CI@.#LGG,(QVC.(R,VZ&,0YF H:\O\A.'*,E8QU@0LY8H9)M7$8\0-7;2 M]70(.TH=/2+K_.#G@@[W( IHAX(._A@AL,! U\8?F)#+T*@5YOT$C9V!/36B M#E!#CVBZ?LI;&X6..4#0LN;[LH6(5H,NMGCNZ/]2F[CQZ,E%@P^=& ]7ARJD M W#=N$O=R2T59,FV;53.>,+M@V5Y,[$CANYGX( MM-PMFAA>,QT(34"S'S"/UF '('VY6)%C4MN\;8H!?L'S00 3*V2*##TD%D0UQA1@)63@"C.16Y]/.]$W[O5E"_/5 M0"\=H.U'I)4I;J^:F:@DE*CS1X2O>60IZ8"WJ6Y%%Q+G(4G>IE?-=2K&O9=L M@9R#9=P!/EY\6BS7T__>T/ZZW.ZG6Q\6%,&B!A,5V=;:E=G%0'XH"AF=<4[[ M1A/U'J5KW-O&%A@:4 \=H.J'L]5T3G'%R\6G.)UO%9/^ZVRZ31V^QG&0.M8@PB!%U0U+#>DG\>%_VZ MF"\N^/H5Z\_.\XO7_)I%J=WX?IRN-@UEP[R^*]Q07PL3ZDN0[8F3L[6%5[]9 M,Y*%)IAX9R,(\JRSB9IOQDY!Z+AWLT,BLSNU'OM&^?VPO?&N2^&& M>"881':8*?RO:2=E T)P28-,/C@O6QS.7Q")G?#_;.Z8>X5(AT\ MU;YD^=P(_(!S+-/:'QI5$#I!D3+73E$2(@L2K,ZA%%.2E&WUYFZPBIK3>+8J#/7#3)V0\NSNEHY M7,P=6)F+?B@7[SQ^"*MIFI@2/!U:7*\6+OP+[<9N+'Z>R,',A)*%:K[ ($3 *42H:^D@RL"0PCTYZITZ#G MG*#=\/.L+E2&$'T'"/H[UKFYF%]\(7?O _YZ]BGB\G6Y4WB_W1[DP#&3(@-M M0@#EY&Y&]J>U85*.S7UB\'S'77W#0C%#4H9IL J MYT#E$L$I1IY@[6"(F@OB\)0H?(C0W7#XK"XY6JKJN3^VN*?S9MM7%_-+G M%T]R/'QGI>TJ+^;YGK4O$2YKKHY' 2)96:L9$#P*1@=QL#)'+X)E30S$GH0. M&U[RK+/+9.9=K'.HH^&UJ6L&*WT46$=W-'J5+:NTQG?+[9]U"X%&$EX685,KD;MMH M)\))![OE'@%6-6E<^0E0W7ZF;MZ[==5K:$3)X7X^6B6-:!DGN?.1(6]44)N/_>#I=[!:7E)_58BU40OYC4U\N+K=#515I%UMQ:T#]4J MQU@S;@AE\H@V7&I,! M&;,F\3 -G@L#1:K$G"?AB39!QKWD=(*TE013F/2A-D8BI$08 M%\1 $&1CO>;@HHV 7%-,$CAK5=!]/SWC=A\8'C@#2'U$[*R6Z\G+K06M;5I* MP;1^@\OI(K\N+_+B\T8O-0;1S)@D30&9:4,H-)QBD" !63312T:[8Z?[=UKP M&H+H;[?1LRM%G=QM'A[J-Q%]YU ZWV^JONZNP^LM2JP[Q(.K5:5%R)"M+[SD MG4I8!@'3F/%_&PSL ; #%-(YQ*ZN*<\M<1!,Y4CV-Z&E\-46.L7K!$7.HQ52 ME*!W*^(8QG+=HJY?V!V"C'TLVS%JZL#9NCP ?J'#_Q5]N9IP6U2),D!BK+;2 MBPJ"C36V%4H$[0+*U#8E?DE+)S?' ^;!#Q-S!T"A(+2&%O@C;O_WU?SN;=/; MQ6SV\V+Y>UCF"6-!:YXD2)L***$08I$XN43P-I!#85F&P*PF_R)H5;OPH&\SI^' TDMDPV>L!R]%29 MEH_(3X:QP733#=JN7,75^\4#-PL;5F/8%!M]JH_JP[87W[8M'YZW/-XZH6\Q M+3[,-Y^RF4$W25%&*Z4%EVJOT6 B.$]"4EF76 +CC#?JT]F8L]'[#)\,]5UA MI)<3?SNR[,>S)6W]+5M;B_#3I\^SQ3?$[43&LV7Z2$)Y,POSU4136.?JZW!3 M@SS2@8:H,8/5AB7E9"F-IF0>2/#H_9!/ZSLTUFB_P-ULP@>YG!04TFHNP2(/ M==@V@BO<@;J7)'^CEV)#(T=L[-\=R5VKNW$)?ZX--?*%! M';V"PB*"DM& 3Z@@\ZQ<#CYXUF@(QXX4CMZFN0L[?+#..L#B/2,P-^P0)1.& M5CG!%6@I:N]U2]L*D8%7G"FFN?+\9)-(+X@:O1_SR1 WE&:.;3?:\S/;Q'(0 M7AE(2M9"$<4A>FM!&BN,#M'KW";8&O&9;' MR7([_F+;(G4B"^,&3:GC?!+]0?L^RB0 I6(I)>],HR[/NU W?J_G<2SR$,KJ MPC0_FA:YX=HP82@H<@(TDQ)48@&\9AIR8HQ;Z30+(Z2V]O9'FS9@'MLA/5)M M'7BDM[JUNNR+)W<:A184VCD+(04%LLBH34C6QC:V[X"N17^(VZ_#Q=\!=NZY M'C:6:R-\ ?I#UZ;B F)4!;1BQ6"2OJ@V,W@/O:;_0]PF':F((V].?YH/*? 82#S:,@A6"?HKQ^*Q\(1M,N9'W](W[<3*S,E+*BB %V9 (2_@%*%) M"*&$E)SGT.9!XF-4#>!BU<]\LUQ\F9+\?OCV&PG_U?QR,M@+BK:_D/>(5W+0 M'(TS)0(R3F%-IJ#:"ZQVG((;LM],VC:YP/UI[:2N\E@TW>.8M51:!][;3==3 MUJ:8 0D3$2,H+Q)$GQ-H6[(C^FL_AUX\_U9@:JWS1WW_?13013+M1@E3K3^: MI^D,;S#U?K&O/!WM3183A\BJVVJ5KRU< \DS.IMS<"DV>I'>@)MQBSA/C.;1 MX="!2;TQ&]XX+W30!D0TODZ^L>"0MC:7H6"@'2B'5&,7KNG% M#+&;E?,3C=HPZ1TDGADHR!LBO>L]H:()P'I.CS3>PAHL98/LZ"]E#ZVJ3;< ME<)QJ[Z[@V<3Q79A+7\X6TWGN%K1MHO$5F5P.WGX TF_)HE)O,MSQ2_)7]GF MB5]^K%^^FI-SZ?H;G] FYI:5!,[K5+L618AU$%H(K Z0 M3:HTFDE](@;'+2WO;L/T"*LN]MO=:[M+%9R__+N4?V">96ZJ\1!D2XQ*Y'EI M!MF@BD(*R1JEPW:G<=RB].Y0WTBY'7@V=SE[D;9''AU_OR[6N"+YX_3+IH>* M2"GDI"W8Y$H-&0SQEAB(+(,7Y,7QU,;6[T-E;XT(\1: MZWRUN[=Y%:9$+)*VL$>L-X&(Q%=TX#U:KJ0TKM$ B=WHZZW;PXF >+2J.H7@ MQ09[$[YM=I6*3.H868U9%:C,ZJM\8LG1*2-X*"'(4YWBMTCKK>'"B2W@(0KJ M\B2^N9,NG&/R:2:^)*53;5MN:G-7I8@U[S2D@#IY:6*0;2IZ]R"RMZ8(HYB_ M0Y76 1YWOVF>F% \DU:"\(K7X6@&@LP0IO!(@1X'5T\ Y0P)DB/M/8H%I8\&N6MSA;H_K9UT MDSY1U=U02NO 5I++<='U:?N:C7BES;;^5KLMK"DDJV7;G^NO3%QP+$658=,. M1[E,&T[4CD[%6F5KW!T+(XB>I(VS4(N&/MYL7RW*.O? M2?@_XA><+3;,;&XX)@6-)ADIT*F0BXPZ0S A =-,2*>\,;???C_0VV6'Q;JL MFQL:54TDWT5 ?&>?7-P$X'9^=)7N96^%))$V!*L/1ECU*IRGT*LVJXOH=?8R M8VS3/G@?*KMT"4]FYH927Q?@W%V8$V6+R9"D+B.39C@;1#$=V+&W^/ERR_RRF'\@[-YF"(7@ MD=BPB)[$%,66(5^82$6'^C:O"=*>)*W+T*,5XH955$FS^4#+Q&#+&+7 _$4)/K*T.3OMK.54Z3\X9>5W.^R(QF;,S)$,Z.P(H MSC0$YB4PD[)R-:/JVO0Y>)2L<4O'1XI?CE?0^%&F)2JN_CY= M?_R(L_QB]28LUZ\+R7;SL.D=KM>S\SS$_2W8)RDD[I- ,!A)IJYDB,(I8"(S M$7UQYG8J_ &K."!1XU9WG])&CJ7)#BSF[F*><,-YMKD09YS\[UJ4%(*4X(-Q M.HOH;&I32+L[C>/V+#^Q+6VDN@YRXMLQO'0L?$V;)T%OR6"_GE=FZW_K8?&% MW!@Z1J[VX.9FJ@ZRN/Z-:[\YB4YRE42!(NJ^#!F!W.X(4@JCA19%QC8W.@V8 M&3>^:I95'UOM'9CCHYC=]B6^6VR:9F>U5>-UL6Y%/>'!E6#1D#BXK3TG FFK M)."YSJ05%(.6-EG6T_(Y;K37;+]T#)8.#I'C[(9TADNC(AC'Y69R(GC4'D31 MQI#3[:-MA(!)@:*(A%A6$IRPQ+_$ MQ+&-J]X>O[L\^=ME!QF%Z)\-2^+Y:>M,B^$JGPTJB!" MULR!4D: 3SX2?TY0 )1<-&UNWG8D<-QHLAD>6ZBG ]?YLH,5KNHH98J.)TGF M@EEJ*);5Q_RU"EL4@H,LLO@D';(V"=^[M(S<*KF%RN\^,_]PMOYUL?YWW)Q0$Q:84XCDV6"(%)7I2*:%,4C!*:\%'76- M2@EVI7!?@CS\_:<5X.-ME-LKR]^630?9EAL=0_7( V*&0=<=4WYF+MJ;OM.;P+%,H2Q8 M$F<.K&%T4'(K*8H(CF"+T0=F-,R MT_1J3J([JV? [3TGE-9&YP*BWL,K90OY(I'. BY%X"[P9-J8QWVH''E251LD M-E-3!Q#\RV*1?Y_.9IL==7,$YFW.G"R*0OWZ^+A84"DR\)E;*"E+C=[Y+-N, M2=N=QI'G/K6!7R,5=0"^'S'>V3_)!DFTDN%V$4%Y)M9Q+'K?YK!+4V"NH >137?)IN)^;1V7[9KN@R>WZ= MLQ)H[R1/%MG6FQ!A(&CDD*16Q4H=N&WC>^U.XV[Y8/;,P-=(1WW>5M7QXC=J'YH%NGQ[)VU:,;![JKBY'6VU^9TJ((7%=83)%;K@G MB%A-5DK5IY"U\3*XA,9J^IG2;TP)02ZK M5(EV-A>N)%-:]8D<@OJQF^2>%K][W'NTT7^OUG:36Z!TNOTQ3'8.^^>N/N [3V3&6Z8$/',Y2[4+QB2V74U890XJ4) M;UI $#R"",:Z.AJW7"5A_FB6:^(2B[9$VF*RCNM-A8'GGD/(BOZ#6:%O.ADQ*[M:;KISY[.T?KT\W]1MX3:&7)]#U3>@E7S4"C)7C#GTT=DXF&FY M7';/)$;3#5XVFIPM"!@(7YD-C+) =5_?>EQ M3H'!U'^P%#OP'1\X G^9SO'5&C^M)MH4EG(5B!(>E,N1^#$!7$J"6XY>J#9M M$9^B;-RG4H.[#DT4,B+ -L-V?EVLR2W>MI]_OWA9I^[,7B_KN,?:; PO4D83 M8T+*FB=@4110D1-/IAA@(=HD!9>!W>HB]\!(I!T7[#+I<:"*%XWEW752_\=S M@@9+ZC_P@<,E]7>A^,1)_2",<=86R(6 H)A&",XKT-JFZ)@(QK4Q\:>MD'@U MGZZG8?;B\^?9-&W4M]TH+\\^G;;X1>;GH?338>DC36/7J .*0)M/K+F MABN(.2DH3G*G#2,)M7G'?AS=S^-B8!_L/5!-<0J]=N"I[<_F)J)U2LF$0@/% MKV3J@\H0-?FC*:&-5DAA39LDX&'T=H':DR#J3E/LYNI]EB ^S]-Z%6RHW!55 M5'U\35%U<0F$Y2($&;T3;8I%#J5X7""? DU' _@ U78 X1^GQ ;I(.$/N/X= M<7YN-/YR-LW5X7XUW_+Y Y;%$E_,\XM"B[]??)XFP\QYEB#89"R=<: M^?4* M:^\?9C@4HXL4"2,V&MHS!/7/#=J'X.Q.5'YBI7M89ZD"^'H/&YEGZ+7-N9&GL1>9X]XXC>A@M%-F!T;Y/?W>Z_(B M+S8=7,[WFTD&I:\M'3V2M&0I]=5P@22+0[+O/KM>/B[7@4W+9>@ZND YP=?!IX$SXDE\8K5W /3ML\M7\WM3@;79$'G,OTQ#G,ZFZV^7N<$H MLI?"9/!>>I)Q0O#*<@C$8@S,6),;S8%A_FT__&/$G6^51"((>*I*6B#!!-DJ"2\LQ:.I%8HSGF>]$Y\KBJOB!Y MG!;[OIN_4>:PN"ASB!<\OUN<+1.2,_\FK(F>J]\X%\8F=7?\A?Z 5 Q8!=!* M-BOB/:#QCA=-,4 =6:LR$^0Z M!0FQ:*9C9LS'-FUVGO][P'UPL]][P#UTTLUXO>13:Y9Q A%Q?+R4&41L/ M/&!-J0GMXW EV\_E/>!>FMWI/> ^8NX@;'CH75I]R2)K;*]]I@#?DU/IN>. M09CH-(G'M1GD]HS> ^ZEZAW? ^XC]U'O?3!U-J1QQFV1L=A@GG++GUACY&N+(32X&%Z88]?QOUY_Q.4M^AD7 MSD:4=6RSJ7VP)#B9# BADR-M2[P],N(!,-SSX>.F" 9'P;'B&UO][Q9E_7O8 MU+7\K[#,]V[!A M#XD!!=F!BW%?<'>R%%0B2?/?@)8_!1*ELFS*W MW>CK^?7Y ;%.0^4\"\B=[TXG#,-Z*XO,T\'J HDNI@0I9INU\"78-G49NU(X M\IU, W3L#< #5-4!!-]//U73_== 'SD-L]4%GQ='NF5)(;EPI:"J;8LC;5?E M(,HD,P_9BM2HW\JC=/4.MT.P<#OR&DXQ8_M:/T^_8JZ2J<\X:_?Y.J!NAE>/ M-R_>F>N8E,L*!"H.JE8Y!7(HP:.AV,$DAK<'6C[@>>VXX,BW=BU1U$SN'9BL M*[9N\1%CU#E)(CS7OIY&D6\1F .G!<6E-M?0M(FQ>HBB<ANBBW,DF/;S& MN--(VYNA@:3;@>6A,YGD\;IL2LV(@M>ESAJ\F:I75DO-O0>,GE$@[>E@9IP. MYE2R=TE(:=I<'^] 7,_]18X(#H=62_](.]^2DKE:H2L@956'BI"-=2711D(9 MM%/16FQ3G[<3>2/GO8<&Q7Z@.T!#/<#NG!E:^?477-88Y.*A7RHA:C20,WF& MBFL/M&4]B)BL"8Y9X7>ZQ-\?:@^1U#6\#E'_;8 -HHN^0/5B_68QG:]?S:]S M(P*7(3G0D:4Z%X13X!$3%,&S4(*1_JS-64@M;*H7$G;73_RUY/AIIY_\U\LD$5T@' GJ@"_.EK MFIWEFFA>472SPOP^?)TP'HOD7(/,G.27$HDNDX]AM G!9\=$:7-F'D!LES5R M!Z)EOPE51ZON>5:L_P47'Y;A\\=I>K'$T+ H_?Z%3E!WO@.')RXMCTB&4]5W ME;$$DEDT_AZMM'6:;*%[**"P+#!(S% X9K$V.M03R MC(LNG 6O=P+63A7##Y+1Y0%Z@)870XM\;-S@A]LLG$=/V2O4,2)$913%3%&2 M>YL92*6UB2E2]+/31.3=-5# ^DWL70LAX1,)N&',MOD]_>353R/' N MH,C-%!6FR=FT&B@2YF@IX);E,:NRPO3G#XLOWY]_XA8@YW_9X&.#C*OU1H3! M,$I;'"7!L6\ -^6L+S>T3R]OIZ3(*3&6 4-M;I9,AE!TAIR%"XD+"H/W* >^ M]>GC%8$.J_!AQ-=!A/]D#*J4ER[7,0A(D:<*T8&GV &LLHSLI!+1G/1MY'XI MI)%J/@]P/9HHI . '9*'\%KF(E0!CSQO\QZ;[D^.I?KJ2PAI1QFK_ Q32'NA M98 4TCZJZS.%]&Z]2/_Y0R!^:N$8SE>;SSLD1_3 )PV0!-J%QH&R/(2P-%NL MSI;XNEQ?["W.R)&F]5?KU;N/!-98R7D3OFV[#UX&\5'6,DU&07SM0"AJ+R)- M>-#9R5H0Y;1J<\]U'-T#'*N[K?[#]=6OAG5CU$K9+$!;MNEO0[%(DAI0\CIZ M1F>&;2J0CR1\=&MX*JS>TI._21\QG,UK[:OOSS+OPTX>EUH1A+KF$Z.JK M8J;KB[NH(;-\2<>XJ#I"$L!:E@:3IT%?2(_@2%/B89%:%28>-(N2C:1_W3K"/ M(^_$".@7\Y#*?\Y[X!?SZJ7=7YBKEZ+/]" M_W9-NS\;*7D&9NO#+VX4!%(4^%I!9K3"9#LS_4]P-&X/CF>P!XZ"0 =;X<5L M\SN8[Q?(>0><";?D)A8C0-ED0!4*TYT+'+(SRB=R)H5IDQC=C;YQGR4WA&D# M]70 NC=$=)70/&]*L=\L2%*XGBZW&P_G6*;K"]9DMCR4@("J3A25W$'@M3-7 M8+33=#!>M.F9OP>1.\%//T/XM5)4!QC\Z=/GV>(;7OCO]POQ??AZSN6VF/;N MSC.":Y:MAXBU*0]3""Z3(V2=5RY8:75,3> Y#/T[(=<\0^2.H-[G NI?%_,O MN*(S9>//K-XOUF%V_>?UFOG7Q?K?<7UM*!X+:+CU"7+PD>):SB!D%H G93U3 M'KT;$>>'L+03].T?%?K-0?!'W@W;9 ^Y_->& ?()\\GF)!3$@I(.P) A& Q@ M8N"VE.BC://ZY;1\[K1OW/_9-T/"Y3G5+]ZJX[RHWAR\CO&)=9K5,^[#7Q]U MC4ZD8G@)P)S5Y,30']%@ O)=$D6(,01L]A3T#U'7&)@WV45/;I^3]=PSX&PH MP*57293$!/--!/A_ZAKWQ6^[NL9]0-"!\W.CXDHP[ATC=XWK&L9X.A&]X!9L MH".2T4^\:%N#]D>J:]P+"(_5->ZCE8X0=5ZY%1)%PSDZ,+(.1R^9=J42'C1M M2$G[U8:T4T.:/TY=XU[Z?+RN<1_A]E[7B,%&;8V%Z(L!A<%!Y(@@3<3LHW.> MVZ=I:]Q'FAT8C:W=I%_>[! FC9;:*&"E]FC5'B&D8"'([#QS M,DK=QA.]0<8?I=KPF(/H<+UT *K#!7?%]CS?VK$RL%*D\1#0DY>9'47FMEC( MR0E41C/IVF"S!3?CVL(CP+7O-7UK37> ]EL)AXOZ=BZX\CY#4AA!1880(_D> MR=8?$!NH6O7:N8><+JL$3XB2.QUXCE59![@;H-38EB@+1@U%UARG*1I3$C!)GAE$=+P^4@JDG*0@.*FU=B(PWB8O0#H#MZ-GS?WR^_68;GN?$]N2J17K^;;&_&)XB9EYB4DIUQM M)\3 :TZ!HF5%VA"E49V]6-V3PRZ?D/QC[<@C(/>'/A[_MM'?I5Q"R!3=NCJO M(Y;:.T9#D-Z#L13^2HG:RI&R7P-QV.5+EG^LK7@$Y/;?BGZ[%>>UQ?+Y[_:[ M&4EO!:?7A6-"\5''6,<1U$?:!B&*;"ELSYPYEGS(;9X]G)#)+E_M_&-MR>. M]P??E;>=>27):3=8(-97?8H9"4')#$:7[&1F40SH MCHP@?YH_FQWY=YQ^^%BKL+_@,GS C9/_(YF4G\-T^;D:<7P1\^O_T', S:+.177+^: MT]^0?KB1V2&=0.Y^R !M/IZ@;* >'C^%Y7PZ_[!Z<[[(97<#KKUD/@F0M6^- MRD5!3$( TSI9*4G+LLU-_T,4'?48^,Z'SO/[)8;:^V'S%.9J?I^*+#+-"J"* M$913"8)S"(%+'B(3GMUNE_3 L^"=EQPW@SH( &X\%6XCZSY[#=W9I(2S1?S]317EJ9?\!VFL^5T/<753U_3[(RV_$6;T;.M6N]*Y4H" M'M$YA@**L62R#0D\NA0@42CHR&7-HE5M_."\C'M3T1C7HRC\F9S1FST>+O?X M$2T =_WH%F?X+ERT/M.52S)@8&"2#N3 I3I00,8Z7P +-\6'V*:$J=69?BGE M7Q:KU4125!M5B"!];=O)A // GG$,FM;@F52M'E]<(.,3L_??71_VTX=+N8. M3M5;J9&;DS=>GZU7:]J5)+*M*W$Y!3FPXE+.X'4=_*B4AN"5@!A%HB^4Q4:5 M 0>1V^G9> SFVJNM=VR^6JW.,&_XJ\TK)=:+_""U>B< RS[P/%1SO2/RMB0GADS]I@N3$8PV..,:?'$<# K/BK+9AS8% M$WN1.:YU[ R;1^GP<(#6#N?M 'KN5-_A\$7^C[/5>G.?4 6@38J M,\B9".R6N7W@LF,(:CH\\5MA9S&F(CMP"G;B>7M9_=M\NGYSMDP?PPI??%CB MMKG8A$6.23)1YWA5ANMQEAF"+L%Y9207ODT+MZ-)[]!Y: SS<;3^7&#^LI9< M+%>;-.R/&-=7V=J)"5K(+,F30E=[/7O1BGO\>EIO7!Q/%=;9:9,C,FQJ0&'"8(V@?E=;.^F+:),2. M('K<(M;^@7V\ICL ]0/1[D."GC@N!-,V06U#07%*-A XQ2[1UB@[2TF![RES M%@\1.BYX3YG3'415':0F[BU.F!0O8LF8(>7$R DJ'F*(Y!-QPY,LDK5Z8W@O M.>-6]39!U?%B[\"*W6;B?$],E& )@Q20BE2@;)#@=$D@D*)&:XTJFI\$/><$ MC3OJ]R3X.43T'2!HDVEXBY_/P[ WR\6'9?CTXFS]<;&L\R-??%J<-@8) MRI4(S%,HIE1 \"DX$,%8$X0L1C?JIKX;@>-.U&V"L!:JZ0!QQSB918DHC*+( M2$-6G#V^0HO" MLSUX:EU_YKTSF$T C9%.U)PM.,DDL!",C]8G7]I<%[>O*3^V@',S9:.0D\&< M$,"MI)V<#(>045+8GTJT5O"2&QW-@_+1:07:*G*!MY"F O$-H)V@?JLP-\ MWC]L+@:&KM@,(JI,/KYAX)PW$&+"G+TLW+>I.^UP/N"P&M]IUM\^XN\ 0]N; MTO64CHV;%Z7G[(C(&&J?@2O!0&DM()I(YXF-1C!E;6J4S'R"L'%K/)KB:DB5 M=("P\^3#Q11KKT(LSH'0Q=+VX*D^[60@!!;RZ$V6LHWO>(.,<.0P M2#S_K;"]GYAX(8L4OH#AU@-YSN=MAX-0Y#%[GZ1//>Z#+?D].H^MD3_<%Y0.;%."N%T %:B ^4D@ZB5 M!&VUK#=BEM!^!%*>)*#7EXO#0FE8/?3I-_T09F&>\-U'Q'7U%!?SS0NI QRD M!SYI $]H%QH', MFU ^Y6NFI/)832S"J*7AROTUI= 5TYFZ_#6GX]^7C,3UK )Z(Z0D]P% M49*F$U-+"OP=@\"R VED4I+!E4TN9_$ M%UB#+A4=N=*J"42?IFW<8/,$2!Q8/1T ;C.)X.79L@KXEVF(T]DFEWRK 2]J M$HK- 4SV%/(45O=3,6"D9SZ2XV"QS07M3N2-&YB> ';#*ZD7Y/VZF*>G^&+6 M1HFUEB&H.O,Z)? UWL[*<8=( 3]O$W?M2N&X+WQ/A;^A5?6<8HP+O^/*PSCB M4FG?)9I%(CMR==K@Q"DFM> 95!*AQL,!HC'DM:%2.K*")CSG+,M=F?]**MGN MJTGB)=>YY:!$H.T3.0.OH@*F:H][^J/(1J7#CU#U+,*+?5!SYS9]*)4<;-&^ MX#(N!CI6?YN3;9YAON)F=<&+3-GR:"6X6*US(J\T8M$$!B:#, :2!T=^&O7.+BV/[+6*%@2D)2KXPAIDS@6'# 72];"J5;]M>\EYUE$ M L? Z7@E#-9?Y01NUT6X':Y%VH,[7H\MTLSUVIFSTSI?"BET] 0?.M+O3/J-/O88M^MMM7-U8MI?GK$-J='&L>'O Q/F[C*RCXL8BN-HA M7MD8P=O(P!0=HZH#GOU.6=;=43'F<[PC5'9;Z0?(;V2U_W4ZGWXZ^W3Q/!!U MT"58T*&V[H]:0>04#I0@"ZOE36(W)WHGQ=]8>F35'Z*XQ1!2'%O]X>LUPF7T MFCN>0-C->$,E(3JFB'V4UGB,*>TTSFLW]5]?>ISP>S#U'RS%#L+I!P_!'[Z] MIX_8&$7#4U *#?#:OD[9@G5"%PG&91^,JTF"-KG0'8CKY2U: V>BE8IZ1EUE MZ/RA:1;::N$B.&O)C@I"B+-20^)6,1:#C(VRT#L0-ZX+.S@@=BXO.$P['0!N M^Q -EY>L7+Q7+P)#*A%2B)K$)"1X)0-8-#%*5+%5+OH!@CH%UJ&*O],]X'@M M= 2F=XNR_IT$^XI4-/]0>R*\6*WP@BDMF=.9;=I+%V(JDQ^8LB0>B[>!69=% M6V@]2MZXY^:I@#:$T41VC38>82H<:N<6N-J*&UT *P'1?7+ M9?,!6PP+@L7S7C)%>O \(12ID4LF2\AM\/4T;>.:KW'CRL,4U#/D?L6K.3@I M62\M,<&D\]MY-(&1$Z"%I1\9+Q0_<5QYC;I._?\#$;$KX Y53\^0^\NR#K>W M:'5,A 5'40V=!9*#+]Y#4LA#J6-WTXE39QNZ.H79P3C8%6C[*Z4#B+U(:?L8 M'/./2$2DZ7GWE<\SW*AL7AM1+-?3_]Y\_T'F)X67DHW04%2H8;9#"$HDVL79 M,G0>76K4<&D@#CH-6H>"[2B*WA_@?@OP.7ZHE#8_N">>I: LUX#,D#]=@J>- M&S6XB$FZZ).*;5[]/$95I^%MAYX$7=X,6E3ZS3K+YT M'_Y.6V+J4PD)2P$4@A"K782H4H(@=+99,"]$F]+*TY28;@1_3>+G.KAD/VL4 M7#D'DD4&"I6'R),'S7C,7)F8?9L>M$\0]BP*2O?!SKUO& =23 >QR0]GJ^D< M5RO:\G$ZWRCJY6*^GLX_$%/TU6I*&CLW)EN>OUV\%O!<.EN+;&*MN5$<$6*0 M"9Q(1KGD%;-MDG^'TSPN.@>%SF(4/7: V->?-XS,/VQ2[7>X*2IF-,&!SRA MR6S \1@@6QYBLE@H>FIC&!^E:]S(MR7R!M3'V!T5*7Y?GF'^6UA.:W*^ND$X M7VVT-(GDJ>H0'<3-+$X4Q$?Q!1+S4B3G3!1/^G9/+3)N3-H")(.*M0/C\^/Y MLF_Q"\[/\,J$ZL2%U,"S3N10D%?AF1,@0A$\!S*NIDWT>3\]XP:<+8W- /+O M $4;";T[F^?EM[MRFB0I3*3#%T1)MC;8LW0>)PX&911%%(RB39_H1\D:=U!\ MTP-L,&V,?7Y=[(Z?/GV>+;[A\N=7+U^\"=\V-0@7_ @7@C#.0++2U+K2 "X7 MA$02XED8+K3-FYP'SR\5JO9ID1.E,<<"T M+4!2RB0/.]&]&2R.%>/H,%@N"D60FR$1/R.N+EWY M27 .%?H(*&L'DR +!%'HM"T>DT]&HE.[@>&A)<8=I=X.$H.(=&Q@G/OO?\4\ M36'V&21G<#A MGQTXAA)K+P[M/7:KM_=ON7)[V"JXHP3*Y,V YHS.,BP(Q:@[D]Q:O MC0ZVM"G$'.<*[JIQY:4$HA'%^X1 3EX&E>D4C\4[L([SE!)/,39L*?HH;<_B M(FX?!#UE\(Y43P>GZ$5<^3Y\O<;71*Y M#O.[1CM?Y ?O$(%70 I-_F2TR+#_,ZXHPX^0'G6*;KU78B('WC#5(\ MLIEZOW5!)S$9D6.T=> 9\:=+AB"#@6B=L^B5D+)-8>F^E/9UC38P^)JJK0-8 M7FRNZQ= 5_>%LT"!7Z*OF[J!8#.@5,?&QF.I_NLL91U440Q,D@3WD"/XX",(Y$S$HBC4+CL! M9;?U^KJ+&Q(U#>3=P<%W_PWC-7Y20!58X%!<)GYLKHL^$[(O9;/%[3>^4Q?(E433]_]M[LR4WCB1M]/Z\B]N)?;DY9I1$ MSLB,$GDH]HS-%7@$M9K5KZYS\K;D3W:>5*2D8&7N_')54URLM \(LLJ>E=8 M&PWS(FGS'E@=B(MO2DPG%42?I59/[=OQ$UI?>&)#7=-P2NLCR'(E.\,P@M19 M4NRM(@346$?-8,WI%UJW*GLH(ZN 6], "6S#-FK7&R;UG?3ZZS;KD^/S!)^TG+O^D QIIC)]?[36EU3 M/UAMT&.!BU)$L#RH1IW:QM/X:@J2GYX0T%=W,_>)_O&Q/LOR:7Y>2X_G[ MO%FNT[OR*JU_WPFN=AY62B"YB@&<# 5('4MPAOQ)9W@BJY"*"W8?*.[51GX? MBGJ9-](6&>N&8NH<=E=]%[-CG$NG(6.=[H/* ;K (10,3)B439EN?L%^-,TW MUV)Z# P V B!= ZQ5^E_+[;G=UI61R>$M#D"9E-[B)&=<#$D,"HQE5 [7O8J MV9M&RSV@KE_8C4'&$,UVB)A. H(Y7>7&W?2P3IRB*EI6J>-&R"9 4!1UH92V MT *MTWN=FTV(PPW@TL78 W;L+^FE]$<[+Q=FW9TP?UF=G9;WY M S=ID5/2A4D&.C-=Y^(F<+5YHM6E6&8P*E^:X'8PJ?/&-.W1\\RUQ?2B/!FL M+HI2B9M()H/1@I309*4,62XND^B;%Y6-03(*DH,D-AJ'O^\\ MC]_.<7,^5/#'-\ *.I0":T7*"%M$U&DK\'%7S M&O'C(F\RZ9R,WOOOS?*&L@^U+O/1$&=*080%:\-;)4IC=JK3V>< MF^6*]PC)01([T#B_7MW%XK0%SM_V;AQ7O?S8?9MG>QMBH1QEHA+!JS1AK82 M]^ -48H962!W@?%&,.'#<28C39V;WE MA[_N?'6[!YCB-B;K0!>L\^V\K)42 KR3+L:8:0NT<>O'4-NQNAJ"J*=36!H) MKH-P\]YI.\4C;Y=?]X#'Y9X-<52YCU".0*LYQ!Y!YA_9#>_WZPI,/J"/Z]*_>?^ M\ES2Q.PZW$\C?5!UN@]+N;:24M([XV.C,'8@H?,>L33#:TMQG8[[^$M.']<7 M\?,AS;CV>&PCA_)9ZH_A61+,(L/(R!@' J#)CL(6VG$F:(I>;.)1[Y6#>;*> MY>5PW%2"1I% B-H3D&Q +DW!2%K(-031J;/>8/)V$(^A:A'U[4O9Z3 2^EDI2F<678\C-TCK0]E=A ]@#5>&G, MW9/FVCFYRD>T=3ZC5!Q*$J)6['G F PP[6DM%.(HYEYRM1YY;G\H.$!BZVG8 MUZ=B>7N3H:6PEI G#5L#J"XIWXYL--H\R?$RUI67:3Q>Z?!?['>IW^6)Z=O5JE.YUX MZ'(D^DT.ACW9],\6"^C@ ;@;N.<7? MP13TD6QX=/D_XO;SU:3NKWA6F^LMZN2T$+P &6LJ33#$",DUI!2*E=K1_VWC MD3;KZN.0N9<]T0(,'1F(.VRNJSG_Z^<5O21OSW^FE>;T;E/_K5SY+SR[J*Q9 M?EKEM# F:(J$R @FQNJ(-P;!UQ/X9+TI&&WQC4:)'T3WO/F Q_1E6@ES[DC^ MYQ4M#\_>X'*S6\2[\L3,YH_K'_)KW-#Z'N'.0DGA%*_]Q!)M615%!.]#C8R3 M=EIE%_F#RX(G3@"FH6?>[K23XW(N2M\4?\?4E>S&_Y_/QL M%T$0'X6+J@ZS\S&!XLD "G*=#,J .GIRG_;K=_S,2^9M/=L&1E/QM".;^_+ M^5>;#=)W=SV_(1)*^5G 970<@)$X>B%$),HM> MF&(U2VTJD4<0.^_PS0Y .TYL)X7,N_ORQ\_UTY]7K[[4>IHG79D;KO!%)+_$ M6>W!^DABT,&!C\5#%([Q4+1!WJ9L^4@+G'?": <[X'CPZ&C7W.%WG=9\=5I> MIT_0@L__^D@LV6*\_O&VSNR-/G@%4DH*+6,D#\TR#T4$C%([IW*;5.&1!,\\ M[?28)P23RZ\CF$YQQG?Y*PNOO TJ!K N6-JH@EPPIR+$P*1RG"(0WZ8C_?1K MV0_#1\#*=[:1[DY#156M*%.@ _E\RAD' 7F]+,JV!,^R M;M1EJ]&"]MLQ5P'I$3N*,8OF6)\Z1R8S!5M MXZBD:.,$#5/&IW=S-XK#'>G)NQ5;%YOX&;?Y_689=ZWQXDX^URM\_>?O.9[O MIO3^E-,%Q1AU%^WBY840/D8G-/E8M4U><1S0)P^ZMJ9'CBKDH]TFCU_&?A@] MG5N\^65].K5[/VQPN?K?=?SG(0-,]GMPH_J]%U9PE-X0M9!8"0JZD"RE$E*1 MD8P:/"M*8DH\-#XLZJ*"#PM7KB0.5M=N=HDS\-XJ,(8>'ICRHE%T]1U5\ U! MTL$5?$,$UJ?IWE4+>2>5S?7)_2#A :NNI M6-BG>KD-<- $RTKFP#&3Q9=%@].\@(XF,H;HI3Q:;? -52=6QS>Q"1LGG#Z! M]EQIF$Z,FZ0$@:/.T/.>(EK$#((G5-'7<9Q':QYTFG5\@_!Q6!W?$&%U!,6I M"[F\XBZDF$ RY6H#3@[>:0-<<%D4#\6KKFZU3[B.;PIPSRG^[[^.+PA&B[<. M>,8(2I!V\#Y;D!IE$25K'8_6*OCO4<XKS1B)M!4AW9W(E*NT))*&J322,S ^5*!F>M!5M'M:!0-AEW M+/?S^ZSCF]C=/):P3PKJMP5A)G,,3A:H^Q:4-Y:L3&U R)@2*3NO]-'.%DZX MCN\XH!TGMI-"YF&%6H:G(JV2X'BN_0>4 L]$!N$,=\4CV:FYJU*_USJ^XZOM MMO#H:-<,K0,+=7D\!8C*<5 Y%@B!- 1/Z,ES,R68HV5HGGH=W\0G!)/+KR.8 M3EG1Y62,VI-1J[G5*DN*,01Q("L7L13)?3F:E_T=U_'UY?KLW2 M0DN9DP2A;;RJ.>"ISJB-V2O/(S?]%R6==!U?+[ME6JQ\9QOI;AV7U$:K6D=! M;""!U8G.KI@ZQ])FC-ZEC/U;D1.IX^ME M:0V($LD'C+%1VL'Q9GTX=W_O?WDYRE%:U%SB)K5=$JA M2-T)"U*RFHK@;"[^6/[0?"5[RD=;=(Q@O3/D'!,KT.5:;*N5J3!8'4)H+1+X&J?+LUMY+P$*4S;1CRG7;(W M" 5[ENP-$4FGR+I?;J1#P:(= F><'%J*;VA!+$,1*=BHF*1%_;MD;R0 !I?L M#9'&W&E1-;JW'" MZ1-HSQ5\D?LH>;2) M-"JQ.T@P)M38VDT+F8>57 M!5%X3\R00DM0=38FFFPAL(RF<(H&T]%.ROYFU7G'5]MMX='1KAE:W963*S%& M7F^::9EU9%507H&P]:C0:!+3T>XX3KTZ;^(3@LGEUQ%,)ZS34M'Z% (%P)P+ M4-XR0,\0C,LJ(,\L'V_V[W=X(J7]GN'^YXBIP$I06'KRNMT#9>0@8 M#'C).'IILS[> .&_9W5>+[ME6JQ\9QOI;G56419C(4_/1U^KLU 59;'4PF=$5BI/+((.@2:2%>)NNL3:E-,\Y3J,X[ M!&^C.-RGGGR_67\EWJQ7>/;SJJPW7W;?O3KI?Q5CC8PI)OYY%=>U8ND\OTK_ M>[$]__+-D7^-02X7M3#,\R)]!.],J+S(9#U2IE#98#(BV-@X.[/M^GJNYYM8 MB\Z-CKGO)J=ER<=[7MP8"-44KV@;PB6E(M9.(+=J(AW,>GIHXTY#* M_9W8CUN[,)MZ$%,2(%+"XJR+&.ZE;"0'#&0Q8^9V^#T/QH-T/3+&F_ MS?!=W'K.@('O2]G?C2.R9"R'9& W,E=EE2 DAH":,ZVEPA#"#)I^<&1X.E>C M'0ET_L"P 3-N(B##>.))6>#<9%!HR:\+08#P18?@@M1BS[%Y3>C;#]>G<^'9 MBRA/IP/'P\/.Z\.?B=MRO/2:1KTZ!JWN& T\4*+GSI(^U,A "6X!17*@E3>> M)R.C/%H"Q60-/-XL:2/EM\NOWYZ=WYPE;M_CYORV^/(.&5?EEK2#ZNJ)=+(; M*B4%3N8 5IL8BTC:^S;7+Q,0WT^CV'ENL'41[SRSYA[]^P?]=;WX\ M0[)7M?. ,IYE&0O$X"B0E;(FBS&R5$68HG1!K]OY0 XNRJR,0VQSV#"0T&X!>QA@]@?F MP=+K )P_DNN\_I(W'_+9I3GZO/S]>@AVMM%F%QUD(P(HJQT$40IP(YBU7J!* M;7H6/D-4MZ [' SK-I+I &3OJEC>;2BRVW5*7*]^P/C/L_6GJ]5@8>B-\Y!" MBJ"(*> B.F V&"&E<8JWP=GS=,U;FG],J$THG]%H^YHW83T1WGY=[PX'ZMG M=0.-ZYWCI-;6HP<;N .EO0'D-@)&DWPV6FC1)I'@:9KF+7<_)LXFDDL'&NWC M!E.N7+FF/VE6K%495% 4O(7$P?M(&X5S^@GS0:@V6;H/*9FWPOR8:#I(!AU@ MZ+=U.?^#N/I3_IK/UK_7W7"U$&]CL85T;0PU%X=\5'!!T))LCM*RX)5M$ZX^ M2=*\5>?'1-4T4ID17MO-^6)7Q;D+?4(I*FI&#-"!0A]3/XM*0A:D63TZP=5> M]2_TU#LPHJ\>0NC>:[MUG9J>98SG? ]PN4*Y4M9&[S6$H.HU=RH06*H5[LHR MQR.+#U-Y#@7,G('= 2)[*/01_)M9[+_0/OER\>7:RV=D,+6H#GZ05;T1X45I MR 4%.N^0Q;WZE>\E^'NOGEGT8P2WGH*+O<3V$__=5\]C+"83_V@N=N""7IO#9RSF[26_=B&%D@*P2-)4 M#FL1C?&0;-%6AE0;C37Q2H=0V6TP?91;E&;R[ "KSZSI/S;K[>T]JG36&*4= M\))I)X+>[#PO_/RT^=S MVN[T7OR4_['-Y>+L[;+DA7': M3R1%#GEKM\<'AZ.MK02ZT(Z7JSM[S@GB"\550HJ1:*^@(R^']HIGG/QFQ75, MDJ7LVQ36[4-=MT[D=-IN(]-CKSB_9WL M]1L>U$S.S#*'$FIBNM04W*6@JU,M14HYVOU.64;S8#\Z.\Z2'8*B?<9\3B2L M#@+DQX;EW.J!KWEUD1=9H^8\,6 VU5Z)0@"BS5"BB98GTO:-FTD]0UP?H&N! MC9=A>)"@.L?>K_E\5ZR3WY+SLD#A"W?,@D!'NY:S ,A$J1T(B[1:%A?:-J)Y MD<3N1K+,@UN-,H1L3F="$\+HC\MSR[.L_[T]K=V-..H#I&#'.?53X^/)V+'QP%KI;XO;=Q?GV M'%>)UGVY*ST*LA8,ZZTJ!\5H?WJG+!BTF)1.CL<7(^M)*.EN;,K4B#R^O$X8 MG-=[T1 S!5>TR*#K<@L9C>@BQ*Q4L5DYKX>5_(^GI;LI*[T!=(S,^CR4O&Y3 M0.MZ>/8ZYN3QN<=-<+RX-[43G2'>F0'Y\'T_+;?Q;+V]V.0;) :!P1<30(=H M0/G,P&.*H+WDP3,7=6X33@XBK_RB .@MS>Q\QYDSP')-G*<.]"]7=_K[?GR M2^VD=YT?])5"I'*W+?Q+RPY,<^$E2$L.ABJ>=JC3#DHLUE"0KR3?[SQF.IKF M/=)NC](Y1=B1DET_MSG?7)Q7-G]9;\Z7_VB3$$ID2S\[_7CI^F4?UF=G;]:;/W"3%EX' M'0*9"DRB#L\CI]Q;%Z!(Y2)SG!75YEK[$6).*3X:@IBG#GO&RJ$#DWW31I<[ MGS73 33623#.6'"J9!!69R8,:E(_3?'3!VA&B_*I63M#^#H:#Z2WE^OTVSEN MSB=%Q?N+3?R,VWS;BOFV ?-V@=*C0A?!EE+'")'#X+.2P+F.BEF+7+55ML^2 MUT=$/#6>II-(1\J'&)27GU8_7A -JW@Y&/:R$=Y_X'*URTJ+M'TXF@(I&W-Y M61VBL)"XS2HI%71*3;'V,HU]!+=3 VYBV72$ND7RD05' 4\I48.R7(,+'$%K M58*,B4??@ M%\.!FUSJ7:D$)U/MMZ%RB$HSI]NT#IWI+NRE ^Z%EQB=QPS:U_QLP1-M5L9 M:)F2*TY$WL;_VI_&/ISZZ?$U_EIBD-0ZL)9#>F\S8IRVO+9BS Z4%+6Q)U. MEAO&?.1>MRST/8'6^ZUPYYS!<>$I2I*T*$>P<1&S0V\5 M3]@$B-]-A_U!8!C087^(9#H V3.=M25M2>-I0VI16SBE74="FX&98)1-(AEL MDPQZ8,?S;CKK'P*QB>32 <)>F!&0HF5%.@\Q1:3XGICD2Z;%E>)3*-F)T.8L M;H(9#MWTUC\$:1/*IP.T?=/;G<@(!H,"K4JM.];U.$HIX(P7Y[)*4?R[O_ZT MB#I(!AU@Z.E.[B4Z*7))D*-1H)PJ@#$Z8#FFC-FCQC9NUW?27_\05$TCE0[@ MM5?_S"Q5,99GVB,H:$U.@9-VS^8X]Q8NH;>K_F M\YO#2Z>0I>(=&.9JIFAP$#Q])J)U16:>"Q[]F.,.?=T&FB-QL3_PQ@JI;^CM MFA,N MQ7CQY>*LIM'?31U>H)9.1VVAI!C)4!A61WG0!RN#8S9)WRAA;3BMW9Z!' &. M4XAO.$#])4!7^5-]\200?81WK_^,9Q>U7\%-ZH.UVJB@$1RK#?V%T!!BE.2] M%%?+BH4H;0[@]J&NVP.2J6 XN8C&:\;U.9[-D)GR6,51F^R4Y][4-D-E[S7. MDJ62N.7:L@0A$8B541P"LY8BV^*#UNBC;E.OW&N6BN&>UE\$<''9 TN1)U+( M,7$^118D-[*-D_A]9JD,P=#WF*4R"">'9*D,$%K?>'STE)5[\H9MHFW,90"%-H%76%,L;)"J MCAYE;5H-?+]9*D, ^=G&SM%\LRQ 4K=(DQX5JX^9]3UDJ MAR!M0OET@+9O,B2<,RGQL!L\3ZSA(D (Q!H9M>+).4RV31;4:6>I'(*H@V30 M 8:>SH<07"9IBP8A:LF@]_K8'I_7,P9O1T@LH="'\&_F<7^"VV" MVSGUAM:'6B"4W7@IA0&\XPRDP> 8X\SIO>XD]Q+\O5?/+/HQ@EM/P<6YQ8]_ MWB%<*NE8$AYL+D2XEW5L#D:(*$)RQMHLI]OW]UX]CTV83/RCN=B!I[G?P'?K MMQ4O>NB3.WZF$V==1U9F_8%^U+8[;GS2&P,S"$<):BN 7AGTKKQ7K/ MZ^"XPNO,30>N"$&A72$7,>K,8YMF(OM0URWP#L#%WN ;*:31P/N:-V$]2RO8 MFT2F1UKB-D[:>N:-1TK>VG?-LR1Q%22OD/. M8$=)XAK3JOF&1;3;I3.<=GLA-UCIFJ<9*#SR/@I%4*R)FL>VWB]2?4J)7D,P M.,"T3RO9KLW]]I%5?LCUO+A>3)%GOXUX]C\9-PL7@]&"(D.7!45W.5%T)R6' M2'&=$LAR%&W&K4Y ?+?.PL1(&U!RT$+L)X?T7\ER?OPCGWW-OZQ7YY^WBR13 MXI@8*10I0 7'P2>50+(2HB5&&#Q^P;FM$3O@\2]LE!NV[>CW^L%R%+ MF:WB8(,UMT?IC!W'/D-MMYD=/0!XCVM/$+P$R+UA*(2&G MX%8X"J&=]1!T).Y&ZQVRPDVC(3XVUZ0[# \6[TFB^,WZ8K/0-EH9:LI% MR+1*K,.A-0K0.2:TG%DACWZ/\ R]W6:V](;AP<(].0B_*O3FW5+I#Q9*F8A* MD9%1@I8J@@1>D;S9<^@.AY1\F?")C'B[G/\6)OUZM/]((O/^5P M/N:$^-[?3W#>^S0]$YW>U@<_/8'WG*Q%JCX<#U)_ B2R9#D!/PB(%<\VS!1TE60 9A2C3> MYE/2';<)*_7Y/Z_HJ1>[VIX[$[MS,7")]IB5%'UYB4$TBDC:*"D2".V(^UR]3**3A3NF MO =NM045DB3#G6NBI3%))N-=;),+]B1)7:JD(7AXJ)*F87X'(?[])>SR^[,C MA X),L0@TNU:(S=R[^[3,FV71QFP=R/'N,'.GWCDPK2T+&KC. MGM:A$8*L=^3:.;)B_7=6Q, M9F^T!D1)*Y!)TW[B"%&&C-P6VF[VID' M/+^LABXYYQ""@(2QEE6D")BU .N9+BF(PKAMHCP>4C)O1E0;HW,0MSM#R]7V M02.DLCO_/U15&@)0!*!(P-FP:(J6-C3'2P]FYC#9/@.4$8SN "KO-\LO._*O M.]1)JX11$9)QM0F+D'TE38F'$-$]0D*X84]IT+W^.JOZR#D8*?P]8 MC9)$IZBZTKT_K#>;]1_UHA-_IY^<_[60"LE7RQY8$J2&(U?@ZF4\FDSKDJ2& MQ?$2HIZBLC_4C^*V:.B;^[N./@A9[;G?@7Y[CW_M M4IQW/1-Q%>LN66_/R0 DG[2)!K1P@KP)A^12%@HPBO&9%8W1M[EO>HJB_NZ= M)M%;DPB@2QUU=K;^H[JHK[ZL+U;G;]:;G[?;"UHA_>;;?%[??/TG"VZ58<%; M2"@+Q2^6]HMFDMQ96T0B-R0]3 4=HK+V)Z2_8\%&&JR1;#I0: _(?W=QOCW' M51TF>[G6A<00)1<&G'&UM;!F@%P[,.BBX,ZR&-I[.^;S]WFS7*?7J[1(1M:Q. 62U;+J< D^1UI:=I*I:)B4;0:S M#2!RWF+TH\8#4XBI P3>3YGZ ;?+[6]$"Z9WJ[OWCGS!,\OU;@%7[*"U4/J ,YLP5EK GED79800BE!)^(![K1^-[1).\%37=RT#R."#O%ZF5# M2?(\OCT1RCXZE,[2)N3U#C:9FA1F(.?""GW0++7)ZA]&YUZH]-\%*B<2UMRA M\8YC^MKO^2J\PV%8Q\_Y_>; M_'6YOMC6ADX_KNG;\>)\^35?=D+]_R]P4PE<*)."8CI!R"A R")R;DOG?H?.[&2 VYMH>U"XZ]6GCU?%^ NO+05R0H-0W,#E*G8S M^6),A:<@K6MTWW:'BOU =X)7'6,YW8DN_'F5B/*<5GF[_;A^9OLL3&)6B9(@ M\TR*/J,&9VL-1S;199.3+&R(=MO[S?M!Y\3N,IJR_]2P]6O.*2?2QU<'\._* M3\NORY17:;O04G#.<@N^YLUY[9#X6UXMUYM?U^=Y>WOSN/MRHD8]@]XU<=N>\>MLV\3'Y"RE M102WJX"OMC4$IPC2:%V0F2G9ICE)NRZ%MR=2EYECPJ)*)GC0LK;R%)D">J]H MQ;S89%%[&=L<3C]"S/PUJ =BX/DCP.$,[\"A?Z2]"->B8.(27&TIK+B6-5,= M 75)W$AM6*/Y0;VU[#E8O"\WZQG"Z^[0 MA]K]\QAXZ:$,]5 )[].L9PB[.X#,\YUB@@E1.";!\CJHT"A.VRGYVI+&A.)H MH8W&.YU:LYY!4A_4K&>("#K T[W>M/0WEYO,:)8 M2"DUJF]^C)IY,R2G-EH'\[M#S%SMJ9(2H[#10BY*DNOG+5",FX'\0>5X\EQ@ MN_/+;^F9.6?[8#F_ )P13.\ .G="U[J0ZTJ\J%(1FI,.KJ58%#\ RA2 :U,L ME\$YTZ9%]:/D] 6<,7)^Z/<UM/93&N\C.%O)^;I6"O!L)) )4D>FF,&A!4I)&TY4^VN;E\D;]X2 MPQ8NS[02Z0YF=_9B(0M?@G& (EE0VB)XP1,(X9PMTBL1VPQ^?HJB^6W"CH&1<7SMP#+]1K+8-;5_<#:UW6G:%&3,3,HZKIX60YX= M>.X22.8]I^B4\]2F_="S9,U;UCZUPS.=!#J TX,U7&TV)P53M13?A#IJVR0/ MR(0'J9R(+ =,NLU9SZ/DS&NU)A3W>FK>=P"@_\;-!F^/QD.*5M;V#3H+4$5S M"#85,#I&-"$++MHDE-XC8U[ 3"#6]50\[@ @]]7OVYOV@JY$RXSV$*L>)KM+ M00'+%J+GN2Z%-DYI I4G")JW"4;;BXAQ7.\./&\P7K4KJN/I%$65&5))AGC# M'01!FT Q'TUD*67;[H3G,8KF#ZT.%O>S$!K)^^XP=+E'\\<>*YW_MZ.J4Z##:M MF#PW;BK2WY77U4-8KCZ1I[#^SYP^Y>UN.UP%R=N%)48YIR2@JC6;)3MPRDO( M7"9!(3B+1NX%F[U>UU/8. %JIF=Q#^;LJ:WPYLPL$@Y8JYCETJIZ>/D M58)GU50+%FVQ+N5&U1XOTS9OA\0FYFQ:>72 L/MD0:]+<+D-T/8F<=ZVA^V]]ZFD[]9QLP7EA>6!.TB M%C$1^SPMC-&76C/'30K,X#$&SS]#XKQ]#6>"W0CI= "['\]PN[UQ!]YM/BP_ M?3Y__6?>Q.4V[Y9TZRM<_73+%X6SE"G* MH\B=N5UA"SRV%UL'V+S;&>\7/+_8U"IY/,\+SUBR0@?(NP)!%(S6(9%\5BZT MSY)SW:8J\RF*9NY-V )ADS"_ Q ]T-RT)_ZZ'5; 71)HI0!C:MFSCAG0>@>) MHRP\LF!SF[$XSU$U<[?"(YC/\4*8^]CB3KAS?;OQ;O7P'(:+9++3%D*H>?@I M!/(\K0$;)!-:%IGQP=73RX==3[YMYDZ"+<^ZIN%P!SKHM\_$RYU57F1TS'NR MN0)# 542@LO(P:/!&",%P[+-O)I;&O9#S$D=JH]D< ?0^ ]G"1X+,]O/Z[,[5_+NR.[?;;:>/F^6G3WFS M$%8F9[6!(@3MJL %!.L#6@I"*@A-+88HOA@-F'T,V)DC;)FE^$)G[H?*D[@':B>DD M,'AG[L.==?)%%(ZC,)9B&Y=K+^T$GAD!44;!O,F>/2QY/AH>GR!Y/VQ^'W<& MDXJO_R[D-VV3<)4>9+:O2ZTGGZ@#^=[OF;C[^+CUM>T\GH73(CD-1BN*5+GG MY"XR#]IJ'IE)S#2ZC#Y>YW'E-*(U$42D8$O5N;).)0LU2XZV3":0M*NC/H7. MXT,PL$_G\2$,[\!Z/MIPTF55-*VL0?G>(F:O**\.XDPD54!1.J^"28A=5+ 7?GA>/3%G>IE3D9!JY M#I+S?HU1*PXN.4G^HT/P$@NMQ 5ELHA&M=$WI]/(=9"< M]VKD.H3I'2#GD3YPTEK&8W0@8PT DO+@7$R J%,@$K2/QZA-Z[/;^"%&ZD!> M=X>6.^TMM)*.&UV'/,8(*@A&J"^1-'*)AEMAT1_C4KFGOD*'2'K?[HI#V#[W M-?(^W?],,9%'3H(.DI1GKF(8G(B%^82"4?C)>^NRLVPYU,F]'HA_1J.&K3Z.GZ#6*++BD[*NV,". 9[MX\>9O71J&"3L9P$TCO/= >A!PI\J MS#I'_"%ES6NC)8HQ/:EI9[3GI$==;!2+'YYU>1PHC13[D*3+(3+H#D]/%^W7 M GU?LHV:>XHN KD"6@4*+!@#SH-'$:5"=8SZF&>)[,F!:H&VZ2344P[5Y=O? M+%?W&D)P@/QMFY]CF?' MR.*XSHI__>?O>;7-Z]6$F1O//GOB;(W]U]$V0T-PQXRB:%ZP"C-.^@,IH@ M>^0&; KU^DXAH"7>1*L*;2Z18VG3,^)DLC(&27KOK(P!;#^%6W9E\7*=92*=\H4YLK-" M)5#.:O"U^))GSIV/P46^7R^(J;)X9LC*:(&7,?SMSCS=7AE;C\)9I\ ('\EH MUS0332PC5TVF&'/P\ACMP=_VFY4QG5LSCNL=@.?!B6E=U>L_X]E%NKS6K==M M.Q$M8N;1*R[ R3IE%A'!1TDA)GU3"R-%EJX)FO:EL"?+-A(.ZR/(I@/,W:7] ML@/&@_O<1>)2!BD"A9.[00Y"@1>Z '=1Q.)"BJ[-#=:+I/5D#Z=!V;32Z Y> ME_>[M&,N^^![3DJ=/D!$XT&I.O+3U/[40O&8D0(4YH^ K/M4]6096X#J !ET M@*='U/ B.9%33 )DO^JA/=O>_[FHFOX4>MKO&-/(6'3*@(+A9! 6.VI'.DA:RY M,D)8R7F[Z^KCW,A';I03PH"1=>Z:YQZ<-I9L=0J(H$.X/3X'%NM4A(B)4@R,%#26@C1&6",AQRS+T6V\:]/;C3T(''O-1IZ M".\[ -#]L<525=7L"J#7=690S M#1#R_,*Z91(9MSP90:Z_P:J!:[-)YRA\Y$$99^O.:70X-#J)[*AW]8<8J(/Y MW8%:>2+?Q2F-014-EJ+%.C&*W$#D";)STK'@1&Q4P7,R262#Y+Q?$MD0IG=T M\WH;M%XISB*ST2D0+[PL=/+1I?6*W':4Y+87!:Y(A,""K)-)-)/':/C<<9KA($GOFV8XA.T=.2]/ MIL%Y[;AR*8"WJ=8M,@5!:0E)%Y.$%-P\G+?PW:49#A+IT#3#(?SM&2_7:7"> M5N.*1I"6>5J/S9?;BW'NI, B>; 'XZ7O-,,F>!G#W^[,T^U%+];&"]9%J WX M+BNA?5&L#ONV(F?'2SE&:\*W@](,CW0=/K5;,X[K;%?G9JV'M[,EDCY;P^ M#M/GQM.#LX7MY>'"MU.) C&(1^FA6.5(>\=4RU T(.=>*!%MYGZH 7ONA3T9 ML0D0U(+-'=BQ<6..52HI!A/ FB)K(VL.R,@GT-XJSC(*TZAI<[OIU$=/*!R# MQ.-);6ZM]OK/WY>;G8S>Y\URG_*M)M!P[5@^-YB>M/[U![]>U/CC7;DT_;6ET7)5VU'5 M)I->,Y5I?P1='552XC9;8%(J)KEP5NP'JE&OWPM<1Y_\.;T#-ID(Y@;9^\TZ MYIRV;XB9OR%YEN4GVD9?L8X\VW[(9[L69^N';L3"^R!#* &$+A3W.J'!Q:R! M(\\A83'.[.>6C7O_7C [^O3.T3 [@A!FQ]GM^.YKS?STPHI0W.ID@1<;0-F: M8.5D),_*2!%=2@KW*Z8>\M:],'7TV9OC,=6*X7W.,_QY19_FC_AG'I5P?_?/ M)TBD?Y*:B1+D;Y[_2(:T1,U5$0Q,1M(*V6; VE'()>59\%ZQ1FU'GR'J\/*= M;Q[]D5CY _W./QB>30O1(YH'CGD:=,JU):EMX\AQR>DL 0R#9P059"B43!$\O HG926\/R MPWBU7\VRLY'TQ!\)>,NK,_XL4PG6"4@H%%E!%! 2X9G6J'*4*"(S>[D=]Y_; MKRH8(M![SL4!C.O@]/"&):\NSC^O-\OSO^IUX2X)(6:EK9 &A,N^]A9.X(@E MP'T1I:ZE/!RN-#7$OZ%I'O@<+.:G+,=A/.\6/5>7S0&]0E,$B. S*"D9^$QQ M&6/H8XXV*BF.B)\>4GVFDOQ>@!HAABX@1<]:X=F'_#6O+O)O>?-U&?//'WZ[ MRC+@6)Q3Y*-1+$A!H'4<7"&UG8576;K@@FPS&.4%PGH$UA@$/%:Z/I$X.D 7 M<>CR:'RWYZQRD4G2VBIGLOE,9G"R-KW'E$)1@G/1ID;T'AGS7+-.;=3&<[8G M6%R/^<50M,X"G$('BA<$S$H"#P8+LS*JW*;5V -"YE4J!XCT*7",X._DS?7J=)&E+BB4Q"ZP::\5\;545,TB1M>-:QO2PS/SI M..GIUW2"@S'26S=A99^@\%;NF.4+)4LE2+QX,*.<].$R\CEEUWBI/ M3&LS9>11)_VJPS_]MGS)-M-976F8-C<\GZ_/B=.+?'LI^46S\[6?^3T@:1 !'V^ M6=EV(=&XP+V '&HOET/1_HCI;ENRMJYP?(( M^W!?F@)N,DEU ,;7I>184X9OEO(!S_./:S+1JXOEZM.[W_-EH039Y,*Y M5L&#D5CS/5GMP4(1@9%<*16%,-BF$FI_&N>I)&@!O49RZ0!QU_/7:4EOEQB6 M9\OS9=XNE!?>V=HNJ'!'^Z8V.U0F@9 ^>,$TQ1MMKJL?IV>>8H$62)J WQV@ MYA^KM-R>;Y;AXCRGU[A9T1[8OBMOUIN\_+3Z[2)LEVF)F[JRFHWF2U:@9:W] M*SZ"#RZ#E#8+;US]KY&MW)?&>=9 M[\I=+^&Q/QK HB@28Q$SA%*31(RASUPRX SW3 <=>"/HSK#8O?: .X4]T#M2 M^LR;OU.M-B9A_NZ?3Y I_R0UDTVGN'[^;<'6]M4JU=X*=:I7]?5VAOF1C&O% M>!#)>="VCB]0@0%Z;T%H&96M+3I2JS9PHXD^7/L.?O5M48FWR,BU0;!%TA;6 MV0#6>W;M90Q.29]\JUZ+XZF>NPW-X\DIR[5X*[&Y=#5>'50Z95B(]1 MUH%:-('IR!5"+"*3":Q-BUBUB!:+EMIRPUN-.9U-+?X6/^=T48N]R<$@B>+9 MI6]!7L*[B_/M.:YV72MN"'R_WBYWIP0[&=[NG*!+8<9J"O>8!N7(T_&Z<*A# MD1/*P%N5'$RT@--5ED-0^\T8F1FDW[W>?,"* VHP7W[HM'IU'\H[T+->J?8/+S7_AV46MF[V1UP]XAJN8?_N<\_G; M^@B2W@]_W?Y"/9VM+Z^=T'_XZXK*G_*68K?=[UXUA72.F2 "9,0ZP5P&<#QX M<,FR(A&CD6T*8MNMZ72U\1!L/]3&G6"DBZ.R;R7P8;G]YV7B82HY.U:X"UX'*P(B=AA6HS&.PYJN9%;"_(V2,6&R7&KB!YEV]7R8R2<2%,M.!I MCX-"G<&Q$""ZHHPF@F,C[_>HZ@54A\K^H>F=2A = M@.I;37ZYYU JSZ, 7F]EE;<"L"1->CUZX;/7%MN<83Y.S[PU5)T:S E$UR4 MKW8H,2,*%BS(4!N\Z91I2SD%/&25:444EK8QDT]1-*\VFT+:+P)H!.L[@-"O MZU6Z6D.^5L,2A?&29U#"V+JQ& 0*M2J'#%-6.]_H$N818GH#SA@IKZ=E>0>H MN:/+;Q3\[8V\L)QI3 JUUU;XZ-K.!>F3K8A6=BELL,D'L)3/IH0[+MDJ&?9RB>4$U MN>B?U%\'R*'/B[*;3?A+QGKRO3L<'W,Y]OB#)K@0VX/"B2[!;MYT>Q%PBY\< MM?&>\]K["T%Q07_ M++*2PA!U*00J[T^-K M>OR[5V>$B@(ABKX1(@5%-:0I%-R0S\&U-2:FVD&PC9]["-7SXGK=+T*$4M"SC5$+)G8)\CTU,YD/DI3)/>>N39V_7%Z MYH79\?"PGEPX'4#LQLK\\-?-I_^YS)O:9>:OM_EK/MOM6(;)2>$$F(*T;0.[ MRF7QW*4],S?YM[Q:KC>[Z$#)6I.N& M_.T9+]<38$K6)J5<^R%STL:>*]+&+$)!"FJ"-T:9=#!>AHS4:>82'1KDTE%6+U_ZHG:&(PD?&4N&WKET^QC'FZT/;E>,V' MBPXVQ>/'Y8_)N"R&KDB& 13.V@* ME[.6@G"UWWRT)U_1R8'';,B:4 =Z+S[WM(-=Q>RH&(,"[!4K_**CO7TNTZ( M(W_8&I39M:JE>92@TS\5F4:?32&O/M-!WQ(;QW6SN_K+"5(\'Z-AHF1.TAA? MEN?7G68NV[)_RJOX>)<9FV)FO&H1=!:4KM-L7+*T6; V/A;DQK7)N1E$YJ'* MYVVF[92O&M.O/EUR_S;%N?"07; (,2IR9$M""&A%;?\L75 N,-=FS-KS=,V< M6M0,1P]5S832Z5GCC.^B>>_O)],^#7MG#L,.=S[PBAA4SH"2SH&39*8P9H&1 MZZAMFR;"1]%!.S?NCA6_1/N#MH=1NU *1='T=[6SMR\05'%0K"<_+V/:=V3? M"R\Z)94R!!;W?.8IF=V!Y_R8>KSIR_X+GE_469@/EEA"2#XG#CFGVL&&%"?J M.DR#@H-D?79)M4DE&T'LO'%>>TP>2XX]V[Y?<;/95;$>4';UQ),FLX?/TSB1 M9;Q\U0V>A$'$VLL@15[+]I0%Y[@$-%X6[;U3K$U!QGTZIE%1NV?^E+=QL_S] MMGL#YR$Y@BI8AX*V#'WPUC)PP@N-W*.3;7)IGB%J7C-X 8>URF',WY&,[?= MG"\^U%9IEU4+SGL;70*GZ_66"JYV2*L'#;XD)62P^PV4H*?>00I]]1 E]UX[ M-QXF$N+Z4([V (/K5GD84<%%#Z.OI&8NWIZ,&1EZ:CDL&8OQ7,F,$036F8%*<5J\T+5Q%+.?=PCWI5CC%$*F((T47D (CB?(BI;$LHJ>[]79 M;S_QWWWU/''(9.(?S<5N0MR'%O#V(B-XS@I] "8I%E+,Z7H$2/J1)W196QUB MFY3_%PB;-W2=VF]H(8UNP'4_[OZ8-U_>E>OV<@!."O^\6)3]QHY>5KK M0/LD,:S54%Z D[9FD]&6<3QKH]J,ZWF>KKDMUF@D/*]0#F+_:,WR-6_"NHEY MNC,/>!6OEB11%X&1#"RYC61OK2-E2?8VN!@]08,8/AXWZW,\ M:^OIO+DXO]CDJ^.LW;?>XU^["]H+\A0VKW[[\>/Z]V5T2ASL PU_U63>T8&K MG"=1Q[!

#26\=C_$Z3!6]VV;60/N1:ZD6">E?>$ 5X M]C\9-PN?55&2MK5+L6YK%RA\R0BI:"6L$$6ZEG>=8V@^J8R@ ?@;E'TQG50[ M,,A[K?2GB_PKZ9"/?^2SK_D7XOOG[<*98&P)M611\\MNFXC"DXWRCI7:;SS/ MB-Y'*#ZIS*'6V#U4HB>$W+HK/_ZQ7CB/6) [,":YFAW%(21)NU.C)G8J)E6; M9AH#"9W7]>P/IV/D=VKP)+SEA1-)!!XXV! %*,LB8. )A$PL%">"-,>3T%HZW>I( M?P2Y>V'5_'VP.EZ6)P381?!>9.L*!$D?E# 1@M (+ 5M;9VW:=O,D]^7PKU@ M:?\^L!PDLOUGI%^]&A7F@G!&NFH?I +ER9<))2/( M[ OJQ'12;8[M1I&[%T;==X[1260Y'+#^$K"K_*F.;FUZ/913#$82UX(FKBFC M%.T\5SM[BE2*"8D8V=WUD#]]V$TAC^_J]FCQ(/VGZ?T1O6R^&Z2'*[VY0_I_ MQS'\#FCQ 6C'L/2YQTW M+VIG>5J30AE+)*V,I[5-#6;P86L0*80=$J2>VPS MMO>H5VM[O>RV^C4QFRB&59!#=#430H-+J4#Q-JI ')&-+B2&T7E*5VA#7GU@_HAD*K\__Z?_PM02P,$% @ YFG]4F>7P9C(!P _"4 M !D !P(TMV/)/8[E2=-LFENDGOTPU(+"6<08(%0,GJK^\N0%FR)<=6DUYJIYD) M+1*[P&+WP;,+D"??G+\]F_SGW06;N4RQ=_]^_>/XC-4:S>:'[EFS>3XY9]]/ M?OJ1]:)6FTT,SZUT4N=<-9L7;VJL-G.NB\4B6G0C;:;-R?LF==5K*JTM M1,*)VND)/<$K<''ZCY-O&@UVKI,R@]RQQ !W(%AI93YE'P382]9H5%)GNE@: M.9TYUFEUVNR#-I=RSD.[DT[!Z:J?DV:X/VGZ04YB+9:G)T+.F10O:_+HZ$6: M' VAD_;C7EMTXF'<:O=$?S \&O;B-/UO&XULHGC0L6ZIX&4MDWEC!C3^J->) M!OW"'2^D<+-1N]7Z9\V+GIZD.G9ZH4!,H1Y<53E(:+0DUTBH.!"7.>/YDI6Y,R7@1)!B M/=NBYSC+\,Y(KEC*$WQDF,ZD8TX'N2V!'!*PEILEB63\$G#A[@@W!2:DU+JJ0V%M#(_2$+P_J)%$J M%$ P:(R8'\YZ>Q)N9RQ5>F%72#$PE=9A;>$8IX?!;K2ROA%PNS)FR]K=,7\T M<7V\EO. MQJJ!TAL#I3@03?8V\%&"\N#^"?W1P.6 '[)SL&@@>LSG@/MC6J?TE/#2/ER% M\D0,&)IJI)!Y=&FP Z02+*$\0:$4Y+X?JJ/6U+9)CP84][&N4L\Z7O6*.JE1 M(LVA+58K*?Q6QI:QE4)R(VD",B1(3]@Y]51:2EI^B5B?X3R=X5X)#<)-C%##H$ZEP*PA*WN(\F[N,6<4AE$@&,&[$*-L)/\E@JZ9:4*G<-2]#WN/ A M#ZB](;I19GF*O:HF5)2F0,A9G]J31!OA#? %UQ1RS-@*D8$O<)UZ"JK:3 MM^3KG^RBNW'X),#6_X2BVQ^TB!52Z^NE3,RRB9;UJJ9X[Y$_MPJE:^LX%DM. M&WN=LOP#[#++I', '^'-6&-2I'8AT3[?R0%B"FG*$@WB7RK95@L!?BTEFN]! M7^:)WW@>[BZKGSPQ8<7]"O?M5)1(Q )M-&C+0N=F^-]6FZRJ\ET OZ3\$8H" MGT%\.>-/B%9[^+WP4!6I8:^W8_5S@8H6KA?_G=BIBB!400!@K5(/2^3JZ$H@1(& :Z'3% M"PNCU8]C9+Y"\>5(YMYU7ND8P3.5>2/6SNEL1*]XYL2@F/ZJ0?QXH;EZ^S,< M1H/6@%X .42%$ZN!JW=#D7\WU'1BNZT7=3O].UM;4?O.MH_UVNY%@^[G[[8_ MB%X,!Y_?VJ/HJ-=]4+=-[U^S$EAA'8-4\XH865OP_&6M6UO)%%S0_FG48FTO MM1KCRXI6$[E/IU-[XO',*\?2DQ# MG6'=OVG^M+GY5Z9_JM%Z@WG/"$ M%N:MMPE?BO<>@ZO^AL3?D+CEJK.9A)1=7$%2TCD:>QOVSMO(:/JR<<]3A5L? M$14Z?$4U"B\8YK#U6=&ZEO5E:6NMPF.K5>FV5>[Y$JFZAN^B_!=:I[\#4$L# M!!0 ( .9I_5)M&MJ1P0< )\E 9 <')F='$R,C R,5]E>&AI8FET M,S$R+FAT;>U:;7/;-A+^WE^!*M/4GI$H49+M6'8\D]C.5#=MDLOI)G>?.B"Q ME%"#! N 4M1??[L ]6;)L35)KDWLXG+ M%7O[[Y<_#R]9H]5NO^]=MMM7HROVT^B7GUD_ZL1L9'AAI9.ZX*K=OG[=8(V) M<^6@W9[-9M&L%VDS;H_>M6FJ?EMI;2$23C0NSND.?@(7%]^=?]]JL2N=5CD4 MCJ4&N /!*BN+,7LOP-ZP5JN6NM3EW,CQQ+%NIQNS]]K+><[; MX?J\[1Z:2G)_W31,20P:\Q M&ME&\:!CW5S!\T8NB]8$:/U!OQN=')7N;":%FPSB3N>'AA>].,]TX7 ]@_KA M:YAF:S(''UR+*SDN!MZE1E!=#*=::3-XTO'_SFBDE?%OQL-7PTO7XR&;U[_:V]S=SOYI5WI M[W1EV&1O>:78=<1^X<;)HLE2P+_9G+D)=T^?'#T[N\/4OY(; 7';GW'$AFS" MI\ ,3"7,D O<1%KV>X7.@E%SO%]JXY@NV"MM/%G%6%,Q6@(\BRGG Q&4D5RSC*=XR3.?2,:>#W)9 2E8 MR\V<1')^ [CNVIP6[PDT!I=4GJUQ#1)(I4%V1K$"U=$2 8;-)C*=,%O1QTI_ M!@;J20)JW1-.T0#>GJ"98,E\/PVX8W)OJKQPA MO8\@!%@F"\P!I7,5\R;" \5QV*R-RR+#/<:IQN/W5%4"Y\2\K@6XB9B0M"]+ M3 LABI"FU HR=;;LK:41E<(W#TV2J!0*($XT)M,O9[T]*;<3EBD]LPL0&1A+ MZ[#S<(S3S6 W6ME.$0S]BHXW8/7WRK!N?G-DZX74!H0VF,V11 M, ?VT =VR+@!GT),B4P44*@9(&X2)>V$-$@L1WXACJ%K(6VJM*U0CYC':!5R M61J=@L#;EAU@Z@0@%D)^KC^D$UZ,@;W 3?VN4F#K6M#CK?CH ((I\9$(5^%2 M4GTN I!H$4;;?PU?(=]DT+VKL7JA;&.A#!2NO9 :6@\/-0?[/B ME75N,J"XSW5=$E;Y:M:\18,2.09ML5I)X4\9MDJL%)(;20[(4+@\6Q8T4V6I MF/@M8GWE\5R"QQ@T",\77JFD'BRM%"<*1+>\$:NBA!JAQ&UP$ 49+Q,@::0J MG 3$XZ2F@^0VUAZ\L;<@]W!*>##R$*U3*0A0W.(YEPB06P0C]3"$,F[$(N.( M0H8JET[0RE)JU\K!CUEQ;A_?I MP0/.95.G:<.R=P1_OZ.175$N[#H-5$VZ7M92XPV,2 MA"=5'X^:\.9XB+L!59_U;LDW/SE$=^/PFP#;T2=TWOXIB%@@M;G:RL0LZVA9 M[6K*]Q[U(*:0I M2S2(?ZEO6VP$^+V2:+X'?56D_NAWN+NW_N:)"=ON%WARIJ9$(A;HM$'G%GJH MA?]M?=*JV]\9\!NJ'Z$I\!7$MS/^\;5/PRK = ,-"Z+J593("XO^+A^IF=J=H&\5'H..#J;Z, G? ->"(?/4NBB MO1ZI.]]'UP() @1,"X.N>&EAL/ARALQ7*CX?R,*'SBN=(7C&LF@EVCF=#^@5 MS)08%,M?O8A?+PROWLY$G?"&QB$LG%BL7 ]'?JCMQ/98/SKIG]PYVHGB.\<^ M-FO,'3=OV\34+@078,4L-KXBIM24OGC=Z MC85,R04=H 8=%GNIQ1I_KFCMR'TZW?(#:9VM85Q!M@7)@,;_/\EXS%\A7?AR M&KAEN4_OC\C7X-T_*JQ&W=.F?R'\:;[YEYI_*>=>SC?[H&\A9<$T06V!K_(# M_^B%I*@>]K'H^,];KS@W0O -;.>SY8N/4[GU*''SH-PHN&*6S]\F?5SOK.M+-2X8G5JG+;*O?\ M6*C^##]=\C^BNO@?4$L#!!0 ( .9I_5*QWQ&W4@4 &HE 9 <')F M='$R,C R,5]E>&AI8FET,S(Q+FAT;>U:;6_;-A#^OE]Q=; V 6R]64YLV0V0 MV@[BHDVRQ%V[3P,M43%72=1(*J[WZW>DK+PY'M(BG=W"06!8/O+NN>/QN:/ MWHO!67_\Q_D0IBI-X/S#FW>C/M0:MOVQV;?MP7@ )^/W[\"W'!?&@F22*<8S MDMCV\+0&M:E2>6#;L]G,FC4M+J[L\86M5?EVPKFD5J2BVF%/_X*?E$2'O_1> M-!HPX&&1TDQ!*"A1-()"LNP*/D94?H9&8S&JS_.Y8%=3!9[CN?"1B\_LFI1R MQ51"#RL]/;M\[MG&2&_"H_EA+V+7P*+7-18[L>M-]MW0:37]ENNW_3;IN =N M[+6B#FE'?[H(TL;AY1RIY@E]74M9UIA2;3_P/>N@E:ONC$5J&KB.\VO-##WL MQ3Q3:$_@_/)KJ69)F:)?5(,D["H+C$NUA*6TAXU#\:C\Y.X>QX M\P&?C(;',/PT['\8CWX?(F1$/[R H],!E++CT>G1:7]T]*Z2+?FTZ1GQ5R$5 MB^==\Q/+(HQWT-S/UY7*YX60!4&[BH/;+MWX8%U:?0LN:6B5/[C-E@,DBX!E M$/(LHZ'F6I@Q-04UI4#"D*::*@7-N5" \F,N4G"=QF\03QQ^":DB!D1 2TP/M\Q@]PZ=*MO#&J)S, 44Z?PSTESNM]G+2;<(. M4&22T K"A MTKX%($I)+&E1?NA&3>4+F 9):VR N46-<)"[UZUJS5DW(211A:@9>_@5<#,4C1/(P.CS__ZG$ MM!VN=9.*"Z]_<(?&N/O*70MQD2 ;:)9+- 78NV0-D M'+>U&^U56_D.B=P0R%&HM-CM-'W*HS,P<94'1Q5 M)&6B<:QBQN;#.F$M)X]MB'7#*L06S$,PZZR@G8YUX'Q3!?6MIM=Z]@K:[%@M M]_G5MBR_TWYVK?Z^Y>U[W[G<)S1>7L>U$=\ B>M^]_E-A+Y93KTMD*.]3GD2 M^9D<>S,W:_48S3R?>R6?K,7#$EI$0U[6Q,":3WA+XUC0.5Q: M,"#73#Y3G[59B_W5Z^MH?VK//73CX[1-AHU+AAL*64RX8G@]R/" L0=U[\+I_]2E@]I-;O3%Q_?O)?>^+YX">K7]\7WNT@-JK;R5LV=:0\NYN2\O)D4")H0W:@O M7=6Y[7&-(>=V"IE(GA1J]915%S=6WOM9?):WD,Q]J,-_ 5!+ 0(4 Q0 ( M .9I_5*YZF32;@$" &=4%P 1 " 0 !P&UL4$L! A0#% @ YFG]4G$=W\#8 M]@ /_D) !4 ( !SI$" '!R9G0M,C R,3 V,S!?;&%B+GAM M;%!+ 0(4 Q0 ( .9I_5*Z>+KXB)@ .(/!P 5 " =F( M P!P